diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..6279c56f51f3241b532c8be2f032bfe6ea325517
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,39 @@
+*.cdf
+*.cache
+*.obj
+*.obj.enc
+*.ilk
+*.ipdb
+*.iobj
+*.resources
+*.tlb
+*.tli
+*.tlh
+*.tmp
+*.rsp
+*.pgc
+*.pgd
+*.meta
+*.tlog
+*.manifest
+*.res
+*.pch
+*.exp
+*.idb
+*.rep
+*.xdc
+*.pdb
+*_manifest.rc
+*.bsc
+*.sbr
+*.xml
+*.metagen
+*.bi
+*.db
+*.opendb
+*.suo
+build/*
+bin/*
+doc/latex/*
+!doc/latex/refman.pdf
+*.vs
\ No newline at end of file
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..957e2e291ba18b32fd8670ad25dc3dbc5300ba62
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,16 @@
+stages:
+  - deploy
+
+pages:
+  image: tsgkadot/docker-doxygen
+  stage: deploy
+  script:
+  - doxygen Doxyfile
+  - mv doc/html public
+  artifacts:
+    paths:
+    - public
+  only:
+  - main
+  tags:
+  - frodo
diff --git a/Doxyfile b/Doxyfile
new file mode 100644
index 0000000000000000000000000000000000000000..a2788a1ec0534ea4d523e0167738cf51d5429813
--- /dev/null
+++ b/Doxyfile
@@ -0,0 +1,2703 @@
+# Doxyfile 1.9.3
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project.
+#
+# All text after a double hash (##) is considered a comment and is placed in
+# front of the TAG it is preceding.
+#
+# All text after a single hash (#) is considered a comment and will be ignored.
+# The format is:
+# TAG = value [value, ...]
+# For lists, items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (\" \").
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the configuration
+# file that follow. The default is UTF-8 which is also the encoding used for all
+# text before the first occurrence of this tag. Doxygen uses libiconv (or the
+# iconv built into libc) for the transcoding. See
+# https://www.gnu.org/software/libiconv/ for the list of possible encodings.
+# The default value is: UTF-8.
+
+DOXYFILE_ENCODING      = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
+# double-quotes, unless you are using Doxywizard) that should identify the
+# project for which the documentation is generated. This name is used in the
+# title of most generated pages and in a few other places.
+# The default value is: My Project.
+
+PROJECT_NAME           = "SOIL C++"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
+# could be handy for archiving the generated documentation or if some version
+# control system is used.
+
+PROJECT_NUMBER         =
+
+# Using the PROJECT_BRIEF tag one can provide an optional one line description
+# for a project that appears at the top of each page and should give viewer a
+# quick idea about the purpose of the project. Keep the description short.
+
+PROJECT_BRIEF          = "C++ Unified Device Interface"
+
+# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
+# in the documentation. The maximum height of the logo should not exceed 55
+# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
+# the logo to the output directory.
+
+PROJECT_LOGO           =
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
+# into which the generated documentation will be written. If a relative path is
+# entered, it will be relative to the location where doxygen was started. If
+# left blank the current directory will be used.
+
+OUTPUT_DIRECTORY       = .\doc
+
+# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
+# directories (in 2 levels) under the output directory of each output format and
+# will distribute the generated files over these directories. Enabling this
+# option can be useful when feeding doxygen a huge amount of source files, where
+# putting all generated files in the same directory would otherwise causes
+# performance problems for the file system.
+# The default value is: NO.
+
+CREATE_SUBDIRS         = NO
+
+# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
+# characters to appear in the names of generated files. If set to NO, non-ASCII
+# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
+# U+3044.
+# The default value is: NO.
+
+ALLOW_UNICODE_NAMES    = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
+# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
+# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
+# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
+# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
+# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
+# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
+# Ukrainian and Vietnamese.
+# The default value is: English.
+
+OUTPUT_LANGUAGE        = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
+# descriptions after the members that are listed in the file and class
+# documentation (similar to Javadoc). Set to NO to disable this.
+# The default value is: YES.
+
+BRIEF_MEMBER_DESC      = YES
+
+# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
+# description of a member or function before the detailed description
+#
+# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+# The default value is: YES.
+
+REPEAT_BRIEF           = NO
+
+# This tag implements a quasi-intelligent brief description abbreviator that is
+# used to form the text in various listings. Each string in this list, if found
+# as the leading text of the brief description, will be stripped from the text
+# and the result, after processing the whole list, is used as the annotated
+# text. Otherwise, the brief description is used as-is. If left blank, the
+# following values are used ($name is automatically replaced with the name of
+# the entity):The $name class, The $name widget, The $name file, is, provides,
+# specifies, contains, represents, a, an and the.
+
+ABBREVIATE_BRIEF       = "The $name class" \
+                         "The $name widget" \
+                         "The $name file" \
+                         is \
+                         provides \
+                         specifies \
+                         contains \
+                         represents \
+                         a \
+                         an \
+                         the
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# doxygen will generate a detailed section even if there is only a brief
+# description.
+# The default value is: NO.
+
+ALWAYS_DETAILED_SEC    = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+# The default value is: NO.
+
+INLINE_INHERITED_MEMB  = NO
+
+# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
+# before files name in the file list and in the header files. If set to NO the
+# shortest path that makes the file name unique will be used
+# The default value is: YES.
+
+FULL_PATH_NAMES        = YES
+
+# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
+# Stripping is only done if one of the specified strings matches the left-hand
+# part of the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the path to
+# strip.
+#
+# Note that you can specify absolute paths here, but also relative paths, which
+# will be relative from the directory where doxygen is started.
+# This tag requires that the tag FULL_PATH_NAMES is set to YES.
+
+STRIP_FROM_PATH        =
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
+# path mentioned in the documentation of a class, which tells the reader which
+# header file to include in order to use a class. If left blank only the name of
+# the header file containing the class definition is used. Otherwise one should
+# specify the list of include paths that are normally passed to the compiler
+# using the -I flag.
+
+STRIP_FROM_INC_PATH    =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
+# less readable) file names. This can be useful is your file systems doesn't
+# support long names like on DOS, Mac, or CD-ROM.
+# The default value is: NO.
+
+SHORT_NAMES            = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
+# first line (until the first dot) of a Javadoc-style comment as the brief
+# description. If set to NO, the Javadoc-style will behave just like regular Qt-
+# style comments (thus requiring an explicit @brief command for a brief
+# description.)
+# The default value is: NO.
+
+JAVADOC_AUTOBRIEF      = NO
+
+# If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line
+# such as
+# /***************
+# as being the beginning of a Javadoc-style comment "banner". If set to NO, the
+# Javadoc-style will behave just like regular comments and it will not be
+# interpreted by doxygen.
+# The default value is: NO.
+
+JAVADOC_BANNER         = NO
+
+# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
+# line (until the first dot) of a Qt-style comment as the brief description. If
+# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
+# requiring an explicit \brief command for a brief description.)
+# The default value is: NO.
+
+QT_AUTOBRIEF           = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
+# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
+# a brief description. This used to be the default behavior. The new default is
+# to treat a multi-line C++ comment block as a detailed description. Set this
+# tag to YES if you prefer the old behavior instead.
+#
+# Note that setting this tag to YES also means that rational rose comments are
+# not recognized any more.
+# The default value is: NO.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# By default Python docstrings are displayed as preformatted text and doxygen's
+# special commands cannot be used. By setting PYTHON_DOCSTRING to NO the
+# doxygen's special commands can be used and the contents of the docstring
+# documentation blocks is shown as doxygen documentation.
+# The default value is: YES.
+
+PYTHON_DOCSTRING       = YES
+
+# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
+# documentation from any documented member that it re-implements.
+# The default value is: YES.
+
+INHERIT_DOCS           = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
+# page for each member. If set to NO, the documentation of a member will be part
+# of the file/class/namespace that contains it.
+# The default value is: NO.
+
+SEPARATE_MEMBER_PAGES  = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
+# uses this value to replace tabs by spaces in code fragments.
+# Minimum value: 1, maximum value: 16, default value: 4.
+
+TAB_SIZE               = 4
+
+# This tag can be used to specify a number of aliases that act as commands in
+# the documentation. An alias has the form:
+# name=value
+# For example adding
+# "sideeffect=@par Side Effects:^^"
+# will allow you to put the command \sideeffect (or @sideeffect) in the
+# documentation, which will result in a user-defined paragraph with heading
+# "Side Effects:". Note that you cannot put \n's in the value part of an alias
+# to insert newlines (in the resulting output). You can put ^^ in the value part
+# of an alias to insert a newline as if a physical newline was in the original
+# file. When you need a literal { or } or , in the value part of an alias you
+# have to escape them by means of a backslash (\), this can lead to conflicts
+# with the commands \{ and \} for these it is advised to use the version @{ and
+# @} or use a double escape (\\{ and \\})
+
+ALIASES                =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C. For
+# instance, some of the names that are used will be different. The list of all
+# members will be omitted, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_FOR_C  = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
+# Python sources only. Doxygen will then generate output that is more tailored
+# for that language. For instance, namespaces will be presented as packages,
+# qualified scopes will look different, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_JAVA   = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources. Doxygen will then generate output that is tailored for Fortran.
+# The default value is: NO.
+
+OPTIMIZE_FOR_FORTRAN   = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for VHDL.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_VHDL   = NO
+
+# Set the OPTIMIZE_OUTPUT_SLICE tag to YES if your project consists of Slice
+# sources only. Doxygen will then generate output that is more tailored for that
+# language. For instance, namespaces will be presented as modules, types will be
+# separated into more groups, etc.
+# The default value is: NO.
+
+OPTIMIZE_OUTPUT_SLICE  = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it
+# parses. With this tag you can assign which parser to use for a given
+# extension. Doxygen has a built-in mapping, but you can override or extend it
+# using this tag. The format is ext=language, where ext is a file extension, and
+# language is one of the parsers supported by doxygen: IDL, Java, JavaScript,
+# Csharp (C#), C, C++, Lex, D, PHP, md (Markdown), Objective-C, Python, Slice,
+# VHDL, Fortran (fixed format Fortran: FortranFixed, free formatted Fortran:
+# FortranFree, unknown formatted Fortran: Fortran. In the later case the parser
+# tries to guess whether the code is fixed or free formatted code, this is the
+# default for Fortran type files). For instance to make doxygen treat .inc files
+# as Fortran files (default is PHP), and .f files as C (default is Fortran),
+# use: inc=Fortran f=C.
+#
+# Note: For files without extension you can use no_extension as a placeholder.
+#
+# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
+# the files are not read by doxygen. When specifying no_extension you should add
+# * to the FILE_PATTERNS.
+#
+# Note see also the list of default file extension mappings.
+
+EXTENSION_MAPPING      =
+
+# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
+# according to the Markdown format, which allows for more readable
+# documentation. See https://daringfireball.net/projects/markdown/ for details.
+# The output of markdown processing is further processed by doxygen, so you can
+# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
+# case of backward compatibilities issues.
+# The default value is: YES.
+
+MARKDOWN_SUPPORT       = YES
+
+# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up
+# to that level are automatically included in the table of contents, even if
+# they do not have an id attribute.
+# Note: This feature currently applies only to Markdown headings.
+# Minimum value: 0, maximum value: 99, default value: 5.
+# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
+
+TOC_INCLUDE_HEADINGS   = 5
+
+# When enabled doxygen tries to link words that correspond to documented
+# classes, or namespaces to their corresponding documentation. Such a link can
+# be prevented in individual cases by putting a % sign in front of the word or
+# globally by setting AUTOLINK_SUPPORT to NO.
+# The default value is: YES.
+
+AUTOLINK_SUPPORT       = YES
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should set this
+# tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string);
+# versus func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+# The default value is: NO.
+
+BUILTIN_STL_SUPPORT    = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+# The default value is: NO.
+
+CPP_CLI_SUPPORT        = NO
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
+# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen
+# will parse them like normal C++ but will assume all classes use public instead
+# of private inheritance when no explicit protection keyword is present.
+# The default value is: NO.
+
+SIP_SUPPORT            = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate
+# getter and setter methods for a property. Setting this option to YES will make
+# doxygen to replace the get and set methods by a property in the documentation.
+# This will only work if the methods are indeed getting or setting a simple
+# type. If this is not the case, or you want to show the methods anyway, you
+# should set this option to NO.
+# The default value is: YES.
+
+IDL_PROPERTY_SUPPORT   = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+# The default value is: NO.
+
+DISTRIBUTE_GROUP_DOC   = NO
+
+# If one adds a struct or class to a group and this option is enabled, then also
+# any nested class or struct is added to the same group. By default this option
+# is disabled and one has to add nested compounds explicitly via \ingroup.
+# The default value is: NO.
+
+GROUP_NESTED_COMPOUNDS = NO
+
+# Set the SUBGROUPING tag to YES to allow class member groups of the same type
+# (for instance a group of public functions) to be put as a subgroup of that
+# type (e.g. under the Public Functions section). Set it to NO to prevent
+# subgrouping. Alternatively, this can be done per class using the
+# \nosubgrouping command.
+# The default value is: YES.
+
+SUBGROUPING            = YES
+
+# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
+# are shown inside the group in which they are included (e.g. using \ingroup)
+# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
+# and RTF).
+#
+# Note that this feature does not work in combination with
+# SEPARATE_MEMBER_PAGES.
+# The default value is: NO.
+
+INLINE_GROUPED_CLASSES = NO
+
+# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
+# with only public data fields or simple typedef fields will be shown inline in
+# the documentation of the scope in which they are defined (i.e. file,
+# namespace, or group documentation), provided this scope is documented. If set
+# to NO, structs, classes, and unions are shown on a separate page (for HTML and
+# Man pages) or section (for LaTeX and RTF).
+# The default value is: NO.
+
+INLINE_SIMPLE_STRUCTS  = NO
+
+# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
+# enum is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically be
+# useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+# The default value is: NO.
+
+TYPEDEF_HIDES_STRUCT   = NO
+
+# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
+# cache is used to resolve symbols given their name and scope. Since this can be
+# an expensive process and often the same symbol appears multiple times in the
+# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
+# doxygen will become slower. If the cache is too large, memory is wasted. The
+# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
+# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
+# symbols. At the end of a run doxygen will report the cache usage and suggest
+# the optimal cache size from a speed point of view.
+# Minimum value: 0, maximum value: 9, default value: 0.
+
+LOOKUP_CACHE_SIZE      = 0
+
+# The NUM_PROC_THREADS specifies the number threads doxygen is allowed to use
+# during processing. When set to 0 doxygen will based this on the number of
+# cores available in the system. You can set it explicitly to a value larger
+# than 0 to get more control over the balance between CPU load and processing
+# speed. At this moment only the input processing can be done using multiple
+# threads. Since this is still an experimental feature the default is set to 1,
+# which effectively disables parallel processing. Please report any issues you
+# encounter. Generating dot graphs in parallel is controlled by the
+# DOT_NUM_THREADS setting.
+# Minimum value: 0, maximum value: 32, default value: 1.
+
+NUM_PROC_THREADS       = 1
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
+# documentation are documented, even if no documentation was available. Private
+# class members and static file members will be hidden unless the
+# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
+# Note: This will also disable the warnings about undocumented members that are
+# normally produced when WARNINGS is set to YES.
+# The default value is: NO.
+
+EXTRACT_ALL            = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
+# be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PRIVATE        = NO
+
+# If the EXTRACT_PRIV_VIRTUAL tag is set to YES, documented private virtual
+# methods of a class will be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PRIV_VIRTUAL   = NO
+
+# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
+# scope will be included in the documentation.
+# The default value is: NO.
+
+EXTRACT_PACKAGE        = NO
+
+# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
+# included in the documentation.
+# The default value is: NO.
+
+EXTRACT_STATIC         = NO
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
+# locally in source files will be included in the documentation. If set to NO,
+# only classes defined in header files are included. Does not have any effect
+# for Java sources.
+# The default value is: YES.
+
+EXTRACT_LOCAL_CLASSES  = YES
+
+# This flag is only useful for Objective-C code. If set to YES, local methods,
+# which are defined in the implementation section but not in the interface are
+# included in the documentation. If set to NO, only methods in the interface are
+# included.
+# The default value is: NO.
+
+EXTRACT_LOCAL_METHODS  = NO
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base name of
+# the file that contains the anonymous namespace. By default anonymous namespace
+# are hidden.
+# The default value is: NO.
+
+EXTRACT_ANON_NSPACES   = NO
+
+# If this flag is set to YES, the name of an unnamed parameter in a declaration
+# will be determined by the corresponding definition. By default unnamed
+# parameters remain unnamed in the output.
+# The default value is: YES.
+
+RESOLVE_UNNAMED_PARAMS = YES
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
+# undocumented members inside documented classes or files. If set to NO these
+# members will be included in the various overviews, but no documentation
+# section is generated. This option has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_MEMBERS     = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy. If set
+# to NO, these classes will be included in the various overviews. This option
+# has no effect if EXTRACT_ALL is enabled.
+# The default value is: NO.
+
+HIDE_UNDOC_CLASSES     = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
+# declarations. If set to NO, these declarations will be included in the
+# documentation.
+# The default value is: NO.
+
+HIDE_FRIEND_COMPOUNDS  = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
+# documentation blocks found inside the body of a function. If set to NO, these
+# blocks will be appended to the function's detailed documentation block.
+# The default value is: NO.
+
+HIDE_IN_BODY_DOCS      = NO
+
+# The INTERNAL_DOCS tag determines if documentation that is typed after a
+# \internal command is included. If the tag is set to NO then the documentation
+# will be excluded. Set it to YES to include the internal documentation.
+# The default value is: NO.
+
+INTERNAL_DOCS          = NO
+
+# With the correct setting of option CASE_SENSE_NAMES doxygen will better be
+# able to match the capabilities of the underlying filesystem. In case the
+# filesystem is case sensitive (i.e. it supports files in the same directory
+# whose names only differ in casing), the option must be set to YES to properly
+# deal with such files in case they appear in the input. For filesystems that
+# are not case sensitive the option should be be set to NO to properly deal with
+# output files written for symbols that only differ in casing, such as for two
+# classes, one named CLASS and the other named Class, and to also support
+# references to files without having to specify the exact matching casing. On
+# Windows (including Cygwin) and MacOS, users should typically set this option
+# to NO, whereas on Linux or other Unix flavors it should typically be set to
+# YES.
+# The default value is: system dependent.
+
+CASE_SENSE_NAMES       = NO
+
+# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
+# their full class and namespace scopes in the documentation. If set to YES, the
+# scope will be hidden.
+# The default value is: NO.
+
+HIDE_SCOPE_NAMES       = NO
+
+# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
+# append additional text to a page's title, such as Class Reference. If set to
+# YES the compound reference will be hidden.
+# The default value is: NO.
+
+HIDE_COMPOUND_REFERENCE= NO
+
+# If the SHOW_HEADERFILE tag is set to YES then the documentation for a class
+# will show which file needs to be included to use the class.
+# The default value is: YES.
+
+SHOW_HEADERFILE        = YES
+
+# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
+# the files that are included by a file in the documentation of that file.
+# The default value is: YES.
+
+SHOW_INCLUDE_FILES     = YES
+
+# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
+# grouped member an include statement to the documentation, telling the reader
+# which file to include in order to use the member.
+# The default value is: NO.
+
+SHOW_GROUPED_MEMB_INC  = NO
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
+# files with double quotes in the documentation rather than with sharp brackets.
+# The default value is: NO.
+
+FORCE_LOCAL_INCLUDES   = NO
+
+# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
+# documentation for inline members.
+# The default value is: YES.
+
+INLINE_INFO            = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
+# (detailed) documentation of file and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order.
+# The default value is: YES.
+
+SORT_MEMBER_DOCS       = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
+# descriptions of file, namespace and class members alphabetically by member
+# name. If set to NO, the members will appear in declaration order. Note that
+# this will also influence the order of the classes in the class list.
+# The default value is: NO.
+
+SORT_BRIEF_DOCS        = NO
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
+# (brief and detailed) documentation of class members so that constructors and
+# destructors are listed first. If set to NO the constructors will appear in the
+# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
+# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
+# member documentation.
+# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
+# detailed member documentation.
+# The default value is: NO.
+
+SORT_MEMBERS_CTORS_1ST = NO
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
+# of group names into alphabetical order. If set to NO the group names will
+# appear in their defined order.
+# The default value is: NO.
+
+SORT_GROUP_NAMES       = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
+# fully-qualified names, including namespaces. If set to NO, the class list will
+# be sorted only by class name, not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the alphabetical
+# list.
+# The default value is: NO.
+
+SORT_BY_SCOPE_NAME     = NO
+
+# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
+# type resolution of all parameters of a function it will reject a match between
+# the prototype and the implementation of a member function even if there is
+# only one candidate or it is obvious which candidate to choose by doing a
+# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
+# accept a match between prototype and implementation in such cases.
+# The default value is: NO.
+
+STRICT_PROTO_MATCHING  = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
+# list. This list is created by putting \todo commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TODOLIST      = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
+# list. This list is created by putting \test commands in the documentation.
+# The default value is: YES.
+
+GENERATE_TESTLIST      = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
+# list. This list is created by putting \bug commands in the documentation.
+# The default value is: YES.
+
+GENERATE_BUGLIST       = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
+# the deprecated list. This list is created by putting \deprecated commands in
+# the documentation.
+# The default value is: YES.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional documentation
+# sections, marked by \if <section_label> ... \endif and \cond <section_label>
+# ... \endcond blocks.
+
+ENABLED_SECTIONS       =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
+# initial value of a variable or macro / define can have for it to appear in the
+# documentation. If the initializer consists of more lines than specified here
+# it will be hidden. Use a value of 0 to hide initializers completely. The
+# appearance of the value of individual variables and macros / defines can be
+# controlled using \showinitializer or \hideinitializer command in the
+# documentation regardless of this setting.
+# Minimum value: 0, maximum value: 10000, default value: 30.
+
+MAX_INITIALIZER_LINES  = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
+# the bottom of the documentation of classes and structs. If set to YES, the
+# list will mention the files that were used to generate the documentation.
+# The default value is: YES.
+
+SHOW_USED_FILES        = YES
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
+# will remove the Files entry from the Quick Index and from the Folder Tree View
+# (if specified).
+# The default value is: YES.
+
+SHOW_FILES             = YES
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
+# page. This will remove the Namespaces entry from the Quick Index and from the
+# Folder Tree View (if specified).
+# The default value is: YES.
+
+SHOW_NAMESPACES        = YES
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command command input-file, where command is the value of the
+# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
+# by doxygen. Whatever the program writes to standard output is used as the file
+# version. For an example see the documentation.
+
+FILE_VERSION_FILTER    =
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+# by doxygen. The layout file controls the global structure of the generated
+# output files in an output format independent way. To create the layout file
+# that represents doxygen's defaults, run doxygen with the -l option. You can
+# optionally specify a file name after the option, if omitted DoxygenLayout.xml
+# will be used as the name of the layout file. See also section "Changing the
+# layout of pages" for information.
+#
+# Note that if you run doxygen from a directory containing a file called
+# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
+# tag is left empty.
+
+LAYOUT_FILE            =
+
+# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
+# the reference definitions. This must be a list of .bib files. The .bib
+# extension is automatically appended if omitted. This requires the bibtex tool
+# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info.
+# For LaTeX the style of the bibliography can be controlled using
+# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
+# search path. See also \cite for info how to create references.
+
+CITE_BIB_FILES         =
+
+#---------------------------------------------------------------------------
+# Configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated to
+# standard output by doxygen. If QUIET is set to YES this implies that the
+# messages are off.
+# The default value is: NO.
+
+QUIET                  = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
+# this implies that the warnings are on.
+#
+# Tip: Turn warnings on while writing the documentation.
+# The default value is: YES.
+
+WARNINGS               = YES
+
+# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
+# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
+# will automatically be disabled.
+# The default value is: YES.
+
+WARN_IF_UNDOCUMENTED   = YES
+
+# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as documenting some parameters in
+# a documented function twice, or documenting parameters that don't exist or
+# using markup commands wrongly.
+# The default value is: YES.
+
+WARN_IF_DOC_ERROR      = YES
+
+# If WARN_IF_INCOMPLETE_DOC is set to YES, doxygen will warn about incomplete
+# function parameter documentation. If set to NO, doxygen will accept that some
+# parameters have no documentation without warning.
+# The default value is: YES.
+
+WARN_IF_INCOMPLETE_DOC = YES
+
+# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
+# are documented, but have no documentation for their parameters or return
+# value. If set to NO, doxygen will only warn about wrong parameter
+# documentation, but not about the absence of documentation. If EXTRACT_ALL is
+# set to YES then this flag will automatically be disabled. See also
+# WARN_IF_INCOMPLETE_DOC
+# The default value is: NO.
+
+WARN_NO_PARAMDOC       = NO
+
+# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when
+# a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS
+# then doxygen will continue running as if WARN_AS_ERROR tag is set to NO, but
+# at the end of the doxygen process doxygen will return with a non-zero status.
+# Possible values are: NO, YES and FAIL_ON_WARNINGS.
+# The default value is: NO.
+
+WARN_AS_ERROR          = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that doxygen
+# can produce. The string should contain the $file, $line, and $text tags, which
+# will be replaced by the file and line number from which the warning originated
+# and the warning text. Optionally the format may contain $version, which will
+# be replaced by the version of the file (if it could be obtained via
+# FILE_VERSION_FILTER)
+# The default value is: $file:$line: $text.
+
+WARN_FORMAT            = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning and error
+# messages should be written. If left blank the output is written to standard
+# error (stderr). In case the file specified cannot be opened for writing the
+# warning and error messages are written to standard error. When as file - is
+# specified the warning and error messages are written to standard output
+# (stdout).
+
+WARN_LOGFILE           =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag is used to specify the files and/or directories that contain
+# documented source files. You may enter file names like myfile.cpp or
+# directories like /usr/src/myproject. Separate the files or directories with
+# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
+# Note: If this tag is empty the current directory is searched.
+
+INPUT                  = .\src \
+                         README.md
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
+# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
+# documentation (see:
+# https://www.gnu.org/software/libiconv/) for the list of possible encodings.
+# The default value is: UTF-8.
+
+INPUT_ENCODING         = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
+# *.h) to filter out the source-files in the directories.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# read by doxygen.
+#
+# Note the list of default checked file patterns might differ from the list of
+# default file extension mappings.
+#
+# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
+# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
+# *.hh, *.hxx, *.hpp, *.h++, *.l, *.cs, *.d, *.php, *.php4, *.php5, *.phtml,
+# *.inc, *.m, *.markdown, *.md, *.mm, *.dox (to be provided as doxygen C
+# comment), *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f18, *.f, *.for, *.vhd,
+# *.vhdl, *.ucf, *.qsf and *.ice.
+
+FILE_PATTERNS          = *.c \
+                         *.cc \
+                         *.cxx \
+                         *.cpp \
+                         *.c++ \
+                         *.java \
+                         *.ii \
+                         *.ixx \
+                         *.ipp \
+                         *.i++ \
+                         *.inl \
+                         *.idl \
+                         *.ddl \
+                         *.odl \
+                         *.h \
+                         *.hh \
+                         *.hxx \
+                         *.hpp \
+                         *.h++ \
+                         *.l \
+                         *.cs \
+                         *.d \
+                         *.php \
+                         *.php4 \
+                         *.php5 \
+                         *.phtml \
+                         *.inc \
+                         *.m \
+                         *.markdown \
+                         *.md \
+                         *.mm \
+                         *.dox \
+                         *.py \
+                         *.pyw \
+                         *.f90 \
+                         *.f95 \
+                         *.f03 \
+                         *.f08 \
+                         *.f18 \
+                         *.f \
+                         *.for \
+                         *.vhd \
+                         *.vhdl \
+                         *.ucf \
+                         *.qsf \
+                         *.ice
+
+# The RECURSIVE tag can be used to specify whether or not subdirectories should
+# be searched for input files as well.
+# The default value is: NO.
+
+RECURSIVE              = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should be
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+#
+# Note that relative paths are relative to the directory from which doxygen is
+# run.
+
+EXCLUDE                = .\src\LSM\
+
+# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
+# directories that are symbolic links (a Unix file system feature) are excluded
+# from the input.
+# The default value is: NO.
+
+EXCLUDE_SYMLINKS       = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories for example use the pattern */test/*
+
+EXCLUDE_PATTERNS       =
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# ANamespace::AClass, ANamespace::*Test
+#
+# Note that the wildcards are matched against the file with absolute path, so to
+# exclude all test directories use the pattern */test/*
+
+EXCLUDE_SYMBOLS        =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or directories
+# that contain example code fragments that are included (see the \include
+# command).
+
+EXAMPLE_PATH           =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
+# *.h) to filter out the source-files in the directories. If left blank all
+# files are included.
+
+EXAMPLE_PATTERNS       = *
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude commands
+# irrespective of the value of the RECURSIVE tag.
+# The default value is: NO.
+
+EXAMPLE_RECURSIVE      = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or directories
+# that contain images that are to be included in the documentation (see the
+# \image command).
+
+IMAGE_PATH             =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command:
+#
+# <filter> <input-file>
+#
+# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
+# name of an input file. Doxygen will then use the output that the filter
+# program writes to standard output. If FILTER_PATTERNS is specified, this tag
+# will be ignored.
+#
+# Note that the filter must not add or remove lines; it is applied before the
+# code is scanned, but not when the output code is generated. If lines are added
+# or removed, the anchors will not be placed correctly.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+INPUT_FILTER           =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis. Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match. The filters are a list of the form: pattern=filter
+# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
+# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
+# patterns match the file name, INPUT_FILTER is applied.
+#
+# Note that for custom extensions or not directly supported extensions you also
+# need to set EXTENSION_MAPPING for the extension otherwise the files are not
+# properly processed by doxygen.
+
+FILTER_PATTERNS        =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will also be used to filter the input files that are used for
+# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
+# The default value is: NO.
+
+FILTER_SOURCE_FILES    = NO
+
+# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
+# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
+# it is also possible to disable source filtering for a specific pattern using
+# *.ext= (so without naming a filter).
+# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
+
+FILTER_SOURCE_PATTERNS =
+
+# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
+# is part of the input, its contents will be placed on the main page
+# (index.html). This can be useful if you have a project on for instance GitHub
+# and want to reuse the introduction page also for the doxygen output.
+
+USE_MDFILE_AS_MAINPAGE = README.md
+
+#---------------------------------------------------------------------------
+# Configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will be
+# generated. Documented entities will be cross-referenced with these sources.
+#
+# Note: To get rid of all source code in the generated output, make sure that
+# also VERBATIM_HEADERS is set to NO.
+# The default value is: NO.
+
+SOURCE_BROWSER         = YES
+
+# Setting the INLINE_SOURCES tag to YES will include the body of functions,
+# classes and enums directly into the documentation.
+# The default value is: NO.
+
+INLINE_SOURCES         = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
+# special comment blocks from generated source code fragments. Normal C, C++ and
+# Fortran comments will always remain visible.
+# The default value is: YES.
+
+STRIP_CODE_COMMENTS    = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
+# entity all documented functions referencing it will be listed.
+# The default value is: NO.
+
+REFERENCED_BY_RELATION = NO
+
+# If the REFERENCES_RELATION tag is set to YES then for each documented function
+# all documented entities called/used by that function will be listed.
+# The default value is: NO.
+
+REFERENCES_RELATION    = NO
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
+# to YES then the hyperlinks from functions in REFERENCES_RELATION and
+# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
+# link to the documentation.
+# The default value is: YES.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
+# source code will show a tooltip with additional information such as prototype,
+# brief description and links to the definition and documentation. Since this
+# will make the HTML file larger and loading of large files a bit slower, you
+# can opt to disable this feature.
+# The default value is: YES.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+SOURCE_TOOLTIPS        = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code will
+# point to the HTML generated by the htags(1) tool instead of doxygen built-in
+# source browser. The htags tool is part of GNU's global source tagging system
+# (see https://www.gnu.org/software/global/global.html). You will need version
+# 4.8.6 or higher.
+#
+# To use it do the following:
+# - Install the latest version of global
+# - Enable SOURCE_BROWSER and USE_HTAGS in the configuration file
+# - Make sure the INPUT points to the root of the source tree
+# - Run doxygen as normal
+#
+# Doxygen will invoke htags (and that will in turn invoke gtags), so these
+# tools must be available from the command line (i.e. in the search path).
+#
+# The result: instead of the source browser generated by doxygen, the links to
+# source code will now point to the output of htags.
+# The default value is: NO.
+# This tag requires that the tag SOURCE_BROWSER is set to YES.
+
+USE_HTAGS              = NO
+
+# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
+# verbatim copy of the header file for each class for which an include is
+# specified. Set to NO to disable this.
+# See also: Section \class.
+# The default value is: YES.
+
+VERBATIM_HEADERS       = YES
+
+# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the
+# clang parser (see:
+# http://clang.llvm.org/) for more accurate parsing at the cost of reduced
+# performance. This can be particularly helpful with template rich C++ code for
+# which doxygen's built-in parser lacks the necessary type information.
+# Note: The availability of this option depends on whether or not doxygen was
+# generated with the -Duse_libclang=ON option for CMake.
+# The default value is: NO.
+
+CLANG_ASSISTED_PARSING = NO
+
+# If the CLANG_ASSISTED_PARSING tag is set to YES and the CLANG_ADD_INC_PATHS
+# tag is set to YES then doxygen will add the directory of each input to the
+# include path.
+# The default value is: YES.
+# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
+
+CLANG_ADD_INC_PATHS    = YES
+
+# If clang assisted parsing is enabled you can provide the compiler with command
+# line options that you would normally use when invoking the compiler. Note that
+# the include paths will already be set by doxygen for the files and directories
+# specified with INPUT and INCLUDE_PATH.
+# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
+
+CLANG_OPTIONS          =
+
+# If clang assisted parsing is enabled you can provide the clang parser with the
+# path to the directory containing a file called compile_commands.json. This
+# file is the compilation database (see:
+# http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html) containing the
+# options used when the source files were built. This is equivalent to
+# specifying the -p option to a clang tool, such as clang-check. These options
+# will then be passed to the parser. Any options specified with CLANG_OPTIONS
+# will be added as well.
+# Note: The availability of this option depends on whether or not doxygen was
+# generated with the -Duse_libclang=ON option for CMake.
+
+CLANG_DATABASE_PATH    =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
+# compounds will be generated. Enable this if the project contains a lot of
+# classes, structs, unions or interfaces.
+# The default value is: YES.
+
+ALPHABETICAL_INDEX     = YES
+
+# In case all classes in a project start with a common prefix, all classes will
+# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
+# can be used to specify a prefix (or a list of prefixes) that should be ignored
+# while generating the index headers.
+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
+IGNORE_PREFIX          =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
+# The default value is: YES.
+
+GENERATE_HTML          = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_OUTPUT            = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
+# generated HTML page (for example: .htm, .php, .asp).
+# The default value is: .html.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FILE_EXTENSION    = .html
+
+# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
+# each generated HTML page. If the tag is left blank doxygen will generate a
+# standard header.
+#
+# To get valid HTML the header file that includes any scripts and style sheets
+# that doxygen needs, which is dependent on the configuration options used (e.g.
+# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
+# default header using
+# doxygen -w html new_header.html new_footer.html new_stylesheet.css
+# YourConfigFile
+# and then modify the file new_header.html. See also section "Doxygen usage"
+# for information on how to generate the default header that doxygen normally
+# uses.
+# Note: The header is subject to change so you typically have to regenerate the
+# default header when upgrading to a newer version of doxygen. For a description
+# of the possible markers and block names see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_HEADER            =
+
+# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
+# generated HTML page. If the tag is left blank doxygen will generate a standard
+# footer. See HTML_HEADER for more information on how to generate a default
+# footer and what special commands can be used inside the footer. See also
+# section "Doxygen usage" for information on how to generate the default footer
+# that doxygen normally uses.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FOOTER            =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
+# sheet that is used by each HTML page. It can be used to fine-tune the look of
+# the HTML output. If left blank doxygen will generate a default style sheet.
+# See also section "Doxygen usage" for information on how to generate the style
+# sheet that doxygen normally uses.
+# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
+# it is more robust and this tag (HTML_STYLESHEET) will in the future become
+# obsolete.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_STYLESHEET        =
+
+# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# cascading style sheets that are included after the standard style sheets
+# created by doxygen. Using this option one can overrule certain style aspects.
+# This is preferred over using HTML_STYLESHEET since it does not replace the
+# standard style sheet and is therefore more robust against future updates.
+# Doxygen will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list). For an example see the documentation.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_STYLESHEET  =
+
+# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the HTML output directory. Note
+# that these files will be copied to the base HTML output directory. Use the
+# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
+# files. In the HTML_STYLESHEET file, use the file name only. Also note that the
+# files will be copied as-is; there are no commands or markers available.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_EXTRA_FILES       =
+
+# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
+# will adjust the colors in the style sheet and background images according to
+# this color. Hue is specified as an angle on a color-wheel, see
+# https://en.wikipedia.org/wiki/Hue for more information. For instance the value
+# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
+# purple, and 360 is red again.
+# Minimum value: 0, maximum value: 359, default value: 220.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_HUE    = 220
+
+# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
+# in the HTML output. For a value of 0 the output will use gray-scales only. A
+# value of 255 will produce the most vivid colors.
+# Minimum value: 0, maximum value: 255, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_SAT    = 100
+
+# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
+# luminance component of the colors in the HTML output. Values below 100
+# gradually make the output lighter, whereas values above 100 make the output
+# darker. The value divided by 100 is the actual gamma applied, so 80 represents
+# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
+# change the gamma.
+# Minimum value: 40, maximum value: 240, default value: 80.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_COLORSTYLE_GAMMA  = 80
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting this
+# to YES can help to show when doxygen was last run and thus if the
+# documentation is up to date.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_TIMESTAMP         = NO
+
+# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML
+# documentation will contain a main index with vertical navigation menus that
+# are dynamically created via JavaScript. If disabled, the navigation index will
+# consists of multiple levels of tabs that are statically embedded in every HTML
+# page. Disable this option to support browsers that do not have JavaScript,
+# like the Qt help browser.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_DYNAMIC_MENUS     = YES
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_DYNAMIC_SECTIONS  = NO
+
+# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
+# shown in the various tree structured indices initially; the user can expand
+# and collapse entries dynamically later on. Doxygen will expand the tree to
+# such a level that at most the specified number of entries are visible (unless
+# a fully collapsed tree already exceeds this amount). So setting the number of
+# entries 1 will produce a full collapsed tree by default. 0 is a special value
+# representing an infinite number of entries and will result in a full expanded
+# tree by default.
+# Minimum value: 0, maximum value: 9999, default value: 100.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_INDEX_NUM_ENTRIES = 100
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files will be
+# generated that can be used as input for Apple's Xcode 3 integrated development
+# environment (see:
+# https://developer.apple.com/xcode/), introduced with OSX 10.5 (Leopard). To
+# create a documentation set, doxygen will generate a Makefile in the HTML
+# output directory. Running make will produce the docset in that directory and
+# running make install will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
+# startup. See https://developer.apple.com/library/archive/featuredarticles/Doxy
+# genXcode/_index.html for more information.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_DOCSET        = NO
+
+# This tag determines the name of the docset feed. A documentation feed provides
+# an umbrella under which multiple documentation sets from a single provider
+# (such as a company or product suite) can be grouped.
+# The default value is: Doxygen generated docs.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_FEEDNAME        = "Doxygen generated docs"
+
+# This tag determines the URL of the docset feed. A documentation feed provides
+# an umbrella under which multiple documentation sets from a single provider
+# (such as a company or product suite) can be grouped.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_FEEDURL         =
+
+# This tag specifies a string that should uniquely identify the documentation
+# set bundle. This should be a reverse domain-name style string, e.g.
+# com.mycompany.MyDocSet. Doxygen will append .docset to the name.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_BUNDLE_ID       = org.doxygen.Project
+
+# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
+# the documentation publisher. This should be a reverse domain-name style
+# string, e.g. com.mycompany.MyDocSet.documentation.
+# The default value is: org.doxygen.Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_ID    = org.doxygen.Publisher
+
+# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+# The default value is: Publisher.
+# This tag requires that the tag GENERATE_DOCSET is set to YES.
+
+DOCSET_PUBLISHER_NAME  = Publisher
+
+# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
+# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
+# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
+# on Windows. In the beginning of 2021 Microsoft took the original page, with
+# a.o. the download links, offline the HTML help workshop was already many years
+# in maintenance mode). You can download the HTML help workshop from the web
+# archives at Installation executable (see:
+# http://web.archive.org/web/20160201063255/http://download.microsoft.com/downlo
+# ad/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe).
+#
+# The HTML Help Workshop contains a compiler that can convert all HTML output
+# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
+# files are now used as the Windows 98 help format, and will replace the old
+# Windows help format (.hlp) on all Windows platforms in the future. Compressed
+# HTML files also contain an index, a table of contents, and you can search for
+# words in the documentation. The HTML workshop also contains a viewer for
+# compressed HTML files.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_HTMLHELP      = NO
+
+# The CHM_FILE tag can be used to specify the file name of the resulting .chm
+# file. You can add a path in front of the file if the result should not be
+# written to the html output directory.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_FILE               =
+
+# The HHC_LOCATION tag can be used to specify the location (absolute path
+# including file name) of the HTML help compiler (hhc.exe). If non-empty,
+# doxygen will try to run the HTML help compiler on the generated index.hhp.
+# The file has to be specified with full path.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+HHC_LOCATION           =
+
+# The GENERATE_CHI flag controls if a separate .chi index file is generated
+# (YES) or that it should be included in the main .chm file (NO).
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+GENERATE_CHI           = NO
+
+# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
+# and project file content.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+CHM_INDEX_ENCODING     =
+
+# The BINARY_TOC flag controls whether a binary table of contents is generated
+# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
+# enables the Previous and Next buttons.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+BINARY_TOC             = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members to
+# the table of contents of the HTML help documentation and to the tree view.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
+TOC_EXPAND             = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
+# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
+# (.qch) of the generated HTML documentation.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_QHP           = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
+# the file name of the resulting .qch file. The path specified is relative to
+# the HTML output folder.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QCH_FILE               =
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
+# Project output. For more information please see Qt Help Project / Namespace
+# (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace).
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_NAMESPACE          = org.doxygen.Project
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
+# Help Project output. For more information please see Qt Help Project / Virtual
+# Folders (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-folders).
+# The default value is: doc.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_VIRTUAL_FOLDER     = doc
+
+# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
+# filter to add. For more information please see Qt Help Project / Custom
+# Filters (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_NAME   =
+
+# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
+# custom filter to add. For more information please see Qt Help Project / Custom
+# Filters (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_CUST_FILTER_ATTRS  =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+# project's filter section matches. Qt Help Project / Filter Attributes (see:
+# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#filter-attributes).
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHP_SECT_FILTER_ATTRS  =
+
+# The QHG_LOCATION tag can be used to specify the location (absolute path
+# including file name) of Qt's qhelpgenerator. If non-empty doxygen will try to
+# run qhelpgenerator on the generated .qhp file.
+# This tag requires that the tag GENERATE_QHP is set to YES.
+
+QHG_LOCATION           =
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
+# generated, together with the HTML files, they form an Eclipse help plugin. To
+# install this plugin and make it available under the help contents menu in
+# Eclipse, the contents of the directory containing the HTML and XML files needs
+# to be copied into the plugins directory of eclipse. The name of the directory
+# within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
+# After copying Eclipse needs to be restarted before the help appears.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_ECLIPSEHELP   = NO
+
+# A unique identifier for the Eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have this
+# name. Each documentation set should have its own identifier.
+# The default value is: org.doxygen.Project.
+# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
+
+ECLIPSE_DOC_ID         = org.doxygen.Project
+
+# If you want full control over the layout of the generated HTML pages it might
+# be necessary to disable the index and replace it with your own. The
+# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
+# of each HTML page. A value of NO enables the index and the value YES disables
+# it. Since the tabs in the index contain the same information as the navigation
+# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+DISABLE_INDEX          = NO
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information. If the tag
+# value is set to YES, a side panel will be generated containing a tree-like
+# index structure (just like the one that is generated for HTML Help). For this
+# to work a browser that supports JavaScript, DHTML, CSS and frames is required
+# (i.e. any modern browser). Windows users are probably better off using the
+# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
+# further fine tune the look of the index (see "Fine-tuning the output"). As an
+# example, the default style sheet generated by doxygen has an example that
+# shows how to put an image at the root of the tree instead of the PROJECT_NAME.
+# Since the tree basically has the same information as the tab index, you could
+# consider setting DISABLE_INDEX to YES when enabling this option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+GENERATE_TREEVIEW      = YES
+
+# When both GENERATE_TREEVIEW and DISABLE_INDEX are set to YES, then the
+# FULL_SIDEBAR option determines if the side bar is limited to only the treeview
+# area (value NO) or if it should extend to the full height of the window (value
+# YES). Setting this to YES gives a layout similar to
+# https://docs.readthedocs.io with more room for contents, but less room for the
+# project logo, title, and description. If either GENERATE_TREEVIEW or
+# DISABLE_INDEX is set to NO, this option has no effect.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FULL_SIDEBAR           = NO
+
+# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
+# doxygen will group on one line in the generated HTML documentation.
+#
+# Note that a value of 0 will completely suppress the enum values from appearing
+# in the overview section.
+# Minimum value: 0, maximum value: 20, default value: 4.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+ENUM_VALUES_PER_LINE   = 4
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
+# to set the initial width (in pixels) of the frame in which the tree is shown.
+# Minimum value: 0, maximum value: 1500, default value: 250.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+TREEVIEW_WIDTH         = 250
+
+# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
+# external symbols imported via tag files in a separate window.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+EXT_LINKS_IN_WINDOW    = NO
+
+# If the OBFUSCATE_EMAILS tag is set to YES, doxygen will obfuscate email
+# addresses.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+OBFUSCATE_EMAILS       = YES
+
+# If the HTML_FORMULA_FORMAT option is set to svg, doxygen will use the pdf2svg
+# tool (see https://github.com/dawbarton/pdf2svg) or inkscape (see
+# https://inkscape.org) to generate formulas as SVG images instead of PNGs for
+# the HTML output. These images will generally look nicer at scaled resolutions.
+# Possible values are: png (the default) and svg (looks nicer but requires the
+# pdf2svg or inkscape tool).
+# The default value is: png.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+HTML_FORMULA_FORMAT    = png
+
+# Use this tag to change the font size of LaTeX formulas included as images in
+# the HTML documentation. When you change the font size after a successful
+# doxygen run you need to manually remove any form_*.png images from the HTML
+# output directory to force them to be regenerated.
+# Minimum value: 8, maximum value: 50, default value: 10.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_FONTSIZE       = 10
+
+# Use the FORMULA_TRANSPARENT tag to determine whether or not the images
+# generated for formulas are transparent PNGs. Transparent PNGs are not
+# supported properly for IE 6.0, but are supported on all modern browsers.
+#
+# Note that when changing this option you need to delete any form_*.png files in
+# the HTML output directory before the changes have effect.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+FORMULA_TRANSPARENT    = YES
+
+# The FORMULA_MACROFILE can contain LaTeX \newcommand and \renewcommand commands
+# to create new LaTeX commands to be used in formulas as building blocks. See
+# the section "Including formulas" for details.
+
+FORMULA_MACROFILE      =
+
+# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+# https://www.mathjax.org) which uses client side JavaScript for the rendering
+# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
+# installed or if you want to formulas look prettier in the HTML output. When
+# enabled you may also need to install MathJax separately and configure the path
+# to it using the MATHJAX_RELPATH option.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+USE_MATHJAX            = NO
+
+# With MATHJAX_VERSION it is possible to specify the MathJax version to be used.
+# Note that the different versions of MathJax have different requirements with
+# regards to the different settings, so it is possible that also other MathJax
+# settings have to be changed when switching between the different MathJax
+# versions.
+# Possible values are: MathJax_2 and MathJax_3.
+# The default value is: MathJax_2.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_VERSION        = MathJax_2
+
+# When MathJax is enabled you can set the default output format to be used for
+# the MathJax output. For more details about the output format see MathJax
+# version 2 (see:
+# http://docs.mathjax.org/en/v2.7-latest/output.html) and MathJax version 3
+# (see:
+# http://docs.mathjax.org/en/latest/web/components/output.html).
+# Possible values are: HTML-CSS (which is slower, but has the best
+# compatibility. This is the name for Mathjax version 2, for MathJax version 3
+# this will be translated into chtml), NativeMML (i.e. MathML. Only supported
+# for NathJax 2. For MathJax version 3 chtml will be used instead.), chtml (This
+# is the name for Mathjax version 3, for MathJax version 2 this will be
+# translated into HTML-CSS) and SVG.
+# The default value is: HTML-CSS.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_FORMAT         = HTML-CSS
+
+# When MathJax is enabled you need to specify the location relative to the HTML
+# output directory using the MATHJAX_RELPATH option. The destination directory
+# should contain the MathJax.js script. For instance, if the mathjax directory
+# is located at the same level as the HTML output directory, then
+# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
+# Content Delivery Network so you can quickly see the result without installing
+# MathJax. However, it is strongly recommended to install a local copy of
+# MathJax from https://www.mathjax.org before deployment. The default value is:
+# - in case of MathJax version 2: https://cdn.jsdelivr.net/npm/mathjax@2
+# - in case of MathJax version 3: https://cdn.jsdelivr.net/npm/mathjax@3
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_RELPATH        =
+
+# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
+# extension names that should be enabled during MathJax rendering. For example
+# for MathJax version 2 (see
+# https://docs.mathjax.org/en/v2.7-latest/tex.html#tex-and-latex-extensions):
+# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
+# For example for MathJax version 3 (see
+# http://docs.mathjax.org/en/latest/input/tex/extensions/index.html):
+# MATHJAX_EXTENSIONS = ams
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_EXTENSIONS     =
+
+# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
+# of code that will be used on startup of the MathJax code. See the MathJax site
+# (see:
+# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details. For an
+# example see the documentation.
+# This tag requires that the tag USE_MATHJAX is set to YES.
+
+MATHJAX_CODEFILE       =
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
+# the HTML output. The underlying search engine uses javascript and DHTML and
+# should work on any modern browser. Note that when using HTML help
+# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
+# there is already a search function so this one should typically be disabled.
+# For large projects the javascript based search engine can be slow, then
+# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
+# search using the keyboard; to jump to the search box use <access key> + S
+# (what the <access key> is depends on the OS and browser, but it is typically
+# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
+# key> to jump into the search results window, the results can be navigated
+# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
+# the search. The filter options can be selected when the cursor is inside the
+# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
+# to select a filter and <Enter> or <escape> to activate or cancel the filter
+# option.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_HTML is set to YES.
+
+SEARCHENGINE           = YES
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+# implemented using a web server instead of a web client using JavaScript. There
+# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
+# setting. When disabled, doxygen will generate a PHP script for searching and
+# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
+# and searching needs to be provided by external tools. See the section
+# "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SERVER_BASED_SEARCH    = NO
+
+# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
+# script for searching. Instead the search results are written to an XML file
+# which needs to be processed by an external indexer. Doxygen will invoke an
+# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
+# search results.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see:
+# https://xapian.org/).
+#
+# See the section "External Indexing and Searching" for details.
+# The default value is: NO.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH        = NO
+
+# The SEARCHENGINE_URL should point to a search engine hosted by a web server
+# which will return the search results when EXTERNAL_SEARCH is enabled.
+#
+# Doxygen ships with an example indexer (doxyindexer) and search engine
+# (doxysearch.cgi) which are based on the open source search engine library
+# Xapian (see:
+# https://xapian.org/). See the section "External Indexing and Searching" for
+# details.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHENGINE_URL       =
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
+# search data is written to a file for indexing by an external tool. With the
+# SEARCHDATA_FILE tag the name of this file can be specified.
+# The default file is: searchdata.xml.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+SEARCHDATA_FILE        = searchdata.xml
+
+# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the
+# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
+# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
+# projects and redirect the results back to the right project.
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTERNAL_SEARCH_ID     =
+
+# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
+# projects other than the one defined by this configuration file, but that are
+# all added to the same external search index. Each project needs to have a
+# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
+# to a relative location where the documentation can be found. The format is:
+# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
+# This tag requires that the tag SEARCHENGINE is set to YES.
+
+EXTRA_SEARCH_MAPPINGS  =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
+# The default value is: YES.
+
+GENERATE_LATEX         = YES
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: latex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_OUTPUT           = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked.
+#
+# Note that when not enabling USE_PDFLATEX the default is latex when enabling
+# USE_PDFLATEX the default is pdflatex and when in the later case latex is
+# chosen this is overwritten by pdflatex. For specific output languages the
+# default can have been set differently, this depends on the implementation of
+# the output language.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_CMD_NAME         =
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
+# index for LaTeX.
+# Note: This tag is used in the Makefile / make.bat.
+# See also: LATEX_MAKEINDEX_CMD for the part in the generated output file
+# (.tex).
+# The default file is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+MAKEINDEX_CMD_NAME     = makeindex
+
+# The LATEX_MAKEINDEX_CMD tag can be used to specify the command name to
+# generate index for LaTeX. In case there is no backslash (\) as first character
+# it will be automatically added in the LaTeX code.
+# Note: This tag is used in the generated output file (.tex).
+# See also: MAKEINDEX_CMD_NAME for the part in the Makefile / make.bat.
+# The default value is: makeindex.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_MAKEINDEX_CMD    = makeindex
+
+# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+COMPACT_LATEX          = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used by the
+# printer.
+# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x
+# 14 inches) and executive (7.25 x 10.5 inches).
+# The default value is: a4.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PAPER_TYPE             = a4
+
+# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
+# that should be included in the LaTeX output. The package can be specified just
+# by its name or with the correct syntax as to be used with the LaTeX
+# \usepackage command. To get the times font for instance you can specify :
+# EXTRA_PACKAGES=times or EXTRA_PACKAGES={times}
+# To use the option intlimits with the amsmath package you can specify:
+# EXTRA_PACKAGES=[intlimits]{amsmath}
+# If left blank no extra packages will be included.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+EXTRA_PACKAGES         =
+
+# The LATEX_HEADER tag can be used to specify a user-defined LaTeX header for
+# the generated LaTeX document. The header should contain everything until the
+# first chapter. If it is left blank doxygen will generate a standard header. It
+# is highly recommended to start with a default header using
+# doxygen -w latex new_header.tex new_footer.tex new_stylesheet.sty
+# and then modify the file new_header.tex. See also section "Doxygen usage" for
+# information on how to generate the default header that doxygen normally uses.
+#
+# Note: Only use a user-defined header if you know what you are doing!
+# Note: The header is subject to change so you typically have to regenerate the
+# default header when upgrading to a newer version of doxygen. The following
+# commands have a special meaning inside the header (and footer): For a
+# description of the possible markers and block names see the documentation.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HEADER           =
+
+# The LATEX_FOOTER tag can be used to specify a user-defined LaTeX footer for
+# the generated LaTeX document. The footer should contain everything after the
+# last chapter. If it is left blank doxygen will generate a standard footer. See
+# LATEX_HEADER for more information on how to generate a default footer and what
+# special commands can be used inside the footer. See also section "Doxygen
+# usage" for information on how to generate the default footer that doxygen
+# normally uses. Note: Only use a user-defined footer if you know what you are
+# doing!
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_FOOTER           =
+
+# The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+# LaTeX style sheets that are included after the standard style sheets created
+# by doxygen. Using this option one can overrule certain style aspects. Doxygen
+# will copy the style sheet files to the output directory.
+# Note: The order of the extra style sheet files is of importance (e.g. the last
+# style sheet in the list overrules the setting of the previous ones in the
+# list).
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_STYLESHEET =
+
+# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
+# other source files which should be copied to the LATEX_OUTPUT output
+# directory. Note that the files will be copied as-is; there are no commands or
+# markers available.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EXTRA_FILES      =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
+# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
+# contain links (just like the HTML output) instead of page references. This
+# makes the output suitable for online browsing using a PDF viewer.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+PDF_HYPERLINKS         = YES
+
+# If the USE_PDFLATEX tag is set to YES, doxygen will use the engine as
+# specified with LATEX_CMD_NAME to generate the PDF file directly from the LaTeX
+# files. Set this option to YES, to get a higher quality PDF documentation.
+#
+# See also section LATEX_CMD_NAME for selecting the engine.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+USE_PDFLATEX           = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode
+# command to the generated LaTeX files. This will instruct LaTeX to keep running
+# if errors occur, instead of asking the user for help.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BATCHMODE        = NO
+
+# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the
+# index chapters (such as File Index, Compound Index, etc.) in the output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_HIDE_INDICES     = NO
+
+# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
+# bibliography, e.g. plainnat, or ieeetr. See
+# https://en.wikipedia.org/wiki/BibTeX and \cite for more info.
+# The default value is: plain.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_BIB_STYLE        = plain
+
+# If the LATEX_TIMESTAMP tag is set to YES then the footer of each generated
+# page will contain the date and time when the page was generated. Setting this
+# to NO can help when comparing the output of multiple runs.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_TIMESTAMP        = NO
+
+# The LATEX_EMOJI_DIRECTORY tag is used to specify the (relative or absolute)
+# path from which the emoji images will be read. If a relative path is entered,
+# it will be relative to the LATEX_OUTPUT directory. If left blank the
+# LATEX_OUTPUT directory will be used.
+# This tag requires that the tag GENERATE_LATEX is set to YES.
+
+LATEX_EMOJI_DIRECTORY  =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
+# RTF output is optimized for Word 97 and may not look too pretty with other RTF
+# readers/editors.
+# The default value is: NO.
+
+GENERATE_RTF           = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: rtf.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_OUTPUT             = rtf
+
+# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF
+# documents. This may be useful for small projects and may help to save some
+# trees in general.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+COMPACT_RTF            = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will
+# contain hyperlink fields. The RTF file will contain links (just like the HTML
+# output) instead of page references. This makes the output suitable for online
+# browsing using Word or some other Word compatible readers that support those
+# fields.
+#
+# Note: WordPad (write) and others do not support links.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_HYPERLINKS         = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# configuration file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+#
+# See also section "Doxygen usage" for information on how to generate the
+# default style sheet that doxygen normally uses.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_STYLESHEET_FILE    =
+
+# Set optional variables used in the generation of an RTF document. Syntax is
+# similar to doxygen's configuration file. A template extensions file can be
+# generated using doxygen -e rtf extensionFile.
+# This tag requires that the tag GENERATE_RTF is set to YES.
+
+RTF_EXTENSIONS_FILE    =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
+# classes and files.
+# The default value is: NO.
+
+GENERATE_MAN           = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it. A directory man3 will be created inside the directory specified by
+# MAN_OUTPUT.
+# The default directory is: man.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_OUTPUT             = man
+
+# The MAN_EXTENSION tag determines the extension that is added to the generated
+# man pages. In case the manual section does not start with a number, the number
+# 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is
+# optional.
+# The default value is: .3.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_EXTENSION          = .3
+
+# The MAN_SUBDIR tag determines the name of the directory created within
+# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by
+# MAN_EXTENSION with the initial . removed.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_SUBDIR             =
+
+# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
+# will generate one additional man file for each entity documented in the real
+# man page(s). These additional files only source the real man page, but without
+# them the man command would be unable to find the correct page.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_MAN is set to YES.
+
+MAN_LINKS              = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
+# captures the structure of the code including all documentation.
+# The default value is: NO.
+
+GENERATE_XML           = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put. If a
+# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+# it.
+# The default directory is: xml.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_OUTPUT             = xml
+
+# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program
+# listings (including syntax highlighting and cross-referencing information) to
+# the XML output. Note that enabling this will significantly increase the size
+# of the XML output.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_PROGRAMLISTING     = YES
+
+# If the XML_NS_MEMB_FILE_SCOPE tag is set to YES, doxygen will include
+# namespace members in file scope as well, matching the HTML output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_XML is set to YES.
+
+XML_NS_MEMB_FILE_SCOPE = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to the DOCBOOK output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
+# that can be used to generate PDF.
+# The default value is: NO.
+
+GENERATE_DOCBOOK       = NO
+
+# The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
+# front of it.
+# The default directory is: docbook.
+# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
+DOCBOOK_OUTPUT         = docbook
+
+#---------------------------------------------------------------------------
+# Configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
+# AutoGen Definitions (see http://autogen.sourceforge.net/) file that captures
+# the structure of the code including all documentation. Note that this feature
+# is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_AUTOGEN_DEF   = NO
+
+#---------------------------------------------------------------------------
+# Configuration options related to Sqlite3 output
+#---------------------------------------------------------------------------
+
+#---------------------------------------------------------------------------
+# Configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
+# file that captures the structure of the code including all documentation.
+#
+# Note that this feature is still experimental and incomplete at the moment.
+# The default value is: NO.
+
+GENERATE_PERLMOD       = NO
+
+# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary
+# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
+# output from the Perl module output.
+# The default value is: NO.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_LATEX          = NO
+
+# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely
+# formatted so it can be parsed by a human reader. This is useful if you want to
+# understand what is going on. On the other hand, if this tag is set to NO, the
+# size of the Perl module output will be much smaller and Perl will parse it
+# just the same.
+# The default value is: YES.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_PRETTY         = YES
+
+# The names of the make variables in the generated doxyrules.make file are
+# prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful
+# so different doxyrules.make files included by the same Makefile don't
+# overwrite each other's variables.
+# This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
+# C-preprocessor directives found in the sources and include files.
+# The default value is: YES.
+
+ENABLE_PREPROCESSING   = YES
+
+# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
+# in the source code. If set to NO, only conditional compilation will be
+# performed. Macro expansion can be done in a controlled way by setting
+# EXPAND_ONLY_PREDEF to YES.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+MACRO_EXPANSION        = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
+# the macro expansion is limited to the macros specified with the PREDEFINED and
+# EXPAND_AS_DEFINED tags.
+# The default value is: NO.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_ONLY_PREDEF     = NO
+
+# If the SEARCH_INCLUDES tag is set to YES, the include files in the
+# INCLUDE_PATH will be searched if a #include is found.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SEARCH_INCLUDES        = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by the
+# preprocessor.
+# This tag requires that the tag SEARCH_INCLUDES is set to YES.
+
+INCLUDE_PATH           =
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will be
+# used.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+INCLUDE_FILE_PATTERNS  =
+
+# The PREDEFINED tag can be used to specify one or more macro names that are
+# defined before the preprocessor is started (similar to the -D option of e.g.
+# gcc). The argument of the tag is a list of macros of the form: name or
+# name=definition (no spaces). If the definition and the "=" are omitted, "=1"
+# is assumed. To prevent a macro definition from being undefined via #undef or
+# recursively expanded use the := operator instead of the = operator.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+PREDEFINED             =
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
+# tag can be used to specify a list of macro names that should be expanded. The
+# macro definition that is found in the sources will be used. Use the PREDEFINED
+# tag if you want to use a different macro definition that overrules the
+# definition found in the source code.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+EXPAND_AS_DEFINED      =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
+# remove all references to function-like macros that are alone on a line, have
+# an all uppercase name, and do not end with a semicolon. Such function macros
+# are typically used for boiler-plate code, and will confuse the parser if not
+# removed.
+# The default value is: YES.
+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
+SKIP_FUNCTION_MACROS   = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES tag can be used to specify one or more tag files. For each tag
+# file the location of the external documentation should be added. The format of
+# a tag file without this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where loc1 and loc2 can be relative or absolute paths or URLs. See the
+# section "Linking to external documentation" for more information about the use
+# of tag files.
+# Note: Each tag file must have a unique name (where the name does NOT include
+# the path). If a tag file is not located in the directory in which doxygen is
+# run, you must also specify the path to the tagfile here.
+
+TAGFILES               =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
+# tag file that is based on the input files it reads. See section "Linking to
+# external documentation" for more information about the usage of tag files.
+
+GENERATE_TAGFILE       =
+
+# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
+# the class index. If set to NO, only the inherited external classes will be
+# listed.
+# The default value is: NO.
+
+ALLEXTERNALS           = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will be
+# listed.
+# The default value is: YES.
+
+EXTERNAL_GROUPS        = YES
+
+# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in
+# the related pages index. If set to NO, only the current project's pages will
+# be listed.
+# The default value is: YES.
+
+EXTERNAL_PAGES         = YES
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# You can include diagrams made with dia in doxygen documentation. Doxygen will
+# then run dia to produce the diagram and insert it in the documentation. The
+# DIA_PATH tag allows you to specify the directory where the dia binary resides.
+# If left empty dia is assumed to be found in the default search path.
+
+DIA_PATH               =
+
+# If set to YES the inheritance and collaboration graphs will hide inheritance
+# and usage relations if the target is undocumented or is not a class.
+# The default value is: YES.
+
+HIDE_UNDOC_RELATIONS   = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz (see:
+# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
+# Bell Labs. The other options in this section have no effect if this option is
+# set to NO
+# The default value is: NO.
+
+HAVE_DOT               = NO
+
+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
+# to run in parallel. When set to 0 doxygen will base this on the number of
+# processors available in the system. You can set it explicitly to a value
+# larger than 0 to get control over the balance between CPU load and processing
+# speed.
+# Minimum value: 0, maximum value: 32, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_NUM_THREADS        = 0
+
+# When you want a differently looking font in the dot files that doxygen
+# generates you can specify the font name using DOT_FONTNAME. You need to make
+# sure dot is able to find the font, which can be done by putting it in a
+# standard location or by setting the DOTFONTPATH environment variable or by
+# setting DOT_FONTPATH to the directory containing the font.
+# The default value is: Helvetica.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTNAME           = Helvetica
+
+# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
+# dot graphs.
+# Minimum value: 4, maximum value: 24, default value: 10.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTSIZE           = 10
+
+# By default doxygen will tell dot to use the default font as specified with
+# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
+# the path where dot can find it using this tag.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_FONTPATH           =
+
+# If the CLASS_GRAPH tag is set to YES (or GRAPH) then doxygen will generate a
+# graph for each documented class showing the direct and indirect inheritance
+# relations. In case HAVE_DOT is set as well dot will be used to draw the graph,
+# otherwise the built-in generator will be used. If the CLASS_GRAPH tag is set
+# to TEXT the direct and indirect inheritance relations will be shown as texts /
+# links.
+# Possible values are: NO, YES, TEXT and GRAPH.
+# The default value is: YES.
+
+CLASS_GRAPH            = YES
+
+# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
+# graph for each documented class showing the direct and indirect implementation
+# dependencies (inheritance, containment, and class references variables) of the
+# class with other documented classes.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+COLLABORATION_GRAPH    = YES
+
+# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
+# groups, showing the direct groups dependencies.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GROUP_GRAPHS           = YES
+
+# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+UML_LOOK               = NO
+
+# If the UML_LOOK tag is enabled, the fields and methods are shown inside the
+# class node. If there are many fields or methods and many nodes the graph may
+# become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the
+# number of items for each type to make the size more manageable. Set this to 0
+# for no limit. Note that the threshold may be exceeded by 50% before the limit
+# is enforced. So when you set the threshold to 10, up to 15 fields may appear,
+# but if the number exceeds 15, the total amount of fields shown is limited to
+# 10.
+# Minimum value: 0, maximum value: 100, default value: 10.
+# This tag requires that the tag UML_LOOK is set to YES.
+
+UML_LIMIT_NUM_FIELDS   = 10
+
+# If the DOT_UML_DETAILS tag is set to NO, doxygen will show attributes and
+# methods without types and arguments in the UML graphs. If the DOT_UML_DETAILS
+# tag is set to YES, doxygen will add type and arguments for attributes and
+# methods in the UML graphs. If the DOT_UML_DETAILS tag is set to NONE, doxygen
+# will not generate fields with class member information in the UML graphs. The
+# class diagrams will look similar to the default class diagrams but using UML
+# notation for the relationships.
+# Possible values are: NO, YES and NONE.
+# The default value is: NO.
+# This tag requires that the tag UML_LOOK is set to YES.
+
+DOT_UML_DETAILS        = NO
+
+# The DOT_WRAP_THRESHOLD tag can be used to set the maximum number of characters
+# to display on a single line. If the actual line length exceeds this threshold
+# significantly it will wrapped across multiple lines. Some heuristics are apply
+# to avoid ugly line breaks.
+# Minimum value: 0, maximum value: 1000, default value: 17.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_WRAP_THRESHOLD     = 17
+
+# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
+# collaboration graphs will show the relations between templates and their
+# instances.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+TEMPLATE_RELATIONS     = NO
+
+# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to
+# YES then doxygen will generate a graph for each documented file showing the
+# direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDE_GRAPH          = YES
+
+# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
+# set to YES then doxygen will generate a graph for each documented file showing
+# the direct and indirect include dependencies of the file with other documented
+# files.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INCLUDED_BY_GRAPH      = YES
+
+# If the CALL_GRAPH tag is set to YES then doxygen will generate a call
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command. Disabling a call graph can be
+# accomplished by means of the command \hidecallgraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALL_GRAPH             = NO
+
+# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
+# dependency graph for every global function or class method.
+#
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable caller graphs for selected
+# functions only using the \callergraph command. Disabling a caller graph can be
+# accomplished by means of the command \hidecallergraph.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+CALLER_GRAPH           = NO
+
+# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
+# hierarchy of all classes instead of a textual one.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GRAPHICAL_HIERARCHY    = YES
+
+# If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the
+# dependencies a directory has on other directories in a graphical way. The
+# dependency relations are determined by the #include relations between the
+# files in the directories.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DIRECTORY_GRAPH        = YES
+
+# The DIR_GRAPH_MAX_DEPTH tag can be used to limit the maximum number of levels
+# of child directories generated in directory dependency graphs by dot.
+# Minimum value: 1, maximum value: 25, default value: 1.
+# This tag requires that the tag DIRECTORY_GRAPH is set to YES.
+
+DIR_GRAPH_MAX_DEPTH    = 1
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. For an explanation of the image formats see the section
+# output formats in the documentation of the dot tool (Graphviz (see:
+# http://www.graphviz.org/)).
+# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
+# to make the SVG files visible in IE 9+ (other browsers do not have this
+# requirement).
+# Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo,
+# png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and
+# png:gdiplus:gdiplus.
+# The default value is: png.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_IMAGE_FORMAT       = png
+
+# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
+# enable generation of interactive SVG images that allow zooming and panning.
+#
+# Note that this requires a modern browser other than Internet Explorer. Tested
+# and working are Firefox, Chrome, Safari, and Opera.
+# Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make
+# the SVG files visible. Older versions of IE do not have SVG support.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+INTERACTIVE_SVG        = NO
+
+# The DOT_PATH tag can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_PATH               =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the \dotfile
+# command).
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOTFILE_DIRS           =
+
+# The MSCFILE_DIRS tag can be used to specify one or more directories that
+# contain msc files that are included in the documentation (see the \mscfile
+# command).
+
+MSCFILE_DIRS           =
+
+# The DIAFILE_DIRS tag can be used to specify one or more directories that
+# contain dia files that are included in the documentation (see the \diafile
+# command).
+
+DIAFILE_DIRS           =
+
+# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the
+# path where java can find the plantuml.jar file or to the filename of jar file
+# to be used. If left blank, it is assumed PlantUML is not used or called during
+# a preprocessing step. Doxygen will generate a warning when it encounters a
+# \startuml command in this case and will not generate output for the diagram.
+
+PLANTUML_JAR_PATH      =
+
+# When using plantuml, the PLANTUML_CFG_FILE tag can be used to specify a
+# configuration file for plantuml.
+
+PLANTUML_CFG_FILE      =
+
+# When using plantuml, the specified paths are searched for files specified by
+# the !include statement in a plantuml block.
+
+PLANTUML_INCLUDE_PATH  =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
+# that will be shown in the graph. If the number of nodes in a graph becomes
+# larger than this value, doxygen will truncate the graph, which is visualized
+# by representing a node as a red box. Note that doxygen if the number of direct
+# children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that
+# the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+# Minimum value: 0, maximum value: 10000, default value: 50.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_GRAPH_MAX_NODES    = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
+# generated by dot. A depth value of 3 means that only nodes reachable from the
+# root by following a path via at most 3 edges will be shown. Nodes that lay
+# further from the root node will be omitted. Note that setting this option to 1
+# or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+# Minimum value: 0, maximum value: 1000, default value: 0.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+MAX_DOT_GRAPH_DEPTH    = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not seem
+# to support this out of the box.
+#
+# Warning: Depending on the platform used, enabling this option may lead to
+# badly anti-aliased labels on the edges of a graph (i.e. they become hard to
+# read).
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_TRANSPARENT        = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10) support
+# this, this feature is disabled by default.
+# The default value is: NO.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+DOT_MULTI_TARGETS      = NO
+
+# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page
+# explaining the meaning of the various boxes and arrows in the dot generated
+# graphs.
+# Note: This tag requires that UML_LOOK isn't set, i.e. the doxygen internal
+# graphical representation for inheritance and collaboration diagrams is used.
+# The default value is: YES.
+# This tag requires that the tag HAVE_DOT is set to YES.
+
+GENERATE_LEGEND        = YES
+
+# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate
+# files that are used to generate the various graphs.
+#
+# Note: This setting is not only used for dot files but also for msc temporary
+# files.
+# The default value is: YES.
+
+DOT_CLEANUP            = YES
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000000000000000000000000000000000000..38fb46aaad50584e54565799d636ee8b803d2b9f
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2022 Chair for Production Metrology and Quality Management | RWTH Aachen University
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/README.md b/README.md
index a04c284b18fb354ab70ad3a69e15a7a6ebbccea6..44b0a3f1098d2afbe0517640e523c05845b6a79e 100644
--- a/README.md
+++ b/README.md
@@ -1,92 +1,55 @@
-# C++ Interface
-
-
-
-## Getting started
-
-To make it easy for you to get started with GitLab, here's a list of recommended next steps.
-
-Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)!
-
-## Add your files
-
-- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files
-- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command:
-
-```
-cd existing_repo
-git remote add origin https://git-ce.rwth-aachen.de/wzl-mq-public/soil/cpp-interface.git
-git branch -M main
-git push -uf origin main
-```
-
-## Integrate with your tools
-
-- [ ] [Set up project integrations](https://git-ce.rwth-aachen.de/wzl-mq-public/soil/cpp-interface/-/settings/integrations)
-
-## Collaborate with your team
-
-- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/)
-- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html)
-- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically)
-- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/)
-- [ ] [Automatically merge when pipeline succeeds](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html)
-
-## Test and Deploy
-
-Use the built-in continuous integration in GitLab.
-
-- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html)
-- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)](https://docs.gitlab.com/ee/user/application_security/sast/)
-- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html)
-- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/)
-- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html)
-
-***
-
-# Editing this README
-
-When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!).  Thank you to [makeareadme.com](https://www.makeareadme.com/) for this template.
-
-## Suggestions for a good README
-Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information.
-
-## Name
-Choose a self-explaining name for your project.
-
-## Description
-Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors.
-
-## Badges
-On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge.
-
-## Visuals
-Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method.
-
-## Installation
-Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection.
-
-## Usage
-Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README.
-
-## Support
-Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc.
-
-## Roadmap
-If you have ideas for releases in the future, it is a good idea to list them in the README.
-
-## Contributing
-State if you are open to contributions and what your requirements are for accepting them.
-
-For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self.
-
-You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser.
-
-## Authors and acknowledgment
-Show your appreciation to those who have contributed to the project.
-
-## License
-For open source projects, say how it is licensed.
-
-## Project status
-If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers.
+# SOIL C++
+The **Unified Device Interface** provides four dynamic libraries which assemble a web-service for a sensor or measurement device.
+The interface provides a RESTful HTTP server, a MQTT-Publisher, and UDP-Broadcaster, whereas the UDP-Broadcaster is of minor importance. 
+The libary allows to fully implement a SOIL sensor service. By implementing your device against the provided API, 
+it is possible to send message via MQTT which are then recieved by clients and to access the measurements and methods of the sensor/device via HTTP.
+
+If a more detailed introduction or explanation of these concepts is requried, 
+please contact [Benjamin Montavon](mailto:b.montavon@wzl-mq.rwth-aachen.de) or [Matthias Bodenbenner](mailto:m.bodenbenner@wzl-mq.rwth-aachen.de).
+Same holds for any kind of problems when using, compiling, etc. the libraries.
+
+## Development setup
+### Dependencies
+This library has the following dependencies (VCPKG naming):
+- boost-date-time
+- boost-asio
+- boost-thread
+- boost-algorithm
+- nlohmann-json
+- cpprestsdk
+- paho-mqttpp3
+- openssl
+
+### Windows
+1. Install Visual Studio - The most recent developments have been carried out with Visual Studio 2022.
+The Community Edition is known to be sufficient and can be used free of charge for academic purposes. You can download it and see more details at [https://visualstudio.microsoft.com/de/vs/community/](https://visualstudio.microsoft.com/de/vs/community/).
+2. Install VCPKG
+    1. Clone the [vcpkg-repository](https://github.com/microsoft/vcpkg).
+    2. Go into vcpkg folder.
+    3. Run *.\bootstrap-vcpkg.bat*
+    2. Configurure environment variables and path:
+        1. Add environment variable ```VCPKG_INSTALLED``` and set the value to *[vcpkg-directory]/installed*. The Visual Studio project heavily depends on this path!
+        2. Add the vcpkg directory to PATH.
+    3. Do not forget to restart Visual Studio after changing the variables!
+3. Install required packages. You can install **all** dependencies by executing *install_packages.bat*. It may take a lot of time (> 1h), have patience!. If you only want to use a specific library install the following packages. For compiling the x64 configuration install the packages and append *:x64-windows* (e.g. boost-date-time:x64-windows).
+4. Compile source code.
+5. The compiled *.dll-files and generated *.lib are copied into the *dist* folder under the chosen configuration (i.e. ./x64/Debug)
+6. The *.dll files coming with the library still reside within ```VCPKG_INSTALLED``` within the respective subfolders (<x64/x86>-windows/[debug/]bin). Adding all folders to ```PATH``` may cause problems during debugging. It is recommended to put them next to the application or carefully select path modifications. During debugging, Visual Studio is managing this problem for you. 
+
+### Linux
+1. Install `git`, `gcc`, `make`, `cmake` at least and configure your build environment
+2. Install VCPKG
+    1. Clone the [vcpkg-repository](https://github.com/microsoft/vcpkg).
+    2. Go into vcpkg folder.
+    3. Run *./bootstrap-vcpkg.sh*
+3. Install required packages. You may use *install_packages.sh*.
+4. Run CMAKE using the vcpkg toolchain according to [https://vcpkg.readthedocs.io/en/latest/examples/installing-and-using-packages/#cmake](https://vcpkg.readthedocs.io/en/latest/examples/installing-and-using-packages/#cmake). When using the CMake GUI, use the option *Specify Toolchain for Cross-Compiling*, even if not Cross-Compiling. From the command-line, use `CMAKE_TOOLCHAIN_FILE`.
+Using  `projects/linux/cmake/CMakeLists.txt` will build all components and test at once.
+
+
+## Implement device conform to the unified interface
+To implement a device service which is conform to the unified interface on has to inherit from the three classes *Object*, *Function* and *Variable*
+of the **REST** project. The *main.cpp* of the *TEST* project can be used as template for main method of your device.
+
+## Known Issues and Warnings
+This project recently changed the default string backend for cpprestsdk from `std::wstring` to `std::string`. You may need to adjust some little pieces of code at your end when updating.
diff --git a/assets/MQTT-CA.pem b/assets/MQTT-CA.pem
new file mode 100644
index 0000000000000000000000000000000000000000..b97eb30c90978282cc294e54cffa72a213f82608
--- /dev/null
+++ b/assets/MQTT-CA.pem
@@ -0,0 +1,89 @@
+subject= /C=DE/O=Verein zur Foerderung eines Deutschen Forschungsnetzes e. V./OU=DFN-PKI/CN=DFN-Verein Global Issuing CA
+-----BEGIN CERTIFICATE-----
+MIIFrDCCBJSgAwIBAgIHG2O60B4sPTANBgkqhkiG9w0BAQsFADCBlTELMAkGA1UE
+BhMCREUxRTBDBgNVBAoTPFZlcmVpbiB6dXIgRm9lcmRlcnVuZyBlaW5lcyBEZXV0
+c2NoZW4gRm9yc2NodW5nc25ldHplcyBlLiBWLjEQMA4GA1UECxMHREZOLVBLSTEt
+MCsGA1UEAxMkREZOLVZlcmVpbiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAyMB4X
+DTE2MDUyNDExMzg0MFoXDTMxMDIyMjIzNTk1OVowgY0xCzAJBgNVBAYTAkRFMUUw
+QwYDVQQKDDxWZXJlaW4genVyIEZvZXJkZXJ1bmcgZWluZXMgRGV1dHNjaGVuIEZv
+cnNjaHVuZ3NuZXR6ZXMgZS4gVi4xEDAOBgNVBAsMB0RGTi1QS0kxJTAjBgNVBAMM
+HERGTi1WZXJlaW4gR2xvYmFsIElzc3VpbmcgQ0EwggEiMA0GCSqGSIb3DQEBAQUA
+A4IBDwAwggEKAoIBAQCdO3kcR94fhsvGadcQnjnX2aIw23IcBX8pX0to8a0Z1kzh
+axuxC3+hq+B7i4vYLc5uiDoQ7lflHn8EUTbrunBtY6C+li5A4dGDTGY9HGRp5Zuk
+rXKuaDlRh3nMF9OuL11jcUs5eutCp5eQaQW/kP+kQHC9A+e/nhiIH5+ZiE0OR41I
+X2WZENLZKkntwbktHZ8SyxXTP38eVC86rpNXp354ytVK4hrl7UF9U1/Isyr1ijCs
+7RcFJD+2oAsH/U0amgNSoDac3iSHZeTn+seWcyQUzdDoG2ieGFmudn730Qp4PIdL
+sDfPU8o6OBDzy0dtjGQ9PFpFSrrKgHy48+enTEzNAgMBAAGjggIFMIICATASBgNV
+HRMBAf8ECDAGAQH/AgEBMA4GA1UdDwEB/wQEAwIBBjApBgNVHSAEIjAgMA0GCysG
+AQQBga0hgiweMA8GDSsGAQQBga0hgiwBAQQwHQYDVR0OBBYEFGs6mIv58lOJ2uCt
+sjIeCR/oqjt0MB8GA1UdIwQYMBaAFJPj2DIm2tXxSqWRSuDqS+KiDM/hMIGPBgNV
+HR8EgYcwgYQwQKA+oDyGOmh0dHA6Ly9jZHAxLnBjYS5kZm4uZGUvZ2xvYmFsLXJv
+b3QtZzItY2EvcHViL2NybC9jYWNybC5jcmwwQKA+oDyGOmh0dHA6Ly9jZHAyLnBj
+YS5kZm4uZGUvZ2xvYmFsLXJvb3QtZzItY2EvcHViL2NybC9jYWNybC5jcmwwgd0G
+CCsGAQUFBwEBBIHQMIHNMDMGCCsGAQUFBzABhidodHRwOi8vb2NzcC5wY2EuZGZu
+LmRlL09DU1AtU2VydmVyL09DU1AwSgYIKwYBBQUHMAKGPmh0dHA6Ly9jZHAxLnBj
+YS5kZm4uZGUvZ2xvYmFsLXJvb3QtZzItY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0
+MEoGCCsGAQUFBzAChj5odHRwOi8vY2RwMi5wY2EuZGZuLmRlL2dsb2JhbC1yb290
+LWcyLWNhL3B1Yi9jYWNlcnQvY2FjZXJ0LmNydDANBgkqhkiG9w0BAQsFAAOCAQEA
+gXhFpE6kfw5V8Amxaj54zGg1qRzzlZ4/8/jfazh3iSyNta0+x/KUzaAGrrrMqLGt
+Mwi2JIZiNkx4blDw1W5gjU9SMUOXRnXwYuRuZlHBQjFnUOVJ5zkey5/KhkjeCBT/
+FUsrZpugOJ8Azv2n69F/Vy3ITF/cEBGXPpYEAlyEqCk5bJT8EJIGe57u2Ea0G7UD
+DDjZ3LCpP3EGC7IDBzPCjUhjJSU8entXbveKBTjvuKCuL/TbB9VbhBjBqbhLzmyQ
+GoLkuT36d/HSHzMCv1PndvncJiVBby+mG/qkE5D6fH7ZC2Bd7L/KQaBh+xFJKdio
+LXUV2EoY6hbvVTQiGhONBg==
+-----END CERTIFICATE-----
+subject= /C=DE/O=Verein zur Foerderung eines Deutschen Forschungsnetzes e. V./OU=DFN-PKI/CN=DFN-Verein Certification Authority 2
+-----BEGIN CERTIFICATE-----
+MIIFEjCCA/qgAwIBAgIJAOML1fivJdmBMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYD
+VQQGEwJERTErMCkGA1UECgwiVC1TeXN0ZW1zIEVudGVycHJpc2UgU2VydmljZXMg
+R21iSDEfMB0GA1UECwwWVC1TeXN0ZW1zIFRydXN0IENlbnRlcjElMCMGA1UEAwwc
+VC1UZWxlU2VjIEdsb2JhbFJvb3QgQ2xhc3MgMjAeFw0xNjAyMjIxMzM4MjJaFw0z
+MTAyMjIyMzU5NTlaMIGVMQswCQYDVQQGEwJERTFFMEMGA1UEChM8VmVyZWluIHp1
+ciBGb2VyZGVydW5nIGVpbmVzIERldXRzY2hlbiBGb3JzY2h1bmdzbmV0emVzIGUu
+IFYuMRAwDgYDVQQLEwdERk4tUEtJMS0wKwYDVQQDEyRERk4tVmVyZWluIENlcnRp
+ZmljYXRpb24gQXV0aG9yaXR5IDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
+AoIBAQDLYNf/ZqFBzdL6h5eKc6uZTepnOVqhYIBHFU6MlbLlz87TV0uNzvhWbBVV
+dgfqRv3IA0VjPnDUq1SAsSOcvjcoqQn/BV0YD8SYmTezIPZmeBeHwp0OzEoy5xad
+rg6NKXkHACBU3BVfSpbXeLY008F0tZ3pv8B3Teq9WQfgWi9sPKUA3DW9ZQ2PfzJt
+8lpqS2IB7qw4NFlFNkkF2njKam1bwIFrEczSPKiL+HEayjvigN0WtGd6izbqTpEp
+PbNRXK2oDL6dNOPRDReDdcQ5HrCUCxLx1WmOJfS4PSu/wI7DHjulv1UQqyquF5de
+M87I8/QJB+MChjFGawHFEAwRx1npAgMBAAGjggF0MIIBcDAOBgNVHQ8BAf8EBAMC
+AQYwHQYDVR0OBBYEFJPj2DIm2tXxSqWRSuDqS+KiDM/hMB8GA1UdIwQYMBaAFL9Z
+IDYAeaCgImuM1fJh0rgsy4JKMBIGA1UdEwEB/wQIMAYBAf8CAQIwMwYDVR0gBCww
+KjAPBg0rBgEEAYGtIYIsAQEEMA0GCysGAQQBga0hgiweMAgGBmeBDAECAjBMBgNV
+HR8ERTBDMEGgP6A9hjtodHRwOi8vcGtpMDMzNi50ZWxlc2VjLmRlL3JsL1RlbGVT
+ZWNfR2xvYmFsUm9vdF9DbGFzc18yLmNybDCBhgYIKwYBBQUHAQEEejB4MCwGCCsG
+AQUFBzABhiBodHRwOi8vb2NzcDAzMzYudGVsZXNlYy5kZS9vY3NwcjBIBggrBgEF
+BQcwAoY8aHR0cDovL3BraTAzMzYudGVsZXNlYy5kZS9jcnQvVGVsZVNlY19HbG9i
+YWxSb290X0NsYXNzXzIuY2VyMA0GCSqGSIb3DQEBCwUAA4IBAQCHC/8+AptlyFYt
+1juamItxT9q6Kaoh+UYu9bKkD64ROHk4sw50unZdnugYgpZi20wz6N35at8yvSxM
+R2BVf+d0a7Qsg9h5a7a3TVALZge17bOXrerufzDmmf0i4nJNPoRb7vnPmep/11I5
+LqyYAER+aTu/de7QCzsazeX3DyJsR4T2pUeg/dAaNH2t0j13s+70103/w+jlkk9Z
+PpBHEEqwhVjAb3/4ru0IQp4e1N8ULk2PvJ6Uw+ft9hj4PEnnJqinNtgs3iLNi4LY
+2XjiVRKjO4dEthEL1QxSr2mMDwbf0KJTi1eYe8/9ByT0/L3D/UqSApcb8re2z2WK
+GqK1chk5
+-----END CERTIFICATE-----
+subject= /C=DE/O=T-Systems Enterprise Services GmbH/OU=T-Systems Trust Center/CN=T-TeleSec GlobalRoot Class 2
+-----BEGIN CERTIFICATE-----
+MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUx
+KzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAd
+BgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNl
+YyBHbG9iYWxSb290IENsYXNzIDIwHhcNMDgxMDAxMTA0MDE0WhcNMzMxMDAxMjM1
+OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnBy
+aXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50
+ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDIwggEiMA0G
+CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCqX9obX+hzkeXaXPSi5kfl82hVYAUd
+AqSzm1nzHoqvNK38DcLZSBnuaY/JIPwhqgcZ7bBcrGXHX+0CfHt8LRvWurmAwhiC
+FoT6ZrAIxlQjgeTNuUk/9k9uN0goOA/FvudocP05l03Sx5iRUKrERLMjfTlH6VJi
+1hKTXrcxlkIF+3anHqP1wvzpesVsqXFP6st4vGCvx9702cu+fjOlbpSD8DT6Iavq
+jnKgP6TeMFvvhk1qlVtDRKgQFRzlAVfFmPHmBiiRqiDFt1MmUUOyCxGVWOHAD3bZ
+wI18gfNycJ5v/hqO2V81xrJvNHy+SE/iWjnX2J14np+GPgNeGYtEotXHAgMBAAGj
+QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS/
+WSA2AHmgoCJrjNXyYdK4LMuCSjANBgkqhkiG9w0BAQsFAAOCAQEAMQOiYQsfdOhy
+NsZt+U2e+iKo4YFWz827n+qrkRk4r6p8FU3ztqONpfSO9kSpp+ghla0+AGIWiPAC
+uvxhI+YzmzB6azZie60EI4RYZeLbK4rnJVM3YlNfvNoBYimipidx5joifsFvHZVw
+IEoHNN/q/xWA5brXethbdXwFeilHfkCoMRN3zUA7tFFHei4R40cR3p1m0IvVVGb6
+g1XqfMIpiRvpb7PO4gWEyS8+eIVibslfwXhjdFjASBgMmTnrpMwatXlajRWc2BQN
+9noHV8cigwUtPJslJj0Ys6lDfMjIq2SPDqO/nBudMNva0Bkuqjzx+zOAduTNrRlP
+BSeOE6Fuwg==
+-----END CERTIFICATE-----
diff --git a/assets/mqtt-websocket.json b/assets/mqtt-websocket.json
new file mode 100644
index 0000000000000000000000000000000000000000..d9dec2c9d3f13f8043e60192c91163e6cfa62936
--- /dev/null
+++ b/assets/mqtt-websocket.json
@@ -0,0 +1,15 @@
+{
+    "host" : "example.com",
+    "port" : 443,
+    "username" : "vhost:username",
+    "password" : "password",
+    "clean" : true,
+    "root" : "username",
+    "keep_alive" : 30,
+    "connection_timeout" : 15,
+    "ssl" : true,
+    "verify" : true,
+    "websocket" : true,
+    "path" : "/",
+    "certificate_authority" : "MQTT-CA.pem"
+}
\ No newline at end of file
diff --git a/assets/mqtt.json b/assets/mqtt.json
new file mode 100644
index 0000000000000000000000000000000000000000..2cf9266b1cb3b43c02bb0fa68518b46a5518acab
--- /dev/null
+++ b/assets/mqtt.json
@@ -0,0 +1,15 @@
+{
+    "host" : "example.com",
+    "port" : 8883,
+    "username" : "vhost:username",
+    "password" : "password",
+    "clean" : true,
+    "root" : "username",
+    "keep_alive" : 30,
+    "connection_timeout" : 15,
+    "ssl" : true,
+    "verify" : true,
+    "websocket" : false,
+    "path" : "",
+    "certificate_authority" : "MQTT-CA.pem"
+}
\ No newline at end of file
diff --git a/assets/private-device-key.pem b/assets/private-device-key.pem
new file mode 100644
index 0000000000000000000000000000000000000000..ae82e40ebf67a9a428b98a5233baafae9bcdc92e
--- /dev/null
+++ b/assets/private-device-key.pem
@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXgIBAAKBgQCbHpbqyXzujdllO8EXPhoWQHVh06q+Wy9dHj6c0EuhRv3JSZJD
+rY/fy2j+AwjbsN8o7V/TxDwm7ulUNLK1h2wmD2ocoB+aaAiS2rgBKMB/UN3Vdpio
+ivUcd9W++9LEIFl0pu7P8MgHVfJd4NISZWgsG7vHXUtwie2SYAv7IuVdjQIDAQAB
+AoGAV5IPVQDmvK3r2tC/E2YFyCYfnlimfcxwkrsuUcztxWCUiXw1TGvBW3A0F6KS
+76OMeEh53s1bwAcERntxoDWRgZIV/J1as3uZkE4mdxImlNTNhKdtkJAERRvqvbQn
+cJwT0vx6Rm9t6hEBdqW58FxPe8fVPpQkxvwTCheHqlAGTIECQQDH9SeJSXXuDybv
+qGCs31a7W25kHYYP4ZLNShJbnN2DXD+3HCLchH4i1xn8+260FxY/p3XNQumP7Fvq
+8uscgr/9AkEAxphS7ucvkqs/f5JISU1JVJOJ3qPgJDg3T7zjD4UtQzcWEx3QNBqe
+ZNwGd1N2fn0a9P7drrtT646dPxn2k/Mg0QJBAML/6VaRNVi7nhUJ932fME32lGk+
+AYdrTGa3Xb/J8pwwUlKYNccnznrbmpSD/ynRefkJrnBGWM/qiJlP3MkpGWECQQCS
+PCQFaxLqy1LMm2jDITf4IVQKL12jDgocmxgPm59CuVN17CQd2eP8nM/eGgVNCs5I
+zUtrmOEouTEs/+9D7mmhAkEAl+9t/PAPfGfCY87/zmhSC57a1eqnOID4nFdPDKzO
+z9bQq4XAiTJbL8bA3eqvEEGSGBy3l5jAAep/wJj/0q6vXQ==
+-----END RSA PRIVATE KEY-----
diff --git a/assets/udp.json b/assets/udp.json
new file mode 100644
index 0000000000000000000000000000000000000000..ce85f61d86bdd8ff19d6872fbe5b471af89e0019
--- /dev/null
+++ b/assets/udp.json
@@ -0,0 +1,8 @@
+{
+    "clients" : [
+        {
+            "address" : "127.0.0.1",
+            "port" : 50001
+        }
+    ]
+}
\ No newline at end of file
diff --git a/copy_packages.bat b/copy_packages.bat
new file mode 100644
index 0000000000000000000000000000000000000000..14fd540ae6234d099d5aae7be84b2777ddd0bb35
--- /dev/null
+++ b/copy_packages.bat
@@ -0,0 +1,4 @@
+REM xcopy %VCPKG_INSTALLED%\x64-windows\include\boost .\dist\include\boost /E
+REM xcopy %VCPKG_INSTALLED%\x64-windows\include\cpprestsdk .\dist\include\cpprestsdk /E
+REM xcopy %VCPKG_INSTALLED%\x64-windows\include\pplx .\dist\include\pplx /E
+REM xcopy %VCPKG_INSTALLED%\x64-windows\include\nlohmann .\dist\include\nlohmann /E
\ No newline at end of file
diff --git a/dist/include/MQTT/Configuration.h b/dist/include/MQTT/Configuration.h
new file mode 100644
index 0000000000000000000000000000000000000000..b24b2d2ccb474cc8ca1e558c2ca813c2643fb356
--- /dev/null
+++ b/dist/include/MQTT/Configuration.h
@@ -0,0 +1,166 @@
+#pragma once
+#include <string>
+#include "constants.h"
+
+namespace MQTT
+{
+	/**
+	 * @brief MQTT publishing configuration.
+	 * 
+	 * Class acting as enhanced struct to accomodate all configuration options.
+	 * Therefore all members are public to be directly accessible.
+	*/
+	class DLL Configuration
+	{
+	public:
+		/**
+		 * @brief Hostname of the MQTT broker
+		 * 
+		 * Adress or hostname of the MQTT broker. Can be an FQDN or IP address.
+		 * Defaults to @c 127.0.0.1 .
+		*/
+		std::string host;
+
+		/**
+		 * @brief Port of the MQTT broker
+		 * 
+		 * Port to use for the MQTT broker.
+		 * Defaults to @c 1883 in the constructor. Typical ports are 1883 (MQTT), 8883 (MQTT over TLS) and 443 (MQTT over secure websockets).
+		*/
+		int port;
+
+		/**
+		 * @brief Username for connecting to the MQTT broker
+		 * 
+		 * Username when connecting to the MQTT broker.
+		 * When using RabbitMQ, make sure to consider the VHOST prefix.
+		 * Defaults to @c guest .
+		*/
+		std::string username;
+
+		/**
+		 * @brief Password for connecting to the MQTT broker
+		 * 
+		 * Password when connecting to the MQTT broker. Be mindful with passwords when committing to version control!
+		 * Defaults to @c guest .
+		*/
+		std::string password;
+
+		/**
+		 * @brief Clean session flag
+		 * 
+		 * Flag whether to start a clean MQTT session.
+		 * Defaults to @c true .
+		*/
+		bool clean_session;
+
+		/**
+		 * @brief  MQTT root topic
+		 * 
+		 * Root topic that is prepended to any published topic.
+		 * This is intended for cases where permisions enfore that you publish under a defined root topic. 
+		 * The default is no root topic prefix.
+		*/
+		std::string root;
+
+		/**
+		 * @brief Keep alive interval in seconds
+		 * 
+		 * Keep alive interval in seconds for the MQTT client.
+		 * Defaults to @c 30 .
+		*/
+		int keep_alive;
+
+		/**
+		 * @brief Minimum delay between to messages in milliseconds
+		 * 
+		 * A minimum delay which should be kept between sending two messages, provided in milliseconds.
+		 * Defaults to @c 0 .
+		 * @post This is not enforced in the client, but should be called as property of the publishing by the using code.
+		*/
+		int min_delay_ms;
+		
+		/**
+		 * @brief Connection timeout in seconds
+		 * 
+		 * Number of seconds to wait until the connection succeeds. 
+		 * This influence the length of the blocking call during connection.
+		 * Defaults to @c 30 .
+		*/
+		int connection_timeout_s;
+
+		/**
+		 * @brief Use secured connection
+		 * 
+		 * Boolean flag whether to use a secured connection (MQTT over TLS or secure websocket).
+		 * Defaults to @c false . 
+		 * @pre If not ignoring verification, trusted root certificated must be provided in a PEM-file.
+		*/
+		bool ssl;
+
+		/**
+		 * @brief Skip SSL verification
+		 * 
+		 * Boolean flag whether to ignore SSL certificate validation, i.e. for hostname matching and trusted authority.
+		 * This should only be used for basic development purposes.
+		*/
+		bool verify;
+
+		/**
+		 * @brief Use websocket protocol
+		 * 
+		 * Boolean flag whether to use the websocket extension of MQTT.
+		 * Make sure to specify the correct path.
+		 * Defaults to @c false .
+		*/
+		bool websocket;
+
+		/**
+		 * @brief Websocket path
+		 * 
+		 * Websocket path that forms the last part of the URI, e.g. @c /mqtt-ws/.
+		 * Defaults to @c "" .
+		*/
+		std::string path;
+
+		/**
+		 * @brief Path to CA PEM-file
+		 * 
+		 * Path to a file containing the trusted certificate authorities in PEM-format for OpenSSL.
+		 * This is mandatory when properly implementing secure MQTT.
+		 * @pre Make sure that the hostname used for connecting is matching its name in the certificate chain.
+		*/
+		std::string certificate_authority;
+		
+		/**
+		 * @brief Default constructor
+		 * 
+		 * Default constructor applying the defaults documented. 
+		*/
+		Configuration();
+
+		/**
+		 * @brief JSON Constructor
+		 * 
+		 * Reads the configuration from a JSON-file.
+		 * See the project assets for an example file.
+		 * @param [in] filename Path to JSON-file (absolute or relative).
+		*/
+		Configuration(std::string filename);
+
+		/**
+		* @brief Destructor
+		* 
+		* Standard Destructor
+		*/
+		~Configuration();
+
+		/**
+		 * @brief URI Builder
+		 * 
+		 * Builds an URI for the underlying Paho-MQTT library.
+		 * @return Full URI string, e.g. @c tcp://127.0.0.1:1883 .
+		*/
+		std::string uri();
+	};
+}
\ No newline at end of file
diff --git a/dist/include/MQTT/LocalException.h b/dist/include/MQTT/LocalException.h
new file mode 100644
index 0000000000000000000000000000000000000000..46fe26285282a69140b69e07350dfd292e103498
--- /dev/null
+++ b/dist/include/MQTT/LocalException.h
@@ -0,0 +1,60 @@
+#pragma once
+#include "constants.h"
+#include <stdexcept>
+
+
+namespace MQTT
+{
+	/**
+	 * @brief MQTT Publisher Exception
+	 * 
+	 * Specific subclass of @c std::runtime_error to distinguish exceptions coming from the MQTT Publisher.
+	*/
+	class DLL Exception : public std::runtime_error
+	{
+	private:
+
+		/**
+		 * @brief MQTT Result Code
+		 * 
+		 * MQTT has an own result code system which is useful to describe errors and therefore included here
+		*/
+		int _code;
+	public:
+
+		/**
+		 * @brief Constructor
+		 * 
+		 * Constructor building an expection from a message and result code.
+		 * @param [in] message Message to use for exeption description
+		 * @param [in] code result code to store.
+		*/
+		Exception(const char* message = "", int code = 0);
+
+		/**
+		 * @brief Construcor from exception
+		 * 
+		 * Constructor to rethrow an exception that has occured from some other error within the context of the MQTT Publisher.
+		 * @param [in] exc Expcetion to replicate 
+		*/
+		Exception(const std::exception& exc);
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Standard destructor for the class
+		*/
+		~Exception(void);
+
+		/**
+		 * @brief Result Code
+		 * 
+		 * Get the result code that is stored internally in the exception.
+		 * @return result code. 
+		*/
+		inline const int code(void) const { return _code; }
+	};
+}
+
+
+
diff --git a/dist/include/MQTT/MessageContainer.h b/dist/include/MQTT/MessageContainer.h
new file mode 100644
index 0000000000000000000000000000000000000000..ae6be2653129ca6f773a3cd3a1e337713c012c19
--- /dev/null
+++ b/dist/include/MQTT/MessageContainer.h
@@ -0,0 +1,42 @@
+#pragma once
+#include "constants.h"
+namespace MQTT
+{
+	/**
+	 * @brief Internal MQTT message struct
+	 * 
+	 * Struct to manage MQTT message data internally using standard strings.
+	*/
+	struct DLL  MessageContainer
+	{
+		/**
+		 * @brief Message Topic
+		 * 
+		 * Topic to which the message shall be sent.
+		*/
+		std::string topic;
+
+		/**
+		 * @brief Message
+		 * 
+		 * Primary content of the messsage to send.
+		*/
+		std::string message;
+
+		/**
+		 * @brief Quality of Service
+		 * 
+		 * MQTT Quality of service level to choose for the message.
+		 * Check the MQTT specifications for the exact behaviours of 0, 1, and 2 in conjuncation with message retention.
+		*/
+		int qos;
+
+		/**
+		 * @brief Retain Flag
+		 * 
+		 * Flag whether to retain the message on the broker after disconnection.
+		*/
+		bool retain;
+
+	};
+}
\ No newline at end of file
diff --git a/dist/include/MQTT/Publisher.h b/dist/include/MQTT/Publisher.h
new file mode 100644
index 0000000000000000000000000000000000000000..d7ce1b742dd3e9ff1b1c1b2ce1206d0db7b8fd57
--- /dev/null
+++ b/dist/include/MQTT/Publisher.h
@@ -0,0 +1,276 @@
+#pragma once
+#include "constants.h"
+#include "Configuration.h"
+#include "MessageContainer.h"
+#include <deque>
+#include <atomic>
+#include <mutex>
+#include <thread>
+#include <vector>
+#include <condition_variable>
+//#include <mqtt/async_client.h>
+
+
+namespace mqtt
+{
+	/**
+	 * @brief Forward Declare
+	*/
+	class async_client;
+}
+
+namespace MQTT
+{
+	/**
+	 * @brief MQTT Publisher
+	 * 
+	 * This class abstracts the process of publishing MQTT messages to an MQTT broker.
+	 * Currently, the underlying implementation is realized using Paho-MQTT. 
+	 * Upon connection, it spans an own worker thread that continously publishes messages put into a message queue
+	 * such that the calling thread does not get blocked with the communication process.
+	 * The purpose of this class is pure publishing, so there is no subscribing functionality implemented. 
+	 * 
+	 * @todo Implement support for authenticating with client certificates.
+	*/
+	class DLL Publisher
+	{
+	private:
+		/**
+		 * @brief Number of class instances
+		 * 
+		 * Counter to track the number of class instances, which may be needed to initialize and clean
+		 * the underlying library (was the case for mosquitto).
+		*/
+		static int instances;
+
+		/**
+		 * @brief Unique identifier
+		 * 
+		 * Unique identifier that is presented to the broker. Be careful if you reuse code across
+		 * applications that some broker show an unexpected behaviour when using the same id more than once.
+		*/
+		std::string id;
+
+		/**
+		 * @brief Internal Message queue length
+		 * 
+		 * Maximum number of messages that may enter the internal message queue. 
+		 * After that, no message with QoS=0 is accepted anymore to avoid the buildup
+		 * of an eteneral delay. Limiting the size of the message queue avoids problems when
+		 * data is produced faster as it can be published via MQTT (and meaningfully be consumed).
+		*/
+		unsigned int buffer;
+
+		/**
+		 * @brief Current configuration
+		 * 
+		 * Current configuration of the MQTT publisher. For details, please refer to the documentation of the respective class.
+		*/
+		Configuration configuration;
+
+		/**
+		 * @brief Internal client pointer
+		 * 
+		 * Shared pointer to the internal client of the underlying library.
+		*/
+
+		std::shared_ptr<mqtt::async_client> client;
+
+		/**
+		 * @brief Message Queue
+		 * 
+		 * Implemented message queue based on std::deque, which has no re-allocation costs upon extension.
+		*/
+		std::deque<MessageContainer> queue;
+
+		/**
+		 * @brief Brief Atomic Queue Size
+		 * 
+		 * Thread-safe, atomic variable to coordinate the queue.
+		*/
+		std::atomic<int> queue_size;
+
+		/**
+		 * @brief Message Queue Mutex
+		 * 
+		 * Mutex to protect the message queue between threads that are inserting messages and the processing loop.
+		*/
+		std::mutex queue_mutex;
+
+		/**
+		 * @brief Message Queue Condition Variable
+		 * 
+		 * Condition variable to synchronise the blockage of threads while simulatenously accessing the message queue.
+		*/
+		std::condition_variable queue_condition;
+
+		/**
+		 * @brief Worker Thread Pointer
+		 * 
+		 * Internal pointr to the worker thread running the publishing loop.
+		*/
+
+		std::shared_ptr<std::thread> worker;
+
+		/**
+		 * @brief  Worker thread status
+		 * 
+		 * Atomic boolean flag to indicate whether the worker thread is running.
+		 * This variable is used to coordinate the starting and stopping process of the worker thread.
+		*/
+		std::atomic<bool> worker_running;
+
+		/**
+		 * @brief Worker loop
+		 * 
+		 * Internal loop function that is executed in the worker thread.
+		 * The loop checks for new messages in the queue as often as possible and publishes them.
+		*/
+
+		void loop(void);
+
+		/**
+		 * @brief Resart worker thread
+		 * 
+		 * Internal function to (re)start the worker thread.
+		 * This function can also be used to initially start the worker thread.
+		*/
+		void restart_worker(void);
+
+		/**
+		 * @brief Resart worker thread
+		 *
+		 * Internal function to stop the worker thread.
+		*/
+		void stop_worker(void);
+		
+
+	public:
+		/**
+		 * @brief Constructor 
+		 *
+		 * Constructor for MQTT publisher that should be called from user's code
+		 * @param [in] id Unique identifier that is presented to the broker. Be careful if you reuse code across
+		 * applications that some broker show an unexpected behaviour when using the same id more than once. 
+		 * @param [in] buffer Size of the message queue before messages with QoS=0 are discarded.
+		*/
+		Publisher(std::string id, unsigned int buffer = 1024);
+		
+		/**
+		* @brief Destructor
+		* 
+		* Default destructor
+		*/
+		~Publisher();
+
+		/**
+		 * @brief Publish an MQTT message
+		 * 
+		 * This is the core function to publish an MQTT message. It deposits a message into the queue.
+		 * @param [in] topic Topic to which the message shall be sent.
+		 * @param [in] message Primary content of the messsage to send.
+		 * @param [in] qos MQTT Quality of service level to choose for the message.
+		 * Check the MQTT specifications for the exact behaviours of 0, 1, and 2 in conjuncation with message retention.
+		 * @param [in] retain Flag whether to retain the message on the broker after disconnection.
+		 * @return True or false depending whether the message was accepted in the message queue (cf. buffer size).
+		*/
+		bool publish(std::string topic, std::string message, int qos, bool retain);
+
+		/**
+		 * @brief Publish multiple MQTT messages
+		 *
+		 * This is the multi-message version of the publish function, which deposits all messages at once into the message queue and gains performance by reducing the number of lock operations.
+		 * @param [in] topic List of topics to which the messages shall be sent.
+		 * @param [in] message List of messages, in the correpsonding order of the list of topics.
+		 * @param [in] qos MQTT Quality of service level to choose for the message.
+		 * Check the MQTT specifications for the exact behaviours of 0, 1, and 2 in conjuncation with message retention.
+		 * @param [in] retain Flag whether to retain the message on the broker after disconnection.
+		 * @return True or false depending whether the message was accepted in the message queue (cf. buffer size).
+		*/
+		bool publish(std::vector<std::string> topics, std::vector<std::string> messages, int qos, bool retain);
+
+		/**
+		 * @brief Connect to broker
+		 * 
+		 * Connect to the broker using the provided configuration object.
+		 * The internal configuration object will be overridden. 
+		 * 
+		 * @param [in] configuration Configuration to apply.
+		*/
+		void connect(MQTT::Configuration configuration);
+
+		/**
+		 * @brief Connect to broker
+		 * 
+		 * Connect to the broker using the configuration object internally stored.
+		*/
+		void connect();
+
+		/**
+		 * @brief Direct Reconnect
+		 * 
+		 * Direct call of the internal reconnect function. No reconfiguration takes place,
+		*/
+		void reconnect(void);
+		
+		/**
+		 * @brief Diconnect from the broker
+		 * 
+		 * Disconnect from the broker and internally stop the worker thread.
+		 * This is a blocking call.
+		 * 
+		 * @param[in] timeout Timeout for the blocking operation in milliseconds.
+		*/
+		void disconnect(unsigned int timeout = 10000);
+
+		/**
+		 * @brief Set new root topic
+		 * 
+		 * Override the root topic. This can be done while connected as it only affects preprocessing of messages.
+		 * @param [in] root_topic New root topic.
+		*/
+		void set_root_topic(std::string root_topic);
+
+		/**
+		 * @brief Set message queue size
+		 * 
+		 * Set a new size for the internal message queue.
+		 * 
+		 * @param[in] buffer New size
+		*/
+		void set_buffer(unsigned int buffer);
+
+		/**
+		 * @brief Is connected?
+		 * 
+		 * Checks whether the publisher is currently connected to a broker.
+		 * Directly calls the underlying implementation of the library if possible.
+		 * 
+		 * @return True if connected, else false.
+		*/
+		bool is_connected(void);
+
+		/**
+		 * @brief Minimum delay between to messages in milliseconds
+		 *
+		 * A minimum delay which should be kept between sending two messages, provided in milliseconds.
+		 * Defaults to @c 0 .
+		 * @post This is not enforced in the client, but should be called as property of the publishing by the using code.
+		 * @return Current delay set.
+		*/
+		inline int min_delay_ms(void) { return configuration.min_delay_ms; }
+
+		/**
+		 * @brief Register new configuration
+		 * 
+		 * Register a new configuration, without connecting.
+		 * Changes will only take place after (re-)connecting to the broker.
+		 * @param[in] configuration New configuration object.
+		*/
+		void configure(MQTT::Configuration configuration);
+
+
+	};
+}
+
+
diff --git a/dist/include/MQTT/constants.h b/dist/include/MQTT/constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..69eccb2095efad8e28497a69a58d829f53e77e7a
--- /dev/null
+++ b/dist/include/MQTT/constants.h
@@ -0,0 +1,23 @@
+/**
+ * @brief Default definitions for project
+ * 
+ * File being referenced by many others containing cross-project defaults.
+*/
+
+#pragma once
+#ifdef _WIN32
+#        pragma warning(disable: 4251)
+#		 pragma warning(disable: 4275)
+#    ifdef _WINDLL
+#        define DLL __declspec(dllexport)
+#    else
+#        define DLL __declspec(dllimport)
+#    endif
+#elif defined(__unix__)
+#    define DLL __attribute__((visibility("default")))
+#endif
+
+#define _WIN32_WINNT 0x600
+#ifdef _WIN32
+	#include <SDKDDKVer.h>
+#endif
\ No newline at end of file
diff --git a/dist/include/REST/Resource.h b/dist/include/REST/Resource.h
new file mode 100644
index 0000000000000000000000000000000000000000..4acd248c0017341f16536af8ca62c8a12e7391a0
--- /dev/null
+++ b/dist/include/REST/Resource.h
@@ -0,0 +1,217 @@
+#pragma once
+#include "constants.h"
+#include "Types.h"
+#define _TURN_OFF_PLATFORM_STRING
+#include "cpprest/http_listener.h"
+#include <regex>
+#include <vector>
+
+namespace HTTP {
+
+	/**
+	 * @brief HTTP Resource base class
+	 * 
+	 * Base class for any resource that is implemented using this library.
+	 * It should always be subclassed by the class implmenting the resource itself,
+	 * and the relevant functions should be overriden. All HTTP business logic internally
+	 * relies on the @em cpprestsdk library. The former internally uses widestrings, 
+	 * which leads to the need for conversion work at some places.
+	*/
+
+	class DLL Resource
+	{
+	private:
+		/**
+		 * @brief Fallback response method
+		 * 
+		 * Fallback method to answer requests for which no method has been implemented.
+		 * It will return a response containing details about the request which may be helpful
+		 * for debugging. The HTTP code is set to 501 (Not Implemented)
+		 * 
+		 * @param message[in] Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param match[in] Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		Response fallback(Request message, std::smatch match = std::smatch());
+	protected:
+		/**
+		 * @brief Allowed methods
+		 * 
+		 * List of allowed HTTP methods for this resource implemented as @c std::string
+		 * Defaults to all methods (GET, DELETE, PATCH, POST, OPTIONS, HEAD, PUT)
+		*/
+		std::vector<web::http::method> allowed_methods;
+
+		/**
+		 * @brief Content type
+		 *
+		 * Content type that is delivered by this resource. 
+		 * Defaults to @c application/json
+		*/
+		std::string content_type;
+
+		/**
+		 * @brief Allowed Origins
+		 * 
+		 * Origins that are allowed, relavant when implementing web clients and running into CORS issues.
+		 * Defaults to @c * .
+		 * 
+		 * @post If you want to be serious about security, you should limit the origins here.
+		*/
+		std::string allowed_origins;
+
+		/**
+		 * @brief Apply headers
+		 * 
+		 * Apply headers to the HTTP response object.
+		 * This function shoud be called in the handler before returning the repsonse object to the server. 
+		 * @param[in, out] response Response object to act on.
+		*/
+		virtual void apply_headers(Response& response);
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Default Constructor, sets the above mentioned defaults for allowed_methods, content_type and allowed_origins
+		*/
+		Resource();
+
+		/**
+		 * @brief Default Destructor
+		 * 
+		 * Default destructor, does no custom business logic.
+		*/
+		~Resource();
+
+		/**
+		 * @brief Request Info
+		 * 
+		 * Extracts all sort of information from the request and returns it in JSON format.
+		 * This is useful for fallback methods.
+		 * 
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * 
+		 * @return Request information in JSON format
+		*/
+		static web::json::value request_info(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP Handler
+		 * 
+		 * Handler that is called by the server on HTTP requests.
+		 * By default, this function redirects to the more specifc ones based on the respective HTTP Verb.
+		 * In case an exception occurs, it calls the exception handler.
+		 * 
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP GET Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a GET method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_get(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP PUT Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a PUT method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_put(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP POST Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a POST method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_post(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP DELETE Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a DELETE method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_delete(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP PATCH Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a PATCH method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_patch(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP OPTIONS Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on an OPTIONS method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_options(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP HEAD Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a HEAD method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_head(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP Exception handler
+		 *
+		 * Handler function which can be called inside other handler functions to manage exceptions.
+		 * It returns the request's information and exeption error text while setting the HTTP response to 500 (Internal Error).
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] exception Exception to handle and to copy the error message from.
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_exception(Request message,  std::exception& exception, std::smatch match = std::smatch());
+	};
+}
+
diff --git a/dist/include/REST/Server.h b/dist/include/REST/Server.h
new file mode 100644
index 0000000000000000000000000000000000000000..5957e73892c649d1da675cb4bd621470349f8109
--- /dev/null
+++ b/dist/include/REST/Server.h
@@ -0,0 +1,120 @@
+#pragma once
+#include "constants.h"
+#include "Resource.h"
+#define _TURN_OFF_PLATFORM_STRING
+#include "cpprest/http_listener.h"
+
+
+using namespace web;
+using namespace http;
+using namespace utility;
+using namespace http::experimental::listener;
+
+namespace HTTP
+{
+	/**
+	 * @brief HTPP Server
+	 * 
+	 * Abstraction layer for an HTTP Server implemented using 
+	 * the cpprestsdk.
+	 * 
+	 * @todo cpprestsdk is now in maintenance mode, if this library shall be in the very long term, a substitute may need to be found.
+	*/
+	class DLL Server
+	{
+	private:
+		/**
+		 * @brief Default resource
+		 * 
+		 * Empty default resource which acts as a fallback to server requests.
+		*/
+		Resource default_resource;
+
+		/**
+		 * @brief Resource list
+		 * 
+		 * List of resources, which is implemented as paths and pointer to the according objects.
+		 * The order of the items in the vector is important when considering matching precedence.
+		*/
+		std::vector<std::pair<std::string, std::shared_ptr<Resource> > > resources;
+
+		/**
+		 * @brief Main request handler
+		 * 
+		 * This is the main handler for incoming requests. It processes in the following order:
+		 * - Run through the registered resources until the first regular expression match is encountered
+		 * - Call the handler on the matched resources
+		 * - If no resource is matched, call the default resoruce
+		 * - Reply to the request with the obtained answer
+		 * @param message 
+		*/
+		void handle(http_request message);
+
+
+		/**
+		 * @brief Internal listener
+		 * 
+		 * Internal listener object as provided by the cpprestsdk library.
+		*/
+		http_listener listener;
+
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Constructor setting up the server, but not accepting connections upon construction.
+		 * @param [in] url Base URL, e.g. @c http://localhost:8000. Please note that the hostname part indicates the interface on which the server will listen.
+		 * 
+		 * @post When using another interface than localhost, Windows will prompt for firewall permissions. In general firewalls should be considered when working with HTTP Servers.
+		 * @post HTTPS is currently not implemented here - The current recommendation is that a reverse proxy is used for this purpose, e.g. NGINX or Microsoft IIS.
+		*/
+		Server(std::string url);
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Standard Destructor without custom logic.
+		 * The server will be closed upon destruction, so make sure that the lifecycle of the server objects is apropriately managed in your application.
+		*/
+		~Server();
+
+		/**
+		 * @brief Start listener
+		 * 
+		 * Open the server for incoming connections. This is a blocking call.
+		*/
+		inline void open() { listener.open().wait(); }
+
+		/**
+		 * @brief Stop listener
+		 *
+		 * Open the server for incoming connections. This is a blocking call.
+		*/
+		inline void close() { listener.close().wait(); }
+
+		/**
+		 * @brief Register resource
+		 * 
+		 * Register a resource by means of a matching expression and shared pointer reference.
+		 * Please note that the order of adding resources to the sever determines the precedence in matching.
+		 * The frst matching resource will handle the request. This is a common source of errors.
+		 * This function can be called dynamically at runtime, also when the server is already running.
+		 * 
+		 * @param [in] path Path of the resource written as regular expression. Use @c L"/?(.*)" to match everything under the root path. The path simulatenously acts as unique identifier.
+		 * @param [in] resource Shared pointer to the resource that shall handle this path. Please be aware of the lifecycle in case you interfere with the pointers.
+		*/
+		void add(std::string path, std::shared_ptr<Resource> resource);
+
+		/**
+		 * @brief Register resource
+		 *
+		 * Remove a previously registered resource.
+		 * This function can be called dynamically at runtime, also when the server is already running.
+		 *
+		 * @param [in] path Path of the resource written as regular expression. Use @c L"/?(.*)" which was used to add the resource and acts an unique identifier.
+		*/
+		void remove(std::string path);
+
+	};
+}
+
diff --git a/dist/include/REST/Types.h b/dist/include/REST/Types.h
new file mode 100644
index 0000000000000000000000000000000000000000..9f0f504ecf6371accd90273c6b5cffaaec2ae091
--- /dev/null
+++ b/dist/include/REST/Types.h
@@ -0,0 +1,42 @@
+#pragma once
+#define _TURN_OFF_PLATFORM_STRING
+#include <cpprest/http_listener.h>
+
+namespace HTTP
+{
+	/**
+	 * @brief HTTP Request
+	 * 
+	 * Typedefinition for HTTP Requests as provided by the cpprestsdk library.
+	*/
+	typedef web::http::http_request Request;
+
+	/**
+	 * @brief HTTP Response
+	 *
+	 * Typedefinition for HTTP Responses as provided by the cpprestsdk library.
+	*/
+	typedef web::http::http_response Response;
+
+	/**
+	 * @brief HTTP Status
+	 *
+	 * Typedefinition for HTTP Status Codes as provided by the cpprestsdk library.
+	*/
+	typedef web::http::status_codes Status;
+
+	/**
+	 * @brief HTTP Methods
+	 *
+	 * Typedefinition for HTTP Methods (Enum) as provided by the cpprestsdk library.
+	*/
+	typedef web::http::methods Methods;
+
+	/**
+	 * @brief HTTP JSON
+	 *
+	 * Typedefinition for Json documents as provided by the cpprestsdk library.
+	*/
+	typedef web::json::value Json;
+
+}
diff --git a/dist/include/REST/constants.h b/dist/include/REST/constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..5e8863b710d40121656b36be45505ec4823e42dc
--- /dev/null
+++ b/dist/include/REST/constants.h
@@ -0,0 +1,22 @@
+/**
+ * @brief Default definitions for project
+ *
+ * File being referenced by many others containing cross-project defaults.
+*/
+#pragma once
+#ifdef _WIN32
+#        pragma warning(disable: 4251)
+#		 pragma warning(disable: 4275)
+#    ifdef _WINDLL
+#        define DLL __declspec(dllexport)
+#    else
+#        define DLL __declspec(dllimport)
+#    endif
+#elif defined(__unix__)
+#    define DLL __attribute__((visibility("default")))
+#endif
+
+#define _WIN32_WINNT 0x600
+#ifdef _WIN32
+#include <SDKDDKVer.h>
+#endif
diff --git a/dist/include/SIGN/Hasher.h b/dist/include/SIGN/Hasher.h
new file mode 100644
index 0000000000000000000000000000000000000000..1833bf9e23773ad01a18c132e58be1f96246ac2f
--- /dev/null
+++ b/dist/include/SIGN/Hasher.h
@@ -0,0 +1,107 @@
+#pragma once
+#include "constants.h"
+#include <vector>
+#include <string>
+
+namespace SIGN
+{
+	/**
+	 * @brief SHA256 Hasher
+	 * 
+	 * Class which provides an convenient interface for calculating SHA256 hashes.
+	 * The underlying methods are taken from OpenSSL.
+	*/
+	class DLL Hasher
+	{
+	private:
+		/**
+		 * @brief Internal data
+		 * 
+		 * Internal data buffer based on unsigned char as byte type.
+		*/
+		std::vector<unsigned char> data;
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Default constructor, no special effort here.
+		*/
+		Hasher();
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Default destructor, no special effort here.
+		*/
+		~Hasher();
+
+		/**
+		 * @brief Add data
+		 * 
+		 * Push back data to the internal buffer which eventually gets hashed.
+		 * This function is implemented using templates, underneath it copies the raw bytes after casting.
+		 * 
+		 * @tparam T Original type of the item to add to the buffer
+		 * @param [in] x Item to add to the buffer
+		*/
+		template <typename T> void push_back(T x);
+		
+		/**
+		 * @brief Hash the data buffer
+		 * 
+		 * Calculate the SHA256 hash of the current data buffer and return it as standard vector of bytes.
+		 * Internally calls the static SHA256 function 
+		 * @post The output of this function can be used in the signer.
+		 * @return Hash result as sequenxe of bytes.
+		*/
+		std::vector<unsigned char> hash();
+
+		/**
+		 * @brief Reset data buffer
+		 * 
+		 * Clear the internal data buffer (i.e. to start with new data)
+		*/
+		void reset();
+
+		/**
+		 * @brief Digest size
+		 * 
+		 * Convenience function to get the digest size, which is often needed when handling raw bytes.
+		 * @return SHA256 digest length
+		*/
+		size_t size(void);
+
+		/**
+		 * @brief Print Bytestring
+		 * 
+		 * Convenience function to pretty-print bytestrings in HEX format.
+		 * 
+		 * @param [in] bytes Data to print
+		 * @param [in] uppercase Boolean flag whether to print uppercase
+		 * @return String with print result.		*/
+		
+		static std::string print(std::vector<unsigned char> bytes, bool uppercase = true);
+
+		/**
+		 * @brief SHA256 hash
+		 * 
+		 * Calculate the SHA256 hash of the given input data.
+		 * Be careful to no pass invalid pointers here, there is a risk of memory leaks.
+		 * 
+		 * @param data [in] Pointer to the memory block to read from 
+		 * @param length [in] Length of the data to consume
+		 * @return SHA256 hash as vector of bytes
+		*/
+		static std::vector<unsigned char> sha256(const unsigned char* data, size_t length);
+	};
+
+	template<typename T>
+	inline void Hasher::push_back(T x)
+	{
+		unsigned char* pointer = reinterpret_cast<unsigned char*>(&x);
+		for (int i = 0; i < sizeof(T); i++)
+		{
+			data.push_back(pointer[i]);
+		}
+	}
+}
diff --git a/dist/include/SIGN/Signer.h b/dist/include/SIGN/Signer.h
new file mode 100644
index 0000000000000000000000000000000000000000..a84d868013e1a84a8bb248a8d20d4cd2a27d2f72
--- /dev/null
+++ b/dist/include/SIGN/Signer.h
@@ -0,0 +1,89 @@
+#pragma once
+#include "constants.h"
+#include <vector>
+#include <string>
+
+typedef struct evp_pkey_st EVP_PKEY;
+typedef struct evp_md_ctx_st EVP_MD_CTX;
+
+
+namespace SIGN
+{
+	/**
+	 * @brief Signer
+	 * 
+	 * Class to provide a convenient interface to sign bytestrings using a private key.
+	 * Internally based on OpenSSL.
+	*/
+	class DLL Signer
+	{
+	private:
+		/**
+		 * @brief Internal Filename
+		 * 
+		 * Internal storage of the provided private key filename
+		*/
+		std::string _name;
+
+		/**
+		 * @brief Private Key
+		 * 
+		 * Internal pointer to the private key in OpenSSL format.
+		*/
+
+		EVP_PKEY* private_key;
+
+		/**
+		 * @brief OpenSSL Context
+		 * 
+		 * Internal pointer to the context object required by OpenSSL.
+		*/
+		EVP_MD_CTX* context;
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Default constructor loading the private key in PEM-format and initializing necessary methods.
+		 * @param [in] filename Path to the private key in PEM-format.
+		*/
+		Signer(std::string filename);
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Destructor, internally calls EVP_PKEY_free.
+		*/
+		~Signer();
+
+		/**
+		 * @brief Sign bytes
+		 * 
+		 * Sign the bytestring provided to this function and returns the signature bytestring.
+		 * @pre It is assumed that the actual conteht to be signed has already been hashed, e.g. using SHA256 and the Hasher class.
+		 * 
+		 * @param [in] digest Bytes to sign, typically a digest from a previous hashing function
+		 * @return Signature as vector of bytes
+		*/
+		std::vector<unsigned char> sign(std::vector<unsigned char> digest);
+		
+		/**
+		 * @brief OpenSSL Version
+		 * 
+		 * Retreive the OpenSSL Version string. This is helpful to check whether the correct OpenSSL library has been loaded as by experience on windows there are many OpenSSL versions.
+		 * Using a too old version of OpenSSL leads to very bad performance.
+		 * 
+		 * @return OpenSSL Version String
+		*/
+		std::string openssl_version(void) const;
+
+		/**
+		 * @brief Filename
+		 * 
+		 * Function to retrieve the filename of the private key.
+		 * 
+		 * @return Filename of the private key.
+		*/
+		inline std::string name() const { return _name; }
+	};
+}
+
diff --git a/dist/include/SIGN/constants.h b/dist/include/SIGN/constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..8db8c8140074600f89d18b363eab95dc102be0a3
--- /dev/null
+++ b/dist/include/SIGN/constants.h
@@ -0,0 +1,22 @@
+/**
+ * @brief Default definitions for project
+ *
+ * File being referenced by many others containing cross-project defaults.
+*/
+#pragma once
+#ifdef _WIN32
+#        pragma warning(disable: 4251)
+#		 pragma warning(disable: 4275)
+#    ifdef _WINDLL
+#        define DLL __declspec(dllexport)
+#    else
+#        define DLL __declspec(dllimport)
+#    endif
+#elif defined(__unix__)
+#    define DLL __attribute__((visibility("default")))
+#endif
+
+#define _WIN32_WINNT 0x600
+#ifdef _WIN32
+#include <SDKDDKVer.h>
+#endif
\ No newline at end of file
diff --git a/dist/include/SOIL/Container.h b/dist/include/SOIL/Container.h
new file mode 100644
index 0000000000000000000000000000000000000000..cfe2e366d2e61a99b3d8f0dfe3cfe65b422a68fe
--- /dev/null
+++ b/dist/include/SOIL/Container.h
@@ -0,0 +1,603 @@
+#pragma once
+#include "constants.h"
+#include "REST/Types.h"
+#include "json_helpers.h"
+#include "Range.h"
+namespace SOIL
+{
+	/**
+	 * @brief Data Container
+	 * 
+	 * Container class to manage multidmensional data of (nearly) arbitrary type.
+	 * The data can be scalar, 1D or 2D while the size of dimensions is a priori unknown.
+	 * This class then provides an abstratcion layer to the other elements of SOIL to allow for consistent implementation.
+	 * Therefor it makes heavy use of templates, which are specialized for certain cases where @c x and/or @c y are -1 and for special types.
+	 * 
+	 * @tparam T Type of the data.
+	 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+	 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+	*/
+	template <typename T, int x=-1, int y=-1>
+	class Container
+	{
+	private:
+		/**
+		 * @brief Internal data
+		 * 
+		 * internal data buffer that can hold up to two dimensions
+		*/
+		std::vector<std::vector<T>> data;
+
+		/**
+		 * @brief Null flag
+		 * 
+		 * Any data item in SOIL can be set to null to express that no data is present at all.
+		 * To realize this internally indepedent of the data type, this boolean flag is used.
+		*/
+		bool _null;
+	public:
+		/**
+		 * @brief Empty constructor
+		 * 
+		 * Constructs an empty container.
+		 * _null will be set to true as no data has been added. 
+		 * @exception std::runtime_error An exception is thrown if an invalid combination of template parameters is used.
+		*/
+		Container();
+
+		/**
+		 * @brief Data copy constructor
+		 * 
+		 * Constructor that initializes the data with the given value.
+		 * @param [in] value Data for initialization, wich must match in type and dimension
+		*/
+		Container(const std::vector<std::vector<T>>& value);
+
+		/**
+		 * @brief JSON Constructor
+		 * 
+		 * Constructor that takes dimension and value from an JSON representation adhering to the SOIL nomenclature.
+		 * @param [in] json JSON object to parse
+		*/
+		Container(HTTP::Json json);
+
+		/**
+		 * @brief Deferencing operator
+		 * 
+		 * Return a copy of the raw data, similar to other uses of * in the standard library.
+		 * @return Copy of underlying data.
+		*/
+		std::vector<std::vector<T>> operator*(void) const;
+
+		/**
+		 * @brief Is Null?
+		 * 
+		 * Function that returns true if the current data is set to null and false else.
+		 * 
+		 * @return Null flag
+		*/
+		inline bool is_null(void) const {return _null;}
+
+		/**
+		 * @brief Set null
+		 * 
+		 * Function to set the null status of the data container
+		 * @param [in] _null Boolean state flag
+		*/
+		inline void set_null(bool _null = true) { this->_null = _null; }
+
+		/**
+		 * @brief WJSON representation
+		 * 
+		 * Get a JSON object respresentation of the container's current data.
+		 * The naming @c wjson() is chosen as it is consistently used through the library when using wide-string JSON as introduced by cpprestsdk.
+		 * 
+		 * @return JSON object. 
+		*/
+		HTTP::Json wjson(void);
+
+		/**
+		 * @brief Check range
+		 * 
+		 * Check whether the data of the container lies within the specified range.
+		 * In the case of multidimensional data, this check is carried out on all elememts and only returns true if it is applicable to all.
+		 * @param [in] range Range for which to check
+		 * @return Check result as boolean
+		*/
+		bool check_range(Range<T> range) const;
+
+		/**
+		 * @brief Data Accessor
+		 * 
+		 * STL-style data accesor retrieving a a single element from multidimensional-data.
+		 * @param [in] i Index position along first dimension 
+		 * @param [in] j Index position along second dimension
+		 * @return Data value of type T
+		*/
+		T& at(int i, int j);
+
+		/**
+		 * @brief Serialize value
+		 * 
+		 * Serialize the value to a bytestring for hashing purposes
+		 * @return Bytestring of serialization 
+		*/
+		std::vector<unsigned char> serialize_value(void) const;
+
+		/**
+		 * @brief Serialize dimensions
+		 *
+		 * Serialize the dimensions to a bytestring for hashing purposes
+		 * @return Bytestring of serialization
+		*/
+		std::vector<unsigned char> serialize_dimensions(void) const;
+
+	};
+
+	/**
+	 * @brief Template specialization for 1D-Arrays/Vectors
+	 *
+	 * This is the specialization of the templated class for data that expands along one dimension.
+	 * For the documentation of methods, please refer to the unpecialized class.
+	 * @tparam T Type of the data
+	 * @tparam x First dimension of the data
+	*/
+	template <typename T, int x>
+	class Container<T, x, -1>
+	{
+	private:
+		std::vector<T> data;
+		bool _null;
+	public:
+		Container();
+		Container(const std::vector<T>& value);
+		Container(HTTP::Json json);
+		std::vector<T> operator*(void) const;
+		inline bool is_null(void) const { return _null; }
+		inline void set_null(bool _null = true) { this->_null = _null; }
+		HTTP::Json wjson(void);
+		bool check_range(Range<T> range) const;
+		T& at(int i);
+		std::vector<unsigned char> serialize_value(void) const;
+		std::vector<unsigned char> serialize_dimensions(void) const;
+
+	};
+
+	/**
+	 * @brief Template specialization for Scalars
+	 *
+	 * This is the specialization of the templated class for scalar data.
+	 * For the documentation of methods, please refer to the unpecialized class.
+	 * @tparam T Type of the data
+	*/
+	template <typename T>
+	class Container<T, -1, -1>
+	{
+	private:
+		T data;
+		bool _null;
+	public:
+		Container();
+		Container(const T& value);
+		Container(HTTP::Json json);
+		T operator*(void) const;
+		inline bool is_null(void) const { return _null; }
+		inline void set_null(bool _null = true) { this->_null = _null; }
+		HTTP::Json wjson(void);
+		bool check_range(Range<T> range) const;
+		T& at(void);
+		std::vector<unsigned char> serialize_value(void) const;
+		std::vector<unsigned char> serialize_dimensions(void) const;
+
+	};
+
+
+	template<typename T, int x, int y>
+	Container<T, x, y>::Container()
+	{
+		if ((x < -1) || (y < -1))
+		{
+			throw std::runtime_error("Invalid Dimension smaller than -1");
+		}
+		if ((x == -1) && (y > -1))
+		{
+			throw std::runtime_error("An object can only be one-dimensional in its first dimension!");
+		}
+		_null = true;
+	}
+
+	template<typename T, int x, int y>
+	Container<T, x, y>::Container(const std::vector<std::vector<T>>& value)
+	{
+		if ((x != 0) && (value.size() != x))
+		{
+			throw std::runtime_error("Invalid dimension in assignment!");
+		}
+		if (y != 0)
+		{
+			for (auto v : value)
+			{
+				if (v.size() != y)
+				{
+					throw std::runtime_error("Invalid dimension in assignment!");
+				}
+			}
+		}
+		data = value;
+		_null = false;
+	}
+
+	template<typename T, int x, int y>
+	Container<T, x, y>::Container(HTTP::Json json)
+	{
+		std::vector<std::vector<T>> value;
+		int i = 0;
+		for (auto& vx : json.as_array())
+		{
+			value.push_back(std::vector<T>());
+			i++;
+			for (auto vy : vx.as_array())
+			{
+				value.at(i).push_back(to_value<T>(vy));
+			}
+		}
+		if ((x != 0) && (value.size() != x))
+		{
+			throw std::runtime_error("Invalid dimension in assignment!");
+		}
+		if (y != 0)
+		{
+			for (auto v : value)
+			{
+				if (v.size() != y)
+				{
+					throw std::runtime_error("Invalid dimension in assignment!");
+				}
+			}
+		}
+		data = value;
+		_null = false;
+	}
+
+	template<typename T, int x, int y>
+	std::vector<std::vector<T>> Container<T, x, y>::operator*(void) const
+	{
+		return data;
+	}
+
+	template<typename T, int x, int y>
+	HTTP::Json Container<T, x, y>::wjson(void)
+	{
+		HTTP::Json json_root = HTTP::Json();
+		json_root[_XPLATSTR("dimension")] = HTTP::Json::array({ x, y });
+		if (is_null())
+		{
+			json_root[_XPLATSTR("value")] = HTTP::Json::null();
+		}
+		else
+		{
+			json_root[_XPLATSTR("value")] = HTTP::Json::array();
+			for (int i = 0; i < static_cast<int>(data.size()); i++)
+			{
+				json_root[_XPLATSTR("value")][i] = HTTP::Json::array();
+				for (int j = 0; j < static_cast<int>(data.at(i).size()); j++)
+				{
+					json_root[_XPLATSTR("value")][i][j] = to_json<T>(data.at(i).at(j));
+				}
+			}
+		}
+		return json_root;
+	}
+
+	template<typename T, int x, int y>
+	bool Container<T, x, y>::check_range(Range<T> range) const
+	{
+		if (is_null())
+		{
+			return true;
+		}
+		for (auto vx : data)
+		{
+			for (auto vy : vx)
+			{
+				if (!range.check(vy))
+				{
+					return false;
+				}
+			}
+		}
+		return true;
+	}
+
+	template<typename T, int x, int y>
+	T& Container<T, x, y>::at(int i, int j)
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		return data.at(i).at(j);
+	}
+
+	template<typename T, int x, int y>
+	std::vector<unsigned char> Container<T, x, y>::serialize_value(void) const
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		int current_x = static_cast<int>(data.size());
+		int current_y = current_x > 0 ? static_cast<int>(data.at(0).size()) : 0;
+		size_t size = current_x * current_y * sizeof(T);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+		
+		
+		for (int i = 0; i < current_x ; i++)
+		{
+			{
+				const unsigned char* pointer = reinterpret_cast<const unsigned char*>(data.at(i).data());
+				for (int j = 0; j < static_cast<int>(current_y*sizeof(T)); j++)
+				{
+					serialization.push_back(pointer[j]);
+				}
+			}
+		}
+		return serialization;
+	}
+
+	template<typename T, int x, int y>
+	std::vector<unsigned char> Container<T, x, y>::serialize_dimensions(void) const
+	{
+		size_t size = sizeof(uint8_t) + 2 * sizeof(uint32_t);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+
+		uint8_t n_dimensions = 2;
+		uint32_t current_x = data.size();
+		uint32_t current_y = current_x > 0 ? data.at(0).size : 0;
+
+		serialization.push_back(n_dimensions);
+
+		unsigned char* current_x_pointer = reinterpret_cast<unsigned char*>(&current_x);
+		unsigned char* current_y_pointer = reinterpret_cast<unsigned char*>(&current_y);
+
+		for (int i = 0; i < sizeof(uint32_t); i++)
+		{
+			serialization.push_back(current_x_pointer[i]);
+		}
+		for (int i = 0; i < sizeof(uint32_t); i++)
+		{
+			serialization.push_back(current_y_pointer[i]);
+		}
+
+		return serialization;
+	}
+
+	template<typename T, int x>
+	Container<T, x, -1>::Container()
+	{
+		if (x < -1) 
+		{
+			throw std::runtime_error("Invalid dimension in assignment!");
+		}
+		_null = true;
+	}
+
+	template<typename T, int x>
+	Container<T, x, -1>::Container(const std::vector<T>& value)
+	{
+		if ((x != 0) && (value.size() != x))
+		{
+			throw std::runtime_error("Invalid dimension in assignment!");
+		}
+		data = value;
+		_null = false;
+	}
+
+	template<typename T, int x>
+	Container<T, x, -1>::Container(HTTP::Json json)
+	{
+		std::vector<T> value;
+		for (auto& v : json.as_array())
+		{
+			value.push_back(to_value<T>(v));
+		}
+		if ((x != 0) && (value.size() != x))
+		{
+			throw std::runtime_error("Invalid dimension in assignment!");
+		}
+		data = value;
+		_null = false;
+	}
+
+
+	template<typename T, int x>
+	std::vector<T> Container<T, x, -1>::operator*(void) const
+	{
+		return data;
+	}
+
+	template<typename T, int x>
+	HTTP::Json Container<T, x, -1>::wjson(void)
+	{
+		HTTP::Json json_root = HTTP::Json();
+		json_root[_XPLATSTR("dimension")] = HTTP::Json::array();
+		json_root[_XPLATSTR("dimension")][0] = HTTP::Json::number(x);
+		if (is_null())
+		{
+			json_root[_XPLATSTR("value")] = HTTP::Json::null();
+		}
+		else
+		{
+			json_root[_XPLATSTR("value")] = HTTP::Json::array();
+			for (int i = 0; i < static_cast<int>(data.size()); i++)
+			{
+				json_root[_XPLATSTR("value")][i] = to_json<T>(data.at(i));
+			}
+		}
+		return json_root;
+	}
+
+	template<typename T, int x>
+	bool Container<T, x, -1>::check_range(Range<T> range) const
+	{
+		if (is_null())
+		{
+			return true;
+		}
+		for (auto vx : data)
+		{
+			if (!range.check(vx))
+			{
+				return false;
+			}
+		}
+		return true;
+	}
+
+	template<typename T, int x>
+	T& Container<T, x, -1>::at(int i)
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		return data.at(i);
+	}
+
+	template<typename T, int x>
+	std::vector<unsigned char> Container<T, x, -1>::serialize_value(void) const
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		int current_x = static_cast<int>(data.size());
+		size_t size = current_x * sizeof(T);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+
+		const unsigned char* pointer = reinterpret_cast<const unsigned char*>(data.data());
+		for (int i = 0; i < static_cast<int>(current_x * sizeof(T)); i++)
+		{
+			serialization.push_back(pointer[i]);
+		}
+		return serialization;
+	}
+
+	template<typename T, int x>
+	std::vector<unsigned char> Container<T, x, -1>::serialize_dimensions(void) const
+	{
+		size_t size = sizeof(uint8_t) + sizeof(uint32_t);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+
+		uint8_t n_dimensions = 1;
+		uint32_t current_x = static_cast<uint32_t>(data.size());
+
+		serialization.push_back(n_dimensions);
+		unsigned char* current_x_pointer = reinterpret_cast<unsigned char*>(&current_x);
+
+		for (int i = 0; i < sizeof(uint32_t); i++)
+		{
+			serialization.push_back(current_x_pointer[i]);
+		}
+		return serialization;
+	}
+
+	template<typename T>
+	Container<T, -1, -1>::Container()
+	{
+		_null = true;
+	}
+
+	template<typename T>
+	Container<T, -1, -1>::Container(const T& value)
+	{
+		data = value;
+		_null = false;
+	}
+
+	template<typename T>
+	Container<T, -1, -1>::Container(HTTP::Json json)
+	{
+		T value = to_value<T>(json);
+		data = value;
+		_null = false;
+	}
+
+	template<typename T>
+	T Container<T, -1, -1>::operator*(void) const
+	{
+		return data;
+	}
+
+	template<typename T>
+	HTTP::Json Container<T, -1, -1>::wjson(void)
+	{
+		HTTP::Json json_root = HTTP::Json();
+		json_root[_XPLATSTR("dimension")] = HTTP::Json::array();
+		if (is_null())
+		{
+			json_root[_XPLATSTR("value")] = HTTP::Json::null();
+		}
+		else
+		{
+			json_root[_XPLATSTR("value")] = to_json<T>(data);
+		}
+		return json_root;
+	}
+
+	template<typename T>
+	bool Container<T, -1, -1>::check_range(Range<T> range) const
+	{
+		if (is_null())
+		{
+			return true;
+		}
+		return range.check(data);
+	}
+
+	template<typename T>
+	T& Container<T, -1, -1>::at(void)
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		return data;
+	}
+
+	template<typename T>
+	std::vector<unsigned char> Container<T, -1, -1>::serialize_value(void) const
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		size_t size =  sizeof(T);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+
+		const unsigned char* pointer = reinterpret_cast<const unsigned char*>(&data);
+		for (int i = 0; i <  sizeof(T); i++)
+		{
+			serialization.push_back(pointer[i]);
+		}
+		return serialization;
+	}
+
+	template<typename T>
+	std::vector<unsigned char> Container<T, -1, -1>::serialize_dimensions(void) const
+	{
+		size_t size = sizeof(uint8_t);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+
+		uint8_t n_dimensions = 0;
+
+		serialization.push_back(n_dimensions);
+		return serialization;
+	}
+}
\ No newline at end of file
diff --git a/dist/include/SOIL/Element.h b/dist/include/SOIL/Element.h
new file mode 100644
index 0000000000000000000000000000000000000000..413d79ba0af55fa9a532549e55b1744abe6cf576
--- /dev/null
+++ b/dist/include/SOIL/Element.h
@@ -0,0 +1,281 @@
+#pragma once
+#include "constants.h"
+#include "REST/constants.h"
+#include "REST/Resource.h"
+#include <memory>
+#include <vector>
+#include <map>
+#include <mutex>
+#include <regex>
+#include <string>
+
+namespace SOIL
+{
+	/**
+	 * @brief SOIL Base Element
+	 * 
+	 * Element is the base class of Object, Function, Parameter and Variable in SOIL.
+	 * It is the first class that inherits from HTTP::Resource.
+	 * It contains the main implementation of the business logic for building the Element tree,
+	 * i.e. managing child items and resolving absolute and relative parths. It also provides common
+	 * base class which can be used for generic pointer in C++.
+	*/
+	class DLL Element : public HTTP::Resource
+	{
+	private:
+	public:
+		/**
+		 * @brief Children Map
+		 * 
+		 * Map of child elements, which are referenced by means of shared pointers and identified by their local UUID in string form.
+		*/
+		std::map<std::string, std::shared_ptr<Element> > children;
+
+		/**
+		 * @brief Parent Pointer
+		 * 
+		 * Shared pointer reference to the parent element.
+		*/
+		std::shared_ptr<Element> parent;
+
+		/**
+		 * @brief Self Pointer
+		 * 
+		 * Shared pointer reference to the element itself.
+		*/
+		std::shared_ptr<Element> self;
+
+		/**
+		 * @brief Local UUID
+		 * 
+		 * Locally unique identifier of the object, which must start with OBJ-, FUN-, PAR-, or VAR- depending on the type.
+		*/
+		std::string uuid;
+
+		/**
+		 * @brief Name
+		 * 
+		 * Human-readable name of the element in string format.
+		*/
+		std::string name;
+
+		/**
+		 * @brief Description
+		 * 
+		 * Human-readable description of the element in string format. 
+		*/
+		std::string description;
+
+		/**
+		 * @brief Ontology identifier
+		 * 
+		 * Ontology identifier, can be set to null if no ontology is followed
+		 * 
+		 * @pre Referencing to an ontology prerequisites that an ontology in SOIL format has been declared elsewhere.
+		*/
+		std::string ontology;
+
+		/**
+		 * @brief Element Mutex
+		 * 
+		 * Recursive Mutex to provide thread safe access to SOIL elements.
+		*/
+		std::recursive_mutex mutex;
+
+		/**
+		 * @brief Constructor
+		 * 
+		 * Default constructor for SOIL elements, to be called from derived classes.
+		 * @param [in] parent Shared pointer to parent object. Can be set to NULL for the creation of a root object
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		*/
+
+		Element(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology ="");
+		
+		/**
+		 * @brief Destructor
+		 * 
+		 * Destructor for Element, which is declared virtual such that Element pointers can be used to delete instances of derived types.
+		 * When an Element is deleted in SOIL, all references to the child objects are cleared.
+		 * @post If the parent element was the last instance to contain shared pointers to the child elements, their lifecycle will end with this operation.
+		*/
+		virtual ~Element();
+
+		/**
+		 * @brief FQID
+		 * 
+		 * Constructs the FQID of the element by concatenating the UUIDs of the parent elements
+		 * @return FQID string separated by /
+		*/
+		std::vector<std::string> fqid(void);
+
+		/**
+		 * @brief Access Operator
+		 * 
+		 * Returns the child matching the relative FQID of the element.
+		 * If the empty string is passed, the element itself is resturned.
+		 * 
+		 * @exception std::runtime_error If no matching child is found, a runtime_error is thrown.
+		 *
+		 * @param [in] fqid Relative FQID of the element to retrieve
+		 * @return Share pointer to the requested element
+		*/
+		std::shared_ptr<Element> operator[] (std::string fqid);
+
+		/**
+		 * @brief Add Child Element
+		 * 
+		 * Inserts a child to this element. Children are always managed as shared pointers, i.e. no object is copied.
+		 * @param [in] uuid UUID to assign to the child, which also acts as internal identifier 
+		 * @param [in] child Shared pointer to the element
+		 * @return Shared pointer to child element
+		*/
+		std::shared_ptr<Element>  add(std::string uuid, std::shared_ptr<Element> child);
+		
+		/**
+		 * @brief Add Child Element
+		 *
+		 * Inserts a child to this element. Children are always managed as shared pointers, i.e. no object is copied.
+		 * This version takes a raw pointer (as e.g. returned by @c new) and internally makes a shared pointer.
+		 * @param [in] uuid UUID to assign to the child, which also acts as internal identifier
+		 * @param [in] child Pointer to the element
+		 * @return Shared pointer to child element
+		*/
+		std::shared_ptr<Element>  add(std::string uuid, Element* child);
+
+		/**
+		 * @brief Add Child Element
+		 *
+		 * Alias to add provide compatibilty to prior versions.
+		 * @todo Remove in future versions.
+		 * @param [in] uuid UUID to assign to the child, which also acts as internal identifier
+		 * @param [in] child Shared pointer to the element
+		 * @return True if the element previously already existed.
+		*/
+		bool  insert(std::string uuid, std::shared_ptr<Element> child);
+
+		/**
+		 * @brief Add Child Element
+		 *
+		 * Alias to add provide compatibilty to prior versions.
+		 * @todo Remove in future versions.
+		 * This version takes a raw pointer (as e.g. returned by @c new) and internally makes a shared pointer.
+		 * @param [in] uuid UUID to assign to the child, which also acts as internal identifier
+		 * @param [in] child Pointer to the element
+		 * @return True if the element previously already existed.
+		*/
+		bool  insert(std::string uuid, Element* child);
+
+		/**
+		 * @brief Remove Child element
+		 * 
+		 * Removes an element from the children of this element.
+		 * If the internal shared pointer is the last reference to this element, it will go out of scope.
+		 * @param [in] uuid UUID to identify the element to remove
+		 * @return True if the element existed prior to deletion.
+		*/
+		bool remove(std::string uuid);
+
+		/**
+		 * @brief Get dynamically casted pointer
+		 * 
+		 * Dynamically casts the stored element reference to a given type.
+		 * This useful for casting pointers to derived classes of which the type is known.
+		 * 
+		 * @tparam T Dervied type to cast to.
+		 * @return Raw pointer
+		*/
+		template<typename T> T* cast(void);
+
+		/**
+		 * @brief Is Object?
+		 * 
+		 * Determines whether the element actually is an object.
+		 * Internally, the prefix OBJ- of the UUID is checked for this purpose.
+		 * This function is typically used before dynamic casts.
+		 * @return Boolean response whether the element is an object.
+		*/
+		bool is_object(void) const;
+
+		/**
+		 * @brief Is Variable?
+		 *
+		 * Determines whether the element actually is a variable.
+		 * Internally, the prefix VAR- of the UUID is checked for this purpose.
+		 * This function is typically used before dynamic casts.
+		 * @return Boolean response whether the element is at.
+		*/
+		bool is_variable(void) const;
+
+		/**
+		 * @brief Is Function?
+		 *
+		 * Determines whether the element actually is a function.
+		 * Internally, the prefix FUN- of the UUID is checked for this purpose.
+		 * This function is typically used before dynamic casts.
+		 * @return Boolean response whether the element is a function.
+		*/
+		bool is_function(void) const;
+
+		/**
+		 * @brief Is Parameter?
+		 *
+		 * Determines whether the element actually is a parameter.
+		 * Internally, the prefix PAR- of the UUID is checked for this purpose.
+		 * This function is typically used before dynamic casts.
+		 * @return Boolean response whether the element is a parameter.
+		*/
+		bool is_parameter(void) const;
+
+		/**
+		 * @brief HTTP JSON
+		 * 
+		 * Get a HTTP JSON object corresponding to the current state of the element.
+		 * This function is virtual as normally it should be specialized by Object, Variable, Parameter and Function.
+		 * @return JSON object
+		*/
+		virtual HTTP::Json wjson(void);
+
+		/**
+		 * @brief JSON string
+		 *
+		 * Get a JSON string corresponding to the current state of the element.
+		 * This function internally useses wjson() such that there is no need to override both methods in derived classes.
+		 * @return JSON string
+		*/
+		virtual std::string json(void);
+
+		/**
+		 * @brief HTTP Handler
+		 * 
+		 * Handles an incoming HTTP request as resource. It determines the correct child item (or the itdem itself) and than calls the handler
+		 * of the HTTP::Resource base clase. The arguments are directly passed on to the latter.
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle(HTTP::Request request, std::smatch match = std::smatch());
+
+	};
+	template<typename T>
+	T* Element::cast(void)
+	{
+		return dynamic_cast<T*>(self.get());
+	}
+
+	/**
+	 * @brief Null deleter
+	 * 
+	 * A function that essentially does nothing which is required as argument in the constructor of Element
+	 * to avoid that delete is implicitly called a second time in the destructor when the member shared pointer to the
+	 * object itself is deleted and the internal shared pointer is the last reference to the object. This situation occurs for
+	 * root objects.
+	 * @param  [in] ptr Pointer on which to do nothing
+	*/
+	inline void null_deleter(SOIL::Element* ptr) {};
+
+}
+
diff --git a/dist/include/SOIL/Enum.h b/dist/include/SOIL/Enum.h
new file mode 100644
index 0000000000000000000000000000000000000000..ebb58f70d536fe10eb4e4d6b72bd4926f257bbe2
--- /dev/null
+++ b/dist/include/SOIL/Enum.h
@@ -0,0 +1,126 @@
+#pragma once
+#include "constants.h"
+#include <string>
+#include <vector>
+#include <stdexcept>
+
+namespace SOIL
+{
+	/**
+	 * @brief SOIL Enum Datatype
+	 *
+	 * C++ class to represent the SOIL Enum datatype.
+	 * Internally it is based on strings.
+	*/
+	class DLL Enum
+	{
+	private:
+		/**
+		 * @brief Selected value
+		 *
+		 * Currently selected value as string.
+		*/
+		std::string _selected;
+
+		/**
+		 * @brief Enum Choices
+		 *
+		 * Vector of strings representing the different values the enumeration can take and is constrained to.
+		*/
+		std::vector<std::string> _choices;
+	public:
+		/**
+		 * @brief Constructor
+		 *
+		 * Standard constructor which leaves everything uninitialized.
+		*/
+		Enum();
+
+		/**
+		 * @brief Constructor intialized with value
+		 *
+		 * Constructor that initializes the enumeration with a selected value.
+		 *
+		 * @todo Check whether this constructor is still meaningful in future releases.
+		 * Usage is not recommended.
+		 * @param [in] value Value for initialization
+		*/
+		Enum(std::string value);
+
+		/**
+		 * @brief Initializing Container
+		 *
+		 * Constructor that initializes the enumeration with choices and a value.
+		 *
+		 * @param [in] value Value for initialization
+		 * @param [in] choices Applicable set of choices for the enumeration
+		*/
+		Enum(std::string value, std::vector<std::string> choices);
+
+		/**
+		 * @brief Destructor
+		 *
+		 * Standard destructor without special efforts.
+		*/
+		~Enum();
+
+		/**
+		 * @brief Get selected value
+		 *
+		 * Get the value that the enum currently holds as selected.
+		 * @return Current value
+		*/
+		std::string selected(void) const;
+
+		/**
+		 * @brief Get Choices
+		 *
+		 * Get the choices that are available for this enumeration.
+		 * @return Available choices as vector of strings
+		*/
+		std::vector<std::string> choices(void);
+
+		/**
+		 * @brief Get index of selected element
+		 *
+		 * Traversed the vector of choices and return the index of the current element.
+		 * @return Index of the selected element
+		*/
+		int index() const;
+
+		/**
+		 * @brief Determine index of value
+		 *
+		 * Converts a string value to its integer value.
+		 * This function is useful when interacting with C++ ENUMs consisting of integers.
+		 *
+		 * @exception std::logic_error If the value is not found, an exception is thrown.
+		 *
+		 * @param [in] value Value to search
+		 * @return Index of the searched value
+		*/
+		int index(std::string value) const;
+
+		/**
+		 * @brief Set selected item (index)
+		 *
+		 * Set the currently selected item the enumeration holds based on its integer index.
+		 *
+		 * @exception std::logic_error If the index exceeds the number of choices, an exception is thrown.
+		 *
+		 * @param [in] value Index of the value to set
+		*/
+		void set(int value);
+
+		/**
+		 * @brief Set selected item (value)
+		 *
+		 * Set the currently selected item the enumeration holds based on a string value.
+		 *
+		 * @exception std::logic_error If the value is not among the choices, an exception is thrown.
+		 *
+		 * @param [in] value Value to set
+		*/
+		void set(std::string value);
+	};
+}
\ No newline at end of file
diff --git a/dist/include/SOIL/Figure.h b/dist/include/SOIL/Figure.h
new file mode 100644
index 0000000000000000000000000000000000000000..857784645af9eb428d2c34fa49a7e47a4155580d
--- /dev/null
+++ b/dist/include/SOIL/Figure.h
@@ -0,0 +1,322 @@
+#pragma once
+#include "constants.h"
+#include "Types.h"
+#include "Element.h"
+#include "Container.h"
+#include "Range.h"
+namespace SOIL
+{
+	/**
+	 * @brief HTTP JSON datatype
+	 * 
+	 * Returns the datatype part of the SOIL-conformant JSON-representation of the figure, expressed as string.
+	 * This function is declared in its specializations as it needs to be implemented expclicitiy for each datatype.
+	 * 
+	 * @tparam T Dataype under consideration
+	 * @return HTTP JSON representaion as HTTP::Json::string
+	*/
+	template <typename T>
+	HTTP::Json datatype(void);
+	template<>
+	DLL HTTP::Json datatype<double>(void);
+	template<>
+	DLL HTTP::Json datatype<bool>(void);
+	template<>
+	DLL HTTP::Json datatype<std::string>(void);
+	template<>
+	DLL HTTP::Json datatype<int64_t>(void);
+	template<>
+	DLL HTTP::Json datatype<int>(void);
+	template<>
+	DLL HTTP::Json datatype<SOIL::TIME>(void);
+	template<>
+	DLL HTTP::Json datatype<SOIL::ENUM>(void);
+
+
+	/**
+	 * @brief Intermediate class for Variable and Parameter that derives from Element
+	 * 
+	 * Intermediate class for Variable and Parameter that derives from Element as both share many properties.
+	 * This class should not be instantianted directly and is abstract.
+	 * The underlying data management completely relies on the templated Container class, henace many templates are passed on.
+	 * 
+	 * @tparam T Type of the data.
+	 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+	 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+	*/
+	template <typename T, int x=-1, int y=-1>
+	class Figure : public Element
+	{
+	protected:
+		/**
+		 * @brief Data Timestamp
+		 * 
+		 * Timestamp of the data, i.e. the time which should be considered as physically related to the value.
+		*/
+		TIME time;
+
+		/**
+		 * @brief Unit
+		 * 
+		 * Unit of the stored value, expressed as UNECE code (e.g. MTR).
+		*/
+		std::string unit;
+
+		/**
+		 * @brief Value
+		 * 
+		 * Actual value that is currently held by the figure, which is represented as conatiner.
+		*/
+		Container<T, x, y>  value;
+
+		/**
+		 * @brief Range
+		 * 
+		 * Allowed range for the figure, expressed using the therefore designed Range class.
+		*/
+		Range<T> range;
+
+		/**
+		 * @brief Read callback
+		 * 
+		 * Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage.
+		 * Declared virtual to make sure the derived method is called first.
+		*/
+		virtual void read(void) = 0;
+
+		/**
+		 * @brief Write callback
+		 *
+		 * Write callback that can be implemented by deriving classes to perform custom build logic on write actions, e.g.set a value to an external system.
+		 * Declared virtual to make sure the derived method is called first.
+		*/
+		virtual void write(void) = 0;
+
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Standard constructor intialiazing the values which should be called from the constructor of deriving classes.
+		 * @param [in] parent Shared pointer to parent object.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * @param range [in] Allowed range for the variable values, defaults to an empty object, i.e. allowing all values
+		 * @param time [in] Timestamp for the initial value, defaults to unset
+		*/
+		Figure(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology = "",  Range<T> range = Range<T>(), TIME time = TIME());
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Default destructor, without custom effort.
+		*/
+		~Figure();
+
+		/**
+		 * @brief Assignment operator
+		 * 
+		 * Assigns the value provided as container on the right hand side to the figure.
+		 * 
+		 * @exception std::range_error Throws an exception if the value to assign is outside the allowed range.
+		 * 
+		 * @param [in] value Value to assign
+		 * @return Reference to the current Figure
+		*/
+		Figure<T, x, y>& operator =(const Container<T, x, y>& value);
+
+
+		/**
+		 * @brief Access Operator
+		 * 
+		 * Access Operator returning the container of the value. 
+		 * @return Value container.
+		*/
+		Container<T, x, y>& operator* (void);
+
+		/**
+		 * @brief Check range
+		 * 
+		 * Check if value expressed as container object matches the range specified for this Figure.
+		 * This may be useful prior to assignment to avoid exceptions.
+		 * @param [in] value Value to check
+		 * @return True if the value(s) is (are) in range, false else.
+		*/
+		bool check_range(const Container<T, x, y>& value) const;
+
+		/**
+		 * @brief Set Range
+		 * 
+		 * Set the range property of this figure.
+		 * @param [in] range Range to set 
+		*/
+		void set_range(Range<T> range);
+
+		/**
+		 * @brief Set Time
+		 *
+		 * Set the time property of this figure.
+		 * @param [in] time Time to set
+		*/
+		void set_time(TIME time);
+
+		/**
+		 * @brief Set Value
+		 * 
+		 * Assigns the value provided as container. This is currently equivalent to the assignment operator.
+		 *
+		 * @exception std::range_error Throws an exception if the value to assign is outside the allowed range.
+		 *
+		 * @param [in] value Value to assign
+		 * 
+		*/
+		void set_value(const Container<T, x, y>& value);
+
+
+		/**
+		 * @brief HTTP JSON
+		 *
+		 * Get a HTTP JSON object corresponding to the current state of the Figure.
+		 * This function provides a partial representation of the SOIL-conformant JSON representation of Variable and Parameter and
+		 * may be called from their @c wjson() methods.
+		 * @return JSON object
+		*/
+		HTTP::Json wjson(void) override;
+
+		/**
+		 * @brief Cast to container
+		 * 
+		 * Takes a value and returns the corresponding container
+		 * @param [in] value Value to containerize 
+		 * @return Container version
+		 * 
+		 * @todo This function seems error prone in the multidimensional case.
+		*/
+
+		Container<T, x, y> cast(T value);
+
+		/**
+		 * @brief Update
+		 * 
+		 * Update the figure setting a new value and timestamp.
+		 * This is common scenario when dealing with measurement data.
+		 * 
+		 * @param [in] value Value to set
+		 * @param [in] time Timestamp to assign
+		*/
+		virtual void update(const Container<T, x, y>& value, TIME time);
+	};
+
+
+}
+
+
+
+template<typename T, int x, int y>
+SOIL::Figure<T, x, y>::Figure(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology, Range<T> range, SOIL::TIME time) : SOIL::Element(parent, uuid, name, description, ontology), unit(unit), range(range), time(time)
+{
+}
+
+template<typename T, int x, int y>
+SOIL::Figure<T,x,y>::~Figure()
+{
+}
+
+
+template<typename T, int x, int y>
+HTTP::Json SOIL::Figure<T,x,y>::wjson(void)
+{
+
+	std::unique_lock<std::recursive_mutex> lock(mutex);
+	HTTP::Json json_root = SOIL::Element::wjson();
+	json_root[_XPLATSTR("timestamp"] = (time.is_null() || time.rfc3339() == "")) ? HTTP::Json::null() : HTTP::Json::string(utility::conversions::to_string_t(time.rfc3339()));
+	json_root[_XPLATSTR("range")] = range.wjson();
+	json_root[_XPLATSTR("unit")] = (unit.length() == 0) ? HTTP::Json::null() : SOIL::to_json(unit);
+	
+	HTTP::Json value_json = value.wjson();
+	json_root[_XPLATSTR("value")] = value_json[_XPLATSTR("value")];
+	json_root[_XPLATSTR("dimension")] = value_json[_XPLATSTR("dimension")];
+	json_root[_XPLATSTR("datatype")] = datatype<T>();
+
+
+	return json_root;
+}
+
+template<typename T, int x, int y>
+SOIL::Container<T, x, y> SOIL::Figure<T, x, y>::cast(T value)
+{
+	return Container<T, x, y>(value);
+}
+
+template<typename T, int x, int y>
+void SOIL::Figure<T,x,y>::read(void)
+{
+}
+
+template<typename T, int x, int y>
+SOIL::Figure<T, x, y>& SOIL::Figure<T,x,y>::operator=(const Container<T, x, y>& value)
+{
+	if (!check_range(value))
+	{
+		throw std::range_error("Value is out of range specified for Figure " + uuid);
+	}
+	this->value = value;
+	return *this;
+}
+
+
+template<typename T, int x, int y>
+SOIL::Container<T, x, y>& SOIL::Figure<T,x,y>::operator*(void)
+{
+	this->read();
+	return value;
+}
+
+template<typename T, int x, int y>
+bool SOIL::Figure<T, x, y>::check_range(const Container<T, x, y>& value) const
+{
+	return value.check_range(range);
+}
+
+template<typename T, int x, int y>
+void SOIL::Figure<T,x,y>::set_range(Range<T> range)
+{
+	this->range = range;
+}
+
+
+template<typename T, int x, int y>
+void SOIL::Figure<T,x,y>::set_time(TIME time)
+{
+	this->time = time;
+}
+
+
+template<typename T, int x, int y>
+void SOIL::Figure<T, x, y>::set_value(const Container<T, x, y>& value)
+{
+	if (!check_range(value))
+	{
+		throw std::range_error("Value is out of range specified for Figure " + uuid);
+	}
+	*this = value;
+}
+
+template<typename T, int x, int y>
+void SOIL::Figure<T,x,y>::update(const Container<T,x,y>& value, TIME time)
+{
+	std::unique_lock<std::recursive_mutex> lock(mutex);
+	if (!check_range(value))
+	{
+		throw std::range_error("Value is out of range specified for Figure " + uuid);
+	}
+	*this = value;
+	this->time = time;
+}
+
+
+
+
+
diff --git a/dist/include/SOIL/Function.h b/dist/include/SOIL/Function.h
new file mode 100644
index 0000000000000000000000000000000000000000..7a3ff1165d8b94dbabac08e369c9261a512d3078
--- /dev/null
+++ b/dist/include/SOIL/Function.h
@@ -0,0 +1,268 @@
+#pragma once
+#include "constants.h"
+#include "Element.h"
+#include "Container.h"
+#include "Range.h"
+#include "Parameter.h"
+
+namespace SOIL
+{
+	/**
+	 * @brief Function Class
+	 * 
+	 * Class encapsulating a function represented in SOIL.
+	 * The class directly inherits from Element.
+	 * The recommended development pattern is to subclass this class and instantitate a use-case specific version.
+	 * In this case, the @c invoke() method should be overriden to implement the function's business logic.
+	 * 
+	 * Arguments are represented using the Parameter class. A Function supports the HTTP GET (to introspect the signature)
+	 * and HTTP POST (to execute the function) verbs.
+	*/
+	class Function :
+		public Element
+	{
+	private:
+		/**
+		 * @brief List of arguments
+		 * 
+		 * List of arguments, which are implemented as parameters. To maintain the arguments,
+		 * a map of shared pointers is used. Each argument has a locally unique identifier starting with PAR-
+		 * which is used as identifier in the map.
+		*/
+		std::map<std::string, std::shared_ptr<Element>> arguments;
+
+		/**
+		 * @brief List of returns
+		 *
+		 * List of returns, which are implemented as parameters. To maintain the returns,
+		 * a map of shared pointers is used. Each argument has a locally unique identifier starting with PAR-
+		 * which is used as identifier in the map.
+		*/
+		std::map<std::string, std::shared_ptr<Element>> returns;
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Constructor that shall be used to instantiate a Function.
+		 * If the class is subclassed, it shoule be called from the respective constructor.
+		 * Most parameters are passed on to the constructor of Element.
+		 * 
+		 * @param [in] parent Shared pointer to parent object. Can be set to NULL for the creation of a root object
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		*/
+		DLL Function(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology = "");
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Standard dsestructor
+		*/
+		DLL ~Function();
+
+		/**
+		 * @brief Create new Function
+		 *
+		 * Create a new Function using the default constructor and return a shared pointer reference.
+		 * This is the preferred method for manual creation with consistent lifecycle handling.
+		 *
+		 * @param [in] parent Shared pointer to parent object. Can be set to NULL for the creation of a root object
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		*/
+		static std::shared_ptr<Function> create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology = "");
+
+		/**
+		 * @brief Add argument
+		 * 
+		 * Add an argument when building the function. This method shoukd typically be called fron the
+		 * subclass constructor. It uses the same templating system than Container does to handle multidimensional data.
+		 * @tparam T Type of the data.
+		 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+		 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] range Allowed range for this argument, which is checked prior to execution. Defaults to no range restriction.
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed (default)
+		*/
+		template<typename T, int x = -1, int y = -1>
+		void add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range<T> range = SOIL::Range<T>(), std::string ontology = "");
+		/**
+		 * @brief Add argument with default value
+		 *
+		 * Add an argument when building the function with a default value. This method shoukd typically be called fron the
+		 * subclass constructor. It uses the same templating system than Container does to handle multidimensional data.
+		 * @tparam T Type of the data.
+		 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+		 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] range Allowed range for this argument, which is checked prior to execution. Defaults to no range restriction.
+		 * @param [in] default Default value provided as Container
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed (default)
+		*/
+		template<typename T, int x = -1, int y =-1>
+		void add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range<T> range, const Container<T, x, y>& default_value, std::string ontology = "");
+		
+		/**
+		 * @brief Add return value
+		 *
+		 * Add areturn value when building the function. This method shoukd typically be called fron the
+		 * subclass constructor. It uses the same templating system than Container does to handle multidimensional data.
+		 * @tparam T Type of the data.
+		 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+		 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] range Allowed range for this argument. Defaults to no range restriction.
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed (default)
+		*/
+		template<typename T, int x = -1, int y = -1>
+		void add_return(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range<T> range = SOIL::Range<T>(), std::string ontology = "");
+
+		
+		/**
+		 * @brief Make JSON Return
+		 * 
+		 * Helper function that converts a return value provided as Container to a correpsonding JSON object.
+		 * This function is usually useful in the custom implementation of @c invoke().
+		 * 
+		 * @tparam T Type of the data.
+		 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+		 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+		 * @param [in] uuid Locally Unique identifier of return value
+		 * @param [in] value Value of the return value
+		 * @return JSON object corresponding to SOIL representation
+		*/
+		template<typename T, int x = -1, int y = -1>
+		HTTP::Json make_return(std::string uuid, Container<T,x,y> value);
+
+		/**
+		 * @brief Make Argument from JSON
+		 *
+		 * Helper function that converts a HTTP Json object to a container of the passed value
+		 * This function is usually useful in the custom implementation of @c invoke().
+		 *
+		 * @tparam T Type of the data.
+		 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+		 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+		 * @param [in] uuid Locally Unique identifier of return value
+		 * @param [in] external_json JSON object from which to convert
+		 * @return Value as Container
+		*/
+		template<typename T, int x = -1, int y = -1>
+		Container<T, x, y> make_argument(std::string uuid, HTTP::Json external_json);
+		
+		/**
+		 * @brief HTTP JSON
+		 *
+		 * Get a HTTP JSON object corresponding to the function including arguments and returns
+		 * @return JSON object
+		*/
+		DLL HTTP::Json wjson(void);
+
+		/**
+		 * @brief Handle HTTP GET request
+		 * 
+		 * On HTTP GET, the function returns information about itself and its signature.
+		 * It is not invoked and this call should not lead to side effects.
+		 * @param [in] request Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		DLL virtual HTTP::Response handle_get(HTTP::Request request, std::smatch match = std::smatch());
+
+		/**
+		 * @brief Handle HTTP POST request
+		 *
+		 * On HTTP POST, the function is invoked. With the POST request, a list of arguments must be passed
+		 * in the request's body as list under the keyword "arguments".
+		 * This method calls `invoke()`. If you do not implement this function, nothing will happen.
+		 * 
+		 * @param [in] request Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		DLL virtual HTTP::Response handle_post(HTTP::Request request, std::smatch match = std::smatch());
+
+		/**
+		 * @brief Core Invocation
+		 * 
+		 * This is the main function that @b MUST be implemented in a derived class to meaningful 
+		 * act as a function. The arguments are passed as raw HTTP::Json objects mapped to their UUIDs.
+		 * A map of HTTP::Json objects is expected as returns. It is recommend to use @c make_arguments and 
+		 * @c make_returns in this function. Arguments and returns are not further decomposed to Containers to support
+		 * multi-typed values.
+		 * 
+		 * @post This function will be called from the HTTP POST handler. Any exception thrown will be caught there again
+		 * and lead to an HTTP Internal Error (500) return code.
+		 * 
+		 * @exception std::logic_error If not implemented in the derived class, the implementation here throws an exception.
+		 * 
+		 * @param [in] arguments Map of arguments as HTTP Json objects indexrd by their UUID
+		 * @return Map of return values as HTTP Json objects indexrd by their UUID
+		*/
+		DLL virtual std::map<std::string, HTTP::Json> invoke(std::map<std::string, HTTP::Json> arguments);
+
+		/**
+		 * @brief Get Pointer
+		 * 
+		 * Return a shared pointer casted to the Function type to element itself.
+		 * @return Casted pointer
+		*/
+		DLL inline std::shared_ptr<Function> ptr(void)
+		{
+			return std::dynamic_pointer_cast<Function>(Element::self);
+		}
+	};
+	template<typename T, int x, int y>
+	void Function::add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range<T> range, std::string ontology)
+	{
+		arguments[uuid].reset(new Parameter<T, x, y>(Element::self, uuid, name, description, unit, false, ontology, range));
+	}
+	template<typename T, int x, int y>
+	void Function::add_argument(std::string uuid, std::string name, std::string description, std::string unit,  SOIL::Range<T> range, const Container<T,x,y>& default_value, std::string ontology)
+	{
+		Parameter<T, x, y>* par = new Parameter<T, x, y>(Element::self, uuid, name, description, unit, false, ontology, range);
+		arguments[uuid].reset(par);
+		*par = default_value;
+	}
+
+
+	template<typename T, int x,int y>
+	void Function::add_return(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range<T> range, std::string ontology)
+	{
+		returns[uuid].reset(new Parameter<T, x, y>(Element::self, uuid, name, description, unit, false, ontology,  range));
+	}
+	template<typename T, int x, int y>
+	HTTP::Json Function::make_return(std::string uuid, Container<T, x, y> value)
+	{
+		HTTP::Json json_root = HTTP::Json::object();
+		json_root[_XPLATSTR("uuid")] = to_json<std::string>(uuid);
+		json_root[_XPLATSTR("value")] = value.json()[_XPLATSTR("value")];
+		return json_root;
+	}
+	template<typename T, int x, int y>
+	Container<T, x, y> Function::make_argument(std::string uuid, HTTP::Json external_json)
+	{
+		for (auto& a : external_json.as_array())
+		{
+			if (to_value<std::string>(a[_XPLATSTR("uuid")]) == uuid)
+			{
+				return Container<T, x, y>(a[_XPLATSTR("value")]);
+			}
+		}
+		return Container<T, x, y>();
+	}
+}
+
diff --git a/dist/include/SOIL/Object.h b/dist/include/SOIL/Object.h
new file mode 100644
index 0000000000000000000000000000000000000000..506ad441834e906065e2770e6dda18bdcffa77ef
--- /dev/null
+++ b/dist/include/SOIL/Object.h
@@ -0,0 +1,155 @@
+#pragma once
+#include "constants.h"
+#include "Element.h"
+
+namespace SOIL
+{
+	/**
+	 * @brief Object Class
+	 *
+	 * Class implementing the SOIL Object type.
+	 * The purpose of Objects is mainly to organize the overall system.
+	 * Only Objects can have child items, which can be added or removed during runtime.
+	 * Objects support HTTP GET (read), PUT (add child) and DELETE (remove child) verbs.
+	 * This class directly inherits from Elememt.
+	 * 
+	 * @todo The HTTP handlers may be moved to protected if HTTP::Server is declared as friend class. Currently this is not done to alllow for greater flexibility. 
+	*/
+	class DLL Object :
+		public Element
+	{
+	public:
+		/**
+		 * @brief Constructor
+		 *
+		 * Default constructor for SOIL elements, to be called from derived classes.
+		 * @param [in] parent Shared pointer to parent object. Can be set to NULL for the creation of a root object
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * 
+		 * @pre The ontology referred to must be defined elsewhere and is decoupled from the code.
+		*/
+		Object(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology = "");
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Standard destructor. The main destruction occurs in the destructor of Element, i.e. the references to the child
+		 * elements are deleted, e.g. they go out of scope is this was the last shared pointer.
+		*/
+		~Object();
+
+		/**
+		 * @brief Create new Object
+		 *
+		 * Create a new Object using the default constructor and return a shared pointer reference.
+		 * This is the preferred method for manual creation with consistent lifecycle handling.
+		 * @param [in] parent Shared pointer to parent object. Can be set to NULL for the creation of a root object
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 *
+		 * @pre The ontology referred to must be defined elsewhere and is decoupled from the code.
+		*/
+		static std::shared_ptr<Object> create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology = "");
+
+		/**
+		 * @brief HTTP JSON
+		 *
+		 * Get a HTTP JSON object corresponding to the function including arguments and returns
+		 * @return JSON object
+		*/
+		web::json::value wjson(void);
+
+		/**
+		 * @brief Read callback
+		 *
+		 * Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage.
+		 * Declared virtual to make sure the derived method is called first. Any exception that may be occurring will be caught in the HTTP handler.
+		*/
+		virtual void read(void);
+
+		/**
+		 * @brief Insert callback
+		 * 
+		 * Function that is called when a new child object is insterted via HTTP PUT.
+		 * This function muss be implemented by the deriving class.
+		 * 
+		 * @exception std::logic_error If the derived class does not contain an implementation, an exception is thrown here.
+		 * The exception will be caught in the HTTP handler of the server and returns with an HTTP Internal Error (500) code.
+		 * 
+		 * @param [in] body HTTP JSON body passed to PUT
+		 * @return HTTP JSON object corresponding to the created Object, as required per good HTTP practice.
+		*/
+		virtual HTTP::Json insert(HTTP::Json body);
+
+		/**
+		 * @brief Remove callback
+		 * 
+		 * Callback hook for subclasses to add custom business logic to the HTTP DELETE operation, e.g. to act on external resoruces.
+		 * Otherwise the object will just be deleted.
+		*/
+		virtual void remove(void);
+
+		/**
+		 * @brief HTTP GET Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a GET method.
+		 * This function returns a representation of the Object to the requesting party.
+		 * It should not be overridden directly in subclasses, instead the `read()` function should be overriden.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_get(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief HTTP PUT Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a PUT method.
+		 * This function inserts an element to the objects children.
+		 * It should not be overridden directly in subclasses, instead the `HTTP::Json insert(HTTP::Json body)` function should be overriden.
+		 * It is mandatory to implement a custom logic in the aforementioned function to allow PUT to properly work.
+		 * If manual insertion is not foreseen, you may consider overriding `allowed_methods` without PUT.
+		 * The minimum requirement to the body is that it contains an valid UUID key with value, the templates and further logic may be implemented by server.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_put(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief HTTP DELETE Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a DELETE method.
+		 * This function deletes an element.
+		 * It should not be overridden directly in subclasses, instead the `remove()` function should be overriden.
+		 * It is mandatory to implement a custom logic in the aforementioned function to allow PUT to properly work.
+		 * If manual deletaion is not foreseen, you may consider overriding `allowed_methods` without DELETE.
+		 * 
+		 * If no exception is thrown, an empty response with result code OK is returned, otherwise an Internal Error will be provided.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_delete(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief Get Pointer
+		 *
+		 * Return a shared pointer casted to the Object type to element itself.
+		 * @return Casted pointer
+		*/
+		inline std::shared_ptr<Object> ptr(void)
+		{
+			return std::dynamic_pointer_cast<Object>(Element::self);
+		}
+	};
+}
+
diff --git a/dist/include/SOIL/Parameter.h b/dist/include/SOIL/Parameter.h
new file mode 100644
index 0000000000000000000000000000000000000000..ae4a43552ee63c3057e17826bc139fd6f1616277
--- /dev/null
+++ b/dist/include/SOIL/Parameter.h
@@ -0,0 +1,307 @@
+#pragma once
+#include "constants.h"
+#include "Types.h"
+#include "Element.h"
+#include "Container.h"
+#include "Range.h"
+#include "Figure.h"
+#include "MQTT/Publisher.h"
+#include <boost/algorithm/string/join.hpp>
+
+namespace SOIL
+{
+	/**
+	 * @brief Parameter Class
+	 * 
+	 * This class represents a SOIL Parameter. Parameter and Variable share many common properties
+	 * and therefore both inherit from Figure, such that methods there should be considered in any case.
+	 * Parameters are primarily intended for values that do not represent any measurement or physical phenomenon outside the immediate control of device.
+	 * In contrast to variables, they can be set externally to control the device and do not posses a measurement uncertainty. Parametery may be constant.
+	 * In lightweight scenarios, this class may be instantiated directly, for more specific scenarios, it shouls be subclassed and override the implementations
+	 * of `read()` and `write()`.
+	 * 
+	 * A parameter supports HTTP GET (read) and HTTP PATCH (set) verbs.
+	 * 
+	 * The data management of Figure and hence Parameter relies on Container, such that the same templating logic is used.
+	 *
+	 * @tparam T Type of the data.
+	 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+	 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+	 * 
+	 * @todo The HTTP handlers may be moved to protected if HTTP::Server is declared as friend class. Currently this is not done to alllow for greater flexibility. 
+	*/
+	template <typename T, int x=-1, int y=-1>
+	class Parameter : public Figure<T, x, y>
+	{
+	protected:
+		
+		//Looks stale as Figure as a time member
+		//TIME time;
+
+		/**
+		 * @brief Constant flag
+		 * 
+		 * Boolean flag whether this parameter should be considered as constant.
+		*/
+		bool constant;
+
+		/**
+		 * @brief Read callback
+		 *
+		 * Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage.
+		 * Declared virtual to make sure the derived method is called first. Does nothing be default.
+		*/
+		virtual void read(void);
+
+		/**
+		 * @brief Write callback
+		 *
+		 * Write callback that can be implemented by deriving classes to perform custom build logic on write actions, e.g.set a value to an external system.
+		 * Declared virtual to make sure the derived method is called first. Does nothing be default.
+		*/
+		virtual void write(void);
+
+	public:
+		/**
+		 * @brief Constructor
+		 *
+		 * Standard constructor intialiazing the values. If subclassed, it should be called from the subclass constructor.
+		 * @param [in] parent Shared pointer to parent object.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] constant Boolean flag whether this value is cosnstant
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * @param [in] range Allowed range for the variable values, defaults to an empty object, i.e. allowing all values
+		 * @param [in] time Timestamp for the initial value, defaults to unset
+		*/
+		Parameter(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant = false, std::string ontology = "", Range<T> range = Range<T>(), TIME time = TIME());
+		
+		/**
+		 * @brief Destructor
+		 *
+		 * Default destructor, without custom effort.
+		*/
+		~Parameter();
+
+		/**
+		 * @brief Create new Parameter
+		 *
+		 * Create a new Parameter using the default constructor and return a shared pointer reference.
+		 * This is the preferred method for manual creation with consistent lifecycle handling.
+		 * @param [in] parent Shared pointer to parent object.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] constant Boolean flag whether this value is cosnstant
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * @param [in] range Allowed range for the variable values, defaults to an empty object, i.e. allowing all values
+		 * @param [in] time Timestamp for the initial value, defaults to unset
+		*/
+		static std::shared_ptr<Parameter> create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant = false, std::string ontology = "", Range<T> range = Range<T>(), TIME time = TIME());
+
+		/**
+		 * @brief Assignment operator
+		 *
+		 * Assigns the value provided as container on the right hand side to the parameter.
+		 * Immediately resorts to the implementation in Figure internally.
+		 *
+		 * @exception std::range_error Throws an exception if the value to assign is outside the allowed range.
+		 *
+		 * @param[in] value Value to assign
+		 * @return Reference to the current Parameter
+		*/
+		Parameter<T, x, y>& operator =(const Container<T, x, y>& value);
+
+
+		/**
+		 * @brief HTTP JSON
+		 *
+		 * Get a HTTP JSON object corresponding to the current state of the Parameter.
+		 * This function provides a SOIL-conformant JSON representation the parameter. 
+		 * It internally extends the method of Figure.
+		 * 
+		 * @return JSON object
+		*/
+		HTTP::Json wjson(void) override;
+
+		/**
+		 * @brief HTTP GET Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a GET method.
+		 * This function returns a representation of the Parameter and its current value to the requesting party.
+		 * It should not be overridden directly in subclasses, instead the `read()` function should be overriden.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_get(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief HTTP PATCH Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a PATCH method.
+		 * This function updates the value of a parameter. The request must at least contain a 
+		 * It should not be overridden directly in subclasses, instead the `write()` function should be overriden.
+		 * 
+		 * If an update is not not foreseen, you may consider overriding `allowed_methods` without PATCH.
+		 * This is not enforced by default through the `constant` flag.
+		 * The minimum requirement to the body is that it contains a value to assign. If a timestamp is provided, it will be set, otherwise the current server time is taken.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_patch(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief Get Pointer
+		 *
+		 * Return a shared pointer casted to the Parameter type to element itself.
+		 * @return Casted pointer
+		*/
+		inline std::shared_ptr<Parameter> ptr(void)
+		{
+			return std::dynamic_pointer_cast<Parameter>(Element::self);
+		}
+
+		/**
+		 * @brief Publish to MQTT
+		 * 
+		 * Publish the current JSON representation under the FQID as topic using a given MQTT publisher.
+		 * This function must be explicitly called from the user's code as otherwise the update cycle would
+		 * depend on the publisher and the user will be left without control to call other methods before publishing.
+		 *
+		 * A good pattern is to have a reference to an MQTT publisher in a sublcassing implementation and implement a complete update
+		 * cycle there.
+		 * 
+		 * @pre An MQTT::Publisher must be instantiated elsewhere and have a valid lifecycle.
+		 * 
+		 * @param [in] publisher Reference to the publisher to use
+		 * @param [in] qos Quality of service to choose for MQTT message
+		 * @param [in] retain Flag whether to retain the message on the server.
+		 * @return Boolean flag whether the message was accepted in the message queue. 
+		 * 
+		 * @todo Currently the implementation of this function is redundant in Variable and Parameter.
+		 * It is deliberately not moved to Figure as different implementations may occur in the future,
+		 * but would be a valid option.
+		*/
+		bool mqtt(std::shared_ptr<MQTT::Publisher> publisher, int qos = 0, bool retain = false);
+	};
+	
+
+
+}
+
+
+
+template<typename T, int x, int y>
+SOIL::Parameter<T, x, y>::Parameter(std::shared_ptr<SOIL::Element> parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant, std::string ontology, Range<T> range, SOIL::TIME time) : SOIL::Figure<T, x, y>(parent, uuid, name, description, unit, ontology, range, time), constant(constant)
+{
+	if (uuid.substr(0, 3) != "PAR")
+	{
+		throw std::logic_error("UUIDs for parameters must start with PAR!");
+	}
+
+	HTTP::Resource::allowed_methods = { HTTP::Methods::GET, HTTP::Methods::OPTIONS, HTTP::Methods::HEAD, HTTP::Methods::PATCH };
+}
+
+template<typename T, int x, int y>
+SOIL::Parameter<T,x,y>::~Parameter()
+{
+}
+
+template<typename T, int x, int y>
+inline std::shared_ptr<SOIL::Parameter<T, x, y> > SOIL::Parameter<T, x, y>::create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant, std::string ontology, Range<T> range, TIME time)
+{
+	Parameter<T, x, y>* parameter = new Parameter<T, x, y>(parent, uuid, name, description, unit, constant, ontology, range, time);
+	return parameter->ptr();
+}
+
+template<typename T, int x, int y>
+inline SOIL::Parameter<T, x, y>& SOIL::Parameter<T, x, y>::operator=(const Container<T, x, y>& value)
+{
+	Figure<T,x,y>::operator=(value);
+	return *this;
+}
+
+
+template<typename T, int x, int y>
+HTTP::Json SOIL::Parameter<T,x,y>::wjson(void)
+{
+	std::unique_lock<std::recursive_mutex> lock(Element::mutex);
+	HTTP::Json json_root = Figure<T,x,y> ::wjson();
+	json_root[_XPLATSTR("constant")] = HTTP::Json::boolean(constant);
+
+	return json_root;
+}
+
+template<typename T, int x, int y>
+void SOIL::Parameter<T,x,y>::read(void)
+{
+}
+
+template<typename T, int x, int y>
+inline void SOIL::Parameter<T, x, y>::write(void)
+{
+}
+
+
+template<typename T, int x, int y>
+inline HTTP::Response SOIL::Parameter<T, x, y>::handle_get(HTTP::Request message, std::smatch match)
+{
+	this->read();
+	
+	HTTP::Response response;
+	HTTP::Json body = this->wjson();
+	response.set_body(body);
+
+	response.set_status_code(HTTP::Status::OK);
+
+	return response;
+}
+
+template<typename T, int x, int y>
+inline HTTP::Response SOIL::Parameter<T, x, y>::handle_patch(HTTP::Request message, std::smatch match)
+{
+	auto task  = message.extract_json();
+	task.wait();
+	HTTP::Json external_json = task.get();
+
+	SOIL::TIME timestamp;
+
+	if (external_json.has_field(_XPLATSTR("timestamp")))
+	{
+		timestamp = to_value<TIME>(external_json[_XPLATSTR("timestamp")]);
+	}
+	else
+	{
+		timestamp = SOIL::TIME::utc_now();
+	}
+	
+
+	this->update(Container<T, x, y>(external_json[_XPLATSTR("value")]), timestamp);
+
+	
+	this->write();
+
+	HTTP::Response response;
+	response.set_body(this->wjson());
+	response.set_status_code(HTTP::Status::Created);
+
+
+	return response;
+}
+
+template<typename T, int x, int y>
+inline bool SOIL::Parameter<T, x, y>::mqtt(std::shared_ptr<MQTT::Publisher> publisher, int qos, bool retain)
+{
+	std::string topic = boost::algorithm::join(this->fqid(), "/");
+	return publisher->publish(topic, this->json(), qos, retain);
+}
+
+
+
diff --git a/dist/include/SOIL/Range.h b/dist/include/SOIL/Range.h
new file mode 100644
index 0000000000000000000000000000000000000000..ceae5e4b7b6bad5b02e17f6dd12bc4ecac688806
--- /dev/null
+++ b/dist/include/SOIL/Range.h
@@ -0,0 +1,210 @@
+#pragma once
+#include "constants.h"
+#include "json_helpers.h"
+#include "Types.h"
+#include "REST/Types.h"
+
+namespace SOIL
+{
+	/**
+	 * @brief Range Helper Class
+	 * 
+	 * Class to represent the acceptable range of a figure. This class is templated to be applicable to all types.
+	 * For numerical values, the range indicates a lower and upper limit which may be validly assigned. The limit values are included.
+	 * The same holds for times. For strings, it indicates the minimum and maximum length.
+	 * For enumerations, this is a list of applicable choices.
+	 * For these types, the template is explicitly implemented differently.
+	 * The range can be explicitly unset to provide an easy default member implementation.
+	 * 
+	 * There is no set function, if the range changes, a new instance of this lightweight class should be created.
+	 *
+	 * @tparam T Datatype for which the range is defined
+	*/
+	template <typename T>
+	class Range
+	{
+	private:
+		/**
+		 * @brief Lower Limit
+		 * 
+		 * Lower limit against which the range is checked.
+		*/
+		T low;
+
+		/**
+		 * @brief Upper Limit
+		 * 
+		 * Upper limit against which the range is checked.
+		*/
+		T high;
+
+		/**
+		 * @brief Set flag
+		 * 
+		 * Boolean flag whether limits are actually set. If false,
+		 * no range restriction is in place.
+		*/
+		bool set;
+	public:
+		/**
+		 * @brief Default Constructor
+		 * 
+		 * Default Constructor, sets no limits and initializes @c set to false.
+		*/
+		Range();
+
+		/**
+		 * @brief Argument constructor
+		 * 
+		 * Constructs the range and initialized lower and upper limit with the provided values.
+		 * 
+		 * @param [in] low Lower limit 
+		 * @param [in] high Upper limit
+		*/
+		Range(T low, T high);
+
+		/**
+		 * @brief List constructor
+		 *
+		 * Constructs the range and initialized lower and upper limit with the provided vector.
+		 * This is constructor can be conveniently initialized with the list notation {low, high}.
+		 *
+		 * @param [in] limits Vector of length 2 for initialization
+		*/
+		Range(std::vector<T> limits);
+
+		/**
+		 * @brief Destructor
+		 *
+		 * Standard desctructor, no custom implementation.
+		*/
+		~Range();
+
+		/**
+		 * @brief HTTP JSON
+		 * 
+		 * Returns the SOIL conformant partial representation of the range of Figure, i.e. @em null if not set. 
+		 * @return JSON Object
+		*/
+		HTTP::Json wjson(void);
+
+		/**
+		 * @brief Check
+		 * 
+		 * Check whether a given value is inside the prescribed range or not.
+		 * If @c set is false, it always returns to true.
+		 * The limits are included in the valid range, i.e. it is checked with `<=` and `>=`. 
+		 * 
+		 * @param [in] value Value to check
+		 * @return Check result als boolean, i.e. true if in range 
+		*/
+		bool check(const T & value);
+	};
+
+	/**
+	 * @brief String Range
+	 * 
+	 * Specialization of Range for strings, where the limits correspond to minimal and maximum length.
+	*/
+	template<>
+	class DLL Range<std::string>
+	{
+	private:
+		size_t low;
+		size_t high;
+		bool set;
+	public:
+		Range();
+		Range(size_t low, size_t high);
+		Range(std::vector<size_t> limits);
+		~Range();
+		HTTP::Json wjson(void);
+		bool check(const std::string& value);
+	};
+
+	/**
+	 * @brief Enum Range
+	 *
+	 * Specialization of Range for enumerations, where the limit is a set of applicable choices.
+	*/
+	template<>
+	class DLL Range<ENUM>
+	{
+	private:
+		std::vector<std::string> choices;
+		bool set;
+	public:
+		Range();
+		Range(std::vector<std::string> choices);
+		~Range();
+		HTTP::Json wjson(void);
+		bool check(const std::string& value);
+		bool check(const SOIL::ENUM& value);
+	};
+
+	template<typename T>
+	Range<T>::Range() : set(false)
+	{
+	}
+
+	template<typename T>
+	Range<T>::Range(T low, T high): set(true), low(low), high(high)
+	{
+	}
+
+	template<typename T>
+	Range<T>::Range(std::vector<T> limits)
+	{
+		if (limits.size() == 0)
+		{
+			set = false;
+		}
+		else if (limits.size() == 2)
+		{
+			low = limits.at(0);
+			high = limits.at(1);
+			set = true;
+		}
+		else
+		{
+			throw std::runtime_error("Invalid vector for range initialization!");
+		}
+	}
+
+	template<typename T>
+	Range<T>::~Range()
+	{
+	}
+
+	template<typename T>
+	HTTP::Json Range<T>::wjson(void)
+	{
+		HTTP::Json range_array = HTTP::Json::array();
+		if (set)
+		{
+			range_array[0] = to_json<T>(low);
+			range_array[1] = to_json<T>(high);
+		}
+		return range_array;
+	}
+
+
+	template<typename T>
+	bool Range<T>::check(const T & value)
+	{
+		if (set)
+		{
+			return ((value >= low) && (value <= high));
+		}
+		else
+		{
+			return true;
+		}
+	}
+
+
+	
+
+}
+
+
diff --git a/dist/include/SOIL/Time.h b/dist/include/SOIL/Time.h
new file mode 100644
index 0000000000000000000000000000000000000000..7e79c3267c20480942a7ff4727e77cd357bd4517
--- /dev/null
+++ b/dist/include/SOIL/Time.h
@@ -0,0 +1,174 @@
+#pragma once
+#include "constants.h"
+#include <boost/date_time/posix_time/posix_time.hpp>
+#include <locale>
+namespace SOIL
+{
+	/**
+	 * @brief SOIL Time
+	 * 
+	 * Speial Time class for SOIL to implement the necessary functionality.
+	*/
+	class Time
+	{
+	private:
+		/**
+		 * @brief Null Flag
+		 * 
+		 * Internal flag whether the time is actually not set, i.e. null.
+		*/
+		bool _null;
+
+		/**
+		 * @brief Internal time representation
+		 * 
+		 * Internal time representation, which is realized by means of boost's posix time.
+		 * 
+		 * @todo: Check if dependency on boost can be eliminated with future versions of the C++ standard.
+		*/
+		boost::posix_time::ptime timestamp;
+	public:
+		/**
+		 * @brief RFC3339 representation
+		 * 
+		 * Return a RFC3339 conformant representation of the time, e.g. 2021-06-07T22:01:23.078162Z as string.
+		 * This is the main time representation used in SOIL.
+		 * 
+		 * @return RFC3339 string 
+		*/
+		DLL std::string rfc3339(void) const;
+		
+		/**
+		 * @brief Uninitialized Constructor
+		 * 
+		 * Construct an uninitialized Time instance, where the @c _null flag is set to true. 
+		*/
+		DLL Time();
+
+		/**
+		 * @brief String Constructor
+		 * 
+		 * Constructs a Time object from an RFC3339 string.
+		 * If an empty string is passed, the @c _null flag is set to true.
+		 * 
+		 * The exceptions from the underlying boost implementation are passed through.
+		 * 
+		 * @param [in] value RFC3339 string of the time to set. 
+		*/
+		DLL Time(std::string value);
+
+		/**
+		 * @brief Posix Time Construtor
+		 * 
+		 * Constructs a Time object from a @c boost::posix_time::ptime.
+		 * This is useful in conjuction with `now()`.
+		 * 
+		 * @param [in] value Time to set.
+		*/
+		DLL Time(boost::posix_time::ptime value);
+
+		/**
+		 * @brief Destructor
+		 *
+		 * Default Destructor, there is no unexpected behaviour.
+		*/
+		DLL ~Time();
+
+		/**
+		 * @brief Is Null?
+		 * 
+		 * Returns whether the time is set to null.
+		 * 
+		 * @return 
+		*/
+
+		/**
+		 * @brief Is Null?
+		 *
+		 * Function that returns true if the current data is set to null and false else.
+		 *
+		 * @return Null flag
+		*/
+		inline bool is_null(void) const { return _null; }
+
+		/**
+		 * @brief Set null
+		 *
+		 * Function to set the null status of the data container
+		 * @param [in] _null Boolean state flag
+		*/
+		inline void set_null(bool _null = true) { this->_null = _null; }
+
+		/**
+		 * @brief Current Time
+		 * 
+		 * Returns the current UTC time as @c boost::posix_time::ptime to allow for quick access
+		 * in implementations using this library. Thanks to the corresponding constructor, this
+		 * function can also be used in assignments.
+		 * 
+		 * @return Current UTC time
+		*/
+		static DLL  boost::posix_time::ptime utc_now(void);
+
+		/**
+		 * @brief Friend Operator >=
+		 * 
+		 * Friend declaration of the >= operator, needed for correcet implementation.
+		*/
+		friend  DLL bool operator>=(const Time& t1, const Time& t2);
+
+		/**
+		 * @brief Friend Operator <=
+		 *
+		 * Friend declaration of the <= operator, needed for correcet implementation.
+		*/
+		friend  DLL bool operator<=(const Time& t1, const Time& t2);
+
+		/**
+		 * @brief Bytewise serialization
+		 * 
+		 * Bytewise serialization of the time for hashing purpose.
+		 * The components are serialized in the following order:
+		 * - uint16_t of the year
+		 * - uint8_t of the month
+		 * - uint8_t of the day
+		 * - uint8_t of the hour
+		 * - uint8_t of the minute
+		 * - unit8_t of the seconds
+		 * - uint32_t of the nanoseconds
+		 *
+		 * @return Serialized Bytestring 
+		*/
+
+		DLL std::vector<unsigned char> serialize(void) const;
+	};
+
+	/**
+	 * @brief GEQ Time Operator
+	 * 
+	 * Greater or equal operation for two Time objects, which is needed for the correct
+	 * implementation of the Range class.
+	 * 
+	 * Returns true if @c t1 >= @c t2, otherwise false. If one of the Time objects is set to null, the operation returns false.
+	 * 
+	 * @param t1 Left hand side time 
+	 * @param t2 Right hand side time
+	 * @return Comparison result as boolean
+	*/
+	DLL bool operator>=(const Time& t1, const Time& t2);
+
+
+	/**
+	 * @brief LEQ Time Operator
+	 *
+	 * Lower or equal operation for two Time objects, which is needed for the correct
+	 * implementation of the Range class.
+	 *
+	 * Returns true if @c t1 <= @c t2, otherwise false. If one of the Time objects is set to null, the operation returns false.
+	 *
+	 * @param t1 Left hand side time
+	 * @param t2 Right hand side time
+	 * @return Comparison result as boolean
+	*/
+	DLL bool operator<=(const Time& t1, const Time& t2);
+}
\ No newline at end of file
diff --git a/dist/include/SOIL/Types.h b/dist/include/SOIL/Types.h
new file mode 100644
index 0000000000000000000000000000000000000000..ea24a40f7025d5b4bbd10d3f09969e6498de7179
--- /dev/null
+++ b/dist/include/SOIL/Types.h
@@ -0,0 +1,64 @@
+/**
+ * @brief Type definitions
+ *
+ * Set of type definitions to make sure the user can name SOIL specific types without
+ * knowing the explicit underlying C++ type.
+*/
+
+#pragma once
+#include "Time.h"
+#include "Enum.h"
+namespace SOIL
+{
+	/**
+	 * @brief SOIL Integer
+	 * 
+	 * Type definition for integer type used in SOIL.
+	*/
+	typedef int64_t INT;
+
+	/**
+	 * @brief SOIL Double
+	 * 
+	 * Type definition for double type used in SOIL.
+	 * Double is the preferred floating point type in SOIL.
+	*/
+	typedef double DOUBLE;
+
+	/**
+	 * @brief SOIL Boolean
+	 * 
+	 * Type definition for boolean type used in SOIL.
+	*/
+	typedef bool BOOL;
+
+	/**
+	 * @brief SOIL String
+	 * 
+	 * Type definition for string type used in SOIL.
+	*/
+	typedef std::string STRING;
+
+	/**
+	 * @brief SOIL Enum
+	 * 
+	 * Type definition for the custom defined Enum in SOIL for consistency.
+	*/
+	typedef Enum ENUM;
+	
+	/**
+	 * @brief SOIL Time
+	 *
+	 * Type definition for the custom defined Time in SOIL for consistency.
+	*/
+	typedef Time TIME;
+
+	/**
+	 * @brief SOIL Dimension
+	 * 
+	 * Type definition for the underlying datatype that is used to manage dimensions in SOIL
+	*/
+	typedef std::vector<unsigned int> DIMENSION;
+
+
+}
diff --git a/dist/include/SOIL/Variable.h b/dist/include/SOIL/Variable.h
new file mode 100644
index 0000000000000000000000000000000000000000..a8693fdbf7f4269fd129414b059390e15649dcb8
--- /dev/null
+++ b/dist/include/SOIL/Variable.h
@@ -0,0 +1,485 @@
+#pragma once
+#include "constants.h"
+#include "Types.h"
+#include "Element.h"
+#include "Container.h"
+#include "Range.h"
+#include "Figure.h"
+#include "SIGN/Signer.h"
+#include "SIGN/Hasher.h"
+#include "MQTT/Publisher.h"
+#include <boost/algorithm/string/join.hpp>
+
+
+namespace SOIL
+{
+	/**
+	 * @brief Variable Class
+	 *
+	 * This class represents a SOIL Variable. Parameter and Variable share many common properties
+	 * and therefore both inherit from Figure, such that methods there should be considered in any case.
+	 * Variables are primarily intended for values that  represent any measurement or physical phenomenon outside the immediate control of device.
+	 * In contrast to parameter, they cannot be set externally and may not be constant. In addition, they contain a custom message (nonce), a hash (for traceability purposes)
+	 * and a covariance property. The covariance should represent uncertainty as multivariate normal distribution with coverage factor of 1.
+	 * 
+	 * Covariance is currently not supported for 2-dimensional data (i.e. which would lead to a 4-dimensional covariance expression)
+	 * 
+	 * In lightweight scenarios, this class may be instantiated directly, for more specific scenarios, it shouls be subclassed and override the implementation
+	 * of `read()`.
+	 *
+	 * A parameter supports HTTP GET (read) and HTTP OPTIONS (read without updating value) verbs.
+	 *
+	 * The data management of Figure and hence Parameter relies on Container, such that the same templating logic is used.
+	 *
+	 * @tparam T Type of the data.
+	 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+	 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+	 *
+	 * @todo The HTTP handlers may be moved to protected if HTTP::Server is declared as friend class. Currently this is not done to alllow for greater flexibility.
+	*/
+	template <typename T, int x = -1, int y = -1>
+	class Variable : public Figure<T, x, y>
+	{
+	protected:
+
+		/**
+		 * @brief Nonce
+		 * 
+		 * Nonce with is considered as arbitrary message that the user may add to the measurement.
+		 * This could be JOB-IDs or similar.
+		*/
+		std::string nonce;
+
+		/**
+		 * @brief Checking Hash
+		 * 
+		 * Hash that is calculated from a defined binary representation of the variable and may be signed with private_key
+		 * such that the integrity of the data can be verified. Is null if not explicitly set.
+		 * 
+		 * @todo This is still error prone across different languages and platforms as endianess and memory layout need to be considered.
+		*/
+		std::vector<unsigned char> hash;
+
+		/**
+		 * @brief Covariance of the value
+		 * 
+		 * Covariance of the value expressed as multidimensional normal distribution with coverage factor 1.
+		 * The dimensionality depends on the dimensionality of the value:
+		 * - For scalar data, the covariance is a scalar corresponding to the variance.
+		 * - For data expanding along one dimension with length @em n the covariance is a matrix with dimension @em (n,n)
+		 * - For data expanding along two dimensions, covariance is currently not supported.
+		 * 
+		 * Note that the second template argument of the Container is @c x in this case.
+		*/
+		Container<T, x, x>  covariance;
+
+		/**
+		 * @brief Read callback
+		 *
+		 * Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage.
+		 * Be careful when including long-running queries as they will block the HTTP call.
+		 * Declared virtual to make sure the derived method is called first. Does nothing be default.
+		*/
+		virtual void read(void);
+		
+		/**
+		 * @brief Write callback
+		 * 
+		 * This is an empty implementation of the `write()` function which is needed to avoid
+		 * that Variable becomes abstract. It is never called.
+		 *  
+		*/
+		virtual void write(void);
+
+	public:
+		/**
+		 * @brief Constructor
+		 *
+		 * Standard constructor intialiazing the values. If subclassed, it should be called from the subclass constructor.
+		 * @param [in] parent Shared pointer to parent object.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * @param [in] range Allowed range for the variable values, defaults to an empty object, i.e. allowing all values
+		 * @param [in] time Timestamp for the initial value, defaults to unset
+		 * @param [in] nonce Custom message to add to the variable, defaults to unset
+		*/
+		Variable(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology = "", Range<T> range = Range<T>(), TIME time = TIME(), std::string nonce = "");
+		
+		/**
+		 * @brief Destructor
+		 *
+		 * Default destructor, without custom effort.
+		*/
+		~Variable();
+
+		/**
+		 * @brief Create new Variable
+		 *
+		 * Create a new Variable using the default constructor and return a shared pointer reference.
+		 * This is the preferred method for manual creation with consistent lifecycle handling.
+		 * @param [in] parent Shared pointer to parent object.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * @param [in] range Allowed range for the variable values, defaults to an empty object, i.e. allowing all values
+		 * @param [in] time Timestamp for the initial value, defaults to unset
+		 * @param [in] nonce Custom message to add to the variable, defaults to unset
+		*/
+		static std::shared_ptr<Variable> create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology = "", Range<T> range = Range<T>(), TIME time = TIME(), std::string nonce = "");
+
+		/**
+		 * @brief Assignment operator
+		 *
+		 * Assigns the value provided as container on the right hand side to the variable.
+		 * Immediately resorts to the implementation in Figure internally.
+		 *
+		 * @exception std::range_error Throws an exception if the value to assign is outside the allowed range.
+		 *
+		 * @param[in] value Value to assign
+		 * @return Reference to the current Variable
+		*/
+		Variable<T, x, y>& operator =(const Container<T, x, y>& value);
+
+		/**
+		 * @brief HTTP JSON
+		 *
+		 * Get a HTTP JSON object corresponding to the current state of the Parameter.
+		 * This function provides a SOIL-conformant JSON representation the parameter.
+		 * It internally extends the method of Figure.
+		 *
+		 * @return JSON object
+		*/
+		HTTP::Json wjson(void) override;
+
+		/**
+		 * @brief HTTP GET Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a GET method.
+		 * This function returns a representation of the Variable and its current value to the requesting party.
+		 * It should not be overridden directly in subclasses, instead the `read()` function should be overriden.
+		 * It is an expected behaviour that `read()` calls an external method to update the value and may take some time to return.
+		 * Please note that the default timeout in cpprestsdk is 120s, which is already very long. Consider an asynchronous update model if your
+		 * devices takes longer to measure.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_get(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief HTTP OPTIONS Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a OPTIONS method.
+		 * This function returns a representation of the Variable and its current stored value to the requesting party.
+		 * In contrast to GET, the `read()` function is not called such that there are no side effects if a requesting party
+		 * just wants to obtain informtion about the variable's metadata in the first place.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_options(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief Update value
+		 * 
+		 * Update the value of the variable. As value, time and nonce are expected to change with each value update,
+		 * the three components are passed at the same time.
+		 * 
+		 * @param [in] value Value to set
+		 * @param [in] time Timestamp to set as corresponidng to the value
+		 * @param [in] nonce Nonce to set as corresponding to the value
+		*/
+		void update(const Container<T, x, y>& value, TIME time, std::string nonce = "");
+
+		/**
+		 * @brief Set Covariance
+		 * 
+		 * Set the covariance corresponding to the value. This is a separate call as the following three scenarios are foreseen:
+		 * - The covariance is set in the user defined update cycle, so this call can directly follow `update()`.
+		 * - The covariance is estimated constant for all measurements, so there is no need for updating it
+		 * - The covariance is not available, thus set to null.
+		 * 
+		 * @param [in] covariance Covariance provided as container object
+		*/
+		void set_covariance(Container<T, x, x>  covariance);
+
+		/**
+		 * @brief Get bytewise representation
+		 * 
+		 * Get a bytewise representation of the variable. This is constructed in the following order:
+		 * - Dimensions in declared order
+		 * - Value in row-major order
+		 * - Covariane in row-major-order (cannot be null!)
+		 * - Unit directly taken from UTF-8 chars
+		 * - Timestamp (cf. explanation there)
+		 * - Nonce as UTF-8 string
+		 *
+		 * This function is mainly used for hashing and signing purposes.
+		 * It does not write to an internal attribute.
+		 * 
+		 * @return Constructucted bytestring
+		*/
+		std::vector <unsigned char> bytes(void);
+
+		/**
+		 * @brief Calculate SHA256
+		 *
+		 * Calculates the sha256 hash of the bytestring representation.
+		 * Internally calls `bytes()`, but does not write to any value.
+		 *
+		 * @return  SHA256 hash as bytestring
+		*/
+		std::vector <unsigned char> sha256(void);
+
+		/**
+		 * @brief Sign the variable data
+		 * 
+		 * Sign the measurement data. If an pointer to an instance of SIGN::Signer is passed, the `fingerprint()` function is used to sign
+		 * the sha256 hash with the managed private key. Otherwise, the `sha256()` function is used.
+		 * 
+		 * In both cases, the resulting bytestring is stored to the internal `hash` attribute and returned.
+		 * 
+		 * @pre The SIGN::Signer instance must be instialized elsewhere and have an apropriate lifecycle.
+		 * @post The `hash` attribute is automatically updated by this call.
+		 * 
+		 * @param [in] signer Reference to a SIGN::Signer object holding the private key to use 
+		 * @return Signature bytestring
+		*/
+		std::vector <unsigned char> sign(std::shared_ptr<SIGN::Signer> signer = NULL);
+
+		/**
+		 * @brief Calculate RSA fingerprint 
+		 *
+		 * Signs the sha256 hash with the private key managed by the passed instance of SIGN::Signer. 
+		 * Does not write to an internal attribute.
+		 *
+		 * @pre The SIGN::Signer instance must be instialized elsewhere and have an apropriate lifecycle.
+		 *
+		 * @param [in] signer Reference to a SIGN::Signer object holding the private key to use
+		 * @return Signature bytestring
+		*/
+		std::vector <unsigned char> fingerprint(std::shared_ptr<SIGN::Signer> signer);
+
+		
+		/**
+		 * @brief Get Pointer
+		 *
+		 * Return a shared pointer casted to the Parameter type to element itself.
+		 * @return Casted pointer
+		*/
+		inline std::shared_ptr<Variable> ptr(void)
+		{
+			return std::dynamic_pointer_cast<Variable>(Element::self);
+		}
+
+		/**
+		 * @brief Publish to MQTT
+		 *
+		 * Publish the current JSON representation under the FQID as topic using a given MQTT publisher.
+		 * This function must be explicitly called from the user's code as otherwise the update cycle would
+		 * depend on the publisher and the user will be left without control to call other methods before publishing.
+		 *
+		 * A good pattern is to have a reference to an MQTT publisher in a sublcassing implementation and implement a complete update
+		 * cycle there.
+		 *
+		 * @pre An MQTT::Publisher must be instantiated elsewhere and have a valid lifecycle.
+		 *
+		 * @param [in] publisher Reference to the publisher to use
+		 * @param [in] qos Quality of service to choose for MQTT message
+		 * @param [in] retain Flag whether to retain the message on the server.
+		 * @return Boolean flag whether the message was accepted in the message queue.
+		 *
+		 * @todo Currently the implementation of this function is redundant in Variable and Parameter.
+		 * It is deliberately not moved to Figure as different implementations may occur in the future,
+		 * but would be a valid option.
+		*/
+		bool mqtt(std::shared_ptr<MQTT::Publisher> publisher, int qos = 0, bool retain = false);
+	};
+
+
+}
+
+
+
+template<typename T, int x, int y>
+SOIL::Variable<T, x, y>::Variable(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology, Range<T> range, TIME time, std::string nonce) : SOIL::Figure<T, x, y>(parent, uuid, name, description, unit, ontology, range, time)
+{
+	if (uuid.substr(0, 3) != "VAR")
+	{
+		throw std::logic_error("UUIDs for Variables must start with VAR!");
+	}
+
+	HTTP::Resource::allowed_methods = { HTTP::Methods::GET, HTTP::Methods::GET, HTTP::Methods::OPTIONS, HTTP::Methods::HEAD};
+}
+
+template<typename T, int x, int y>
+SOIL::Variable<T, x, y>::~Variable()
+{
+}
+
+template<typename T, int x, int y>
+inline std::shared_ptr<SOIL::Variable<T,x,y> > SOIL::Variable<T, x, y>::create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology, Range<T> range, TIME time, std::string nonce)
+{
+	Variable<T, x, y>* variable = new Variable<T, x, y>(parent, uuid, name, description, unit, ontology, range, time, nonce);
+	return variable->ptr();
+}
+
+template<typename T, int x, int y>
+inline SOIL::Variable<T, x, y>& SOIL::Variable<T, x, y>::operator=(const Container<T, x, y>& value)
+{
+	Figure<T, x, y>::operator=(value);
+	return *this;
+}
+
+
+template<typename T, int x, int y>
+HTTP::Json SOIL::Variable<T, x, y>::wjson(void)
+{
+	std::unique_lock<std::recursive_mutex> lock(Element::mutex);
+	HTTP::Json json_root = SOIL::Figure<T, x, y>::wjson();
+
+	
+	std::ostringstream buffer;
+
+	for (std::string::size_type i = 0; i < hash.size();i++)
+	{
+		buffer << std::hex << std::setfill('0') << std::setw(2) << std::uppercase  << (int)hash[i];
+		if (i != hash.size() - 1)
+		{
+			buffer << std::setw(1) << " ";
+		}
+	}
+
+	std::string readable_hash = buffer.str();
+	
+	json_root[_XPLATSTR("nonce")] = (nonce == "") ? HTTP::Json::null() : SOIL::to_json(nonce);
+	json_root[_XPLATSTR("hash")] = (readable_hash == "") ? HTTP::Json::null() : SOIL::to_json(readable_hash);
+	json_root[_XPLATSTR("covariance")] = covariance.wjson()[_XPLATSTR("value")];
+
+	return json_root;
+}
+
+template<typename T, int x, int y>
+void SOIL::Variable<T, x, y>::read(void)
+{
+}
+
+template<typename T, int x, int y>
+void SOIL::Variable<T, x, y>::write(void)
+{
+}
+
+template<typename T, int x, int y>
+inline void SOIL::Variable<T, x, y>::set_covariance(Container<T, x, x> covariance)
+{
+	std::unique_lock<std::recursive_mutex> lock(Element::mutex);
+	this->covariance = covariance;
+}
+
+template<typename T, int x, int y>
+inline std::vector<unsigned char> SOIL::Variable<T, x, y>::bytes(void)
+{
+	std::unique_lock<std::recursive_mutex> lock(Element::mutex);
+	std::vector<unsigned char> result;
+	std::vector<unsigned char> bytes_dimension = Figure<T, x, y>::value.serialize_dimensions();
+	std::vector<unsigned char> bytes_value = Figure<T, x, y>::value.serialize_value();
+	std::vector<unsigned char> bytes_covariance = covariance.serialize_value();
+	std::vector<unsigned char> bytes_unit(3, ' ');
+	std::vector<unsigned char> bytes_time = Figure<T,x,y>::time.serialize();
+	std::vector<unsigned char> bytes_nonce;
+	for (int i = 0; i < static_cast<int>(std::min(static_cast<size_t>(3), Figure<T,x,y>::unit.length())); i++)
+	{
+		bytes_unit.at(i) = Figure<T, x, y>::unit.at(i);
+	}
+	for (int i = 0; i < static_cast<int>(nonce.length()); i++)
+	{
+		bytes_nonce.push_back(nonce.at(i));
+	}
+
+	result.insert(result.end(), bytes_dimension.begin(), bytes_dimension.end());
+	result.insert(result.end(), bytes_value.begin(), bytes_value.end());
+	result.insert(result.end(), bytes_covariance.begin(), bytes_covariance.end());
+	result.insert(result.end(), bytes_unit.begin(), bytes_unit.end());
+	result.insert(result.end(), bytes_time.begin(), bytes_time.end());
+	result.insert(result.end(), bytes_nonce.begin(), bytes_nonce.end());
+
+	return result;
+}
+
+template<typename T, int x, int y>
+inline std::vector<unsigned char> SOIL::Variable<T, x, y>::sha256(void)
+{
+	std::vector<unsigned char> data = this->bytes();
+	return SIGN::Hasher::sha256(data.data(), data.size());
+}
+
+template<typename T, int x, int y>
+inline std::vector<unsigned char> SOIL::Variable<T, x, y>::fingerprint(std::shared_ptr<SIGN::Signer> signer)
+{
+	return signer->sign(this->sha256());
+}
+
+template<typename T, int x, int y>
+inline std::vector<unsigned char> SOIL::Variable<T, x, y>::sign(std::shared_ptr<SIGN::Signer> signer)
+{
+	if (signer != NULL)
+	{
+		this->hash = this->fingerprint(signer);
+	}
+	else {
+		this->hash = this->sha256();
+	}
+
+	return this->hash;
+}
+
+template<typename T, int x, int y>
+inline bool SOIL::Variable<T, x, y>::mqtt(std::shared_ptr<MQTT::Publisher> publisher, int qos, bool retain)
+{
+	std::string topic = boost::algorithm::join(this->fqid(), "/");
+	return publisher->publish(topic, this->json(), qos, retain);
+}
+
+
+template<typename T, int x, int y>
+inline HTTP::Response SOIL::Variable<T, x, y>::handle_get(HTTP::Request message, std::smatch match)
+{
+	this->read();
+
+	HTTP::Response response;
+	response.set_body(this->wjson());
+	response.set_status_code(HTTP::Status::OK);
+
+	return response;
+}
+
+template<typename T, int x, int y>
+inline HTTP::Response SOIL::Variable<T, x, y>::handle_options(HTTP::Request message, std::smatch match)
+{
+	HTTP::Response response;
+	response.set_body(this->wjson());
+	response.set_status_code(HTTP::Status::OK);
+
+	return response;
+}
+
+template<typename T, int x, int y>
+inline void SOIL::Variable<T, x, y>::update(const Container<T, x, y>& value, TIME time, std::string nonce)
+{
+	Figure<T, x, y>::update(value, time);
+	this->nonce = nonce;
+
+	hash.clear();
+	covariance.set_null(true);
+}
+
+
+
+
diff --git a/dist/include/SOIL/constants.h b/dist/include/SOIL/constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..8db8c8140074600f89d18b363eab95dc102be0a3
--- /dev/null
+++ b/dist/include/SOIL/constants.h
@@ -0,0 +1,22 @@
+/**
+ * @brief Default definitions for project
+ *
+ * File being referenced by many others containing cross-project defaults.
+*/
+#pragma once
+#ifdef _WIN32
+#        pragma warning(disable: 4251)
+#		 pragma warning(disable: 4275)
+#    ifdef _WINDLL
+#        define DLL __declspec(dllexport)
+#    else
+#        define DLL __declspec(dllimport)
+#    endif
+#elif defined(__unix__)
+#    define DLL __attribute__((visibility("default")))
+#endif
+
+#define _WIN32_WINNT 0x600
+#ifdef _WIN32
+#include <SDKDDKVer.h>
+#endif
\ No newline at end of file
diff --git a/dist/include/SOIL/json_helpers.h b/dist/include/SOIL/json_helpers.h
new file mode 100644
index 0000000000000000000000000000000000000000..870f731670223b1824a6de360298f8bc1e5f61a6
--- /dev/null
+++ b/dist/include/SOIL/json_helpers.h
@@ -0,0 +1,64 @@
+#pragma once
+#include "constants.h"
+#include "Types.h"
+#define _TURN_OFF_PLATFORM_STRING
+#include "cpprest/http_listener.h"
+
+namespace SOIL
+{
+	/**
+	 * @brief Value to JSON
+	 * 
+	 * Helper function to convert a value to its correct JSON value (RHS of key in document).
+	 * This is a template function that is specialized for every datatype.
+	 * 
+	 * @tparam T Datatype under consideration
+	 * @param[in] value Value to convert
+	 * @return JSON value
+	*/
+	template <typename T>
+	DLL web::json::value to_json(const T& value);
+
+	/**
+	 * @brief JSON to Value
+	 *
+	 * Helper function to convert a value from a JSON object to its equivalent internal SOIL datatype.
+	 * This is a template function that is specialized for every datatype.
+	 *
+	 * @tparam T Datatype under consideration
+	 * @param [in] json JSON object to convert
+	 * @return Value in native datatype
+	*/
+	template <typename T>
+	DLL T to_value(web::json::value json);
+
+
+	template<>
+	DLL web::json::value to_json<double>(const double& value);
+	template<>
+	DLL web::json::value to_json<int64_t>(const int64_t& value);
+	template<>
+	DLL web::json::value to_json<int>(const int& value);
+	template<>
+	DLL web::json::value to_json<std::string>(const std::string& value);
+	template<>
+	DLL web::json::value to_json<SOIL::TIME>(const SOIL::TIME& value);
+	template<>
+	DLL web::json::value to_json<SOIL::ENUM>(const SOIL::ENUM& value);
+	template<>
+	DLL web::json::value to_json<SOIL::BOOL>(const bool& value);
+	template<>
+	DLL double to_value<double>(web::json::value value);
+	template<>
+	DLL int to_value<int>(web::json::value value);
+	template<>
+	DLL int64_t to_value<int64_t>(web::json::value value);
+	template<>
+	DLL std::string to_value<std::string>(web::json::value json);
+	template<>
+	DLL SOIL::TIME to_value<SOIL::TIME>(web::json::value json);
+	template<>
+	DLL SOIL::ENUM to_value<SOIL::ENUM>(web::json::value json);
+	template<>
+	DLL bool to_value<bool>(web::json::value json);
+}
diff --git a/dist/include/UDP/Broadcast.h b/dist/include/UDP/Broadcast.h
new file mode 100644
index 0000000000000000000000000000000000000000..495e9f7f1cedec0cc1cd8dd1892847f6848fc798
--- /dev/null
+++ b/dist/include/UDP/Broadcast.h
@@ -0,0 +1,150 @@
+#pragma once
+
+#include "constants.h"
+#include <atomic>
+#include <memory>
+#include <mutex>
+#include <stdexcept>
+#include <vector>
+#include "Configuration.h"
+#include <boost/thread.hpp>
+#include <boost/asio.hpp>
+
+namespace UDP
+{
+	/**
+	 * @brief UDP Broadcast
+	 * 
+	 * Simple UDP Broadcast implemented on top of boost asio.
+	 * This is currently a conveience member of the C++ SOIL library as its not part of the specification.
+	 * It may be omitted in the future.
+	*/
+	class DLL Broadcast
+	{
+	private:
+		/**
+		 * @brief Thread group
+		 * 
+		 * Internal group of threads handling the communication work
+		 * The boost asio library organized asynchronous communication by itself so that blocking calls can be avoided.
+		*/
+		std::shared_ptr<boost::thread_group> threads;
+
+		/**
+		 * @brief ASIO work object
+		 * 
+		 * Work object required for boost asio to maintain threads alive
+		*/
+		std::shared_ptr<boost::asio::io_service::work> work;
+
+		/**
+		 * @brief ASIO IO service
+		 * 
+		 * Boost ASIO IO service obejct used to implement UDP communication
+		*/
+		boost::asio::io_service io_service;
+
+		/**
+		 * @brief UDP Socket pointer
+		 * 
+		 * Shared pointer to the internally used udp socket implemented using boost.
+		*/
+		std::shared_ptr<boost::asio::ip::udp::socket> socket;
+
+		/**
+		 * @brief UDP Endpoints
+		 * 
+		 * List of UDP endpoints which are recipients of the broadcast
+		*/
+		std::vector<boost::asio::ip::udp::endpoint> endpoints;
+
+		/**
+		 * @brief UDP Endpoints mutex
+		 * 
+		 * Mutex to make access to the list of endpoints thread safe when adding or removing clients.
+		*/
+		std::mutex endpoints_mutex;
+
+		/**
+		 * @brief Internal Send
+		 * 
+		 * Send function called internally and implementing the boost asio specific logic.
+		 * @param [in] message Message to broadcast over UDP
+		*/
+		void _send(std::string message);
+
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Constructor instantiating an UDP Broadcast.
+		 * The socket is immediately opened upon successful construction.
+		 * 
+		 * @param[in] n_threads Number of threads to assign to the thread group.
+		 * Only for very large loads a number of threads greater than 1 should be needed.
+		*/
+		Broadcast(int n_threads = 1);
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Destructor which closes the socket and stops all threads if not previously done.
+		*/
+		~Broadcast();
+
+		/**
+		 * @brief Add UDP client
+		 * 
+		 * Add a client to list of recipients of the UDP broadcast.
+		 * One can only send to one port per IP address, the IPv4 address acts as unique identifier.
+		 * 
+		 * @param [in] ip IPv4 address to send to
+		 * @param [in] port Port to send to 
+		*/
+		void add_client(std::string ip, unsigned int port);
+		
+		/**
+		 * @brief Remove UDP client
+		 * 
+		 * Remove a client to list of recipients of the UDP broadcast which is identified through its IPv4 address.
+		 * @param [in] ip IPv4 adress of the client to remove 
+		*/
+		void remove_client(std::string ip);
+
+		/**
+		 * @brief Send Message
+		 * 
+		 * Send an individual message over the UDP Broadcast.It will be terminated by a newline (@c \r\n).
+		 * @param [in] message Message to send
+		*/
+		void send(std::string message);
+
+		/**
+		 * @brief Send Multiple Message
+		 *
+		 * Send a set of messages over the UDP Broadcast.They will be separated and terminated by a newlines (@c \r\n).
+		 * @param [in] messages Messages to send
+		*/
+		void send(std::vector<std::string> messages);
+
+		//void handle(std::shared_ptr<std::string> message, const boost::system::error_code& error, std::size_t bytes);
+		
+		/**
+		 * @brief Number of Clients
+		 * 
+		 * Get the number of registered UDP clients.
+		 *
+		 * @return Number of registered UDP clients.
+		*/
+		inline int use_count(void) { return static_cast<int>(endpoints.size()); }
+
+		/**
+		 * @brief Configure Broadcast
+		 * 
+		 * Configure the broadcast with a configuration object, i.e. a list of endpoints.
+		 * @param [in] config Configuration object 
+		*/
+		void configure(UDP::Configuration config);
+	};
+}
+
diff --git a/dist/include/UDP/Configuration.h b/dist/include/UDP/Configuration.h
new file mode 100644
index 0000000000000000000000000000000000000000..5a720746ab7341146bef159bd5ff35ff87382f1d
--- /dev/null
+++ b/dist/include/UDP/Configuration.h
@@ -0,0 +1,53 @@
+#pragma once
+#include "constants.h"
+#include <map>
+#include <string>
+namespace  UDP
+{
+	/**
+	 * @brief UDP Broadcast Configuration
+	 * 
+	 * Class to simplify the configuration of UDP broadcasts, i.e. by providing a list of client endpoints that can be populated from a JSON file.
+	 * For simplicity, all members are public.
+	*/
+	class DLL Configuration
+	{
+	public:
+		/**
+		 * @brief Iterator
+		 * 
+		 * Typedefinition to provide an iterator-sytled access
+		*/
+		typedef std::map<std::string, int>::iterator iterator;
+
+		/**
+		 * @brief List of clients
+		 * 
+		 * List of clients, implemented as map where the IPv4 address acts as unique identifier.
+		*/
+		std::map<std::string, int> clients;
+
+		/**
+		 * @brief Constructor
+		 * 
+		 * Default constructor, creates an empty list of clients.
+		*/
+		Configuration();
+
+		/**
+		 * @brief JSON Constructor
+		 * 
+		 * Constructor the takes a JSON file as input to populate the list of clients.
+		 * See the project assets for a sample file.
+		 * @param [in] filename Path to the JSON configuration file
+		*/
+		Configuration(std::string filename);
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Default destructor, empties the map.
+		*/
+		~Configuration();
+	};
+}
diff --git a/dist/include/UDP/Exception.h b/dist/include/UDP/Exception.h
new file mode 100644
index 0000000000000000000000000000000000000000..368a71477af4568499f55c3ba96e3c7c835af2b9
--- /dev/null
+++ b/dist/include/UDP/Exception.h
@@ -0,0 +1,31 @@
+#pragma once
+#include "constants.h"
+#include <stdexcept>
+namespace UDP
+{
+	/**
+	 * @brief UDP Broadcast Exception
+	 *
+	 * Specific subclass of @c std::runtime_error to distinguish exceptions coming from the UDO Broadcast.
+	*/
+	class DLL Exception :
+		public std::runtime_error
+	{
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Constructor taking a message that is passed to @c std::runtime_error.
+		 * @param [in] message Message to add to the runtime error
+		*/
+		Exception(const char* message = "");
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Default destructor, no special effort here.
+		*/
+		~Exception(void);
+
+	};
+}
\ No newline at end of file
diff --git a/dist/include/UDP/constants.h b/dist/include/UDP/constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..bdd3676b8279dd894d7be689765d9abcf80e7b3d
--- /dev/null
+++ b/dist/include/UDP/constants.h
@@ -0,0 +1,21 @@
+/**
+ * @brief Default definitions for project
+ *
+ * File being referenced by many others containing cross-project defaults.
+*/
+#pragma once
+#ifdef _WIN32
+#        pragma warning(disable: 4251)
+#		 pragma warning(disable: 4275)
+#    ifdef _WINDLL
+#        define DLL __declspec(dllexport)
+#    else
+#        define DLL __declspec(dllimport)
+#    endif
+#elif defined(__unix__)
+#    define DLL __attribute__((visibility("default")))
+#endif
+
+#ifdef _WIN32
+#include <SDKDDKVer.h>
+#endif
\ No newline at end of file
diff --git a/dist/x64/Debug/bin/MQTT.dll b/dist/x64/Debug/bin/MQTT.dll
new file mode 100644
index 0000000000000000000000000000000000000000..2d8c575500cbb83d3b9959e93249df78f9c0d235
Binary files /dev/null and b/dist/x64/Debug/bin/MQTT.dll differ
diff --git a/dist/x64/Debug/bin/REST.dll b/dist/x64/Debug/bin/REST.dll
new file mode 100644
index 0000000000000000000000000000000000000000..5cc03061356394cb78f5b35919fe6ed361dff33c
Binary files /dev/null and b/dist/x64/Debug/bin/REST.dll differ
diff --git a/dist/x64/Debug/bin/SIGN.dll b/dist/x64/Debug/bin/SIGN.dll
new file mode 100644
index 0000000000000000000000000000000000000000..a8c8ce7129420b44e8cc69acad1d35be8b544490
Binary files /dev/null and b/dist/x64/Debug/bin/SIGN.dll differ
diff --git a/dist/x64/Debug/bin/SOIL.dll b/dist/x64/Debug/bin/SOIL.dll
new file mode 100644
index 0000000000000000000000000000000000000000..837baa53a26fbe0b5381afe5af2ee8a2a487ec7a
Binary files /dev/null and b/dist/x64/Debug/bin/SOIL.dll differ
diff --git a/dist/x64/Debug/bin/UDP.dll b/dist/x64/Debug/bin/UDP.dll
new file mode 100644
index 0000000000000000000000000000000000000000..4ea57a73f7d075f14c3081fde09dbb7fc29873d1
Binary files /dev/null and b/dist/x64/Debug/bin/UDP.dll differ
diff --git a/dist/x64/Debug/lib/MQTT.lib b/dist/x64/Debug/lib/MQTT.lib
new file mode 100644
index 0000000000000000000000000000000000000000..5acd0a977a88f3549d53a99a04e55cfba3b54152
Binary files /dev/null and b/dist/x64/Debug/lib/MQTT.lib differ
diff --git a/dist/x64/Debug/lib/REST.lib b/dist/x64/Debug/lib/REST.lib
new file mode 100644
index 0000000000000000000000000000000000000000..22f5ba344ad01bfc135b8a4bc7ee8c93917e8c89
Binary files /dev/null and b/dist/x64/Debug/lib/REST.lib differ
diff --git a/dist/x64/Debug/lib/SIGN.lib b/dist/x64/Debug/lib/SIGN.lib
new file mode 100644
index 0000000000000000000000000000000000000000..104f639a7801780b4bc2e5165bcff1ffc38e0401
Binary files /dev/null and b/dist/x64/Debug/lib/SIGN.lib differ
diff --git a/dist/x64/Debug/lib/SOIL.lib b/dist/x64/Debug/lib/SOIL.lib
new file mode 100644
index 0000000000000000000000000000000000000000..68ea97b1e0285c94dbfa728c1a1cf528faea48a1
Binary files /dev/null and b/dist/x64/Debug/lib/SOIL.lib differ
diff --git a/dist/x64/Debug/lib/UDP.lib b/dist/x64/Debug/lib/UDP.lib
new file mode 100644
index 0000000000000000000000000000000000000000..734201f31ffb2ba37f94263d13d41b8b9645183c
Binary files /dev/null and b/dist/x64/Debug/lib/UDP.lib differ
diff --git a/dist/x64/Release/bin/MQTT.dll b/dist/x64/Release/bin/MQTT.dll
new file mode 100644
index 0000000000000000000000000000000000000000..8914b005a35f0f9bb952d6e4922442e170f6d08d
Binary files /dev/null and b/dist/x64/Release/bin/MQTT.dll differ
diff --git a/dist/x64/Release/bin/REST.dll b/dist/x64/Release/bin/REST.dll
new file mode 100644
index 0000000000000000000000000000000000000000..08988ee1b9fbc97afbd95c91d0b3fd4c6138edc8
Binary files /dev/null and b/dist/x64/Release/bin/REST.dll differ
diff --git a/dist/x64/Release/bin/SIGN.dll b/dist/x64/Release/bin/SIGN.dll
new file mode 100644
index 0000000000000000000000000000000000000000..10e837a39dde9d02605886ee5316734ac75f05e4
Binary files /dev/null and b/dist/x64/Release/bin/SIGN.dll differ
diff --git a/dist/x64/Release/bin/SOIL.dll b/dist/x64/Release/bin/SOIL.dll
new file mode 100644
index 0000000000000000000000000000000000000000..a273e6ea615b7d0a6a9affd352457affc05d2ff8
Binary files /dev/null and b/dist/x64/Release/bin/SOIL.dll differ
diff --git a/dist/x64/Release/bin/UDP.dll b/dist/x64/Release/bin/UDP.dll
new file mode 100644
index 0000000000000000000000000000000000000000..0cee000b6cb865582e2202948f635b49f9c5a175
Binary files /dev/null and b/dist/x64/Release/bin/UDP.dll differ
diff --git a/dist/x64/Release/lib/MQTT.lib b/dist/x64/Release/lib/MQTT.lib
new file mode 100644
index 0000000000000000000000000000000000000000..e65ff3a0da26db3ad9fd9b2a87f44a093bcaafec
Binary files /dev/null and b/dist/x64/Release/lib/MQTT.lib differ
diff --git a/dist/x64/Release/lib/REST.lib b/dist/x64/Release/lib/REST.lib
new file mode 100644
index 0000000000000000000000000000000000000000..d9557a5d03ea729c4d51facdf0a8edad7d6e58df
Binary files /dev/null and b/dist/x64/Release/lib/REST.lib differ
diff --git a/dist/x64/Release/lib/SIGN.lib b/dist/x64/Release/lib/SIGN.lib
new file mode 100644
index 0000000000000000000000000000000000000000..84f3009190601c1d8b301d4800889c054cfb790f
Binary files /dev/null and b/dist/x64/Release/lib/SIGN.lib differ
diff --git a/dist/x64/Release/lib/SOIL.lib b/dist/x64/Release/lib/SOIL.lib
new file mode 100644
index 0000000000000000000000000000000000000000..41f84195f97037c3c513b4409589c96d21920475
Binary files /dev/null and b/dist/x64/Release/lib/SOIL.lib differ
diff --git a/dist/x64/Release/lib/UDP.lib b/dist/x64/Release/lib/UDP.lib
new file mode 100644
index 0000000000000000000000000000000000000000..8d6d50570185994e9d4faadcf9774639a0205727
Binary files /dev/null and b/dist/x64/Release/lib/UDP.lib differ
diff --git a/dist/x86/Debug/bin/JSON.dll b/dist/x86/Debug/bin/JSON.dll
new file mode 100644
index 0000000000000000000000000000000000000000..549c81ef4f879b95eb8c791620c5b0f65e6d799b
Binary files /dev/null and b/dist/x86/Debug/bin/JSON.dll differ
diff --git a/dist/x86/Debug/bin/MQTT.dll b/dist/x86/Debug/bin/MQTT.dll
new file mode 100644
index 0000000000000000000000000000000000000000..5b58914f3a49c85d9d5173ae2e561d9004a0c76d
Binary files /dev/null and b/dist/x86/Debug/bin/MQTT.dll differ
diff --git a/dist/x86/Debug/bin/REST.dll b/dist/x86/Debug/bin/REST.dll
new file mode 100644
index 0000000000000000000000000000000000000000..e3f508a0ad2cd6b1c4995c4ec17c59144aacf43d
Binary files /dev/null and b/dist/x86/Debug/bin/REST.dll differ
diff --git a/dist/x86/Debug/bin/SIGN.dll b/dist/x86/Debug/bin/SIGN.dll
new file mode 100644
index 0000000000000000000000000000000000000000..fe2510120405009ee3abc64a3e4b3e8ac262d95b
Binary files /dev/null and b/dist/x86/Debug/bin/SIGN.dll differ
diff --git a/dist/x86/Debug/bin/SOIL.dll b/dist/x86/Debug/bin/SOIL.dll
new file mode 100644
index 0000000000000000000000000000000000000000..3ad18e420b5e1742c149e054af2fc194d60825a0
Binary files /dev/null and b/dist/x86/Debug/bin/SOIL.dll differ
diff --git a/dist/x86/Debug/bin/UDP.dll b/dist/x86/Debug/bin/UDP.dll
new file mode 100644
index 0000000000000000000000000000000000000000..3f8675143dada90f982e24bcdcae1fba7ae0d74d
Binary files /dev/null and b/dist/x86/Debug/bin/UDP.dll differ
diff --git a/dist/x86/Debug/lib/MQTT.lib b/dist/x86/Debug/lib/MQTT.lib
new file mode 100644
index 0000000000000000000000000000000000000000..fcf45442411cdde4617537d3fdc9b2afb8ee4f2d
Binary files /dev/null and b/dist/x86/Debug/lib/MQTT.lib differ
diff --git a/dist/x86/Debug/lib/REST.lib b/dist/x86/Debug/lib/REST.lib
new file mode 100644
index 0000000000000000000000000000000000000000..4453572cdf871dbf9fdf042a62eeecd7c417a35e
Binary files /dev/null and b/dist/x86/Debug/lib/REST.lib differ
diff --git a/dist/x86/Debug/lib/SIGN.lib b/dist/x86/Debug/lib/SIGN.lib
new file mode 100644
index 0000000000000000000000000000000000000000..227d3fb307adb7f0c4d743d158f464d3e5e364b1
Binary files /dev/null and b/dist/x86/Debug/lib/SIGN.lib differ
diff --git a/dist/x86/Debug/lib/SOIL.lib b/dist/x86/Debug/lib/SOIL.lib
new file mode 100644
index 0000000000000000000000000000000000000000..0e664280cf3446e2a2e53c23ea38f13dd1a1b05f
Binary files /dev/null and b/dist/x86/Debug/lib/SOIL.lib differ
diff --git a/dist/x86/Debug/lib/UDP.lib b/dist/x86/Debug/lib/UDP.lib
new file mode 100644
index 0000000000000000000000000000000000000000..7c800afa203764bc2ed9f4de3ad1fa13155d08d6
Binary files /dev/null and b/dist/x86/Debug/lib/UDP.lib differ
diff --git a/dist/x86/Release/bin/JSON.dll b/dist/x86/Release/bin/JSON.dll
new file mode 100644
index 0000000000000000000000000000000000000000..81cbde2ebf8707e9863d69955f38cb856421a8ea
Binary files /dev/null and b/dist/x86/Release/bin/JSON.dll differ
diff --git a/dist/x86/Release/bin/MQTT.dll b/dist/x86/Release/bin/MQTT.dll
new file mode 100644
index 0000000000000000000000000000000000000000..64eb843bd9fbef59ea0e4745631d825a7e581140
Binary files /dev/null and b/dist/x86/Release/bin/MQTT.dll differ
diff --git a/dist/x86/Release/bin/REST.dll b/dist/x86/Release/bin/REST.dll
new file mode 100644
index 0000000000000000000000000000000000000000..246fed7daade97de1573ceb8321811ef150bba5f
Binary files /dev/null and b/dist/x86/Release/bin/REST.dll differ
diff --git a/dist/x86/Release/bin/SIGN.dll b/dist/x86/Release/bin/SIGN.dll
new file mode 100644
index 0000000000000000000000000000000000000000..69d58899748fda4f08a8543b935dee706b4f5283
Binary files /dev/null and b/dist/x86/Release/bin/SIGN.dll differ
diff --git a/dist/x86/Release/bin/SOIL.dll b/dist/x86/Release/bin/SOIL.dll
new file mode 100644
index 0000000000000000000000000000000000000000..92c5090d37f8dac6f9d93d9dd824a49a6ed68992
Binary files /dev/null and b/dist/x86/Release/bin/SOIL.dll differ
diff --git a/dist/x86/Release/bin/UDP.dll b/dist/x86/Release/bin/UDP.dll
new file mode 100644
index 0000000000000000000000000000000000000000..b9efdcade548624d31f93bd21b910c56278cc55a
Binary files /dev/null and b/dist/x86/Release/bin/UDP.dll differ
diff --git a/dist/x86/Release/lib/JSON.lib b/dist/x86/Release/lib/JSON.lib
new file mode 100644
index 0000000000000000000000000000000000000000..2a1fbaa9fb025387d840002c11f4cbbb8f1f3f9d
Binary files /dev/null and b/dist/x86/Release/lib/JSON.lib differ
diff --git a/dist/x86/Release/lib/MQTT.lib b/dist/x86/Release/lib/MQTT.lib
new file mode 100644
index 0000000000000000000000000000000000000000..319960f06e6861f89cb51d624cad5dea585522bb
Binary files /dev/null and b/dist/x86/Release/lib/MQTT.lib differ
diff --git a/dist/x86/Release/lib/REST.lib b/dist/x86/Release/lib/REST.lib
new file mode 100644
index 0000000000000000000000000000000000000000..76f0bfdd42f12d238a0d49a3ca09fb6ec483a8d4
Binary files /dev/null and b/dist/x86/Release/lib/REST.lib differ
diff --git a/dist/x86/Release/lib/SIGN.lib b/dist/x86/Release/lib/SIGN.lib
new file mode 100644
index 0000000000000000000000000000000000000000..52d3b466477b097919097b424c4c8254445be951
Binary files /dev/null and b/dist/x86/Release/lib/SIGN.lib differ
diff --git a/dist/x86/Release/lib/SOIL.lib b/dist/x86/Release/lib/SOIL.lib
new file mode 100644
index 0000000000000000000000000000000000000000..5f3ef01b04d73dc899184432d52b1a24ef86e952
Binary files /dev/null and b/dist/x86/Release/lib/SOIL.lib differ
diff --git a/dist/x86/Release/lib/UDP.lib b/dist/x86/Release/lib/UDP.lib
new file mode 100644
index 0000000000000000000000000000000000000000..51f716af1d797ad6a4bfb207742e3eb6f43c93d4
Binary files /dev/null and b/dist/x86/Release/lib/UDP.lib differ
diff --git a/doc/html/_broadcast_8cpp.html b/doc/html/_broadcast_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..4c5be625914d044854926e9a2833515cda1ee9cd
--- /dev/null
+++ b/doc/html/_broadcast_8cpp.html
@@ -0,0 +1,103 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Broadcast.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_broadcast_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Broadcast.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_broadcast_8h_source.html">Broadcast.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_exception_8h_source.html">Exception.h</a>&quot;</code><br />
+</div>
+<p><a href="_broadcast_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_broadcast_8cpp.html">Broadcast.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_broadcast_8cpp_source.html b/doc/html/_broadcast_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..6f27d2b28e90252b78683dc1791f14b06197030c
--- /dev/null
+++ b/doc/html/_broadcast_8cpp_source.html
@@ -0,0 +1,249 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Broadcast.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_broadcast_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Broadcast.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_broadcast_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_broadcast_8h.html">Broadcast.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_exception_8h.html">Exception.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7">    5</a></span><a class="code hl_function" href="class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7">UDP::Broadcast::Broadcast</a>(<span class="keywordtype">int</span> n_threads)</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>{</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    threads.reset(<span class="keyword">new</span> boost::thread_group);</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    work.reset(<span class="keyword">new</span> boost::asio::io_service::work(io_service));</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; n_threads; i++)</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    {</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>        threads-&gt;create_thread(boost::bind(&amp;boost::asio::io_service::run, &amp;io_service));</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    }</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    socket.reset(<span class="keyword">new</span> boost::asio::ip::udp::socket(io_service));<span class="comment">//, boost::asio::ip::udp::endpoint(boost::asio::ip::udp::v4(), 0)));</span></div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    socket-&gt;open(boost::asio::ip::udp::v4());</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    boost::asio::socket_base::reuse_address reuse_address(<span class="keyword">true</span>);</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    socket-&gt;set_option(boost::asio::socket_base::reuse_address(<span class="keyword">true</span>));</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="comment">//socket-&gt;set_option(boost::asio::socket_base::broadcast(true));</span></div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    endpoints.resize(0);</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>}</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span> </div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f">   23</a></span><a class="code hl_function" href="class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f">UDP::Broadcast::~Broadcast</a>()</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>{</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    <span class="keywordflow">if</span> (socket.use_count() &gt; 0)</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    {</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>        <span class="keywordflow">if</span> (socket-&gt;is_open())</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>        {</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>            socket-&gt;shutdown(boost::asio::ip::udp::socket::shutdown_both);</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>            socket-&gt;close();</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>        }</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>        socket.reset();</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>        endpoints.resize(0);</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    }</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    work.reset();</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    threads-&gt;join_all();</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    threads.reset();</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>}</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span> </div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b">   40</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b">UDP::Broadcast::add_client</a>(std::string ip, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> port)</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>{</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    std::unique_lock&lt;std::mutex&gt; lock(endpoints_mutex);</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    <span class="keywordflow">try</span></div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    {</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>        std::vector&lt;boost::asio::ip::udp::endpoint&gt;::iterator it;</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>        boost::asio::ip::address address = boost::asio::ip::address::from_string(ip);</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>        <span class="keywordflow">for</span> (it = endpoints.begin(); it != endpoints.end(); it++)</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>        {</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>            <span class="keywordflow">if</span> ((*it).address() == address)</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>            {</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>                <span class="keywordflow">throw</span> <a class="code hl_class" href="class_u_d_p_1_1_exception.html">UDP::Exception</a>(<span class="stringliteral">&quot;Client is already among broadcast recipients!&quot;</span>);</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>            }</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>        }</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>        endpoints.push_back(boost::asio::ip::udp::endpoint(address, port));</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>    }</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>    <span class="keywordflow">catch</span> (std::exception&amp; exception)</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    {</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>        std::string message = std::string(<span class="stringliteral">&quot;Error while adding UDP client: &quot;</span>) + exception.what();</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>        <span class="keywordflow">throw</span> <a class="code hl_class" href="class_u_d_p_1_1_exception.html">UDP::Exception</a>(message.c_str());</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>    }</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>}</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span> </div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92">   63</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92">UDP::Broadcast::remove_client</a>(std::string ip)</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>{</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>    std::unique_lock&lt;std::mutex&gt; lock(endpoints_mutex);</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>    <span class="keywordflow">try</span></div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>    {</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>        std::vector&lt;boost::asio::ip::udp::endpoint&gt;::iterator it;</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>        boost::asio::ip::address address = boost::asio::ip::address::from_string(ip);</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>        <span class="keywordflow">for</span> (it = endpoints.begin(); it != endpoints.end(); it++)</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>        {</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span>            <span class="keywordflow">if</span> ((*it).address() == address)</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>            {</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>                <span class="keywordflow">break</span>;</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>            }</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>        }</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>        <span class="keywordflow">if</span> (it == endpoints.end())</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span>        {</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>            <span class="keywordflow">throw</span> <a class="code hl_class" href="class_u_d_p_1_1_exception.html">UDP::Exception</a>(<span class="stringliteral">&quot;Client is not in broadcast list!&quot;</span>);</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>        }</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>        endpoints.erase(it);</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>    }</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>    <span class="keywordflow">catch</span> (std::exception&amp; exception)</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>    {</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span>        std::string error_message = std::string(<span class="stringliteral">&quot;Error while removing UDP client: &quot;</span>) + exception.what();</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>        <span class="keywordflow">throw</span> <a class="code hl_class" href="class_u_d_p_1_1_exception.html">UDP::Exception</a>(error_message.c_str());</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>    }</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>}</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span> </div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span><span class="keywordtype">void</span> UDP::Broadcast::_send(std::string message)</div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span>{</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span>    <span class="keywordflow">if</span> (socket.use_count() == 0)</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>    {</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>        <span class="keywordflow">return</span>;</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>    }</div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>    <span class="keywordflow">if</span> (socket-&gt;is_open())</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span>    {</div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span>        std::unique_lock&lt;std::mutex&gt; lock(endpoints_mutex);</div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno">   99</span>        std::shared_ptr&lt;std::string&gt; local_message(<span class="keyword">new</span> std::string(message));</div>
+<div class="line"><a id="l00100" name="l00100"></a><span class="lineno">  100</span>        std::vector&lt;boost::asio::ip::udp::endpoint&gt;::iterator it;</div>
+<div class="line"><a id="l00101" name="l00101"></a><span class="lineno">  101</span>        <span class="keywordflow">for</span> (it = endpoints.begin(); it != endpoints.end(); it++)</div>
+<div class="line"><a id="l00102" name="l00102"></a><span class="lineno">  102</span>        {</div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno">  103</span>            socket-&gt;send_to(boost::asio::buffer(*local_message), *it);</div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span>            <span class="comment">//socket-&gt;send_to(boost::asio::buffer(*local_message), *it, boost::bind(&amp;UDP::Broadcast::handle, this, message, boost::asio::placeholders::error, boost::asio::placeholders::bytes_transferred));</span></div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>        }</div>
+<div class="line"><a id="l00106" name="l00106"></a><span class="lineno">  106</span>    }</div>
+<div class="line"><a id="l00107" name="l00107"></a><span class="lineno">  107</span>}</div>
+<div class="line"><a id="l00108" name="l00108"></a><span class="lineno">  108</span> </div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">  109</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">UDP::Broadcast::send</a>(std::string message)</div>
+<div class="line"><a id="l00110" name="l00110"></a><span class="lineno">  110</span>{</div>
+<div class="line"><a id="l00111" name="l00111"></a><span class="lineno">  111</span>    io_service.post(boost::bind(&amp;UDP::Broadcast::_send, <span class="keyword">this</span>, message + <span class="stringliteral">&quot;\r\n&quot;</span>));</div>
+<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span>}</div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span> </div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_broadcast.html#a43e3f6b55707430a2eb698c41d181f6d">  114</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">UDP::Broadcast::send</a>(std::vector&lt;std::string&gt; messages)</div>
+<div class="line"><a id="l00115" name="l00115"></a><span class="lineno">  115</span>{</div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno">  116</span>    std::string message = <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span>    <span class="keywordflow">for</span> (std::vector&lt;std::string&gt;::iterator it = messages.begin(); it != messages.end(); it++)</div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno">  118</span>    {</div>
+<div class="line"><a id="l00119" name="l00119"></a><span class="lineno">  119</span>        message += (*it) + <span class="stringliteral">&quot;\r\n&quot;</span>;</div>
+<div class="line"><a id="l00120" name="l00120"></a><span class="lineno">  120</span>    }</div>
+<div class="line"><a id="l00121" name="l00121"></a><span class="lineno">  121</span>    io_service.post(boost::bind(&amp;UDP::Broadcast::_send, <span class="keyword">this</span>, message));</div>
+<div class="line"><a id="l00122" name="l00122"></a><span class="lineno">  122</span>}</div>
+<div class="line"><a id="l00123" name="l00123"></a><span class="lineno">  123</span> </div>
+<div class="line"><a id="l00124" name="l00124"></a><span class="lineno">  124</span><span class="comment">/*</span></div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno">  125</span><span class="comment">void UDP::Broadcast::handle(std::shared_ptr&lt;std::string&gt; message, const boost::system::error_code &amp; error, std::size_t bytes)</span></div>
+<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span><span class="comment">{</span></div>
+<div class="line"><a id="l00127" name="l00127"></a><span class="lineno">  127</span><span class="comment">    std::string error_message = std::string(&quot;Error while sending UDP: &quot;) + error.message();</span></div>
+<div class="line"><a id="l00128" name="l00128"></a><span class="lineno">  128</span><span class="comment">    throw UDP::Exception(error_message.c_str());</span></div>
+<div class="line"><a id="l00129" name="l00129"></a><span class="lineno">  129</span><span class="comment">}</span></div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno">  130</span><span class="comment">*/</span></div>
+<div class="line"><a id="l00131" name="l00131"></a><span class="lineno">  131</span> </div>
+<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1">  132</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1">UDP::Broadcast::configure</a>(<a class="code hl_class" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a> config)</div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno">  133</span>{</div>
+<div class="line"><a id="l00134" name="l00134"></a><span class="lineno">  134</span>    <span class="keywordflow">for</span> (<a class="code hl_typedef" href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">UDP::Configuration::iterator</a> it = config.<a class="code hl_variable" href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">clients</a>.begin(); it != config.<a class="code hl_variable" href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">clients</a>.end(); it++)</div>
+<div class="line"><a id="l00135" name="l00135"></a><span class="lineno">  135</span>    {</div>
+<div class="line"><a id="l00136" name="l00136"></a><span class="lineno">  136</span>        this-&gt;add_client(it-&gt;first, it-&gt;second);</div>
+<div class="line"><a id="l00137" name="l00137"></a><span class="lineno">  137</span>    }</div>
+<div class="line"><a id="l00138" name="l00138"></a><span class="lineno">  138</span>}</div>
+<div class="ttc" id="a_broadcast_8h_html"><div class="ttname"><a href="_broadcast_8h.html">Broadcast.h</a></div></div>
+<div class="ttc" id="a_exception_8h_html"><div class="ttname"><a href="_exception_8h.html">Exception.h</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html_a093abc49c309116a4674e2264b352c92"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92">UDP::Broadcast::remove_client</a></div><div class="ttdeci">void remove_client(std::string ip)</div><div class="ttdoc">Remove UDP client.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8cpp_source.html#l00063">Broadcast.cpp:63</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html_a1b28acbf05f00ee1a23e5f148c952ac7"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7">UDP::Broadcast::Broadcast</a></div><div class="ttdeci">Broadcast(int n_threads=1)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8cpp_source.html#l00005">Broadcast.cpp:5</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html_a4083638acba927342d411db85d6fe9a1"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1">UDP::Broadcast::configure</a></div><div class="ttdeci">void configure(UDP::Configuration config)</div><div class="ttdoc">Configure Broadcast.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8cpp_source.html#l00132">Broadcast.cpp:132</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html_a9c923c64d3e48d85c3e91db348ffaa45"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">UDP::Broadcast::send</a></div><div class="ttdeci">void send(std::string message)</div><div class="ttdoc">Send Message.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8cpp_source.html#l00109">Broadcast.cpp:109</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html_aa7e94761b0526d1fc1dac158b841377f"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f">UDP::Broadcast::~Broadcast</a></div><div class="ttdeci">~Broadcast()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8cpp_source.html#l00023">Broadcast.cpp:23</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html_ab4a1b3beb24edbadae5701c0d3c66c3b"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b">UDP::Broadcast::add_client</a></div><div class="ttdeci">void add_client(std::string ip, unsigned int port)</div><div class="ttdoc">Add UDP client.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8cpp_source.html#l00040">Broadcast.cpp:40</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a></div><div class="ttdoc">UDP Broadcast Configuration.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8h_source.html#l00013">Configuration.h:14</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html_a2f1e39379df27d5d6f81987dcade6053"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">UDP::Configuration::iterator</a></div><div class="ttdeci">std::map&lt; std::string, int &gt;::iterator iterator</div><div class="ttdoc">Iterator.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8h_source.html#l00021">Configuration.h:21</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html_a320ba9474ff76cbc5626d667a4388a55"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">UDP::Configuration::clients</a></div><div class="ttdeci">std::map&lt; std::string, int &gt; clients</div><div class="ttdoc">List of clients.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8h_source.html#l00028">Configuration.h:28</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_exception_html"><div class="ttname"><a href="class_u_d_p_1_1_exception.html">UDP::Exception</a></div><div class="ttdoc">UDP Broadcast Exception.</div><div class="ttdef"><b>Definition:</b> <a href="_exception_8h_source.html#l00011">Exception.h:13</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_broadcast_8cpp.html">Broadcast.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_broadcast_8h.html b/doc/html/_broadcast_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..2b814b5d917a90d26d7ae57d43f6a7ac22b24073
--- /dev/null
+++ b/doc/html/_broadcast_8h.html
@@ -0,0 +1,125 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Broadcast.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_broadcast_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Broadcast.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_u_d_p_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &lt;atomic&gt;</code><br />
+<code>#include &lt;memory&gt;</code><br />
+<code>#include &lt;mutex&gt;</code><br />
+<code>#include &lt;stdexcept&gt;</code><br />
+<code>#include &lt;vector&gt;</code><br />
+<code>#include &quot;<a class="el" href="_u_d_p_2_configuration_8h_source.html">Configuration.h</a>&quot;</code><br />
+<code>#include &lt;boost/thread.hpp&gt;</code><br />
+<code>#include &lt;boost/asio.hpp&gt;</code><br />
+</div>
+<p><a href="_broadcast_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a>.  <a href="class_u_d_p_1_1_broadcast.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_u_d_p"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_u_d_p.html">UDP</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_broadcast_8h.html">Broadcast.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_broadcast_8h_source.html b/doc/html/_broadcast_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..5ed023a41346c75d586619834aa1766cc68929ca
--- /dev/null
+++ b/doc/html/_broadcast_8h_source.html
@@ -0,0 +1,157 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Broadcast.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_broadcast_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Broadcast.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_broadcast_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;atomic&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;mutex&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#include &lt;stdexcept&gt;</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2_configuration_8h.html">Configuration.h</a>&quot;</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#include &lt;boost/thread.hpp&gt;</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="preprocessor">#include &lt;boost/asio.hpp&gt;</span></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span> </div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="namespace_u_d_p.html">   13</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_u_d_p.html">UDP</a></div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>{</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_broadcast.html">   22</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_u_d_p_1_1_broadcast.html">Broadcast</a></div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    {</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>        std::shared_ptr&lt;boost::thread_group&gt; threads;</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span> </div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>        std::shared_ptr&lt;boost::asio::io_service::work&gt; work;</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span> </div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>        boost::asio::io_service io_service;</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span> </div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>        std::shared_ptr&lt;boost::asio::ip::udp::socket&gt; socket;</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span> </div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>        std::vector&lt;boost::asio::ip::udp::endpoint&gt; endpoints;</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span> </div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>        std::mutex endpoints_mutex;</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span> </div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>        <span class="keywordtype">void</span> _send(std::string message);</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span> </div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>        <a class="code hl_class" href="class_u_d_p_1_1_broadcast.html">Broadcast</a>(<span class="keywordtype">int</span> n_threads = 1);</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span> </div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>        <a class="code hl_class" href="class_u_d_p_1_1_broadcast.html">~Broadcast</a>();</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span> </div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span>        <span class="keywordtype">void</span> add_client(std::string ip, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> port);</div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>        </div>
+<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span>        <span class="keywordtype">void</span> remove_client(std::string ip);</div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span> </div>
+<div class="line"><a id="l00120" name="l00120"></a><span class="lineno">  120</span>        <span class="keywordtype">void</span> send(std::string message);</div>
+<div class="line"><a id="l00121" name="l00121"></a><span class="lineno">  121</span> </div>
+<div class="line"><a id="l00128" name="l00128"></a><span class="lineno">  128</span>        <span class="keywordtype">void</span> send(std::vector&lt;std::string&gt; messages);</div>
+<div class="line"><a id="l00129" name="l00129"></a><span class="lineno">  129</span> </div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno">  130</span>        <span class="comment">//void handle(std::shared_ptr&lt;std::string&gt; message, const boost::system::error_code&amp; error, std::size_t bytes);</span></div>
+<div class="line"><a id="l00131" name="l00131"></a><span class="lineno">  131</span>        </div>
+<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de">  139</a></span>        <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de">use_count</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(endpoints.size()); }</div>
+<div class="line"><a id="l00140" name="l00140"></a><span class="lineno">  140</span> </div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span>        <span class="keywordtype">void</span> configure(<a class="code hl_class" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a> config);</div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno">  148</span>    };</div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno">  149</span>}</div>
+<div class="line"><a id="l00150" name="l00150"></a><span class="lineno">  150</span> </div>
+<div class="ttc" id="a_u_d_p_2_configuration_8h_html"><div class="ttname"><a href="_u_d_p_2_configuration_8h.html">Configuration.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></div><div class="ttdoc">UDP Broadcast.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8h_source.html#l00022">Broadcast.h:23</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html_a909590437de40c1fdff2b8a2c3c934de"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de">UDP::Broadcast::use_count</a></div><div class="ttdeci">int use_count(void)</div><div class="ttdoc">Number of Clients.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8h_source.html#l00139">Broadcast.h:139</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a></div><div class="ttdoc">UDP Broadcast Configuration.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8h_source.html#l00013">Configuration.h:14</a></div></div>
+<div class="ttc" id="anamespace_u_d_p_html"><div class="ttname"><a href="namespace_u_d_p.html">UDP</a></div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8h_source.html#l00013">Broadcast.h:14</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_broadcast_8h.html">Broadcast.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_common_8cpp.html b/doc/html/_common_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..2b5afb6b9a108c8078376ec6892527fbb9fc917e
--- /dev/null
+++ b/doc/html/_common_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>C++ Unified Device Interface: src/SOIL/Common.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">C++ Unified Device Interface
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_common_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Common.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_common_8h_source.html">Common.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="json__helpers_8h_source.html">json_helpers.h</a>&quot;</code><br />
+</div>
+<p><a href="_common_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_common_8cpp.html">Common.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_common_8cpp_source.html b/doc/html/_common_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..37733909d08da16edd256e1f06f80ad7de0d8472
--- /dev/null
+++ b/doc/html/_common_8cpp_source.html
@@ -0,0 +1,294 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>C++ Unified Device Interface: src/SOIL/Common.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">C++ Unified Device Interface
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_common_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Common.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_common_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_common_8h.html">Common.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="json__helpers_8h.html">json_helpers.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a85a34be28d23fa90318d4cb5cf9b1c51">    5</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a85a34be28d23fa90318d4cb5cf9b1c51">SOIL::Common::Common</a>(std::shared_ptr&lt;Common&gt; parent, std::string uuid, std::string name, std::string description, std::string ontology) : parent(parent), uuid(uuid), name(name), description(description), ontology(ontology)</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>{</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    <span class="keywordflow">if</span> (<a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#ab50512b3c0c3a4b07e101ae3a5a938ec">parent</a>.use_count() &gt; 0)</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    {</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>        <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#ab50512b3c0c3a4b07e101ae3a5a938ec">parent</a>-&gt;insert(<a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">uuid</a>, <span class="keyword">this</span>);</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>        <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#ad67552d816e56cf3cf88e1554d421448">self</a> = (*parent)[<a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">uuid</a>];</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    }</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    {</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>        <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#ad67552d816e56cf3cf88e1554d421448">self</a>.reset(<span class="keyword">this</span>, &amp;<a class="code hl_function" href="namespace_s_o_i_l.html#a66286fa6a407573d3ef30be187e189cc">SOIL::null_deleter</a>);</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    }</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>}</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span> </div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#ac90c21a4e8b8cd77769594a20495a5a5">   19</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_common.html#ac90c21a4e8b8cd77769594a20495a5a5">SOIL::Common::~Common</a>()</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>{</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    children.clear();</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>}</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span><span class="preprocessor">#pragma warning( push )</span></div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span><span class="preprocessor">#pragma warning( disable : 4717)</span></div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a505c8ff74e106ae15ab0180ae2e2bdda">   26</a></span>std::vector&lt;std::string&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a505c8ff74e106ae15ab0180ae2e2bdda">SOIL::Common::fqid</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>{</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    std::vector&lt;std::string&gt; parent_fqid;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="keywordflow">if</span> (parent.use_count() &gt; 0)</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    {</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>        parent_fqid = parent-&gt;fqid();</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    }</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    parent_fqid.push_back(uuid);</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    <span class="keywordflow">return</span> parent_fqid;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>}</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span><span class="preprocessor">#pragma warning(pop)</span></div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span> </div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#aa657357aad0eaf9cb2b4af133b8fe7d9">   38</a></span>std::shared_ptr&lt;SOIL::Common&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#aa657357aad0eaf9cb2b4af133b8fe7d9">SOIL::Common::operator[]</a>(std::string fqid)</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>{</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    <span class="keywordflow">if</span> (fqid == <span class="stringliteral">&quot;&quot;</span> || fqid == <span class="stringliteral">&quot;/&quot;</span>)</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>    {</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>        <span class="keywordflow">return</span> self;</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    }</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    <span class="keywordtype">size_t</span> path_length = fqid.size();</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    <span class="keywordflow">if</span> (fqid[0] == <span class="charliteral">&#39;/&#39;</span>)</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>    {</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>        fqid = fqid.substr(1, path_length-1);</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>        path_length--;</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    }</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    <span class="keywordtype">size_t</span> first_delimiter = fqid.find(<span class="stringliteral">&quot;/&quot;</span>);</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>    <span class="keywordflow">if</span> (first_delimiter == std::string::npos)</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>    {</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>        <span class="keywordflow">if</span> (children.count(fqid) == 0)</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>        {</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>            <span class="keywordflow">if</span> (this-&gt;uuid == fqid)</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>            {</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>                <span class="keywordflow">return</span> self;</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>            }</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>            <span class="keywordflow">throw</span> std::runtime_error(fqid + <span class="stringliteral">&quot; does not match any children of &quot;</span> + uuid);</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>        }</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>        <span class="keywordflow">return</span> children[fqid];</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>    }</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    {</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>        std::string dock_off_path = fqid.substr(0, first_delimiter);</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>        std::string continue_path = fqid.substr(first_delimiter + 1, path_length - first_delimiter - 1);</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>        <span class="keywordflow">if</span> (children.count(dock_off_path) == 0)</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>        {</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>            <span class="keywordflow">if</span> (this-&gt;uuid == dock_off_path)</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>            {</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>                <span class="keywordflow">return</span> (*self)[continue_path];</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span>            }</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>            <span class="keywordflow">throw</span> std::runtime_error(dock_off_path + <span class="stringliteral">&quot; does not match any children of &quot;</span> + uuid);</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>        }</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>        <span class="keywordflow">return</span> (*children[dock_off_path])[continue_path];</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>    }</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>}</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span> </div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a71981861d9e5f20261f72aa33b30c3b4">   79</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a71981861d9e5f20261f72aa33b30c3b4">SOIL::Common::insert</a>(std::string uuid, std::shared_ptr&lt;Common&gt;&amp; child)</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>{</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>    <span class="keywordtype">bool</span> exists = children.count(uuid) &gt; 0;</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>    children[uuid] = child;</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>    <span class="keywordflow">return</span> exists;</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>}</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span> </div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#afa913b229e43d4fed32d84d9c198c5a3">   86</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a71981861d9e5f20261f72aa33b30c3b4">SOIL::Common::insert</a>(std::string uuid, <a class="code hl_class" href="class_s_o_i_l_1_1_common.html">Common</a> * child)</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>{</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>    <span class="keywordflow">return</span> insert(uuid, std::shared_ptr&lt;Common&gt;(child));</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>}</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span> </div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a8ba5a9faf59fe4562fc884be43ccd672">   91</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a8ba5a9faf59fe4562fc884be43ccd672">SOIL::Common::remove</a>(std::string uuid)</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span>{</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>    <span class="keywordtype">bool</span> exists = children.count(uuid) &gt; 0;</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>    children.erase(uuid);</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>    <span class="keywordflow">return</span> exists;</div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>}</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span> </div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a83526db570e5078d423a6a4062083db0">   98</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a83526db570e5078d423a6a4062083db0">SOIL::Common::is_object</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno">   99</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00100" name="l00100"></a><span class="lineno">  100</span>    <span class="keywordflow">return</span> (uuid.substr(0, 3) == <span class="stringliteral">&quot;OBJ&quot;</span>);</div>
+<div class="line"><a id="l00101" name="l00101"></a><span class="lineno">  101</span>}</div>
+<div class="line"><a id="l00102" name="l00102"></a><span class="lineno">  102</span> </div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#ac410b97b6d664cbbf4eeab6e67c8e0f2">  103</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#ac410b97b6d664cbbf4eeab6e67c8e0f2">SOIL::Common::is_variable</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>    <span class="keywordflow">return</span> (uuid.substr(0, 3) == <span class="stringliteral">&quot;VAR&quot;</span>);</div>
+<div class="line"><a id="l00106" name="l00106"></a><span class="lineno">  106</span>}</div>
+<div class="line"><a id="l00107" name="l00107"></a><span class="lineno">  107</span> </div>
+<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a1d2fa45352c9c57ac862affd77968e80">  108</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a1d2fa45352c9c57ac862affd77968e80">SOIL::Common::is_function</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno">  109</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00110" name="l00110"></a><span class="lineno">  110</span>    <span class="keywordflow">return</span> (uuid.substr(0, 3) == <span class="stringliteral">&quot;FUN&quot;</span>);</div>
+<div class="line"><a id="l00111" name="l00111"></a><span class="lineno">  111</span>}</div>
+<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span> </div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a2b9581a2ef74dd13c3149c2915f9dfb0">  113</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a2b9581a2ef74dd13c3149c2915f9dfb0">SOIL::Common::is_parameter</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00115" name="l00115"></a><span class="lineno">  115</span>    <span class="keywordflow">return</span> (uuid.substr(0, 3) == <span class="stringliteral">&quot;PAR&quot;</span>);</div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno">  116</span>}</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span> </div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a37f413fe3f1dc983d7284db6db08cfff">  118</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a37f413fe3f1dc983d7284db6db08cfff">SOIL::Common::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00119" name="l00119"></a><span class="lineno">  119</span>{</div>
+<div class="line"><a id="l00120" name="l00120"></a><span class="lineno">  120</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root;</div>
+<div class="line"><a id="l00121" name="l00121"></a><span class="lineno">  121</span>    json_root[L<span class="stringliteral">&quot;uuid&quot;</span>] = <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(uuid);</div>
+<div class="line"><a id="l00122" name="l00122"></a><span class="lineno">  122</span>    json_root[L<span class="stringliteral">&quot;name&quot;</span>] = <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(name);</div>
+<div class="line"><a id="l00123" name="l00123"></a><span class="lineno">  123</span>    json_root[L<span class="stringliteral">&quot;description&quot;</span>] = <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(description);</div>
+<div class="line"><a id="l00124" name="l00124"></a><span class="lineno">  124</span>    <span class="keywordflow">if</span> (ontology == <span class="stringliteral">&quot;&quot;</span>)</div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno">  125</span>    {</div>
+<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span>        json_root[L<span class="stringliteral">&quot;ontology&quot;</span>] = HTTP::Json::null();</div>
+<div class="line"><a id="l00127" name="l00127"></a><span class="lineno">  127</span>    }</div>
+<div class="line"><a id="l00128" name="l00128"></a><span class="lineno">  128</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00129" name="l00129"></a><span class="lineno">  129</span>    {</div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno">  130</span>        json_root[L<span class="stringliteral">&quot;ontology&quot;</span>] = <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(ontology);</div>
+<div class="line"><a id="l00131" name="l00131"></a><span class="lineno">  131</span>    }</div>
+<div class="line"><a id="l00132" name="l00132"></a><span class="lineno">  132</span> </div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno">  133</span>    <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00134" name="l00134"></a><span class="lineno">  134</span>}</div>
+<div class="line"><a id="l00135" name="l00135"></a><span class="lineno">  135</span> </div>
+<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a0ccae4fa407e509cdf30b42a8b9ddfd2">  136</a></span>std::string <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a0ccae4fa407e509cdf30b42a8b9ddfd2">SOIL::Common::json</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00137" name="l00137"></a><span class="lineno">  137</span>{</div>
+<div class="line"><a id="l00138" name="l00138"></a><span class="lineno">  138</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> content = wjson();</div>
+<div class="line"><a id="l00139" name="l00139"></a><span class="lineno">  139</span>    <span class="keywordflow">return</span> utility::conversions::to_utf8string(content.serialize());</div>
+<div class="line"><a id="l00140" name="l00140"></a><span class="lineno">  140</span>}</div>
+<div class="line"><a id="l00141" name="l00141"></a><span class="lineno">  141</span> </div>
+<div class="line"><a id="l00142" name="l00142"></a><span class="lineno">  142</span> </div>
+<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#ad0f4af418063b9a8622dcf8eddc54150">  143</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#ad0f4af418063b9a8622dcf8eddc54150">SOIL::Common::handle</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::wsmatch match)</div>
+<div class="line"><a id="l00144" name="l00144"></a><span class="lineno">  144</span>{</div>
+<div class="line"><a id="l00145" name="l00145"></a><span class="lineno">  145</span>    <span class="keywordflow">try</span></div>
+<div class="line"><a id="l00146" name="l00146"></a><span class="lineno">  146</span>    {</div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span>        std::string path = <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno">  148</span>        <span class="keywordflow">if</span> (match.size() &gt; 0)</div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno">  149</span>        {</div>
+<div class="line"><a id="l00150" name="l00150"></a><span class="lineno">  150</span>            path = utility::conversions::to_utf8string(match.str(0));</div>
+<div class="line"><a id="l00151" name="l00151"></a><span class="lineno">  151</span>        }</div>
+<div class="line"><a id="l00152" name="l00152"></a><span class="lineno">  152</span> </div>
+<div class="line"><a id="l00153" name="l00153"></a><span class="lineno">  153</span>        <span class="keywordtype">size_t</span> query_delimiter = path.find(<span class="stringliteral">&quot;?&quot;</span>);</div>
+<div class="line"><a id="l00154" name="l00154"></a><span class="lineno">  154</span>        std::shared_ptr&lt;Common&gt; resource = (*self)[path.substr(0, query_delimiter)];</div>
+<div class="line"><a id="l00155" name="l00155"></a><span class="lineno">  155</span> </div>
+<div class="line"><a id="l00156" name="l00156"></a><span class="lineno">  156</span>        <span class="keywordflow">if</span> (resource == self)</div>
+<div class="line"><a id="l00157" name="l00157"></a><span class="lineno">  157</span>        {</div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno">  158</span>            <span class="keywordflow">return</span> Resource::handle(request, match);</div>
+<div class="line"><a id="l00159" name="l00159"></a><span class="lineno">  159</span>        }</div>
+<div class="line"><a id="l00160" name="l00160"></a><span class="lineno">  160</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00161" name="l00161"></a><span class="lineno">  161</span>        {</div>
+<div class="line"><a id="l00162" name="l00162"></a><span class="lineno">  162</span>            <span class="keywordflow">return</span> resource-&gt;Resource::handle(request, match);</div>
+<div class="line"><a id="l00163" name="l00163"></a><span class="lineno">  163</span>        }</div>
+<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span> </div>
+<div class="line"><a id="l00165" name="l00165"></a><span class="lineno">  165</span>    }</div>
+<div class="line"><a id="l00166" name="l00166"></a><span class="lineno">  166</span>    <span class="keywordflow">catch</span> (std::exception&amp; exception)</div>
+<div class="line"><a id="l00167" name="l00167"></a><span class="lineno">  167</span>    {</div>
+<div class="line"><a id="l00168" name="l00168"></a><span class="lineno">  168</span>        <span class="keywordflow">return</span> Resource::handle_exception(request, exception, match);</div>
+<div class="line"><a id="l00169" name="l00169"></a><span class="lineno">  169</span> </div>
+<div class="line"><a id="l00170" name="l00170"></a><span class="lineno">  170</span>    }</div>
+<div class="line"><a id="l00171" name="l00171"></a><span class="lineno">  171</span>    </div>
+<div class="line"><a id="l00172" name="l00172"></a><span class="lineno">  172</span>}</div>
+<div class="ttc" id="a_common_8h_html"><div class="ttname"><a href="_common_8h.html">Common.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00014">Common.h:15</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a0ccae4fa407e509cdf30b42a8b9ddfd2"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a0ccae4fa407e509cdf30b42a8b9ddfd2">SOIL::Common::json</a></div><div class="ttdeci">virtual std::string json(void)</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00136">Common.cpp:136</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a1d2fa45352c9c57ac862affd77968e80"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a1d2fa45352c9c57ac862affd77968e80">SOIL::Common::is_function</a></div><div class="ttdeci">bool is_function(void) const</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00108">Common.cpp:108</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a2b9581a2ef74dd13c3149c2915f9dfb0"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a2b9581a2ef74dd13c3149c2915f9dfb0">SOIL::Common::is_parameter</a></div><div class="ttdeci">bool is_parameter(void) const</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00113">Common.cpp:113</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a37f413fe3f1dc983d7284db6db08cfff"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a37f413fe3f1dc983d7284db6db08cfff">SOIL::Common::wjson</a></div><div class="ttdeci">virtual HTTP::Json wjson(void)</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00118">Common.cpp:118</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a505c8ff74e106ae15ab0180ae2e2bdda"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a505c8ff74e106ae15ab0180ae2e2bdda">SOIL::Common::fqid</a></div><div class="ttdeci">std::vector&lt; std::string &gt; fqid(void)</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00026">Common.cpp:26</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a71981861d9e5f20261f72aa33b30c3b4"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a71981861d9e5f20261f72aa33b30c3b4">SOIL::Common::insert</a></div><div class="ttdeci">bool insert(std::string uuid, std::shared_ptr&lt; Common &gt; &amp;child)</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00079">Common.cpp:79</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a83526db570e5078d423a6a4062083db0"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a83526db570e5078d423a6a4062083db0">SOIL::Common::is_object</a></div><div class="ttdeci">bool is_object(void) const</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00098">Common.cpp:98</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a85a34be28d23fa90318d4cb5cf9b1c51"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a85a34be28d23fa90318d4cb5cf9b1c51">SOIL::Common::Common</a></div><div class="ttdeci">Common(std::shared_ptr&lt; Common &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00005">Common.cpp:5</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a8ba5a9faf59fe4562fc884be43ccd672"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a8ba5a9faf59fe4562fc884be43ccd672">SOIL::Common::remove</a></div><div class="ttdeci">bool remove(std::string uuid)</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00091">Common.cpp:91</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_aa657357aad0eaf9cb2b4af133b8fe7d9"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#aa657357aad0eaf9cb2b4af133b8fe7d9">SOIL::Common::operator[]</a></div><div class="ttdeci">std::shared_ptr&lt; Common &gt; operator[](std::string fqid)</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00038">Common.cpp:38</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_ab50512b3c0c3a4b07e101ae3a5a938ec"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#ab50512b3c0c3a4b07e101ae3a5a938ec">SOIL::Common::parent</a></div><div class="ttdeci">std::shared_ptr&lt; Common &gt; parent</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00019">Common.h:19</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_ac410b97b6d664cbbf4eeab6e67c8e0f2"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#ac410b97b6d664cbbf4eeab6e67c8e0f2">SOIL::Common::is_variable</a></div><div class="ttdeci">bool is_variable(void) const</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00103">Common.cpp:103</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_ac90c21a4e8b8cd77769594a20495a5a5"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#ac90c21a4e8b8cd77769594a20495a5a5">SOIL::Common::~Common</a></div><div class="ttdeci">virtual ~Common()</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00019">Common.cpp:19</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_ad0f4af418063b9a8622dcf8eddc54150"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#ad0f4af418063b9a8622dcf8eddc54150">SOIL::Common::handle</a></div><div class="ttdeci">HTTP::Response handle(HTTP::Request request, std::wsmatch match=std::wsmatch())</div><div class="ttdoc">HTTP Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_common_8cpp_source.html#l00143">Common.cpp:143</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_ad67552d816e56cf3cf88e1554d421448"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#ad67552d816e56cf3cf88e1554d421448">SOIL::Common::self</a></div><div class="ttdeci">std::shared_ptr&lt; Common &gt; self</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00020">Common.h:20</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_aecb1a862246f2b5167735941ab48769b"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">SOIL::Common::uuid</a></div><div class="ttdeci">std::string uuid</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00021">Common.h:21</a></div></div>
+<div class="ttc" id="ajson__helpers_8h_html"><div class="ttname"><a href="json__helpers_8h.html">json_helpers.h</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a66286fa6a407573d3ef30be187e189cc"><div class="ttname"><a href="namespace_s_o_i_l.html#a66286fa6a407573d3ef30be187e189cc">SOIL::null_deleter</a></div><div class="ttdeci">void null_deleter(SOIL::Common *)</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00054">Common.h:54</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a82671406aa31a367c38dcad31d359b92"><div class="ttname"><a href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a></div><div class="ttdeci">DLL web::json::value to_json(const T &amp;value)</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_common_8cpp.html">Common.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_common_8h.html b/doc/html/_common_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..02416ba9547fa2bdbb536854b9d41ab7634d565b
--- /dev/null
+++ b/doc/html/_common_8h.html
@@ -0,0 +1,129 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>C++ Unified Device Interface: src/SOIL/Common.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">C++ Unified Device Interface
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_common_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle"><div class="title">Common.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_r_e_s_t_2constants_8h_source.html">REST\constants.h</a>&quot;</code><br />
+<code>#include &lt;memory&gt;</code><br />
+<code>#include &lt;vector&gt;</code><br />
+<code>#include &lt;map&gt;</code><br />
+<code>#include &lt;mutex&gt;</code><br />
+<code>#include &lt;<a class="el" href="_resource_8h_source.html">REST\Resource.h</a>&gt;</code><br />
+<code>#include &lt;regex&gt;</code><br />
+<code>#include &lt;string&gt;</code><br />
+</div>
+<p><a href="_common_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a66286fa6a407573d3ef30be187e189cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a66286fa6a407573d3ef30be187e189cc">SOIL::null_deleter</a> (<a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a> *)</td></tr>
+<tr class="separator:a66286fa6a407573d3ef30be187e189cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_common_8h.html">Common.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_common_8h.js b/doc/html/_common_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..7b94c69c884027f8fdef6757c3df299da317f948
--- /dev/null
+++ b/doc/html/_common_8h.js
@@ -0,0 +1,5 @@
+var _common_8h =
+[
+    [ "SOIL::Common", "class_s_o_i_l_1_1_common.html", "class_s_o_i_l_1_1_common" ],
+    [ "null_deleter", "_common_8h.html#a66286fa6a407573d3ef30be187e189cc", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_common_8h_source.html b/doc/html/_common_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..7aa641a1afeba72624560cd8ec91b5d44d7ea684
--- /dev/null
+++ b/doc/html/_common_8h_source.html
@@ -0,0 +1,175 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>C++ Unified Device Interface: src/SOIL/Common.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">C++ Unified Device Interface
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_common_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Common.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_common_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_r_e_s_t_2constants_8h.html">REST\constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;map&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#include &lt;mutex&gt;</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#include &lt;<a class="code" href="_resource_8h.html">REST\Resource.h</a>&gt;</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#include &lt;regex&gt;</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span> </div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html">   12</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>{</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html">   14</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_s_o_i_l_1_1_common.html">Common</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    {</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a2d406d3472c05cb61d036b1b986bde1b">   18</a></span>        std::map&lt;std::string, std::shared_ptr&lt;Common&gt; &gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#a2d406d3472c05cb61d036b1b986bde1b">children</a>;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#ab50512b3c0c3a4b07e101ae3a5a938ec">   19</a></span>        std::shared_ptr&lt;Common&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#ab50512b3c0c3a4b07e101ae3a5a938ec">parent</a>;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#ad67552d816e56cf3cf88e1554d421448">   20</a></span>        std::shared_ptr&lt;Common&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#ad67552d816e56cf3cf88e1554d421448">self</a>;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">   21</a></span>        std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">uuid</a>;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a86cd3ed075bbc5c62610ee0e300d9447">   22</a></span>        std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#a86cd3ed075bbc5c62610ee0e300d9447">name</a>;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a211c95b7bfc2b881a2d12d1eb32e5f1f">   23</a></span>        std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#a211c95b7bfc2b881a2d12d1eb32e5f1f">description</a>;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#ae178d857f810e80bd0de56428f3b6768">   24</a></span>        std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#ae178d857f810e80bd0de56428f3b6768">ontology</a>;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span> </div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a78bd4d6de047b952c79442ed65c95633">   26</a></span>        std::recursive_mutex <a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#a78bd4d6de047b952c79442ed65c95633">mutex</a>;</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_common.html">Common</a>(std::shared_ptr&lt;Common&gt; parent, std::string uuid, std::string name, std::string description, std::string ontology =<span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>        <span class="keyword">virtual</span> <a class="code hl_class" href="class_s_o_i_l_1_1_common.html">~Common</a>();</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span> </div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>        std::vector&lt;std::string&gt; fqid(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>        std::shared_ptr&lt;Common&gt; operator[] (std::string fqid);</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>        <span class="keywordtype">bool</span> insert(std::string uuid, std::shared_ptr&lt;Common&gt;&amp; child);</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>        <span class="keywordtype">bool</span> insert(std::string uuid, <a class="code hl_class" href="class_s_o_i_l_1_1_common.html">Common</a>* child);</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>        <span class="keywordtype">bool</span> remove(std::string uuid);</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt; T* cast(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span> </div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>        <span class="keywordtype">bool</span> is_object(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>        <span class="keywordtype">bool</span> is_variable(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>        <span class="keywordtype">bool</span> is_function(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>        <span class="keywordtype">bool</span> is_parameter(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span> </div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> wjson(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>        <span class="keyword">virtual</span> std::string <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span> </div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> handle(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::wsmatch match = std::wsmatch());</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span> </div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    };</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_common.html#a9446ecdea53d425a63319b86583c1d64">   49</a></span>    T* <a class="code hl_function" href="class_s_o_i_l_1_1_common.html#a9446ecdea53d425a63319b86583c1d64">Common::cast</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    {</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>        <span class="keywordflow">return</span> <span class="keyword">dynamic_cast&lt;</span>T*<span class="keyword">&gt;</span>(<a class="code hl_variable" href="class_s_o_i_l_1_1_common.html#ad67552d816e56cf3cf88e1554d421448">self</a>.get());</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>    }</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span> </div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a66286fa6a407573d3ef30be187e189cc">   54</a></span>    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="namespace_s_o_i_l.html#a66286fa6a407573d3ef30be187e189cc">null_deleter</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a>*) {};</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span> </div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>}</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span> </div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="a_r_e_s_t_2constants_8h_html"><div class="ttname"><a href="_r_e_s_t_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="a_resource_8h_html"><div class="ttname"><a href="_resource_8h.html">Resource.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></div><div class="ttdoc">HTTP Resource base class.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00020">Resource.h:21</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00014">Common.h:15</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a211c95b7bfc2b881a2d12d1eb32e5f1f"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a211c95b7bfc2b881a2d12d1eb32e5f1f">SOIL::Common::description</a></div><div class="ttdeci">std::string description</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00023">Common.h:23</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a2d406d3472c05cb61d036b1b986bde1b"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a2d406d3472c05cb61d036b1b986bde1b">SOIL::Common::children</a></div><div class="ttdeci">std::map&lt; std::string, std::shared_ptr&lt; Common &gt; &gt; children</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00018">Common.h:18</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a78bd4d6de047b952c79442ed65c95633"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a78bd4d6de047b952c79442ed65c95633">SOIL::Common::mutex</a></div><div class="ttdeci">std::recursive_mutex mutex</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00026">Common.h:26</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a86cd3ed075bbc5c62610ee0e300d9447"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a86cd3ed075bbc5c62610ee0e300d9447">SOIL::Common::name</a></div><div class="ttdeci">std::string name</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00022">Common.h:22</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_a9446ecdea53d425a63319b86583c1d64"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#a9446ecdea53d425a63319b86583c1d64">SOIL::Common::cast</a></div><div class="ttdeci">T * cast(void)</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00049">Common.h:49</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_ab50512b3c0c3a4b07e101ae3a5a938ec"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#ab50512b3c0c3a4b07e101ae3a5a938ec">SOIL::Common::parent</a></div><div class="ttdeci">std::shared_ptr&lt; Common &gt; parent</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00019">Common.h:19</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_ad67552d816e56cf3cf88e1554d421448"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#ad67552d816e56cf3cf88e1554d421448">SOIL::Common::self</a></div><div class="ttdeci">std::shared_ptr&lt; Common &gt; self</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00020">Common.h:20</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_ae178d857f810e80bd0de56428f3b6768"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#ae178d857f810e80bd0de56428f3b6768">SOIL::Common::ontology</a></div><div class="ttdeci">std::string ontology</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00024">Common.h:24</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_common_html_aecb1a862246f2b5167735941ab48769b"><div class="ttname"><a href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">SOIL::Common::uuid</a></div><div class="ttdeci">std::string uuid</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00021">Common.h:21</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00012">Common.h:13</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a66286fa6a407573d3ef30be187e189cc"><div class="ttname"><a href="namespace_s_o_i_l.html#a66286fa6a407573d3ef30be187e189cc">SOIL::null_deleter</a></div><div class="ttdeci">void null_deleter(SOIL::Common *)</div><div class="ttdef"><b>Definition:</b> <a href="_common_8h_source.html#l00054">Common.h:54</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_common_8h.html">Common.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_container_8cpp.html b/doc/html/_container_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..82b97c4a2f732ab2616697268ff79df71b1cc8c1
--- /dev/null
+++ b/doc/html/_container_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Container.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_container_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Container.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_container_8h_source.html">Container.h</a>&quot;</code><br />
+</div>
+<p><a href="_container_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_container_8cpp.html">Container.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_container_8cpp_source.html b/doc/html/_container_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..ce38eaf6ac24adf5e8a92bb17b846c50a4b0c709
--- /dev/null
+++ b/doc/html/_container_8cpp_source.html
@@ -0,0 +1,101 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Container.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_container_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Container.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_container_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_container_8h.html">Container.h</a>&quot;</span></div>
+<div class="ttc" id="a_container_8h_html"><div class="ttname"><a href="_container_8h.html">Container.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_container_8cpp.html">Container.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_container_8h.html b/doc/html/_container_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..483ba70d1a03c457716a39d8b88a99bd6f012aa0
--- /dev/null
+++ b/doc/html/_container_8h.html
@@ -0,0 +1,127 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Container.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_container_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Container.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_r_e_s_t_2_types_8h_source.html">REST/Types.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="json__helpers_8h_source.html">json_helpers.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_range_8h_source.html">Range.h</a>&quot;</code><br />
+</div>
+<p><a href="_container_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a>.  <a href="class_s_o_i_l_1_1_container.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template specialization for 1D-Arrays/Vectors.  <a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template specialization for Scalars.  <a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_container_8h.html">Container.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_container_8h_source.html b/doc/html/_container_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9f35a84c91fde4dc3fd742f3fed0970ed56844ad
--- /dev/null
+++ b/doc/html/_container_8h_source.html
@@ -0,0 +1,633 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Container.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_container_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Container.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_container_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_r_e_s_t_2_types_8h.html">REST/Types.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="json__helpers_8h.html">json_helpers.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;<a class="code" href="_range_8h.html">Range.h</a>&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html">    6</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>{</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x=-1, <span class="keywordtype">int</span> y=-1&gt;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html">   21</a></span>    <span class="keyword">class </span><a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container</a></div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    {</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>        std::vector&lt;std::vector&lt;T&gt;&gt; data;</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span> </div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>        <span class="keywordtype">bool</span> _null;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce">   46</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce">Container</a>();</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span> </div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f">   54</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f">Container</a>(<span class="keyword">const</span> std::vector&lt;std::vector&lt;T&gt;&gt;&amp; value);</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span> </div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b">   62</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b">Container</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span> </div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030">   70</a></span>        std::vector&lt;std::vector&lt;T&gt;&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030">operator*</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span> </div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310">   79</a></span>        <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310">is_null</a>(<span class="keywordtype">void</span>)<span class="keyword"> const </span>{<span class="keywordflow">return</span> _null;}</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span> </div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39">   87</a></span>        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39">set_null</a>(<span class="keywordtype">bool</span> _null = <span class="keyword">true</span>) { this-&gt;_null = _null; }</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span> </div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">   97</a></span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">wjson</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span> </div>
+<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">  107</a></span>        <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">check_range</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> range) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00108" name="l00108"></a><span class="lineno">  108</span> </div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">  117</a></span>        T&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">at</a>(<span class="keywordtype">int</span> i, <span class="keywordtype">int</span> j);</div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno">  118</span> </div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">  125</a></span>        std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">serialize_value</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span> </div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a">  133</a></span>        std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a">serialize_dimensions</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00134" name="l00134"></a><span class="lineno">  134</span> </div>
+<div class="line"><a id="l00135" name="l00135"></a><span class="lineno">  135</span>    };</div>
+<div class="line"><a id="l00136" name="l00136"></a><span class="lineno">  136</span> </div>
+<div class="line"><a id="l00145" name="l00145"></a><span class="lineno">  145</span>    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x&gt;</div>
+<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">  146</a></span>    <span class="keyword">class </span><a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container</a>&lt;T, x, -1&gt;</div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span>    {</div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno">  148</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno">  149</span>        std::vector&lt;T&gt; data;</div>
+<div class="line"><a id="l00150" name="l00150"></a><span class="lineno">  150</span>        <span class="keywordtype">bool</span> _null;</div>
+<div class="line"><a id="l00151" name="l00151"></a><span class="lineno">  151</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8">  152</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8">Container</a>();</div>
+<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ad9bd44996d34de087f4d8e52e3d087bd">  153</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ad9bd44996d34de087f4d8e52e3d087bd">Container</a>(<span class="keyword">const</span> std::vector&lt;T&gt;&amp; value);</div>
+<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aeeba9a7d45fc949532443d3f6184cb29">  154</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aeeba9a7d45fc949532443d3f6184cb29">Container</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647">  155</a></span>        std::vector&lt;T&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647">operator*</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1">  156</a></span>        <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1">is_null</a>(<span class="keywordtype">void</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> _null; }</div>
+<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b">  157</a></span>        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b">set_null</a>(<span class="keywordtype">bool</span> _null = <span class="keyword">true</span>) { this-&gt;_null = _null; }</div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480">  158</a></span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480">wjson</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e">  159</a></span>        <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e">check_range</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> range) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d">  160</a></span>        T&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d">at</a>(<span class="keywordtype">int</span> i);</div>
+<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724">  161</a></span>        std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724">serialize_value</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34">  162</a></span>        std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34">serialize_dimensions</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00163" name="l00163"></a><span class="lineno">  163</span> </div>
+<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span>    };</div>
+<div class="line"><a id="l00165" name="l00165"></a><span class="lineno">  165</span> </div>
+<div class="line"><a id="l00173" name="l00173"></a><span class="lineno">  173</span>    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">  174</a></span>    <span class="keyword">class </span><a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container</a>&lt;T, -1, -1&gt;</div>
+<div class="line"><a id="l00175" name="l00175"></a><span class="lineno">  175</span>    {</div>
+<div class="line"><a id="l00176" name="l00176"></a><span class="lineno">  176</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00177" name="l00177"></a><span class="lineno">  177</span>        T data;</div>
+<div class="line"><a id="l00178" name="l00178"></a><span class="lineno">  178</span>        <span class="keywordtype">bool</span> _null;</div>
+<div class="line"><a id="l00179" name="l00179"></a><span class="lineno">  179</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04">  180</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04">Container</a>();</div>
+<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa274a79ce54cb7ce0e384790332c6dfa">  181</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa274a79ce54cb7ce0e384790332c6dfa">Container</a>(<span class="keyword">const</span> T&amp; value);</div>
+<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a55089fd352f89f4248ea546a365aecc7">  182</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a55089fd352f89f4248ea546a365aecc7">Container</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b">  183</a></span>        T <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b">operator*</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e">  184</a></span>        <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e">is_null</a>(<span class="keywordtype">void</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> _null; }</div>
+<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be">  185</a></span>        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be">set_null</a>(<span class="keywordtype">bool</span> _null = <span class="keyword">true</span>) { this-&gt;_null = _null; }</div>
+<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338">  186</a></span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338">wjson</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750">  187</a></span>        <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750">check_range</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> range) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675">  188</a></span>        T&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675">at</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509">  189</a></span>        std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509">serialize_value</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74">  190</a></span>        std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74">serialize_dimensions</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00191" name="l00191"></a><span class="lineno">  191</span> </div>
+<div class="line"><a id="l00192" name="l00192"></a><span class="lineno">  192</span>    };</div>
+<div class="line"><a id="l00193" name="l00193"></a><span class="lineno">  193</span> </div>
+<div class="line"><a id="l00194" name="l00194"></a><span class="lineno">  194</span> </div>
+<div class="line"><a id="l00195" name="l00195"></a><span class="lineno">  195</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce">  196</a></span>    <a class="code hl_function" href="class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce">Container&lt;T, x, y&gt;::Container</a>()</div>
+<div class="line"><a id="l00197" name="l00197"></a><span class="lineno">  197</span>    {</div>
+<div class="line"><a id="l00198" name="l00198"></a><span class="lineno">  198</span>        <span class="keywordflow">if</span> ((x &lt; -1) || (y &lt; -1))</div>
+<div class="line"><a id="l00199" name="l00199"></a><span class="lineno">  199</span>        {</div>
+<div class="line"><a id="l00200" name="l00200"></a><span class="lineno">  200</span>            <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Invalid Dimension smaller than -1&quot;</span>);</div>
+<div class="line"><a id="l00201" name="l00201"></a><span class="lineno">  201</span>        }</div>
+<div class="line"><a id="l00202" name="l00202"></a><span class="lineno">  202</span>        <span class="keywordflow">if</span> ((x == -1) &amp;&amp; (y &gt; -1))</div>
+<div class="line"><a id="l00203" name="l00203"></a><span class="lineno">  203</span>        {</div>
+<div class="line"><a id="l00204" name="l00204"></a><span class="lineno">  204</span>            <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;An object can only be one-dimensional in its first dimension!&quot;</span>);</div>
+<div class="line"><a id="l00205" name="l00205"></a><span class="lineno">  205</span>        }</div>
+<div class="line"><a id="l00206" name="l00206"></a><span class="lineno">  206</span>        _null = <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00207" name="l00207"></a><span class="lineno">  207</span>    }</div>
+<div class="line"><a id="l00208" name="l00208"></a><span class="lineno">  208</span> </div>
+<div class="line"><a id="l00209" name="l00209"></a><span class="lineno">  209</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f">  210</a></span>    <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;::Container</a>(<span class="keyword">const</span> std::vector&lt;std::vector&lt;T&gt;&gt;&amp; value)</div>
+<div class="line"><a id="l00211" name="l00211"></a><span class="lineno">  211</span>    {</div>
+<div class="line"><a id="l00212" name="l00212"></a><span class="lineno">  212</span>        <span class="keywordflow">if</span> ((x != 0) &amp;&amp; (value.size() != x))</div>
+<div class="line"><a id="l00213" name="l00213"></a><span class="lineno">  213</span>        {</div>
+<div class="line"><a id="l00214" name="l00214"></a><span class="lineno">  214</span>            <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Invalid dimension in assignment!&quot;</span>);</div>
+<div class="line"><a id="l00215" name="l00215"></a><span class="lineno">  215</span>        }</div>
+<div class="line"><a id="l00216" name="l00216"></a><span class="lineno">  216</span>        <span class="keywordflow">if</span> (y != 0)</div>
+<div class="line"><a id="l00217" name="l00217"></a><span class="lineno">  217</span>        {</div>
+<div class="line"><a id="l00218" name="l00218"></a><span class="lineno">  218</span>            <span class="keywordflow">for</span> (<span class="keyword">auto</span> v : value)</div>
+<div class="line"><a id="l00219" name="l00219"></a><span class="lineno">  219</span>            {</div>
+<div class="line"><a id="l00220" name="l00220"></a><span class="lineno">  220</span>                <span class="keywordflow">if</span> (v.size() != y)</div>
+<div class="line"><a id="l00221" name="l00221"></a><span class="lineno">  221</span>                {</div>
+<div class="line"><a id="l00222" name="l00222"></a><span class="lineno">  222</span>                    <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Invalid dimension in assignment!&quot;</span>);</div>
+<div class="line"><a id="l00223" name="l00223"></a><span class="lineno">  223</span>                }</div>
+<div class="line"><a id="l00224" name="l00224"></a><span class="lineno">  224</span>            }</div>
+<div class="line"><a id="l00225" name="l00225"></a><span class="lineno">  225</span>        }</div>
+<div class="line"><a id="l00226" name="l00226"></a><span class="lineno">  226</span>        data = value;</div>
+<div class="line"><a id="l00227" name="l00227"></a><span class="lineno">  227</span>        _null = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00228" name="l00228"></a><span class="lineno">  228</span>    }</div>
+<div class="line"><a id="l00229" name="l00229"></a><span class="lineno">  229</span> </div>
+<div class="line"><a id="l00230" name="l00230"></a><span class="lineno">  230</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b">  231</a></span>    <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;::Container</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</div>
+<div class="line"><a id="l00232" name="l00232"></a><span class="lineno">  232</span>    {</div>
+<div class="line"><a id="l00233" name="l00233"></a><span class="lineno">  233</span>        std::vector&lt;std::vector&lt;T&gt;&gt; value;</div>
+<div class="line"><a id="l00234" name="l00234"></a><span class="lineno">  234</span>        <span class="keywordtype">int</span> i = 0;</div>
+<div class="line"><a id="l00235" name="l00235"></a><span class="lineno">  235</span>        <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; vx : <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>.as_array())</div>
+<div class="line"><a id="l00236" name="l00236"></a><span class="lineno">  236</span>        {</div>
+<div class="line"><a id="l00237" name="l00237"></a><span class="lineno">  237</span>            value.push_back(std::vector&lt;T&gt;());</div>
+<div class="line"><a id="l00238" name="l00238"></a><span class="lineno">  238</span>            i++;</div>
+<div class="line"><a id="l00239" name="l00239"></a><span class="lineno">  239</span>            <span class="keywordflow">for</span> (<span class="keyword">auto</span> vy : vx.as_array())</div>
+<div class="line"><a id="l00240" name="l00240"></a><span class="lineno">  240</span>            {</div>
+<div class="line"><a id="l00241" name="l00241"></a><span class="lineno">  241</span>                value.<a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">at</a>(i).push_back(to_value&lt;T&gt;(vy));</div>
+<div class="line"><a id="l00242" name="l00242"></a><span class="lineno">  242</span>            }</div>
+<div class="line"><a id="l00243" name="l00243"></a><span class="lineno">  243</span>        }</div>
+<div class="line"><a id="l00244" name="l00244"></a><span class="lineno">  244</span>        <span class="keywordflow">if</span> ((x != 0) &amp;&amp; (value.size() != x))</div>
+<div class="line"><a id="l00245" name="l00245"></a><span class="lineno">  245</span>        {</div>
+<div class="line"><a id="l00246" name="l00246"></a><span class="lineno">  246</span>            <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Invalid dimension in assignment!&quot;</span>);</div>
+<div class="line"><a id="l00247" name="l00247"></a><span class="lineno">  247</span>        }</div>
+<div class="line"><a id="l00248" name="l00248"></a><span class="lineno">  248</span>        <span class="keywordflow">if</span> (y != 0)</div>
+<div class="line"><a id="l00249" name="l00249"></a><span class="lineno">  249</span>        {</div>
+<div class="line"><a id="l00250" name="l00250"></a><span class="lineno">  250</span>            <span class="keywordflow">for</span> (<span class="keyword">auto</span> v : value)</div>
+<div class="line"><a id="l00251" name="l00251"></a><span class="lineno">  251</span>            {</div>
+<div class="line"><a id="l00252" name="l00252"></a><span class="lineno">  252</span>                <span class="keywordflow">if</span> (v.size() != y)</div>
+<div class="line"><a id="l00253" name="l00253"></a><span class="lineno">  253</span>                {</div>
+<div class="line"><a id="l00254" name="l00254"></a><span class="lineno">  254</span>                    <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Invalid dimension in assignment!&quot;</span>);</div>
+<div class="line"><a id="l00255" name="l00255"></a><span class="lineno">  255</span>                }</div>
+<div class="line"><a id="l00256" name="l00256"></a><span class="lineno">  256</span>            }</div>
+<div class="line"><a id="l00257" name="l00257"></a><span class="lineno">  257</span>        }</div>
+<div class="line"><a id="l00258" name="l00258"></a><span class="lineno">  258</span>        data = value;</div>
+<div class="line"><a id="l00259" name="l00259"></a><span class="lineno">  259</span>        _null = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00260" name="l00260"></a><span class="lineno">  260</span>    }</div>
+<div class="line"><a id="l00261" name="l00261"></a><span class="lineno">  261</span> </div>
+<div class="line"><a id="l00262" name="l00262"></a><span class="lineno">  262</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030">  263</a></span>    std::vector&lt;std::vector&lt;T&gt;&gt; <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;::operator*</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00264" name="l00264"></a><span class="lineno">  264</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00265" name="l00265"></a><span class="lineno">  265</span>        <span class="keywordflow">return</span> data;</div>
+<div class="line"><a id="l00266" name="l00266"></a><span class="lineno">  266</span>    }</div>
+<div class="line"><a id="l00267" name="l00267"></a><span class="lineno">  267</span> </div>
+<div class="line"><a id="l00268" name="l00268"></a><span class="lineno">  268</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">  269</a></span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00270" name="l00270"></a><span class="lineno">  270</span>    {</div>
+<div class="line"><a id="l00271" name="l00271"></a><span class="lineno">  271</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root = <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>();</div>
+<div class="line"><a id="l00272" name="l00272"></a><span class="lineno">  272</span>        json_root[U(<span class="stringliteral">&quot;dimension&quot;</span>)] = HTTP::Json::array({ x, y });</div>
+<div class="line"><a id="l00273" name="l00273"></a><span class="lineno">  273</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00274" name="l00274"></a><span class="lineno">  274</span>        {</div>
+<div class="line"><a id="l00275" name="l00275"></a><span class="lineno">  275</span>            json_root[U(<span class="stringliteral">&quot;value&quot;</span>)] = HTTP::Json::null();</div>
+<div class="line"><a id="l00276" name="l00276"></a><span class="lineno">  276</span>        }</div>
+<div class="line"><a id="l00277" name="l00277"></a><span class="lineno">  277</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00278" name="l00278"></a><span class="lineno">  278</span>        {</div>
+<div class="line"><a id="l00279" name="l00279"></a><span class="lineno">  279</span>            json_root[U(<span class="stringliteral">&quot;value&quot;</span>)] = HTTP::Json::array();</div>
+<div class="line"><a id="l00280" name="l00280"></a><span class="lineno">  280</span>            <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; static_cast&lt;int&gt;(data.size()); i++)</div>
+<div class="line"><a id="l00281" name="l00281"></a><span class="lineno">  281</span>            {</div>
+<div class="line"><a id="l00282" name="l00282"></a><span class="lineno">  282</span>                json_root[U(<span class="stringliteral">&quot;value&quot;</span>)][i] = HTTP::Json::array();</div>
+<div class="line"><a id="l00283" name="l00283"></a><span class="lineno">  283</span>                <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j &lt; static_cast&lt;int&gt;(data.at(i).size()); j++)</div>
+<div class="line"><a id="l00284" name="l00284"></a><span class="lineno">  284</span>                {</div>
+<div class="line"><a id="l00285" name="l00285"></a><span class="lineno">  285</span>                    json_root[U(<span class="stringliteral">&quot;value&quot;</span>)][i][j] = to_json&lt;T&gt;(data.at(i).at(j));</div>
+<div class="line"><a id="l00286" name="l00286"></a><span class="lineno">  286</span>                }</div>
+<div class="line"><a id="l00287" name="l00287"></a><span class="lineno">  287</span>            }</div>
+<div class="line"><a id="l00288" name="l00288"></a><span class="lineno">  288</span>        }</div>
+<div class="line"><a id="l00289" name="l00289"></a><span class="lineno">  289</span>        <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00290" name="l00290"></a><span class="lineno">  290</span>    }</div>
+<div class="line"><a id="l00291" name="l00291"></a><span class="lineno">  291</span> </div>
+<div class="line"><a id="l00292" name="l00292"></a><span class="lineno">  292</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">  293</a></span>    <span class="keywordtype">bool</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;::check_range</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> range)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00294" name="l00294"></a><span class="lineno">  294</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00295" name="l00295"></a><span class="lineno">  295</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00296" name="l00296"></a><span class="lineno">  296</span>        {</div>
+<div class="line"><a id="l00297" name="l00297"></a><span class="lineno">  297</span>            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00298" name="l00298"></a><span class="lineno">  298</span>        }</div>
+<div class="line"><a id="l00299" name="l00299"></a><span class="lineno">  299</span>        <span class="keywordflow">for</span> (<span class="keyword">auto</span> vx : data)</div>
+<div class="line"><a id="l00300" name="l00300"></a><span class="lineno">  300</span>        {</div>
+<div class="line"><a id="l00301" name="l00301"></a><span class="lineno">  301</span>            <span class="keywordflow">for</span> (<span class="keyword">auto</span> vy : vx)</div>
+<div class="line"><a id="l00302" name="l00302"></a><span class="lineno">  302</span>            {</div>
+<div class="line"><a id="l00303" name="l00303"></a><span class="lineno">  303</span>                <span class="keywordflow">if</span> (!range.<a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">check</a>(vy))</div>
+<div class="line"><a id="l00304" name="l00304"></a><span class="lineno">  304</span>                {</div>
+<div class="line"><a id="l00305" name="l00305"></a><span class="lineno">  305</span>                    <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00306" name="l00306"></a><span class="lineno">  306</span>                }</div>
+<div class="line"><a id="l00307" name="l00307"></a><span class="lineno">  307</span>            }</div>
+<div class="line"><a id="l00308" name="l00308"></a><span class="lineno">  308</span>        }</div>
+<div class="line"><a id="l00309" name="l00309"></a><span class="lineno">  309</span>        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00310" name="l00310"></a><span class="lineno">  310</span>    }</div>
+<div class="line"><a id="l00311" name="l00311"></a><span class="lineno">  311</span> </div>
+<div class="line"><a id="l00312" name="l00312"></a><span class="lineno">  312</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">  313</a></span>    T&amp; <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;::at</a>(<span class="keywordtype">int</span> i, <span class="keywordtype">int</span> j)</div>
+<div class="line"><a id="l00314" name="l00314"></a><span class="lineno">  314</span>    {</div>
+<div class="line"><a id="l00315" name="l00315"></a><span class="lineno">  315</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00316" name="l00316"></a><span class="lineno">  316</span>        {</div>
+<div class="line"><a id="l00317" name="l00317"></a><span class="lineno">  317</span>            <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Value is NULL&quot;</span>);</div>
+<div class="line"><a id="l00318" name="l00318"></a><span class="lineno">  318</span>        }</div>
+<div class="line"><a id="l00319" name="l00319"></a><span class="lineno">  319</span>        <span class="keywordflow">return</span> data.at(i).at(j);</div>
+<div class="line"><a id="l00320" name="l00320"></a><span class="lineno">  320</span>    }</div>
+<div class="line"><a id="l00321" name="l00321"></a><span class="lineno">  321</span> </div>
+<div class="line"><a id="l00322" name="l00322"></a><span class="lineno">  322</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">  323</a></span>    std::vector&lt;unsigned char&gt; <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;::serialize_value</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00324" name="l00324"></a><span class="lineno">  324</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00325" name="l00325"></a><span class="lineno">  325</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00326" name="l00326"></a><span class="lineno">  326</span>        {</div>
+<div class="line"><a id="l00327" name="l00327"></a><span class="lineno">  327</span>            <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Value is NULL&quot;</span>);</div>
+<div class="line"><a id="l00328" name="l00328"></a><span class="lineno">  328</span>        }</div>
+<div class="line"><a id="l00329" name="l00329"></a><span class="lineno">  329</span>        <span class="keywordtype">int</span> current_x = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(data.size());</div>
+<div class="line"><a id="l00330" name="l00330"></a><span class="lineno">  330</span>        <span class="keywordtype">int</span> current_y = current_x &gt; 0 ? <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(data.at(0).size()) : 0;</div>
+<div class="line"><a id="l00331" name="l00331"></a><span class="lineno">  331</span>        <span class="keywordtype">size_t</span> size = current_x * current_y * <span class="keyword">sizeof</span>(T);</div>
+<div class="line"><a id="l00332" name="l00332"></a><span class="lineno">  332</span>        std::vector&lt;unsigned char&gt; serialization;</div>
+<div class="line"><a id="l00333" name="l00333"></a><span class="lineno">  333</span>        serialization.reserve(size);</div>
+<div class="line"><a id="l00334" name="l00334"></a><span class="lineno">  334</span>        </div>
+<div class="line"><a id="l00335" name="l00335"></a><span class="lineno">  335</span>        </div>
+<div class="line"><a id="l00336" name="l00336"></a><span class="lineno">  336</span>        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; current_x ; i++)</div>
+<div class="line"><a id="l00337" name="l00337"></a><span class="lineno">  337</span>        {</div>
+<div class="line"><a id="l00338" name="l00338"></a><span class="lineno">  338</span>            {</div>
+<div class="line"><a id="l00339" name="l00339"></a><span class="lineno">  339</span>                <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* pointer = <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(data.at(i).data());</div>
+<div class="line"><a id="l00340" name="l00340"></a><span class="lineno">  340</span>                <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j &lt; static_cast&lt;int&gt;(current_y*<span class="keyword">sizeof</span>(T)); j++)</div>
+<div class="line"><a id="l00341" name="l00341"></a><span class="lineno">  341</span>                {</div>
+<div class="line"><a id="l00342" name="l00342"></a><span class="lineno">  342</span>                    serialization.push_back(pointer[j]);</div>
+<div class="line"><a id="l00343" name="l00343"></a><span class="lineno">  343</span>                }</div>
+<div class="line"><a id="l00344" name="l00344"></a><span class="lineno">  344</span>            }</div>
+<div class="line"><a id="l00345" name="l00345"></a><span class="lineno">  345</span>        }</div>
+<div class="line"><a id="l00346" name="l00346"></a><span class="lineno">  346</span>        <span class="keywordflow">return</span> serialization;</div>
+<div class="line"><a id="l00347" name="l00347"></a><span class="lineno">  347</span>    }</div>
+<div class="line"><a id="l00348" name="l00348"></a><span class="lineno">  348</span> </div>
+<div class="line"><a id="l00349" name="l00349"></a><span class="lineno">  349</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a">  350</a></span>    std::vector&lt;unsigned char&gt; <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;::serialize_dimensions</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00351" name="l00351"></a><span class="lineno">  351</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00352" name="l00352"></a><span class="lineno">  352</span>        <span class="keywordtype">size_t</span> size = <span class="keyword">sizeof</span>(uint8_t) + 2 * <span class="keyword">sizeof</span>(uint32_t);</div>
+<div class="line"><a id="l00353" name="l00353"></a><span class="lineno">  353</span>        std::vector&lt;unsigned char&gt; serialization;</div>
+<div class="line"><a id="l00354" name="l00354"></a><span class="lineno">  354</span>        serialization.reserve(size);</div>
+<div class="line"><a id="l00355" name="l00355"></a><span class="lineno">  355</span> </div>
+<div class="line"><a id="l00356" name="l00356"></a><span class="lineno">  356</span>        uint8_t n_dimensions = 2;</div>
+<div class="line"><a id="l00357" name="l00357"></a><span class="lineno">  357</span>        uint32_t current_x = data.size();</div>
+<div class="line"><a id="l00358" name="l00358"></a><span class="lineno">  358</span>        uint32_t current_y = current_x &gt; 0 ? data.<a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">at</a>(0).size : 0;</div>
+<div class="line"><a id="l00359" name="l00359"></a><span class="lineno">  359</span> </div>
+<div class="line"><a id="l00360" name="l00360"></a><span class="lineno">  360</span>        serialization.push_back(n_dimensions);</div>
+<div class="line"><a id="l00361" name="l00361"></a><span class="lineno">  361</span> </div>
+<div class="line"><a id="l00362" name="l00362"></a><span class="lineno">  362</span>        <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* current_x_pointer = <span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(&amp;current_x);</div>
+<div class="line"><a id="l00363" name="l00363"></a><span class="lineno">  363</span>        <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* current_y_pointer = <span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(&amp;current_y);</div>
+<div class="line"><a id="l00364" name="l00364"></a><span class="lineno">  364</span> </div>
+<div class="line"><a id="l00365" name="l00365"></a><span class="lineno">  365</span>        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <span class="keyword">sizeof</span>(uint32_t); i++)</div>
+<div class="line"><a id="l00366" name="l00366"></a><span class="lineno">  366</span>        {</div>
+<div class="line"><a id="l00367" name="l00367"></a><span class="lineno">  367</span>            serialization.push_back(current_x_pointer[i]);</div>
+<div class="line"><a id="l00368" name="l00368"></a><span class="lineno">  368</span>        }</div>
+<div class="line"><a id="l00369" name="l00369"></a><span class="lineno">  369</span>        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <span class="keyword">sizeof</span>(uint32_t); i++)</div>
+<div class="line"><a id="l00370" name="l00370"></a><span class="lineno">  370</span>        {</div>
+<div class="line"><a id="l00371" name="l00371"></a><span class="lineno">  371</span>            serialization.push_back(current_y_pointer[i]);</div>
+<div class="line"><a id="l00372" name="l00372"></a><span class="lineno">  372</span>        }</div>
+<div class="line"><a id="l00373" name="l00373"></a><span class="lineno">  373</span> </div>
+<div class="line"><a id="l00374" name="l00374"></a><span class="lineno">  374</span>        <span class="keywordflow">return</span> serialization;</div>
+<div class="line"><a id="l00375" name="l00375"></a><span class="lineno">  375</span>    }</div>
+<div class="line"><a id="l00376" name="l00376"></a><span class="lineno">  376</span> </div>
+<div class="line"><a id="l00377" name="l00377"></a><span class="lineno">  377</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x&gt;</div>
+<div class="line"><a id="l00378" name="l00378"></a><span class="lineno">  378</span>    <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, -1&gt;::Container</a>()</div>
+<div class="line"><a id="l00379" name="l00379"></a><span class="lineno">  379</span>    {</div>
+<div class="line"><a id="l00380" name="l00380"></a><span class="lineno">  380</span>        <span class="keywordflow">if</span> (x &lt; -1) </div>
+<div class="line"><a id="l00381" name="l00381"></a><span class="lineno">  381</span>        {</div>
+<div class="line"><a id="l00382" name="l00382"></a><span class="lineno">  382</span>            <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Invalid dimension in assignment!&quot;</span>);</div>
+<div class="line"><a id="l00383" name="l00383"></a><span class="lineno">  383</span>        }</div>
+<div class="line"><a id="l00384" name="l00384"></a><span class="lineno">  384</span>        _null = <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00385" name="l00385"></a><span class="lineno">  385</span>    }</div>
+<div class="line"><a id="l00386" name="l00386"></a><span class="lineno">  386</span> </div>
+<div class="line"><a id="l00387" name="l00387"></a><span class="lineno">  387</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x&gt;</div>
+<div class="line"><a id="l00388" name="l00388"></a><span class="lineno">  388</span>    Container&lt;T, x, -1&gt;::Container(<span class="keyword">const</span> std::vector&lt;T&gt;&amp; value)</div>
+<div class="line"><a id="l00389" name="l00389"></a><span class="lineno">  389</span>    {</div>
+<div class="line"><a id="l00390" name="l00390"></a><span class="lineno">  390</span>        <span class="keywordflow">if</span> ((x != 0) &amp;&amp; (value.size() != x))</div>
+<div class="line"><a id="l00391" name="l00391"></a><span class="lineno">  391</span>        {</div>
+<div class="line"><a id="l00392" name="l00392"></a><span class="lineno">  392</span>            <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Invalid dimension in assignment!&quot;</span>);</div>
+<div class="line"><a id="l00393" name="l00393"></a><span class="lineno">  393</span>        }</div>
+<div class="line"><a id="l00394" name="l00394"></a><span class="lineno">  394</span>        data = value;</div>
+<div class="line"><a id="l00395" name="l00395"></a><span class="lineno">  395</span>        _null = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00396" name="l00396"></a><span class="lineno">  396</span>    }</div>
+<div class="line"><a id="l00397" name="l00397"></a><span class="lineno">  397</span> </div>
+<div class="line"><a id="l00398" name="l00398"></a><span class="lineno">  398</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x&gt;</div>
+<div class="line"><a id="l00399" name="l00399"></a><span class="lineno">  399</span>    Container&lt;T, x, -1&gt;::Container(<a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</div>
+<div class="line"><a id="l00400" name="l00400"></a><span class="lineno">  400</span>    {</div>
+<div class="line"><a id="l00401" name="l00401"></a><span class="lineno">  401</span>        std::vector&lt;T&gt; value;</div>
+<div class="line"><a id="l00402" name="l00402"></a><span class="lineno">  402</span>        <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; v : <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>.as_array())</div>
+<div class="line"><a id="l00403" name="l00403"></a><span class="lineno">  403</span>        {</div>
+<div class="line"><a id="l00404" name="l00404"></a><span class="lineno">  404</span>            value.push_back(to_value&lt;T&gt;(v));</div>
+<div class="line"><a id="l00405" name="l00405"></a><span class="lineno">  405</span>        }</div>
+<div class="line"><a id="l00406" name="l00406"></a><span class="lineno">  406</span>        <span class="keywordflow">if</span> ((x != 0) &amp;&amp; (value.size() != x))</div>
+<div class="line"><a id="l00407" name="l00407"></a><span class="lineno">  407</span>        {</div>
+<div class="line"><a id="l00408" name="l00408"></a><span class="lineno">  408</span>            <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Invalid dimension in assignment!&quot;</span>);</div>
+<div class="line"><a id="l00409" name="l00409"></a><span class="lineno">  409</span>        }</div>
+<div class="line"><a id="l00410" name="l00410"></a><span class="lineno">  410</span>        data = value;</div>
+<div class="line"><a id="l00411" name="l00411"></a><span class="lineno">  411</span>        _null = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00412" name="l00412"></a><span class="lineno">  412</span>    }</div>
+<div class="line"><a id="l00413" name="l00413"></a><span class="lineno">  413</span> </div>
+<div class="line"><a id="l00414" name="l00414"></a><span class="lineno">  414</span> </div>
+<div class="line"><a id="l00415" name="l00415"></a><span class="lineno">  415</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x&gt;</div>
+<div class="line"><a id="l00416" name="l00416"></a><span class="lineno">  416</span>    std::vector&lt;T&gt; Container&lt;T, x, -1&gt;::operator*(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00417" name="l00417"></a><span class="lineno">  417</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00418" name="l00418"></a><span class="lineno">  418</span>        <span class="keywordflow">return</span> data;</div>
+<div class="line"><a id="l00419" name="l00419"></a><span class="lineno">  419</span>    }</div>
+<div class="line"><a id="l00420" name="l00420"></a><span class="lineno">  420</span> </div>
+<div class="line"><a id="l00421" name="l00421"></a><span class="lineno">  421</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x&gt;</div>
+<div class="line"><a id="l00422" name="l00422"></a><span class="lineno">  422</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> Container&lt;T, x, -1&gt;::wjson(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00423" name="l00423"></a><span class="lineno">  423</span>    {</div>
+<div class="line"><a id="l00424" name="l00424"></a><span class="lineno">  424</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root = <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>();</div>
+<div class="line"><a id="l00425" name="l00425"></a><span class="lineno">  425</span>        json_root[U(<span class="stringliteral">&quot;dimension&quot;</span>)] = HTTP::Json::array();</div>
+<div class="line"><a id="l00426" name="l00426"></a><span class="lineno">  426</span>        json_root[U(<span class="stringliteral">&quot;dimension&quot;</span>)][0] = HTTP::Json::number(x);</div>
+<div class="line"><a id="l00427" name="l00427"></a><span class="lineno">  427</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00428" name="l00428"></a><span class="lineno">  428</span>        {</div>
+<div class="line"><a id="l00429" name="l00429"></a><span class="lineno">  429</span>            json_root[U(<span class="stringliteral">&quot;value&quot;</span>)] = HTTP::Json::null();</div>
+<div class="line"><a id="l00430" name="l00430"></a><span class="lineno">  430</span>        }</div>
+<div class="line"><a id="l00431" name="l00431"></a><span class="lineno">  431</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00432" name="l00432"></a><span class="lineno">  432</span>        {</div>
+<div class="line"><a id="l00433" name="l00433"></a><span class="lineno">  433</span>            json_root[U(<span class="stringliteral">&quot;value&quot;</span>)] = HTTP::Json::array();</div>
+<div class="line"><a id="l00434" name="l00434"></a><span class="lineno">  434</span>            <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; static_cast&lt;int&gt;(data.size()); i++)</div>
+<div class="line"><a id="l00435" name="l00435"></a><span class="lineno">  435</span>            {</div>
+<div class="line"><a id="l00436" name="l00436"></a><span class="lineno">  436</span>                json_root[U(<span class="stringliteral">&quot;value&quot;</span>)][i] = to_json&lt;T&gt;(data.at(i));</div>
+<div class="line"><a id="l00437" name="l00437"></a><span class="lineno">  437</span>            }</div>
+<div class="line"><a id="l00438" name="l00438"></a><span class="lineno">  438</span>        }</div>
+<div class="line"><a id="l00439" name="l00439"></a><span class="lineno">  439</span>        <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00440" name="l00440"></a><span class="lineno">  440</span>    }</div>
+<div class="line"><a id="l00441" name="l00441"></a><span class="lineno">  441</span> </div>
+<div class="line"><a id="l00442" name="l00442"></a><span class="lineno">  442</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x&gt;</div>
+<div class="line"><a id="l00443" name="l00443"></a><span class="lineno">  443</span>    <span class="keywordtype">bool</span> Container&lt;T, x, -1&gt;::check_range(Range&lt;T&gt; range)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00444" name="l00444"></a><span class="lineno">  444</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00445" name="l00445"></a><span class="lineno">  445</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00446" name="l00446"></a><span class="lineno">  446</span>        {</div>
+<div class="line"><a id="l00447" name="l00447"></a><span class="lineno">  447</span>            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00448" name="l00448"></a><span class="lineno">  448</span>        }</div>
+<div class="line"><a id="l00449" name="l00449"></a><span class="lineno">  449</span>        <span class="keywordflow">for</span> (<span class="keyword">auto</span> vx : data)</div>
+<div class="line"><a id="l00450" name="l00450"></a><span class="lineno">  450</span>        {</div>
+<div class="line"><a id="l00451" name="l00451"></a><span class="lineno">  451</span>            <span class="keywordflow">if</span> (!range.check(vx))</div>
+<div class="line"><a id="l00452" name="l00452"></a><span class="lineno">  452</span>            {</div>
+<div class="line"><a id="l00453" name="l00453"></a><span class="lineno">  453</span>                <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00454" name="l00454"></a><span class="lineno">  454</span>            }</div>
+<div class="line"><a id="l00455" name="l00455"></a><span class="lineno">  455</span>        }</div>
+<div class="line"><a id="l00456" name="l00456"></a><span class="lineno">  456</span>        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00457" name="l00457"></a><span class="lineno">  457</span>    }</div>
+<div class="line"><a id="l00458" name="l00458"></a><span class="lineno">  458</span> </div>
+<div class="line"><a id="l00459" name="l00459"></a><span class="lineno">  459</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x&gt;</div>
+<div class="line"><a id="l00460" name="l00460"></a><span class="lineno">  460</span>    T&amp; Container&lt;T, x, -1&gt;::at(<span class="keywordtype">int</span> i)</div>
+<div class="line"><a id="l00461" name="l00461"></a><span class="lineno">  461</span>    {</div>
+<div class="line"><a id="l00462" name="l00462"></a><span class="lineno">  462</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00463" name="l00463"></a><span class="lineno">  463</span>        {</div>
+<div class="line"><a id="l00464" name="l00464"></a><span class="lineno">  464</span>            <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Value is NULL&quot;</span>);</div>
+<div class="line"><a id="l00465" name="l00465"></a><span class="lineno">  465</span>        }</div>
+<div class="line"><a id="l00466" name="l00466"></a><span class="lineno">  466</span>        <span class="keywordflow">return</span> data.at(i);</div>
+<div class="line"><a id="l00467" name="l00467"></a><span class="lineno">  467</span>    }</div>
+<div class="line"><a id="l00468" name="l00468"></a><span class="lineno">  468</span> </div>
+<div class="line"><a id="l00469" name="l00469"></a><span class="lineno">  469</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x&gt;</div>
+<div class="line"><a id="l00470" name="l00470"></a><span class="lineno">  470</span>    std::vector&lt;unsigned char&gt; Container&lt;T, x, -1&gt;::serialize_value(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00471" name="l00471"></a><span class="lineno">  471</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00472" name="l00472"></a><span class="lineno">  472</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00473" name="l00473"></a><span class="lineno">  473</span>        {</div>
+<div class="line"><a id="l00474" name="l00474"></a><span class="lineno">  474</span>            <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Value is NULL&quot;</span>);</div>
+<div class="line"><a id="l00475" name="l00475"></a><span class="lineno">  475</span>        }</div>
+<div class="line"><a id="l00476" name="l00476"></a><span class="lineno">  476</span>        <span class="keywordtype">int</span> current_x = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(data.size());</div>
+<div class="line"><a id="l00477" name="l00477"></a><span class="lineno">  477</span>        <span class="keywordtype">size_t</span> size = current_x * <span class="keyword">sizeof</span>(T);</div>
+<div class="line"><a id="l00478" name="l00478"></a><span class="lineno">  478</span>        std::vector&lt;unsigned char&gt; serialization;</div>
+<div class="line"><a id="l00479" name="l00479"></a><span class="lineno">  479</span>        serialization.reserve(size);</div>
+<div class="line"><a id="l00480" name="l00480"></a><span class="lineno">  480</span> </div>
+<div class="line"><a id="l00481" name="l00481"></a><span class="lineno">  481</span>        <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* pointer = <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(data.data());</div>
+<div class="line"><a id="l00482" name="l00482"></a><span class="lineno">  482</span>        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; static_cast&lt;int&gt;(current_x * <span class="keyword">sizeof</span>(T)); i++)</div>
+<div class="line"><a id="l00483" name="l00483"></a><span class="lineno">  483</span>        {</div>
+<div class="line"><a id="l00484" name="l00484"></a><span class="lineno">  484</span>            serialization.push_back(pointer[i]);</div>
+<div class="line"><a id="l00485" name="l00485"></a><span class="lineno">  485</span>        }</div>
+<div class="line"><a id="l00486" name="l00486"></a><span class="lineno">  486</span>        <span class="keywordflow">return</span> serialization;</div>
+<div class="line"><a id="l00487" name="l00487"></a><span class="lineno">  487</span>    }</div>
+<div class="line"><a id="l00488" name="l00488"></a><span class="lineno">  488</span> </div>
+<div class="line"><a id="l00489" name="l00489"></a><span class="lineno">  489</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x&gt;</div>
+<div class="line"><a id="l00490" name="l00490"></a><span class="lineno">  490</span>    std::vector&lt;unsigned char&gt; Container&lt;T, x, -1&gt;::serialize_dimensions(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00491" name="l00491"></a><span class="lineno">  491</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00492" name="l00492"></a><span class="lineno">  492</span>        <span class="keywordtype">size_t</span> size = <span class="keyword">sizeof</span>(uint8_t) + <span class="keyword">sizeof</span>(uint32_t);</div>
+<div class="line"><a id="l00493" name="l00493"></a><span class="lineno">  493</span>        std::vector&lt;unsigned char&gt; serialization;</div>
+<div class="line"><a id="l00494" name="l00494"></a><span class="lineno">  494</span>        serialization.reserve(size);</div>
+<div class="line"><a id="l00495" name="l00495"></a><span class="lineno">  495</span> </div>
+<div class="line"><a id="l00496" name="l00496"></a><span class="lineno">  496</span>        uint8_t n_dimensions = 1;</div>
+<div class="line"><a id="l00497" name="l00497"></a><span class="lineno">  497</span>        uint32_t current_x = <span class="keyword">static_cast&lt;</span>uint32_t<span class="keyword">&gt;</span>(data.size());</div>
+<div class="line"><a id="l00498" name="l00498"></a><span class="lineno">  498</span> </div>
+<div class="line"><a id="l00499" name="l00499"></a><span class="lineno">  499</span>        serialization.push_back(n_dimensions);</div>
+<div class="line"><a id="l00500" name="l00500"></a><span class="lineno">  500</span>        <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* current_x_pointer = <span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(&amp;current_x);</div>
+<div class="line"><a id="l00501" name="l00501"></a><span class="lineno">  501</span> </div>
+<div class="line"><a id="l00502" name="l00502"></a><span class="lineno">  502</span>        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <span class="keyword">sizeof</span>(uint32_t); i++)</div>
+<div class="line"><a id="l00503" name="l00503"></a><span class="lineno">  503</span>        {</div>
+<div class="line"><a id="l00504" name="l00504"></a><span class="lineno">  504</span>            serialization.push_back(current_x_pointer[i]);</div>
+<div class="line"><a id="l00505" name="l00505"></a><span class="lineno">  505</span>        }</div>
+<div class="line"><a id="l00506" name="l00506"></a><span class="lineno">  506</span>        <span class="keywordflow">return</span> serialization;</div>
+<div class="line"><a id="l00507" name="l00507"></a><span class="lineno">  507</span>    }</div>
+<div class="line"><a id="l00508" name="l00508"></a><span class="lineno">  508</span> </div>
+<div class="line"><a id="l00509" name="l00509"></a><span class="lineno">  509</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00510" name="l00510"></a><span class="lineno">  510</span>    Container&lt;T, -1, -1&gt;::Container()</div>
+<div class="line"><a id="l00511" name="l00511"></a><span class="lineno">  511</span>    {</div>
+<div class="line"><a id="l00512" name="l00512"></a><span class="lineno">  512</span>        _null = <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00513" name="l00513"></a><span class="lineno">  513</span>    }</div>
+<div class="line"><a id="l00514" name="l00514"></a><span class="lineno">  514</span> </div>
+<div class="line"><a id="l00515" name="l00515"></a><span class="lineno">  515</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00516" name="l00516"></a><span class="lineno">  516</span>    Container&lt;T, -1, -1&gt;::Container(<span class="keyword">const</span> T&amp; value)</div>
+<div class="line"><a id="l00517" name="l00517"></a><span class="lineno">  517</span>    {</div>
+<div class="line"><a id="l00518" name="l00518"></a><span class="lineno">  518</span>        data = value;</div>
+<div class="line"><a id="l00519" name="l00519"></a><span class="lineno">  519</span>        _null = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00520" name="l00520"></a><span class="lineno">  520</span>    }</div>
+<div class="line"><a id="l00521" name="l00521"></a><span class="lineno">  521</span> </div>
+<div class="line"><a id="l00522" name="l00522"></a><span class="lineno">  522</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00523" name="l00523"></a><span class="lineno">  523</span>    Container&lt;T, -1, -1&gt;::Container(<a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</div>
+<div class="line"><a id="l00524" name="l00524"></a><span class="lineno">  524</span>    {</div>
+<div class="line"><a id="l00525" name="l00525"></a><span class="lineno">  525</span>        T value = to_value&lt;T&gt;(<a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00526" name="l00526"></a><span class="lineno">  526</span>        data = value;</div>
+<div class="line"><a id="l00527" name="l00527"></a><span class="lineno">  527</span>        _null = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00528" name="l00528"></a><span class="lineno">  528</span>    }</div>
+<div class="line"><a id="l00529" name="l00529"></a><span class="lineno">  529</span> </div>
+<div class="line"><a id="l00530" name="l00530"></a><span class="lineno">  530</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00531" name="l00531"></a><span class="lineno">  531</span>    T Container&lt;T, -1, -1&gt;::operator*(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00532" name="l00532"></a><span class="lineno">  532</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00533" name="l00533"></a><span class="lineno">  533</span>        <span class="keywordflow">return</span> data;</div>
+<div class="line"><a id="l00534" name="l00534"></a><span class="lineno">  534</span>    }</div>
+<div class="line"><a id="l00535" name="l00535"></a><span class="lineno">  535</span> </div>
+<div class="line"><a id="l00536" name="l00536"></a><span class="lineno">  536</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00537" name="l00537"></a><span class="lineno">  537</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> Container&lt;T, -1, -1&gt;::wjson(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00538" name="l00538"></a><span class="lineno">  538</span>    {</div>
+<div class="line"><a id="l00539" name="l00539"></a><span class="lineno">  539</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root = <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>();</div>
+<div class="line"><a id="l00540" name="l00540"></a><span class="lineno">  540</span>        json_root[U(<span class="stringliteral">&quot;dimension&quot;</span>)] = HTTP::Json::array();</div>
+<div class="line"><a id="l00541" name="l00541"></a><span class="lineno">  541</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00542" name="l00542"></a><span class="lineno">  542</span>        {</div>
+<div class="line"><a id="l00543" name="l00543"></a><span class="lineno">  543</span>            json_root[U(<span class="stringliteral">&quot;value&quot;</span>)] = HTTP::Json::null();</div>
+<div class="line"><a id="l00544" name="l00544"></a><span class="lineno">  544</span>        }</div>
+<div class="line"><a id="l00545" name="l00545"></a><span class="lineno">  545</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00546" name="l00546"></a><span class="lineno">  546</span>        {</div>
+<div class="line"><a id="l00547" name="l00547"></a><span class="lineno">  547</span>            json_root[U(<span class="stringliteral">&quot;value&quot;</span>)] = to_json&lt;T&gt;(data);</div>
+<div class="line"><a id="l00548" name="l00548"></a><span class="lineno">  548</span>        }</div>
+<div class="line"><a id="l00549" name="l00549"></a><span class="lineno">  549</span>        <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00550" name="l00550"></a><span class="lineno">  550</span>    }</div>
+<div class="line"><a id="l00551" name="l00551"></a><span class="lineno">  551</span> </div>
+<div class="line"><a id="l00552" name="l00552"></a><span class="lineno">  552</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00553" name="l00553"></a><span class="lineno">  553</span>    <span class="keywordtype">bool</span> Container&lt;T, -1, -1&gt;::check_range(Range&lt;T&gt; range)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00554" name="l00554"></a><span class="lineno">  554</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00555" name="l00555"></a><span class="lineno">  555</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00556" name="l00556"></a><span class="lineno">  556</span>        {</div>
+<div class="line"><a id="l00557" name="l00557"></a><span class="lineno">  557</span>            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00558" name="l00558"></a><span class="lineno">  558</span>        }</div>
+<div class="line"><a id="l00559" name="l00559"></a><span class="lineno">  559</span>        <span class="keywordflow">return</span> range.check(data);</div>
+<div class="line"><a id="l00560" name="l00560"></a><span class="lineno">  560</span>    }</div>
+<div class="line"><a id="l00561" name="l00561"></a><span class="lineno">  561</span> </div>
+<div class="line"><a id="l00562" name="l00562"></a><span class="lineno">  562</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00563" name="l00563"></a><span class="lineno">  563</span>    T&amp; Container&lt;T, -1, -1&gt;::at(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00564" name="l00564"></a><span class="lineno">  564</span>    {</div>
+<div class="line"><a id="l00565" name="l00565"></a><span class="lineno">  565</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00566" name="l00566"></a><span class="lineno">  566</span>        {</div>
+<div class="line"><a id="l00567" name="l00567"></a><span class="lineno">  567</span>            <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Value is NULL&quot;</span>);</div>
+<div class="line"><a id="l00568" name="l00568"></a><span class="lineno">  568</span>        }</div>
+<div class="line"><a id="l00569" name="l00569"></a><span class="lineno">  569</span>        <span class="keywordflow">return</span> data;</div>
+<div class="line"><a id="l00570" name="l00570"></a><span class="lineno">  570</span>    }</div>
+<div class="line"><a id="l00571" name="l00571"></a><span class="lineno">  571</span> </div>
+<div class="line"><a id="l00572" name="l00572"></a><span class="lineno">  572</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00573" name="l00573"></a><span class="lineno">  573</span>    std::vector&lt;unsigned char&gt; Container&lt;T, -1, -1&gt;::serialize_value(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00574" name="l00574"></a><span class="lineno">  574</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00575" name="l00575"></a><span class="lineno">  575</span>        <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00576" name="l00576"></a><span class="lineno">  576</span>        {</div>
+<div class="line"><a id="l00577" name="l00577"></a><span class="lineno">  577</span>            <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Value is NULL&quot;</span>);</div>
+<div class="line"><a id="l00578" name="l00578"></a><span class="lineno">  578</span>        }</div>
+<div class="line"><a id="l00579" name="l00579"></a><span class="lineno">  579</span>        <span class="keywordtype">size_t</span> size =  <span class="keyword">sizeof</span>(T);</div>
+<div class="line"><a id="l00580" name="l00580"></a><span class="lineno">  580</span>        std::vector&lt;unsigned char&gt; serialization;</div>
+<div class="line"><a id="l00581" name="l00581"></a><span class="lineno">  581</span>        serialization.reserve(size);</div>
+<div class="line"><a id="l00582" name="l00582"></a><span class="lineno">  582</span> </div>
+<div class="line"><a id="l00583" name="l00583"></a><span class="lineno">  583</span>        <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* pointer = <span class="keyword">reinterpret_cast&lt;</span><span class="keyword">const </span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(&amp;data);</div>
+<div class="line"><a id="l00584" name="l00584"></a><span class="lineno">  584</span>        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt;  <span class="keyword">sizeof</span>(T); i++)</div>
+<div class="line"><a id="l00585" name="l00585"></a><span class="lineno">  585</span>        {</div>
+<div class="line"><a id="l00586" name="l00586"></a><span class="lineno">  586</span>            serialization.push_back(pointer[i]);</div>
+<div class="line"><a id="l00587" name="l00587"></a><span class="lineno">  587</span>        }</div>
+<div class="line"><a id="l00588" name="l00588"></a><span class="lineno">  588</span>        <span class="keywordflow">return</span> serialization;</div>
+<div class="line"><a id="l00589" name="l00589"></a><span class="lineno">  589</span>    }</div>
+<div class="line"><a id="l00590" name="l00590"></a><span class="lineno">  590</span> </div>
+<div class="line"><a id="l00591" name="l00591"></a><span class="lineno">  591</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00592" name="l00592"></a><span class="lineno">  592</span>    std::vector&lt;unsigned char&gt; Container&lt;T, -1, -1&gt;::serialize_dimensions(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00593" name="l00593"></a><span class="lineno">  593</span><span class="keyword">    </span>{</div>
+<div class="line"><a id="l00594" name="l00594"></a><span class="lineno">  594</span>        <span class="keywordtype">size_t</span> size = <span class="keyword">sizeof</span>(uint8_t);</div>
+<div class="line"><a id="l00595" name="l00595"></a><span class="lineno">  595</span>        std::vector&lt;unsigned char&gt; serialization;</div>
+<div class="line"><a id="l00596" name="l00596"></a><span class="lineno">  596</span>        serialization.reserve(size);</div>
+<div class="line"><a id="l00597" name="l00597"></a><span class="lineno">  597</span> </div>
+<div class="line"><a id="l00598" name="l00598"></a><span class="lineno">  598</span>        uint8_t n_dimensions = 0;</div>
+<div class="line"><a id="l00599" name="l00599"></a><span class="lineno">  599</span> </div>
+<div class="line"><a id="l00600" name="l00600"></a><span class="lineno">  600</span>        serialization.push_back(n_dimensions);</div>
+<div class="line"><a id="l00601" name="l00601"></a><span class="lineno">  601</span>        <span class="keywordflow">return</span> serialization;</div>
+<div class="line"><a id="l00602" name="l00602"></a><span class="lineno">  602</span>    }</div>
+<div class="line"><a id="l00603" name="l00603"></a><span class="lineno">  603</span>}</div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="a_r_e_s_t_2_types_8h_html"><div class="ttname"><a href="_r_e_s_t_2_types_8h.html">Types.h</a></div></div>
+<div class="ttc" id="a_range_8h_html"><div class="ttname"><a href="_range_8h.html">Range.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_a55089fd352f89f4248ea546a365aecc7"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a55089fd352f89f4248ea546a365aecc7">SOIL::Container&lt; T, -1, -1 &gt;::Container</a></div><div class="ttdeci">Container(HTTP::Json json)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_a621f4d118ab910a12f01986158db4b04"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04">SOIL::Container&lt; T, -1, -1 &gt;::Container</a></div><div class="ttdeci">Container()</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_aa274a79ce54cb7ce0e384790332c6dfa"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa274a79ce54cb7ce0e384790332c6dfa">SOIL::Container&lt; T, -1, -1 &gt;::Container</a></div><div class="ttdeci">Container(const T &amp;value)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_aa74985ed06251ca010f9250d05fa9750"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750">SOIL::Container&lt; T, -1, -1 &gt;::check_range</a></div><div class="ttdeci">bool check_range(Range&lt; T &gt; range) const</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_ab568a07a3075826eb277cc7392510f74"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74">SOIL::Container&lt; T, -1, -1 &gt;::serialize_dimensions</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; serialize_dimensions(void) const</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_ab6644e2d6aa2ecc1027ce821a384e675"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675">SOIL::Container&lt; T, -1, -1 &gt;::at</a></div><div class="ttdeci">T &amp; at(void)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_abab8884727d8470a1d6a151f11800338"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338">SOIL::Container&lt; T, -1, -1 &gt;::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_ac2430a1362863511e7766b1e552c74be"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be">SOIL::Container&lt; T, -1, -1 &gt;::set_null</a></div><div class="ttdeci">void set_null(bool _null=true)</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00185">Container.h:185</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_ae43038fa9aa3b9fbe4dd37e782008509"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509">SOIL::Container&lt; T, -1, -1 &gt;::serialize_value</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; serialize_value(void) const</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_ae5184ac1f1d1292b4cb72c28b3b3442e"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e">SOIL::Container&lt; T, -1, -1 &gt;::is_null</a></div><div class="ttdeci">bool is_null(void) const</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00184">Container.h:184</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_html_aead4f92e330d6791b664af81b3f1942b"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b">SOIL::Container&lt; T, -1, -1 &gt;::operator*</a></div><div class="ttdeci">T operator*(void) const</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_a03f102c86faf01d5caef3972ff54463d"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d">SOIL::Container&lt; T, x, -1 &gt;::at</a></div><div class="ttdeci">T &amp; at(int i)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_a0cf0460b6035095a9fb4ac40fc0d56c8"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8">SOIL::Container&lt; T, x, -1 &gt;::Container</a></div><div class="ttdeci">Container()</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_a44119ac58622a2aa98cf92018826def1"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1">SOIL::Container&lt; T, x, -1 &gt;::is_null</a></div><div class="ttdeci">bool is_null(void) const</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00156">Container.h:156</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_a4afd624980020d58d536fecd24a3a64e"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e">SOIL::Container&lt; T, x, -1 &gt;::check_range</a></div><div class="ttdeci">bool check_range(Range&lt; T &gt; range) const</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_a795ada1b50ab3659a27fe96e40745480"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480">SOIL::Container&lt; T, x, -1 &gt;::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_aaeb96652a1ee684921d9ff91be93b724"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724">SOIL::Container&lt; T, x, -1 &gt;::serialize_value</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; serialize_value(void) const</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_ac0d511ffb0f1398cbb9b88a9974ca647"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647">SOIL::Container&lt; T, x, -1 &gt;::operator*</a></div><div class="ttdeci">std::vector&lt; T &gt; operator*(void) const</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_ad9bd44996d34de087f4d8e52e3d087bd"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ad9bd44996d34de087f4d8e52e3d087bd">SOIL::Container&lt; T, x, -1 &gt;::Container</a></div><div class="ttdeci">Container(const std::vector&lt; T &gt; &amp;value)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_ae25249aadcd39ed98369b62f69d9cf9b"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b">SOIL::Container&lt; T, x, -1 &gt;::set_null</a></div><div class="ttdeci">void set_null(bool _null=true)</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00157">Container.h:157</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_ae65685172c0bcfc9d437accc2b194d34"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34">SOIL::Container&lt; T, x, -1 &gt;::serialize_dimensions</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; serialize_dimensions(void) const</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_html_aeeba9a7d45fc949532443d3f6184cb29"><div class="ttname"><a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aeeba9a7d45fc949532443d3f6184cb29">SOIL::Container&lt; T, x, -1 &gt;::Container</a></div><div class="ttdeci">Container(HTTP::Json json)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html">SOIL::Container</a></div><div class="ttdoc">Data Container.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00021">Container.h:22</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a00d0e2ac641857eac06d5d833c28229b"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b">SOIL::Container::Container</a></div><div class="ttdeci">Container(HTTP::Json json)</div><div class="ttdoc">JSON Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00231">Container.h:231</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a197355701a388b65d7ea327ddd45024a"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">SOIL::Container::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void)</div><div class="ttdoc">WJSON representation.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00269">Container.h:269</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a386c1992526628067cad3295763e6e39"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39">SOIL::Container::set_null</a></div><div class="ttdeci">void set_null(bool _null=true)</div><div class="ttdoc">Set null.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00087">Container.h:87</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a5bb5198238af5ed6058e2f77ddb15f38"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">SOIL::Container::serialize_value</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; serialize_value(void) const</div><div class="ttdoc">Serialize value.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00323">Container.h:323</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a6483504f2c37393c0fdde77e39f5a030"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030">SOIL::Container::operator*</a></div><div class="ttdeci">std::vector&lt; std::vector&lt; T &gt; &gt; operator*(void) const</div><div class="ttdoc">Deferencing operator.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00263">Container.h:263</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a893d008aed36e88dac38fbb0c5497ac2"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">SOIL::Container::at</a></div><div class="ttdeci">T &amp; at(int i, int j)</div><div class="ttdoc">Data Accessor.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00313">Container.h:313</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a8ae9246ee94ebe4a82f7dad7e02ff310"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310">SOIL::Container::is_null</a></div><div class="ttdeci">bool is_null(void) const</div><div class="ttdoc">Is Null?</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00079">Container.h:79</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a8c515f73d9000e53db8478a8836c1d1f"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f">SOIL::Container::Container</a></div><div class="ttdeci">Container(const std::vector&lt; std::vector&lt; T &gt; &gt; &amp;value)</div><div class="ttdoc">Data copy constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00210">Container.h:210</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_ac329fc28b401a84de21b5f298e9236ce"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce">SOIL::Container::Container</a></div><div class="ttdeci">Container()</div><div class="ttdoc">Empty constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00196">Container.h:196</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_ad1574e37bb9696fdee3986964e77f050"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">SOIL::Container::check_range</a></div><div class="ttdeci">bool check_range(Range&lt; T &gt; range) const</div><div class="ttdoc">Check range.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00293">Container.h:293</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_adc3f75677472910832a714f472c00d5a"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a">SOIL::Container::serialize_dimensions</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; serialize_dimensions(void) const</div><div class="ttdoc">Serialize dimensions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00350">Container.h:350</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html">SOIL::Range</a></div><div class="ttdoc">Range Helper Class.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8h_source.html#l00024">Range.h:25</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html_a98473208bab6e8563fef085b9c71cd53"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">SOIL::Range::check</a></div><div class="ttdeci">bool check(const T &amp;value)</div><div class="ttdoc">Check.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8cpp_source.html#l00085">Range.cpp:85</a></div></div>
+<div class="ttc" id="ajson__helpers_8h_html"><div class="ttname"><a href="json__helpers_8h.html">json_helpers.h</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_container_8h.html">Container.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_element_8cpp.html b/doc/html/_element_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..6d4137afe77b19adce63b132181efa361ae3a668
--- /dev/null
+++ b/doc/html/_element_8cpp.html
@@ -0,0 +1,103 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Element.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_element_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Element.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_element_8h_source.html">Element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="json__helpers_8h_source.html">json_helpers.h</a>&quot;</code><br />
+</div>
+<p><a href="_element_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_element_8cpp.html">Element.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_element_8cpp_source.html b/doc/html/_element_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..bfa2b0c1f3bba678fe41710e28dacca0e0aaca43
--- /dev/null
+++ b/doc/html/_element_8cpp_source.html
@@ -0,0 +1,308 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Element.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_element_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Element.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_element_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_element_8h.html">Element.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="json__helpers_8h.html">json_helpers.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">    5</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">SOIL::Element::Element</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string ontology) : parent(parent), uuid(uuid), name(name), description(description), ontology(ontology)</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>{</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    <span class="keywordflow">if</span> (<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>.use_count() &gt; 0)</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    {</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>        <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>-&gt;add(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <span class="keyword">this</span>);</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>        <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a> = (*parent)[<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>];</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    }</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    {</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>        <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a>.reset(<span class="keyword">this</span>, &amp;<a class="code hl_function" href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">SOIL::null_deleter</a>);</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    }</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>}</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span> </div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">   19</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">SOIL::Element::~Element</a>()</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>{</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    children.clear();</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>}</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span><span class="preprocessor">#pragma warning( push )</span></div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span><span class="preprocessor">#pragma warning( disable : 4717)</span></div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">   26</a></span>std::vector&lt;std::string&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">SOIL::Element::fqid</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>{</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    std::vector&lt;std::string&gt; parent_fqid;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="keywordflow">if</span> (parent.use_count() &gt; 0)</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    {</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>        parent_fqid = parent-&gt;fqid();</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    }</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    parent_fqid.push_back(uuid);</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    <span class="keywordflow">return</span> parent_fqid;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>}</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span><span class="preprocessor">#pragma warning(pop)</span></div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span> </div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">   38</a></span>std::shared_ptr&lt;SOIL::Element&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">SOIL::Element::operator[]</a>(std::string fqid)</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>{</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    <span class="keywordflow">if</span> (fqid == <span class="stringliteral">&quot;&quot;</span> || fqid == <span class="stringliteral">&quot;/&quot;</span>)</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>    {</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>        <span class="keywordflow">return</span> self;</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    }</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    <span class="keywordtype">size_t</span> path_length = fqid.size();</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    <span class="keywordflow">if</span> (fqid[0] == <span class="charliteral">&#39;/&#39;</span>)</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>    {</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>        fqid = fqid.substr(1, path_length-1);</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>        path_length--;</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    }</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    <span class="keywordtype">size_t</span> first_delimiter = fqid.find(<span class="stringliteral">&quot;/&quot;</span>);</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>    <span class="keywordflow">if</span> (first_delimiter == std::string::npos)</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>    {</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>        <span class="keywordflow">if</span> (children.count(fqid) == 0)</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>        {</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>            <span class="keywordflow">if</span> (this-&gt;uuid == fqid)</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>            {</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>                <span class="keywordflow">return</span> self;</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>            }</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>            <span class="keywordflow">throw</span> std::runtime_error(fqid + <span class="stringliteral">&quot; does not match any children of &quot;</span> + uuid);</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>        }</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>        <span class="keywordflow">return</span> children[fqid];</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>    }</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    {</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>        std::string dock_off_path = fqid.substr(0, first_delimiter);</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>        std::string continue_path = fqid.substr(first_delimiter + 1, path_length - first_delimiter - 1);</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>        <span class="keywordflow">if</span> (children.count(dock_off_path) == 0)</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>        {</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>            <span class="keywordflow">if</span> (this-&gt;uuid == dock_off_path)</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>            {</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>                <span class="keywordflow">return</span> (*self)[continue_path];</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span>            }</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>            <span class="keywordflow">throw</span> std::runtime_error(dock_off_path + <span class="stringliteral">&quot; does not match any children of &quot;</span> + uuid);</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>        }</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>        <span class="keywordflow">return</span> (*children[dock_off_path])[continue_path];</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>    }</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>}</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span> </div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">   79</a></span>std::shared_ptr&lt;SOIL::Element&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">SOIL::Element::add</a>(std::string uuid, std::shared_ptr&lt;Element&gt; child)</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>{</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>    <span class="keywordtype">bool</span> exists = children.count(uuid) &gt; 0;</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>    children[uuid] = child;</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>    <span class="keywordflow">return</span> child;</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>}</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span> </div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">   86</a></span>std::shared_ptr&lt;SOIL::Element&gt;  <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">SOIL::Element::add</a>(std::string uuid, <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a> * child)</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>{</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>    <span class="keywordflow">return</span> add(uuid, std::shared_ptr&lt;Element&gt;(child));</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>}</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span> </div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">   91</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">SOIL::Element::insert</a>(std::string uuid, std::shared_ptr&lt;Element&gt; child)</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span>{</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>    <span class="keywordtype">bool</span> exists = children.count(uuid) &gt; 0;</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>    this-&gt;add(uuid, child);</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>    <span class="keywordflow">return</span> exists;</div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>}</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span> </div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">   98</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">SOIL::Element::insert</a>(std::string uuid, <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a>* child)</div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno">   99</span>{</div>
+<div class="line"><a id="l00100" name="l00100"></a><span class="lineno">  100</span>    <span class="keywordflow">return</span> insert(uuid, std::shared_ptr&lt;Element&gt;(child));</div>
+<div class="line"><a id="l00101" name="l00101"></a><span class="lineno">  101</span>}</div>
+<div class="line"><a id="l00102" name="l00102"></a><span class="lineno">  102</span> </div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">  103</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">SOIL::Element::remove</a>(std::string uuid)</div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span>{</div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>    <span class="keywordtype">bool</span> exists = children.count(uuid) &gt; 0;</div>
+<div class="line"><a id="l00106" name="l00106"></a><span class="lineno">  106</span>    children.erase(uuid);</div>
+<div class="line"><a id="l00107" name="l00107"></a><span class="lineno">  107</span>    <span class="keywordflow">return</span> exists;</div>
+<div class="line"><a id="l00108" name="l00108"></a><span class="lineno">  108</span>}</div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno">  109</span> </div>
+<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">  110</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">SOIL::Element::is_object</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00111" name="l00111"></a><span class="lineno">  111</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span>    <span class="keywordflow">return</span> (uuid.substr(0, 3) == <span class="stringliteral">&quot;OBJ&quot;</span>);</div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span>}</div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span> </div>
+<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">  115</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">SOIL::Element::is_variable</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno">  116</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span>    <span class="keywordflow">return</span> (uuid.substr(0, 3) == <span class="stringliteral">&quot;VAR&quot;</span>);</div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno">  118</span>}</div>
+<div class="line"><a id="l00119" name="l00119"></a><span class="lineno">  119</span> </div>
+<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">  120</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">SOIL::Element::is_function</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00121" name="l00121"></a><span class="lineno">  121</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00122" name="l00122"></a><span class="lineno">  122</span>    <span class="keywordflow">return</span> (uuid.substr(0, 3) == <span class="stringliteral">&quot;FUN&quot;</span>);</div>
+<div class="line"><a id="l00123" name="l00123"></a><span class="lineno">  123</span>}</div>
+<div class="line"><a id="l00124" name="l00124"></a><span class="lineno">  124</span> </div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">  125</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">SOIL::Element::is_parameter</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00127" name="l00127"></a><span class="lineno">  127</span>    <span class="keywordflow">return</span> (uuid.substr(0, 3) == <span class="stringliteral">&quot;PAR&quot;</span>);</div>
+<div class="line"><a id="l00128" name="l00128"></a><span class="lineno">  128</span>}</div>
+<div class="line"><a id="l00129" name="l00129"></a><span class="lineno">  129</span> </div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">  130</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00131" name="l00131"></a><span class="lineno">  131</span>{</div>
+<div class="line"><a id="l00132" name="l00132"></a><span class="lineno">  132</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root;</div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno">  133</span>    json_root[U(<span class="stringliteral">&quot;uuid&quot;</span>)] = <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(uuid);</div>
+<div class="line"><a id="l00134" name="l00134"></a><span class="lineno">  134</span>    json_root[U(<span class="stringliteral">&quot;name&quot;</span>)] = <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(name);</div>
+<div class="line"><a id="l00135" name="l00135"></a><span class="lineno">  135</span>    json_root[U(<span class="stringliteral">&quot;description&quot;</span>)] = <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(description);</div>
+<div class="line"><a id="l00136" name="l00136"></a><span class="lineno">  136</span>    <span class="keywordflow">if</span> (ontology == <span class="stringliteral">&quot;&quot;</span>)</div>
+<div class="line"><a id="l00137" name="l00137"></a><span class="lineno">  137</span>    {</div>
+<div class="line"><a id="l00138" name="l00138"></a><span class="lineno">  138</span>        json_root[U(<span class="stringliteral">&quot;ontology&quot;</span>)] = HTTP::Json::null();</div>
+<div class="line"><a id="l00139" name="l00139"></a><span class="lineno">  139</span>    }</div>
+<div class="line"><a id="l00140" name="l00140"></a><span class="lineno">  140</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00141" name="l00141"></a><span class="lineno">  141</span>    {</div>
+<div class="line"><a id="l00142" name="l00142"></a><span class="lineno">  142</span>        json_root[U(<span class="stringliteral">&quot;ontology&quot;</span>)] = <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(ontology);</div>
+<div class="line"><a id="l00143" name="l00143"></a><span class="lineno">  143</span>    }</div>
+<div class="line"><a id="l00144" name="l00144"></a><span class="lineno">  144</span> </div>
+<div class="line"><a id="l00145" name="l00145"></a><span class="lineno">  145</span>    <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00146" name="l00146"></a><span class="lineno">  146</span>}</div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span> </div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">  148</a></span>std::string <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">SOIL::Element::json</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno">  149</span>{</div>
+<div class="line"><a id="l00150" name="l00150"></a><span class="lineno">  150</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> content = wjson();</div>
+<div class="line"><a id="l00151" name="l00151"></a><span class="lineno">  151</span>    <span class="keywordflow">return</span> utility::conversions::to_utf8string(content.serialize());</div>
+<div class="line"><a id="l00152" name="l00152"></a><span class="lineno">  152</span>}</div>
+<div class="line"><a id="l00153" name="l00153"></a><span class="lineno">  153</span> </div>
+<div class="line"><a id="l00154" name="l00154"></a><span class="lineno">  154</span> </div>
+<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">  155</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">SOIL::Element::handle</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match)</div>
+<div class="line"><a id="l00156" name="l00156"></a><span class="lineno">  156</span>{</div>
+<div class="line"><a id="l00157" name="l00157"></a><span class="lineno">  157</span>    <span class="keywordflow">try</span></div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno">  158</span>    {</div>
+<div class="line"><a id="l00159" name="l00159"></a><span class="lineno">  159</span>        std::string path = <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a id="l00160" name="l00160"></a><span class="lineno">  160</span>        <span class="keywordflow">if</span> (match.size() &gt; 0)</div>
+<div class="line"><a id="l00161" name="l00161"></a><span class="lineno">  161</span>        {</div>
+<div class="line"><a id="l00162" name="l00162"></a><span class="lineno">  162</span>            path = match.str(0);<span class="comment">//utility::conversions::to_utf8string(match.str(0));</span></div>
+<div class="line"><a id="l00163" name="l00163"></a><span class="lineno">  163</span>        }</div>
+<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span> </div>
+<div class="line"><a id="l00165" name="l00165"></a><span class="lineno">  165</span>        <span class="keywordtype">size_t</span> query_delimiter = path.find(<span class="stringliteral">&quot;?&quot;</span>);</div>
+<div class="line"><a id="l00166" name="l00166"></a><span class="lineno">  166</span>        std::shared_ptr&lt;Element&gt; resource = (*self)[path.substr(0, query_delimiter)];</div>
+<div class="line"><a id="l00167" name="l00167"></a><span class="lineno">  167</span> </div>
+<div class="line"><a id="l00168" name="l00168"></a><span class="lineno">  168</span>        <span class="keywordflow">if</span> (resource == self)</div>
+<div class="line"><a id="l00169" name="l00169"></a><span class="lineno">  169</span>        {</div>
+<div class="line"><a id="l00170" name="l00170"></a><span class="lineno">  170</span>            <span class="keywordflow">return</span> Resource::handle(request, match);</div>
+<div class="line"><a id="l00171" name="l00171"></a><span class="lineno">  171</span>        }</div>
+<div class="line"><a id="l00172" name="l00172"></a><span class="lineno">  172</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00173" name="l00173"></a><span class="lineno">  173</span>        {</div>
+<div class="line"><a id="l00174" name="l00174"></a><span class="lineno">  174</span>            <span class="keywordflow">return</span> resource-&gt;Resource::handle(request, match);</div>
+<div class="line"><a id="l00175" name="l00175"></a><span class="lineno">  175</span>        }</div>
+<div class="line"><a id="l00176" name="l00176"></a><span class="lineno">  176</span> </div>
+<div class="line"><a id="l00177" name="l00177"></a><span class="lineno">  177</span>    }</div>
+<div class="line"><a id="l00178" name="l00178"></a><span class="lineno">  178</span>    <span class="keywordflow">catch</span> (std::exception&amp; exception)</div>
+<div class="line"><a id="l00179" name="l00179"></a><span class="lineno">  179</span>    {</div>
+<div class="line"><a id="l00180" name="l00180"></a><span class="lineno">  180</span>        <span class="keywordflow">return</span> Resource::handle_exception(request, exception, match);</div>
+<div class="line"><a id="l00181" name="l00181"></a><span class="lineno">  181</span> </div>
+<div class="line"><a id="l00182" name="l00182"></a><span class="lineno">  182</span>    }</div>
+<div class="line"><a id="l00183" name="l00183"></a><span class="lineno">  183</span>    </div>
+<div class="line"><a id="l00184" name="l00184"></a><span class="lineno">  184</span>}</div>
+<div class="ttc" id="a_element_8h_html"><div class="ttname"><a href="_element_8h.html">Element.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></div><div class="ttdoc">SOIL Base Element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00023">Element.h:24</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a06d51f457b4412d64c3980a377fbc9f0"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">SOIL::Element::insert</a></div><div class="ttdeci">bool insert(std::string uuid, std::shared_ptr&lt; Element &gt; child)</div><div class="ttdoc">Add Child Element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00091">Element.cpp:91</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a0f046d3e28928e07013a07b7e5b8e5a2"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">SOIL::Element::handle</a></div><div class="ttdeci">HTTP::Response handle(HTTP::Request request, std::smatch match=std::smatch())</div><div class="ttdoc">HTTP Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00155">Element.cpp:155</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a4704591e187b8bf5344979d095703239"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">SOIL::Element::operator[]</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; operator[](std::string fqid)</div><div class="ttdoc">Access Operator.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00038">Element.cpp:38</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a4acd9dc20ed4e0926da2ba7e4a5af7ab"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">SOIL::Element::~Element</a></div><div class="ttdeci">virtual ~Element()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00019">Element.cpp:19</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a4c20dd71ee68dd4823e32aa3868f337b"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">SOIL::Element::is_parameter</a></div><div class="ttdeci">bool is_parameter(void) const</div><div class="ttdoc">Is Parameter?</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00125">Element.cpp:125</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a682f8e3123f99f13545db06e15a896bb"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">SOIL::Element::add</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; add(std::string uuid, std::shared_ptr&lt; Element &gt; child)</div><div class="ttdoc">Add Child Element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00079">Element.cpp:79</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a8676609fe497118147e31b25958d5104"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">SOIL::Element::uuid</a></div><div class="ttdeci">std::string uuid</div><div class="ttdoc">Local UUID.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00053">Element.h:53</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a8bd2f333fbe5c1b51218512c3ef8c9b3"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">SOIL::Element::is_object</a></div><div class="ttdeci">bool is_object(void) const</div><div class="ttdoc">Is Object?</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00110">Element.cpp:110</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a9dd8b98ea77291d638408b123e68536a"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element::wjson</a></div><div class="ttdeci">virtual HTTP::Json wjson(void)</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00130">Element.cpp:130</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_aa035b89c623428f7d93b8b1da0ce1e49"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">SOIL::Element::is_variable</a></div><div class="ttdeci">bool is_variable(void) const</div><div class="ttdoc">Is Variable?</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00115">Element.cpp:115</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_aaa82810e11265c4a890246f633fe4fc7"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">SOIL::Element::is_function</a></div><div class="ttdeci">bool is_function(void) const</div><div class="ttdoc">Is Function?</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00120">Element.cpp:120</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ad0dff9864321178e13df316f1b317bcb"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">SOIL::Element::fqid</a></div><div class="ttdeci">std::vector&lt; std::string &gt; fqid(void)</div><div class="ttdoc">FQID.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00026">Element.cpp:26</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ad55fc11662301ce186e593852a9425ce"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">SOIL::Element::json</a></div><div class="ttdeci">virtual std::string json(void)</div><div class="ttdoc">JSON string.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00148">Element.cpp:148</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ae31b32fb944a138ac955e07a5be9d652"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">SOIL::Element::Element</a></div><div class="ttdeci">Element(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00005">Element.cpp:5</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ae32f6b04a96ff98acfe29f884177f22f"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">SOIL::Element::remove</a></div><div class="ttdeci">bool remove(std::string uuid)</div><div class="ttdoc">Remove Child element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00103">Element.cpp:103</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_af1992c267233cec3b17bc70038d1d84b"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">SOIL::Element::parent</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; parent</div><div class="ttdoc">Parent Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00039">Element.h:39</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_afcdcd6ceb94c7d14b0fce99461bb5e30"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">SOIL::Element::self</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; self</div><div class="ttdoc">Self Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00046">Element.h:46</a></div></div>
+<div class="ttc" id="ajson__helpers_8h_html"><div class="ttname"><a href="json__helpers_8h.html">json_helpers.h</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a82671406aa31a367c38dcad31d359b92"><div class="ttname"><a href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a></div><div class="ttdeci">DLL web::json::value to_json(const T &amp;value)</div><div class="ttdoc">Value to JSON.</div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_acc4b84d1cba2fafd495c35ebaeae1b96"><div class="ttname"><a href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">SOIL::null_deleter</a></div><div class="ttdeci">void null_deleter(SOIL::Element *ptr)</div><div class="ttdoc">Null deleter.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00278">Element.h:278</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_element_8cpp.html">Element.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_element_8h.html b/doc/html/_element_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..8c91dabb1c9b0b2110119f08458be55d018ee277
--- /dev/null
+++ b/doc/html/_element_8h.html
@@ -0,0 +1,133 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Element.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_element_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle"><div class="title">Element.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_r_e_s_t_2constants_8h_source.html">REST/constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_resource_8h_source.html">REST/Resource.h</a>&quot;</code><br />
+<code>#include &lt;memory&gt;</code><br />
+<code>#include &lt;vector&gt;</code><br />
+<code>#include &lt;map&gt;</code><br />
+<code>#include &lt;mutex&gt;</code><br />
+<code>#include &lt;regex&gt;</code><br />
+<code>#include &lt;string&gt;</code><br />
+</div>
+<p><a href="_element_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Base <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:acc4b84d1cba2fafd495c35ebaeae1b96"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">SOIL::null_deleter</a> (<a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a> *ptr)</td></tr>
+<tr class="memdesc:acc4b84d1cba2fafd495c35ebaeae1b96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Null deleter.  <a href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">More...</a><br /></td></tr>
+<tr class="separator:acc4b84d1cba2fafd495c35ebaeae1b96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_element_8h.html">Element.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_element_8h.js b/doc/html/_element_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..48c63c1ccc5b18f2119b44cf800b83cfc4ca97b9
--- /dev/null
+++ b/doc/html/_element_8h.js
@@ -0,0 +1,5 @@
+var _element_8h =
+[
+    [ "SOIL::Element", "class_s_o_i_l_1_1_element.html", "class_s_o_i_l_1_1_element" ],
+    [ "null_deleter", "_element_8h.html#acc4b84d1cba2fafd495c35ebaeae1b96", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_element_8h_source.html b/doc/html/_element_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..623ae48bfddce7da647fedbc8af046aa78c5fe1f
--- /dev/null
+++ b/doc/html/_element_8h_source.html
@@ -0,0 +1,197 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Element.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_element_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Element.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_element_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_r_e_s_t_2constants_8h.html">REST/constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="_resource_8h.html">REST/Resource.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#include &lt;map&gt;</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#include &lt;mutex&gt;</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#include &lt;regex&gt;</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span> </div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>{</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html">   23</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    {</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">   32</a></span>        std::map&lt;std::string, std::shared_ptr&lt;Element&gt; &gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a>;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">   39</a></span>        std::shared_ptr&lt;Element&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span> </div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">   46</a></span>        std::shared_ptr&lt;Element&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a>;</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span> </div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">   53</a></span>        std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>;</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span> </div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">   60</a></span>        std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>;</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span> </div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">   67</a></span>        std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>;</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span> </div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">   76</a></span>        std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>;</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span> </div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">   83</a></span>        std::recursive_mutex <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a>;</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span> </div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string ontology =<span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span>        </div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>        <span class="keyword">virtual</span> <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">~Element</a>();</div>
+<div class="line"><a id="l00106" name="l00106"></a><span class="lineno">  106</span> </div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span>        std::vector&lt;std::string&gt; fqid(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span> </div>
+<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span>        std::shared_ptr&lt;Element&gt; operator[] (std::string fqid);</div>
+<div class="line"><a id="l00127" name="l00127"></a><span class="lineno">  127</span> </div>
+<div class="line"><a id="l00136" name="l00136"></a><span class="lineno">  136</span>        std::shared_ptr&lt;Element&gt;  add(std::string uuid, std::shared_ptr&lt;Element&gt; child);</div>
+<div class="line"><a id="l00137" name="l00137"></a><span class="lineno">  137</span>        </div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span>        std::shared_ptr&lt;Element&gt;  add(std::string uuid, <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a>* child);</div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno">  148</span> </div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno">  158</span>        <span class="keywordtype">bool</span>  insert(std::string uuid, std::shared_ptr&lt;Element&gt; child);</div>
+<div class="line"><a id="l00159" name="l00159"></a><span class="lineno">  159</span> </div>
+<div class="line"><a id="l00170" name="l00170"></a><span class="lineno">  170</span>        <span class="keywordtype">bool</span>  insert(std::string uuid, <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a>* child);</div>
+<div class="line"><a id="l00171" name="l00171"></a><span class="lineno">  171</span> </div>
+<div class="line"><a id="l00180" name="l00180"></a><span class="lineno">  180</span>        <span class="keywordtype">bool</span> remove(std::string uuid);</div>
+<div class="line"><a id="l00181" name="l00181"></a><span class="lineno">  181</span> </div>
+<div class="line"><a id="l00191" name="l00191"></a><span class="lineno">  191</span>        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt; T* cast(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00192" name="l00192"></a><span class="lineno">  192</span> </div>
+<div class="line"><a id="l00201" name="l00201"></a><span class="lineno">  201</span>        <span class="keywordtype">bool</span> is_object(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00202" name="l00202"></a><span class="lineno">  202</span> </div>
+<div class="line"><a id="l00211" name="l00211"></a><span class="lineno">  211</span>        <span class="keywordtype">bool</span> is_variable(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00212" name="l00212"></a><span class="lineno">  212</span> </div>
+<div class="line"><a id="l00221" name="l00221"></a><span class="lineno">  221</span>        <span class="keywordtype">bool</span> is_function(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00222" name="l00222"></a><span class="lineno">  222</span> </div>
+<div class="line"><a id="l00231" name="l00231"></a><span class="lineno">  231</span>        <span class="keywordtype">bool</span> is_parameter(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00232" name="l00232"></a><span class="lineno">  232</span> </div>
+<div class="line"><a id="l00240" name="l00240"></a><span class="lineno">  240</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> wjson(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00241" name="l00241"></a><span class="lineno">  241</span> </div>
+<div class="line"><a id="l00249" name="l00249"></a><span class="lineno">  249</span>        <span class="keyword">virtual</span> std::string <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00250" name="l00250"></a><span class="lineno">  250</span> </div>
+<div class="line"><a id="l00260" name="l00260"></a><span class="lineno">  260</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> handle(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00261" name="l00261"></a><span class="lineno">  261</span> </div>
+<div class="line"><a id="l00262" name="l00262"></a><span class="lineno">  262</span>    };</div>
+<div class="line"><a id="l00263" name="l00263"></a><span class="lineno">  263</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">  264</a></span>    T* <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">Element::cast</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00265" name="l00265"></a><span class="lineno">  265</span>    {</div>
+<div class="line"><a id="l00266" name="l00266"></a><span class="lineno">  266</span>        <span class="keywordflow">return</span> <span class="keyword">dynamic_cast&lt;</span>T*<span class="keyword">&gt;</span>(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a>.get());</div>
+<div class="line"><a id="l00267" name="l00267"></a><span class="lineno">  267</span>    }</div>
+<div class="line"><a id="l00268" name="l00268"></a><span class="lineno">  268</span> </div>
+<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">  278</a></span>    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">null_deleter</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a>* ptr) {};</div>
+<div class="line"><a id="l00279" name="l00279"></a><span class="lineno">  279</span> </div>
+<div class="line"><a id="l00280" name="l00280"></a><span class="lineno">  280</span>}</div>
+<div class="line"><a id="l00281" name="l00281"></a><span class="lineno">  281</span> </div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="a_r_e_s_t_2constants_8h_html"><div class="ttname"><a href="_r_e_s_t_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="a_resource_8h_html"><div class="ttname"><a href="_resource_8h.html">Resource.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></div><div class="ttdoc">HTTP Resource base class.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00020">Resource.h:21</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></div><div class="ttdoc">SOIL Base Element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00023">Element.h:24</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a4fa228a217778ee48c592fe0272aaacf"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">SOIL::Element::children</a></div><div class="ttdeci">std::map&lt; std::string, std::shared_ptr&lt; Element &gt; &gt; children</div><div class="ttdoc">Children Map.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00032">Element.h:32</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a6ef3653a14ca3245c529684e939b122d"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">SOIL::Element::cast</a></div><div class="ttdeci">T * cast(void)</div><div class="ttdoc">Get dynamically casted pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00264">Element.h:264</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a8676609fe497118147e31b25958d5104"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">SOIL::Element::uuid</a></div><div class="ttdeci">std::string uuid</div><div class="ttdoc">Local UUID.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00053">Element.h:53</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_aaef3cdce55ced857a81ba285afc92ed9"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">SOIL::Element::description</a></div><div class="ttdeci">std::string description</div><div class="ttdoc">Description.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00067">Element.h:67</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ad89fecb69de794e7b918767d5f21027d"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">SOIL::Element::ontology</a></div><div class="ttdeci">std::string ontology</div><div class="ttdoc">Ontology identifier.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00076">Element.h:76</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ae80d2c6c5f2577aa5a8489f2c0c352e8"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">SOIL::Element::name</a></div><div class="ttdeci">std::string name</div><div class="ttdoc">Name.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00060">Element.h:60</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_af1992c267233cec3b17bc70038d1d84b"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">SOIL::Element::parent</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; parent</div><div class="ttdoc">Parent Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00039">Element.h:39</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_afc29676fd98e4c6b7ab004514c175b7c"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">SOIL::Element::mutex</a></div><div class="ttdeci">std::recursive_mutex mutex</div><div class="ttdoc">Element Mutex.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00083">Element.h:83</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_afcdcd6ceb94c7d14b0fce99461bb5e30"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">SOIL::Element::self</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; self</div><div class="ttdoc">Self Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00046">Element.h:46</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_acc4b84d1cba2fafd495c35ebaeae1b96"><div class="ttname"><a href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">SOIL::null_deleter</a></div><div class="ttdeci">void null_deleter(SOIL::Element *ptr)</div><div class="ttdoc">Null deleter.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00278">Element.h:278</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_element_8h.html">Element.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_enum_8cpp.html b/doc/html/_enum_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..04cf993c38bc01f3e7e6cd8cdcc75ec26664ede5
--- /dev/null
+++ b/doc/html/_enum_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Enum.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_enum_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Enum.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_enum_8h_source.html">Enum.h</a>&quot;</code><br />
+</div>
+<p><a href="_enum_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_enum_8cpp.html">Enum.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_enum_8cpp_source.html b/doc/html/_enum_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..1da26facea82903968e706005634f543463e8d43
--- /dev/null
+++ b/doc/html/_enum_8cpp_source.html
@@ -0,0 +1,176 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Enum.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_enum_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Enum.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_enum_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_enum_8h.html">Enum.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1">    4</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1">SOIL::Enum::Enum</a>()</div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>{</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>}</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html#a30718fd8e647815e78b1a0b63d878fd8">    8</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1">SOIL::Enum::Enum</a>(std::string value) : _selected(value)</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>{</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>}</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span> </div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html#a8bb7c616cb01a03df35a73a4dd5edd34">   12</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1">SOIL::Enum::Enum</a>(std::string value, std::vector&lt;std::string&gt; choices): _selected(value), _choices(choices)</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>{</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>}</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span> </div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span> </div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867">   17</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867">SOIL::Enum::~Enum</a>()</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>{</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>}</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span> </div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">   21</a></span>std::string <a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">SOIL::Enum::selected</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keywordflow">return</span> _selected;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>}</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span> </div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a">   26</a></span>std::vector&lt;std::string&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a">SOIL::Enum::choices</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>{</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    <span class="keywordflow">return</span> _choices;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>}</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span> </div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0">   31</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0">SOIL::Enum::index</a>()<span class="keyword"> const</span></div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; static_cast&lt;int&gt;(_choices.size()); i++)</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    {</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>        <span class="keywordflow">if</span> (_selected == _choices.at(i))</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>        {</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>            <span class="keywordflow">return</span> i;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>        }</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    }</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Value of ENUM not in choices!&quot;</span>);</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>}</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span> </div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html#a2809b4d4200d001b62a5d3bd5d1aa04c">   43</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0">SOIL::Enum::index</a>(std::string value)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; static_cast&lt;int&gt;(_choices.size()); i++)</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>    {</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>        <span class="keywordflow">if</span> (value == _choices.at(i))</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>        {</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>            <span class="keywordflow">return</span> i;</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>        }</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>    }</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>    <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Value of ENUM not in choices!&quot;</span>);</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>}</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span> </div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41">   55</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41">SOIL::Enum::set</a>(<span class="keywordtype">int</span> value)</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>{</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    <span class="keywordflow">if</span> (value &lt; <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(_choices.size()))</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>    {</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>        _selected = _choices.at(value);</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>    }</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>    {</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>        <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Index not in ENUM choices!&quot;</span>);</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    }</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>}</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span> </div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html#a18e004d4a882a61c94a902a3330014e2">   67</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41">SOIL::Enum::set</a>(std::string value)</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>{</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>    _selected = value;</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>}</div>
+<div class="ttc" id="a_enum_8h_html"><div class="ttname"><a href="_enum_8h.html">Enum.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html_a20887b8fedec14630adfda595d117a41"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41">SOIL::Enum::set</a></div><div class="ttdeci">void set(int value)</div><div class="ttdoc">Set selected item (index)</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8cpp_source.html#l00055">Enum.cpp:55</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html_a21bc467860d215a091d9f0d09b7223a1"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1">SOIL::Enum::Enum</a></div><div class="ttdeci">Enum()</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8cpp_source.html#l00004">Enum.cpp:4</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html_aa02862d7713c094d7ae5819eab23765f"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">SOIL::Enum::selected</a></div><div class="ttdeci">std::string selected(void) const</div><div class="ttdoc">Get selected value.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8cpp_source.html#l00021">Enum.cpp:21</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html_ac25e85a1e15c6d2eb25565d6a362d867"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867">SOIL::Enum::~Enum</a></div><div class="ttdeci">~Enum()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8cpp_source.html#l00017">Enum.cpp:17</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html_ac84d64e172ea5cbecf0e441c787872e0"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0">SOIL::Enum::index</a></div><div class="ttdeci">int index() const</div><div class="ttdoc">Get index of selected element.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8cpp_source.html#l00031">Enum.cpp:31</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html_ad670fac86700dfca33f3fe79cc27602a"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a">SOIL::Enum::choices</a></div><div class="ttdeci">std::vector&lt; std::string &gt; choices(void)</div><div class="ttdoc">Get Choices.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8cpp_source.html#l00026">Enum.cpp:26</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_enum_8cpp.html">Enum.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_enum_8h.html b/doc/html/_enum_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..108572af732b1dac6d441ee36e4ebdbe7476898c
--- /dev/null
+++ b/doc/html/_enum_8h.html
@@ -0,0 +1,121 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Enum.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_enum_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Enum.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &lt;string&gt;</code><br />
+<code>#include &lt;vector&gt;</code><br />
+<code>#include &lt;stdexcept&gt;</code><br />
+</div>
+<p><a href="_enum_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> Datatype.  <a href="class_s_o_i_l_1_1_enum.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_enum_8h.html">Enum.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_enum_8h_source.html b/doc/html/_enum_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..e9935c170eb510a98e6110a4df0bf72dc7b26069
--- /dev/null
+++ b/doc/html/_enum_8h_source.html
@@ -0,0 +1,138 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Enum.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_enum_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Enum.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_enum_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;stdexcept&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>{</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_enum.html">   15</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">Enum</a></div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    {</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>        std::string _selected;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span> </div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>        std::vector&lt;std::string&gt; _choices;</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">Enum</a>();</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span> </div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">Enum</a>(std::string value);</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span> </div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">Enum</a>(std::string value, std::vector&lt;std::string&gt; choices);</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span> </div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">~Enum</a>();</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span> </div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>        std::string selected(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span> </div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>        std::vector&lt;std::string&gt; choices(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span> </div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>        <span class="keywordtype">int</span> index() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span> </div>
+<div class="line"><a id="l00102" name="l00102"></a><span class="lineno">  102</span>        <span class="keywordtype">int</span> index(std::string value) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno">  103</span> </div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span>        <span class="keywordtype">void</span> set(<span class="keywordtype">int</span> value);</div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span> </div>
+<div class="line"><a id="l00124" name="l00124"></a><span class="lineno">  124</span>        <span class="keywordtype">void</span> set(std::string value);</div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno">  125</span>    };</div>
+<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span>}</div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></div><div class="ttdoc">SOIL Enum Datatype.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8h_source.html#l00015">Enum.h:16</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_enum_8h.html">Enum.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_exception_8cpp.html b/doc/html/_exception_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..93dec9a606f17144060bed8e6670265220f3018c
--- /dev/null
+++ b/doc/html/_exception_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Exception.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_exception_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Exception.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_exception_8h_source.html">Exception.h</a>&quot;</code><br />
+</div>
+<p><a href="_exception_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_exception_8cpp.html">Exception.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_exception_8cpp_source.html b/doc/html/_exception_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..6dbe90bda6fc772bb3ef44484efde41dc5e89d14
--- /dev/null
+++ b/doc/html/_exception_8cpp_source.html
@@ -0,0 +1,111 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Exception.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_exception_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Exception.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_exception_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_exception_8h.html">Exception.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1">    3</a></span><a class="code hl_function" href="class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1">UDP::Exception::Exception</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* message) : std::runtime_error(message)</div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span>{</div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>}</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0">    7</a></span><a class="code hl_function" href="class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0">UDP::Exception::~Exception</a>()</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>{</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>}</div>
+<div class="ttc" id="a_exception_8h_html"><div class="ttname"><a href="_exception_8h.html">Exception.h</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_exception_html_a303fac04b1c83a4c5f8119344b6d8ec1"><div class="ttname"><a href="class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1">UDP::Exception::Exception</a></div><div class="ttdeci">Exception(const char *message=&quot;&quot;)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_exception_8cpp_source.html#l00003">Exception.cpp:3</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_exception_html_a825ce3fc0f996f9de64b075bad9bc7e0"><div class="ttname"><a href="class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0">UDP::Exception::~Exception</a></div><div class="ttdeci">~Exception(void)</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_exception_8cpp_source.html#l00007">Exception.cpp:7</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_exception_8cpp.html">Exception.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_exception_8h.html b/doc/html/_exception_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..ac2864ee365226f66284ff12258d816f517a42ef
--- /dev/null
+++ b/doc/html/_exception_8h.html
@@ -0,0 +1,118 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Exception.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_exception_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Exception.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_u_d_p_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &lt;stdexcept&gt;</code><br />
+</div>
+<p><a href="_exception_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_exception.html">UDP::Exception</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_exception.html" title="UDP Broadcast Exception.">Exception</a>.  <a href="class_u_d_p_1_1_exception.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_u_d_p"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_u_d_p.html">UDP</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_exception_8h.html">Exception.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_exception_8h_source.html b/doc/html/_exception_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..430ca13565986cc002307fa85517fa62ec6997ae
--- /dev/null
+++ b/doc/html/_exception_8h_source.html
@@ -0,0 +1,117 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Exception.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_exception_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Exception.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_exception_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;stdexcept&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_u_d_p.html">UDP</a></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>{</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_exception.html">   11</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_u_d_p_1_1_exception.html">Exception</a> :</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>        <span class="keyword">public</span> std::runtime_error</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    {</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>        <a class="code hl_class" href="class_u_d_p_1_1_exception.html">Exception</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* message = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span> </div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>        <a class="code hl_class" href="class_u_d_p_1_1_exception.html">~Exception</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span> </div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    };</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>}</div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_exception_html"><div class="ttname"><a href="class_u_d_p_1_1_exception.html">UDP::Exception</a></div><div class="ttdoc">UDP Broadcast Exception.</div><div class="ttdef"><b>Definition:</b> <a href="_exception_8h_source.html#l00011">Exception.h:13</a></div></div>
+<div class="ttc" id="anamespace_u_d_p_html"><div class="ttname"><a href="namespace_u_d_p.html">UDP</a></div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8h_source.html#l00013">Broadcast.h:14</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_exception_8h.html">Exception.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_figure_8cpp.html b/doc/html/_figure_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..20e204d202b592c39c43ac8efa64d16b78a4abfb
--- /dev/null
+++ b/doc/html/_figure_8cpp.html
@@ -0,0 +1,184 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Figure.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_figure_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle"><div class="title">Figure.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_figure_8h_source.html">Figure.h</a>&quot;</code><br />
+</div>
+<p><a href="_figure_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a879dfa5f8bb335421b721c57145b622e"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a879dfa5f8bb335421b721c57145b622e"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_figure_8cpp.html#a879dfa5f8bb335421b721c57145b622e">SOIL::datatype&lt; std::string &gt;</a> (void)</td></tr>
+<tr class="separator:a879dfa5f8bb335421b721c57145b622e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30e419f20fa7f6edd5cd20a93ad810ea"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a30e419f20fa7f6edd5cd20a93ad810ea"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_figure_8cpp.html#a30e419f20fa7f6edd5cd20a93ad810ea">SOIL::datatype&lt; SOIL::TIME &gt;</a> (void)</td></tr>
+<tr class="separator:a30e419f20fa7f6edd5cd20a93ad810ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c60fe17aef5a333bceb59cbcbef54c0"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a2c60fe17aef5a333bceb59cbcbef54c0"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="_figure_8cpp.html#a2c60fe17aef5a333bceb59cbcbef54c0">SOIL::datatype&lt; SOIL::ENUM &gt;</a> (void)</td></tr>
+<tr class="separator:a2c60fe17aef5a333bceb59cbcbef54c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a2c60fe17aef5a333bceb59cbcbef54c0" name="a2c60fe17aef5a333bceb59cbcbef54c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c60fe17aef5a333bceb59cbcbef54c0">&#9670;&nbsp;</a></span>SOIL::datatype&lt; SOIL::ENUM &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_figure_8cpp_source.html#l00043">43</a> of file <a class="el" href="_figure_8cpp_source.html">Figure.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a30e419f20fa7f6edd5cd20a93ad810ea" name="a30e419f20fa7f6edd5cd20a93ad810ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a30e419f20fa7f6edd5cd20a93ad810ea">&#9670;&nbsp;</a></span>SOIL::datatype&lt; SOIL::TIME &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_figure_8cpp_source.html#l00037">37</a> of file <a class="el" href="_figure_8cpp_source.html">Figure.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a879dfa5f8bb335421b721c57145b622e" name="a879dfa5f8bb335421b721c57145b622e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a879dfa5f8bb335421b721c57145b622e">&#9670;&nbsp;</a></span>SOIL::datatype&lt; std::string &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a>&lt; std::string &gt; </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_figure_8cpp_source.html#l00017">17</a> of file <a class="el" href="_figure_8cpp_source.html">Figure.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_figure_8cpp.html">Figure.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_figure_8cpp.js b/doc/html/_figure_8cpp.js
new file mode 100644
index 0000000000000000000000000000000000000000..30fa7273753f7a318b0cc3b7fba687426175aaec
--- /dev/null
+++ b/doc/html/_figure_8cpp.js
@@ -0,0 +1,6 @@
+var _figure_8cpp =
+[
+    [ "SOIL::datatype< SOIL::ENUM >", "_figure_8cpp.html#a2c60fe17aef5a333bceb59cbcbef54c0", null ],
+    [ "SOIL::datatype< SOIL::TIME >", "_figure_8cpp.html#a30e419f20fa7f6edd5cd20a93ad810ea", null ],
+    [ "SOIL::datatype< std::string >", "_figure_8cpp.html#a879dfa5f8bb335421b721c57145b622e", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_figure_8cpp_source.html b/doc/html/_figure_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9656e9a303973a4fa260aec204da3395d9ce0964
--- /dev/null
+++ b/doc/html/_figure_8cpp_source.html
@@ -0,0 +1,151 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Figure.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_figure_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Figure.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_figure_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_figure_8h.html">Figure.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad">    4</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad">SOIL::datatype&lt;double&gt;</a>(<span class="keywordtype">void</span>) </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>{</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>    <span class="keywordflow">return</span> HTTP::Json::string(U(<span class="stringliteral">&quot;double&quot;</span>));</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>}</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span> </div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761">   10</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761">SOIL::datatype&lt;bool&gt;</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>{</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordflow">return</span> HTTP::Json::string(U(<span class="stringliteral">&quot;bool&quot;</span>));</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>}</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span> </div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span> </div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"><a class="line" href="_figure_8cpp.html#a879dfa5f8bb335421b721c57145b622e">   17</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> SOIL::datatype&lt;std::string&gt;(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>{</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <span class="keywordflow">return</span> HTTP::Json::string(U(<span class="stringliteral">&quot;string&quot;</span>));</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>}</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span> </div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed">   24</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed">SOIL::datatype&lt;int64_t&gt;</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>{</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    <span class="keywordflow">return</span> HTTP::Json::string(U(<span class="stringliteral">&quot;int&quot;</span>));</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>}</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span> </div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span> </div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03">   31</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03">SOIL::datatype&lt;int&gt;</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>{</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <span class="keywordflow">return</span> HTTP::Json::string(U(<span class="stringliteral">&quot;int&quot;</span>));</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>}</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"><a class="line" href="_figure_8cpp.html#a30e419f20fa7f6edd5cd20a93ad810ea">   37</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> SOIL::datatype&lt;SOIL::TIME&gt;(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>{</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    <span class="keywordflow">return</span> HTTP::Json::string(U(<span class="stringliteral">&quot;time&quot;</span>));</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>}</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span> </div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="_figure_8cpp.html#a2c60fe17aef5a333bceb59cbcbef54c0">   43</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> SOIL::datatype&lt;SOIL::ENUM&gt;(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>{</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    <span class="keywordflow">return</span> HTTP::Json::string(U(<span class="stringliteral">&quot;enum&quot;</span>));</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>}</div>
+<div class="ttc" id="a_figure_8h_html"><div class="ttname"><a href="_figure_8h.html">Figure.h</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a034d9e6f234755509cc20b01b506f761"><div class="ttname"><a href="namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761">SOIL::datatype&lt; bool &gt;</a></div><div class="ttdeci">DLL HTTP::Json datatype&lt; bool &gt;(void)</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8cpp_source.html#l00010">Figure.cpp:10</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a1e904aedc828f75201ffc0452ff28c03"><div class="ttname"><a href="namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03">SOIL::datatype&lt; int &gt;</a></div><div class="ttdeci">DLL HTTP::Json datatype&lt; int &gt;(void)</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8cpp_source.html#l00031">Figure.cpp:31</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a863aac9ac9eb4396135f86bd9bc29bad"><div class="ttname"><a href="namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad">SOIL::datatype&lt; double &gt;</a></div><div class="ttdeci">DLL HTTP::Json datatype&lt; double &gt;(void)</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8cpp_source.html#l00004">Figure.cpp:4</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a980491413d86c50ced57a8345c8f63ed"><div class="ttname"><a href="namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed">SOIL::datatype&lt; int64_t &gt;</a></div><div class="ttdeci">DLL HTTP::Json datatype&lt; int64_t &gt;(void)</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8cpp_source.html#l00024">Figure.cpp:24</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_figure_8cpp.html">Figure.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_figure_8h.html b/doc/html/_figure_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..9432178ed33302436128f6100e8557637e00594d
--- /dev/null
+++ b/doc/html/_figure_8h.html
@@ -0,0 +1,151 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Figure.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_figure_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle"><div class="title">Figure.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_element_8h_source.html">Element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_container_8h_source.html">Container.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_range_8h_source.html">Range.h</a>&quot;</code><br />
+</div>
+<p><a href="_figure_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Intermediate class for <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> that derives from <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_figure.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a485afdb40b0c76b73cbbc0da177cf8e3"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a485afdb40b0c76b73cbbc0da177cf8e3"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a> (void)</td></tr>
+<tr class="memdesc:a485afdb40b0c76b73cbbc0da177cf8e3"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON datatype.  <a href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">More...</a><br /></td></tr>
+<tr class="separator:a485afdb40b0c76b73cbbc0da177cf8e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a863aac9ac9eb4396135f86bd9bc29bad"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a863aac9ac9eb4396135f86bd9bc29bad"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad">SOIL::datatype&lt; double &gt;</a> (void)</td></tr>
+<tr class="separator:a863aac9ac9eb4396135f86bd9bc29bad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a034d9e6f234755509cc20b01b506f761"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a034d9e6f234755509cc20b01b506f761"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761">SOIL::datatype&lt; bool &gt;</a> (void)</td></tr>
+<tr class="separator:a034d9e6f234755509cc20b01b506f761"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa97c25e5a3e597eea65e13ac0ce85416"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:aa97c25e5a3e597eea65e13ac0ce85416"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#aa97c25e5a3e597eea65e13ac0ce85416">SOIL::datatype&lt; std::string &gt;</a> (void)</td></tr>
+<tr class="separator:aa97c25e5a3e597eea65e13ac0ce85416"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a980491413d86c50ced57a8345c8f63ed"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a980491413d86c50ced57a8345c8f63ed"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed">SOIL::datatype&lt; int64_t &gt;</a> (void)</td></tr>
+<tr class="separator:a980491413d86c50ced57a8345c8f63ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e904aedc828f75201ffc0452ff28c03"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a1e904aedc828f75201ffc0452ff28c03"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03">SOIL::datatype&lt; int &gt;</a> (void)</td></tr>
+<tr class="separator:a1e904aedc828f75201ffc0452ff28c03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa16db0f32c1f6a992261e1747be93097"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:aa16db0f32c1f6a992261e1747be93097"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#aa16db0f32c1f6a992261e1747be93097">SOIL::datatype&lt; SOIL::TIME &gt;</a> (void)</td></tr>
+<tr class="separator:aa16db0f32c1f6a992261e1747be93097"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3656e92123956c8afcfbe545eef81eb7"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a3656e92123956c8afcfbe545eef81eb7"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a3656e92123956c8afcfbe545eef81eb7">SOIL::datatype&lt; SOIL::ENUM &gt;</a> (void)</td></tr>
+<tr class="separator:a3656e92123956c8afcfbe545eef81eb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_figure_8h.html">Figure.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_figure_8h.js b/doc/html/_figure_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..0c4dc6b2066d085da76f25d4bb275a411a10506f
--- /dev/null
+++ b/doc/html/_figure_8h.js
@@ -0,0 +1,12 @@
+var _figure_8h =
+[
+    [ "SOIL::Figure< T, x, y >", "class_s_o_i_l_1_1_figure.html", "class_s_o_i_l_1_1_figure" ],
+    [ "datatype", "_figure_8h.html#a485afdb40b0c76b73cbbc0da177cf8e3", null ],
+    [ "datatype< bool >", "_figure_8h.html#a034d9e6f234755509cc20b01b506f761", null ],
+    [ "datatype< double >", "_figure_8h.html#a863aac9ac9eb4396135f86bd9bc29bad", null ],
+    [ "datatype< int >", "_figure_8h.html#a1e904aedc828f75201ffc0452ff28c03", null ],
+    [ "datatype< int64_t >", "_figure_8h.html#a980491413d86c50ced57a8345c8f63ed", null ],
+    [ "datatype< SOIL::ENUM >", "_figure_8h.html#a3656e92123956c8afcfbe545eef81eb7", null ],
+    [ "datatype< SOIL::TIME >", "_figure_8h.html#aa16db0f32c1f6a992261e1747be93097", null ],
+    [ "datatype< std::string >", "_figure_8h.html#aa97c25e5a3e597eea65e13ac0ce85416", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_figure_8h_source.html b/doc/html/_figure_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..90a4d1faaf09ee06fdd1c7e60d6c73a25f2d3073
--- /dev/null
+++ b/doc/html/_figure_8h_source.html
@@ -0,0 +1,326 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Figure.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_figure_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Figure.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_figure_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_s_o_i_l_2_types_8h.html">Types.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="_element_8h.html">Element.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;<a class="code" href="_container_8h.html">Container.h</a>&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &quot;<a class="code" href="_range_8h.html">Range.h</a>&quot;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>{</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">   19</a></span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">datatype</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    DLL <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad">datatype&lt;double&gt;</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    DLL <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761">datatype&lt;bool&gt;</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#aa97c25e5a3e597eea65e13ac0ce85416">   25</a></span>    DLL <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> datatype&lt;std::string&gt;(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    DLL <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed">datatype&lt;int64_t&gt;</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    DLL <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03">datatype&lt;int&gt;</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#aa16db0f32c1f6a992261e1747be93097">   31</a></span>    DLL <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> datatype&lt;SOIL::TIME&gt;(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a3656e92123956c8afcfbe545eef81eb7">   33</a></span>    DLL <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> datatype&lt;SOIL::ENUM&gt;(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span> </div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x=-1, <span class="keywordtype">int</span> y=-1&gt;</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html">   48</a></span>    <span class="keyword">class </span><a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a></div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    {</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    <span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">   56</a></span>        <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>;</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span> </div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">   63</a></span>        std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>;</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span> </div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">   70</a></span>        <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>  <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>;</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span> </div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">   77</a></span>        <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>;</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span> </div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">   85</a></span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">read</a>(<span class="keywordtype">void</span>) = 0;</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span> </div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">   93</a></span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">write</a>(<span class="keywordtype">void</span>) = 0;</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span> </div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">  109</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">Figure</a>(std::shared_ptr&lt;Element&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a> = <span class="stringliteral">&quot;&quot;</span>,  <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a> = <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a>(), <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a> = <a class="code hl_typedef" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>());</div>
+<div class="line"><a id="l00110" name="l00110"></a><span class="lineno">  110</span> </div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">  116</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">~Figure</a>();</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span> </div>
+<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">  128</a></span>        <a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure&lt;T, x, y&gt;</a>&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">operator =</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>);</div>
+<div class="line"><a id="l00129" name="l00129"></a><span class="lineno">  129</span> </div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno">  130</span> </div>
+<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">  137</a></span>        <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">operator* </a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00138" name="l00138"></a><span class="lineno">  138</span> </div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">  147</a></span>        <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">check_range</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno">  148</span> </div>
+<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">  155</a></span>        <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">set_range</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>);</div>
+<div class="line"><a id="l00156" name="l00156"></a><span class="lineno">  156</span> </div>
+<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">  163</a></span>        <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">set_time</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>);</div>
+<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span> </div>
+<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">  175</a></span>        <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">set_value</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>);</div>
+<div class="line"><a id="l00176" name="l00176"></a><span class="lineno">  176</span> </div>
+<div class="line"><a id="l00177" name="l00177"></a><span class="lineno">  177</span> </div>
+<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">  186</a></span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">wjson</a>(<span class="keywordtype">void</span>) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00187" name="l00187"></a><span class="lineno">  187</span> </div>
+<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">  198</a></span>        <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">cast</a>(T <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>);</div>
+<div class="line"><a id="l00199" name="l00199"></a><span class="lineno">  199</span> </div>
+<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">  209</a></span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">update</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>, <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>);</div>
+<div class="line"><a id="l00210" name="l00210"></a><span class="lineno">  210</span>    };</div>
+<div class="line"><a id="l00211" name="l00211"></a><span class="lineno">  211</span> </div>
+<div class="line"><a id="l00212" name="l00212"></a><span class="lineno">  212</span> </div>
+<div class="line"><a id="l00213" name="l00213"></a><span class="lineno">  213</span>}</div>
+<div class="line"><a id="l00214" name="l00214"></a><span class="lineno">  214</span> </div>
+<div class="line"><a id="l00215" name="l00215"></a><span class="lineno">  215</span> </div>
+<div class="line"><a id="l00216" name="l00216"></a><span class="lineno">  216</span> </div>
+<div class="line"><a id="l00217" name="l00217"></a><span class="lineno">  217</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">  218</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">SOIL::Figure&lt;T, x, y&gt;::Figure</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> range, <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::TIME</a> time) : <a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a>::<a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a>(parent, uuid, name, description, ontology), unit(unit), range(range), time(time)</div>
+<div class="line"><a id="l00219" name="l00219"></a><span class="lineno">  219</span>{</div>
+<div class="line"><a id="l00220" name="l00220"></a><span class="lineno">  220</span>}</div>
+<div class="line"><a id="l00221" name="l00221"></a><span class="lineno">  221</span> </div>
+<div class="line"><a id="l00222" name="l00222"></a><span class="lineno">  222</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">  223</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">SOIL::Figure&lt;T,x,y&gt;::~Figure</a>()</div>
+<div class="line"><a id="l00224" name="l00224"></a><span class="lineno">  224</span>{</div>
+<div class="line"><a id="l00225" name="l00225"></a><span class="lineno">  225</span>}</div>
+<div class="line"><a id="l00226" name="l00226"></a><span class="lineno">  226</span> </div>
+<div class="line"><a id="l00227" name="l00227"></a><span class="lineno">  227</span> </div>
+<div class="line"><a id="l00228" name="l00228"></a><span class="lineno">  228</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">  229</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure&lt;T,x,y&gt;::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00230" name="l00230"></a><span class="lineno">  230</span>{</div>
+<div class="line"><a id="l00231" name="l00231"></a><span class="lineno">  231</span> </div>
+<div class="line"><a id="l00232" name="l00232"></a><span class="lineno">  232</span>    std::unique_lock&lt;std::recursive_mutex&gt; lock(mutex);</div>
+<div class="line"><a id="l00233" name="l00233"></a><span class="lineno">  233</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root = <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element::wjson</a>();</div>
+<div class="line"><a id="l00234" name="l00234"></a><span class="lineno">  234</span>    json_root[U(<span class="stringliteral">&quot;timestamp&quot;</span>] = (time.<a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">is_null</a>() || time.<a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">rfc3339</a>() == <span class="stringliteral">&quot;&quot;</span>)) ? HTTP::Json::null() : HTTP::Json::string(utility::conversions::to_string_t(time.<a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">rfc3339</a>()));</div>
+<div class="line"><a id="l00235" name="l00235"></a><span class="lineno">  235</span>    json_root[U(<span class="stringliteral">&quot;range&quot;</span>)] = range.<a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">wjson</a>();</div>
+<div class="line"><a id="l00236" name="l00236"></a><span class="lineno">  236</span>    json_root[U(<span class="stringliteral">&quot;unit&quot;</span>)] = (unit.length() == 0) ? HTTP::Json::null() : <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(unit);</div>
+<div class="line"><a id="l00237" name="l00237"></a><span class="lineno">  237</span>    </div>
+<div class="line"><a id="l00238" name="l00238"></a><span class="lineno">  238</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> value_json = value.<a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">wjson</a>();</div>
+<div class="line"><a id="l00239" name="l00239"></a><span class="lineno">  239</span>    json_root[U(<span class="stringliteral">&quot;value&quot;</span>)] = value_json[U(<span class="stringliteral">&quot;value&quot;</span>)];</div>
+<div class="line"><a id="l00240" name="l00240"></a><span class="lineno">  240</span>    json_root[U(<span class="stringliteral">&quot;dimension&quot;</span>)] = value_json[U(<span class="stringliteral">&quot;dimension&quot;</span>)];</div>
+<div class="line"><a id="l00241" name="l00241"></a><span class="lineno">  241</span>    json_root[U(<span class="stringliteral">&quot;datatype&quot;</span>)] = datatype&lt;T&gt;();</div>
+<div class="line"><a id="l00242" name="l00242"></a><span class="lineno">  242</span> </div>
+<div class="line"><a id="l00243" name="l00243"></a><span class="lineno">  243</span> </div>
+<div class="line"><a id="l00244" name="l00244"></a><span class="lineno">  244</span>    <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00245" name="l00245"></a><span class="lineno">  245</span>}</div>
+<div class="line"><a id="l00246" name="l00246"></a><span class="lineno">  246</span> </div>
+<div class="line"><a id="l00247" name="l00247"></a><span class="lineno">  247</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">  248</a></span><a class="code hl_class" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt;T, x, y&gt;</a> <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">SOIL::Figure&lt;T, x, y&gt;::cast</a>(T value)</div>
+<div class="line"><a id="l00249" name="l00249"></a><span class="lineno">  249</span>{</div>
+<div class="line"><a id="l00250" name="l00250"></a><span class="lineno">  250</span>    <span class="keywordflow">return</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>(value);</div>
+<div class="line"><a id="l00251" name="l00251"></a><span class="lineno">  251</span>}</div>
+<div class="line"><a id="l00252" name="l00252"></a><span class="lineno">  252</span> </div>
+<div class="line"><a id="l00253" name="l00253"></a><span class="lineno">  253</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">  254</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">SOIL::Figure&lt;T,x,y&gt;::read</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00255" name="l00255"></a><span class="lineno">  255</span>{</div>
+<div class="line"><a id="l00256" name="l00256"></a><span class="lineno">  256</span>}</div>
+<div class="line"><a id="l00257" name="l00257"></a><span class="lineno">  257</span> </div>
+<div class="line"><a id="l00258" name="l00258"></a><span class="lineno">  258</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">  259</a></span><a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt;T, x, y&gt;</a>&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">SOIL::Figure&lt;T,x,y&gt;::operator=</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; value)</div>
+<div class="line"><a id="l00260" name="l00260"></a><span class="lineno">  260</span>{</div>
+<div class="line"><a id="l00261" name="l00261"></a><span class="lineno">  261</span>    <span class="keywordflow">if</span> (!check_range(value))</div>
+<div class="line"><a id="l00262" name="l00262"></a><span class="lineno">  262</span>    {</div>
+<div class="line"><a id="l00263" name="l00263"></a><span class="lineno">  263</span>        <span class="keywordflow">throw</span> std::range_error(<span class="stringliteral">&quot;Value is out of range specified for Figure &quot;</span> + uuid);</div>
+<div class="line"><a id="l00264" name="l00264"></a><span class="lineno">  264</span>    }</div>
+<div class="line"><a id="l00265" name="l00265"></a><span class="lineno">  265</span>    this-&gt;value = value;</div>
+<div class="line"><a id="l00266" name="l00266"></a><span class="lineno">  266</span>    <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a id="l00267" name="l00267"></a><span class="lineno">  267</span>}</div>
+<div class="line"><a id="l00268" name="l00268"></a><span class="lineno">  268</span> </div>
+<div class="line"><a id="l00269" name="l00269"></a><span class="lineno">  269</span> </div>
+<div class="line"><a id="l00270" name="l00270"></a><span class="lineno">  270</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">  271</a></span><a class="code hl_class" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt;T, x, y&gt;</a>&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">SOIL::Figure&lt;T,x,y&gt;::operator*</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00272" name="l00272"></a><span class="lineno">  272</span>{</div>
+<div class="line"><a id="l00273" name="l00273"></a><span class="lineno">  273</span>    this-&gt;read();</div>
+<div class="line"><a id="l00274" name="l00274"></a><span class="lineno">  274</span>    <span class="keywordflow">return</span> value;</div>
+<div class="line"><a id="l00275" name="l00275"></a><span class="lineno">  275</span>}</div>
+<div class="line"><a id="l00276" name="l00276"></a><span class="lineno">  276</span> </div>
+<div class="line"><a id="l00277" name="l00277"></a><span class="lineno">  277</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">  278</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">SOIL::Figure&lt;T, x, y&gt;::check_range</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; value)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00279" name="l00279"></a><span class="lineno">  279</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00280" name="l00280"></a><span class="lineno">  280</span>    <span class="keywordflow">return</span> value.<a class="code hl_function" href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">check_range</a>(range);</div>
+<div class="line"><a id="l00281" name="l00281"></a><span class="lineno">  281</span>}</div>
+<div class="line"><a id="l00282" name="l00282"></a><span class="lineno">  282</span> </div>
+<div class="line"><a id="l00283" name="l00283"></a><span class="lineno">  283</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">  284</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">SOIL::Figure&lt;T,x,y&gt;::set_range</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> range)</div>
+<div class="line"><a id="l00285" name="l00285"></a><span class="lineno">  285</span>{</div>
+<div class="line"><a id="l00286" name="l00286"></a><span class="lineno">  286</span>    this-&gt;range = range;</div>
+<div class="line"><a id="l00287" name="l00287"></a><span class="lineno">  287</span>}</div>
+<div class="line"><a id="l00288" name="l00288"></a><span class="lineno">  288</span> </div>
+<div class="line"><a id="l00289" name="l00289"></a><span class="lineno">  289</span> </div>
+<div class="line"><a id="l00290" name="l00290"></a><span class="lineno">  290</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">  291</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">SOIL::Figure&lt;T,x,y&gt;::set_time</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> time)</div>
+<div class="line"><a id="l00292" name="l00292"></a><span class="lineno">  292</span>{</div>
+<div class="line"><a id="l00293" name="l00293"></a><span class="lineno">  293</span>    this-&gt;time = time;</div>
+<div class="line"><a id="l00294" name="l00294"></a><span class="lineno">  294</span>}</div>
+<div class="line"><a id="l00295" name="l00295"></a><span class="lineno">  295</span> </div>
+<div class="line"><a id="l00296" name="l00296"></a><span class="lineno">  296</span> </div>
+<div class="line"><a id="l00297" name="l00297"></a><span class="lineno">  297</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">  298</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">SOIL::Figure&lt;T, x, y&gt;::set_value</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; value)</div>
+<div class="line"><a id="l00299" name="l00299"></a><span class="lineno">  299</span>{</div>
+<div class="line"><a id="l00300" name="l00300"></a><span class="lineno">  300</span>    <span class="keywordflow">if</span> (!check_range(value))</div>
+<div class="line"><a id="l00301" name="l00301"></a><span class="lineno">  301</span>    {</div>
+<div class="line"><a id="l00302" name="l00302"></a><span class="lineno">  302</span>        <span class="keywordflow">throw</span> std::range_error(<span class="stringliteral">&quot;Value is out of range specified for Figure &quot;</span> + uuid);</div>
+<div class="line"><a id="l00303" name="l00303"></a><span class="lineno">  303</span>    }</div>
+<div class="line"><a id="l00304" name="l00304"></a><span class="lineno">  304</span>    *<span class="keyword">this</span> = value;</div>
+<div class="line"><a id="l00305" name="l00305"></a><span class="lineno">  305</span>}</div>
+<div class="line"><a id="l00306" name="l00306"></a><span class="lineno">  306</span> </div>
+<div class="line"><a id="l00307" name="l00307"></a><span class="lineno">  307</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">  308</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">SOIL::Figure&lt;T,x,y&gt;::update</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T,x,y&gt;</a>&amp; value, <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> time)</div>
+<div class="line"><a id="l00309" name="l00309"></a><span class="lineno">  309</span>{</div>
+<div class="line"><a id="l00310" name="l00310"></a><span class="lineno">  310</span>    std::unique_lock&lt;std::recursive_mutex&gt; lock(mutex);</div>
+<div class="line"><a id="l00311" name="l00311"></a><span class="lineno">  311</span>    <span class="keywordflow">if</span> (!check_range(value))</div>
+<div class="line"><a id="l00312" name="l00312"></a><span class="lineno">  312</span>    {</div>
+<div class="line"><a id="l00313" name="l00313"></a><span class="lineno">  313</span>        <span class="keywordflow">throw</span> std::range_error(<span class="stringliteral">&quot;Value is out of range specified for Figure &quot;</span> + uuid);</div>
+<div class="line"><a id="l00314" name="l00314"></a><span class="lineno">  314</span>    }</div>
+<div class="line"><a id="l00315" name="l00315"></a><span class="lineno">  315</span>    *<span class="keyword">this</span> = value;</div>
+<div class="line"><a id="l00316" name="l00316"></a><span class="lineno">  316</span>    this-&gt;time = time;</div>
+<div class="line"><a id="l00317" name="l00317"></a><span class="lineno">  317</span>}</div>
+<div class="line"><a id="l00318" name="l00318"></a><span class="lineno">  318</span> </div>
+<div class="line"><a id="l00319" name="l00319"></a><span class="lineno">  319</span> </div>
+<div class="line"><a id="l00320" name="l00320"></a><span class="lineno">  320</span> </div>
+<div class="line"><a id="l00321" name="l00321"></a><span class="lineno">  321</span> </div>
+<div class="line"><a id="l00322" name="l00322"></a><span class="lineno">  322</span> </div>
+<div class="ttc" id="a_container_8h_html"><div class="ttname"><a href="_container_8h.html">Container.h</a></div></div>
+<div class="ttc" id="a_element_8h_html"><div class="ttname"><a href="_element_8h.html">Element.h</a></div></div>
+<div class="ttc" id="a_range_8h_html"><div class="ttname"><a href="_range_8h.html">Range.h</a></div></div>
+<div class="ttc" id="a_s_o_i_l_2_types_8h_html"><div class="ttname"><a href="_s_o_i_l_2_types_8h.html">Types.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a197355701a388b65d7ea327ddd45024a"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">SOIL::Container::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void)</div><div class="ttdoc">WJSON representation.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00269">Container.h:269</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_ad1574e37bb9696fdee3986964e77f050"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">SOIL::Container::check_range</a></div><div class="ttdeci">bool check_range(Range&lt; T &gt; range) const</div><div class="ttdoc">Check range.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00293">Container.h:293</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></div><div class="ttdoc">SOIL Base Element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00023">Element.h:24</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a6ef3653a14ca3245c529684e939b122d"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">SOIL::Element::cast</a></div><div class="ttdeci">T * cast(void)</div><div class="ttdoc">Get dynamically casted pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00264">Element.h:264</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a8676609fe497118147e31b25958d5104"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">SOIL::Element::uuid</a></div><div class="ttdeci">std::string uuid</div><div class="ttdoc">Local UUID.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00053">Element.h:53</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a9dd8b98ea77291d638408b123e68536a"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element::wjson</a></div><div class="ttdeci">virtual HTTP::Json wjson(void)</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00130">Element.cpp:130</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_aaef3cdce55ced857a81ba285afc92ed9"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">SOIL::Element::description</a></div><div class="ttdeci">std::string description</div><div class="ttdoc">Description.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00067">Element.h:67</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ad89fecb69de794e7b918767d5f21027d"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">SOIL::Element::ontology</a></div><div class="ttdeci">std::string ontology</div><div class="ttdoc">Ontology identifier.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00076">Element.h:76</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ae80d2c6c5f2577aa5a8489f2c0c352e8"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">SOIL::Element::name</a></div><div class="ttdeci">std::string name</div><div class="ttdoc">Name.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00060">Element.h:60</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_af1992c267233cec3b17bc70038d1d84b"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">SOIL::Element::parent</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; parent</div><div class="ttdoc">Parent Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00039">Element.h:39</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a></div><div class="ttdoc">Intermediate class for Variable and Parameter that derives from Element.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00048">Figure.h:49</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a1f20334aa82abbb7d0e9d2322e5683d0"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">SOIL::Figure::~Figure</a></div><div class="ttdeci">~Figure()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00223">Figure.h:223</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a358a1060f3f04ea4aa1cb0b7705af4d9"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">SOIL::Figure::set_value</a></div><div class="ttdeci">void set_value(const Container&lt; T, x, y &gt; &amp;value)</div><div class="ttdoc">Set Value.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00298">Figure.h:298</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a4e4d6c93a559d5e18178de9a79b472ec"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">SOIL::Figure::operator=</a></div><div class="ttdeci">Figure&lt; T, x, y &gt; &amp; operator=(const Container&lt; T, x, y &gt; &amp;value)</div><div class="ttdoc">Assignment operator.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00259">Figure.h:259</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a627d9d3386a719a6612ec3068812ea67"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">SOIL::Figure::unit</a></div><div class="ttdeci">std::string unit</div><div class="ttdoc">Unit.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00063">Figure.h:63</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a65998054544cd71fdb47c0b1b956e883"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">SOIL::Figure::update</a></div><div class="ttdeci">virtual void update(const Container&lt; T, x, y &gt; &amp;value, TIME time)</div><div class="ttdoc">Update.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00308">Figure.h:308</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a6cebd6af4116112bb244b1444aa3a1da"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">SOIL::Figure::cast</a></div><div class="ttdeci">Container&lt; T, x, y &gt; cast(T value)</div><div class="ttdoc">Cast to container.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00248">Figure.h:248</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a6dc0dda3c135fb3512486192a52e0f8b"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">SOIL::Figure::read</a></div><div class="ttdeci">virtual void read(void)=0</div><div class="ttdoc">Read callback.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00254">Figure.h:254</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a8da920bd367b9a6ee8b70fcfa1f709ac"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">SOIL::Figure::Figure</a></div><div class="ttdeci">Figure(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME())</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00218">Figure.h:218</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a8f320356ea837f06e439b74c2a22e81c"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">SOIL::Figure::time</a></div><div class="ttdeci">TIME time</div><div class="ttdoc">Data Timestamp.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00056">Figure.h:56</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a97c7e2488708c155d366e2cdc1934c3b"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">SOIL::Figure::value</a></div><div class="ttdeci">Container&lt; T, x, y &gt; value</div><div class="ttdoc">Value.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00070">Figure.h:70</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_aaf9b99da1c712f54d758c492830a7566"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">SOIL::Figure::check_range</a></div><div class="ttdeci">bool check_range(const Container&lt; T, x, y &gt; &amp;value) const</div><div class="ttdoc">Check range.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00278">Figure.h:278</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_ab431dcf967cbfb8591b9128257595712"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">SOIL::Figure::range</a></div><div class="ttdeci">Range&lt; T &gt; range</div><div class="ttdoc">Range.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00077">Figure.h:77</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_ab47f2268fb3f31960ab7bc8473974b3e"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">SOIL::Figure::set_time</a></div><div class="ttdeci">void set_time(TIME time)</div><div class="ttdoc">Set Time.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00291">Figure.h:291</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_abb3fe4e331a9a5f2f53b011309d6c937"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">SOIL::Figure::operator*</a></div><div class="ttdeci">Container&lt; T, x, y &gt; &amp; operator*(void)</div><div class="ttdoc">Access Operator.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00271">Figure.h:271</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_aca02467b79b6d4a9590553b612876b20"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void) override</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00229">Figure.h:229</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_af07e6f343402f0f9280ede65d4b26fa0"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">SOIL::Figure::write</a></div><div class="ttdeci">virtual void write(void)=0</div><div class="ttdoc">Write callback.</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_af096fd3a66cdc35d18a1cbbf637dddf9"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">SOIL::Figure::set_range</a></div><div class="ttdeci">void set_range(Range&lt; T &gt; range)</div><div class="ttdoc">Set Range.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00284">Figure.h:284</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html">SOIL::Range</a></div><div class="ttdoc">Range Helper Class.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8h_source.html#l00024">Range.h:25</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html_a65b2542daa4ce48d6738533e6e417ade"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">SOIL::Range::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void)</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8cpp_source.html#l00072">Range.cpp:72</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00012">Time.h:13</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a5248a0ed5db231883fd8d1ee34ab2325"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">SOIL::Time::is_null</a></div><div class="ttdeci">bool is_null(void) const</div><div class="ttdoc">Is Null?</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00092">Time.h:92</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a8b1d27ee800ce3dddeb38356c5edb86d"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">SOIL::Time::rfc3339</a></div><div class="ttdeci">DLL std::string rfc3339(void) const</div><div class="ttdoc">RFC3339 representation.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00006">Time.cpp:6</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a034d9e6f234755509cc20b01b506f761"><div class="ttname"><a href="namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761">SOIL::datatype&lt; bool &gt;</a></div><div class="ttdeci">DLL HTTP::Json datatype&lt; bool &gt;(void)</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8cpp_source.html#l00010">Figure.cpp:10</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a088b157f218c9c844ae77c2c07f1b328"><div class="ttname"><a href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a></div><div class="ttdeci">Time TIME</div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00054">Types.h:54</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a1e904aedc828f75201ffc0452ff28c03"><div class="ttname"><a href="namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03">SOIL::datatype&lt; int &gt;</a></div><div class="ttdeci">DLL HTTP::Json datatype&lt; int &gt;(void)</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8cpp_source.html#l00031">Figure.cpp:31</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a485afdb40b0c76b73cbbc0da177cf8e3"><div class="ttname"><a href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a></div><div class="ttdeci">HTTP::Json datatype(void)</div><div class="ttdoc">HTTP JSON datatype.</div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a82671406aa31a367c38dcad31d359b92"><div class="ttname"><a href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a></div><div class="ttdeci">DLL web::json::value to_json(const T &amp;value)</div><div class="ttdoc">Value to JSON.</div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a863aac9ac9eb4396135f86bd9bc29bad"><div class="ttname"><a href="namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad">SOIL::datatype&lt; double &gt;</a></div><div class="ttdeci">DLL HTTP::Json datatype&lt; double &gt;(void)</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8cpp_source.html#l00004">Figure.cpp:4</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a980491413d86c50ced57a8345c8f63ed"><div class="ttname"><a href="namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed">SOIL::datatype&lt; int64_t &gt;</a></div><div class="ttdeci">DLL HTTP::Json datatype&lt; int64_t &gt;(void)</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8cpp_source.html#l00024">Figure.cpp:24</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_figure_8h.html">Figure.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_function_8cpp.html b/doc/html/_function_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..4a458d33b161896cfaafa299c7ac171efb22ab80
--- /dev/null
+++ b/doc/html/_function_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Function.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_function_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Function.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_function_8h_source.html">Function.h</a>&quot;</code><br />
+</div>
+<p><a href="_function_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_function_8cpp.html">Function.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_function_8cpp_source.html b/doc/html/_function_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..9ab09fb34d22d78dc8d18860d8110c05eadb408c
--- /dev/null
+++ b/doc/html/_function_8cpp_source.html
@@ -0,0 +1,215 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Function.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_function_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Function.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_function_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_function_8h.html">Function.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1">    4</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1">SOIL::Function::Function</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string ontology) : <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a>(parent, uuid, name, description, ontology)</div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>{</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>    <span class="keywordflow">if</span> (<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>.substr(0, 3) != <span class="stringliteral">&quot;FUN&quot;</span>)</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    {</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>        <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;UUIDs for functions must start with FUN!&quot;</span>);</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    }</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span> </div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <a class="code hl_variable" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a> = { HTTP::Methods::GET, HTTP::Methods::POST, HTTP::Methods::OPTIONS, HTTP::Methods::HEAD };</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>}</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span> </div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec">   14</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec">SOIL::Function::~Function</a>()</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>{</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>}</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span> </div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6">   18</a></span>std::shared_ptr&lt;SOIL::Function&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6">SOIL::Function::create</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string ontology)</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>{</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <a class="code hl_class" href="class_s_o_i_l_1_1_function.html">Function</a>* function = <span class="keyword">new</span> <a class="code hl_class" href="class_s_o_i_l_1_1_function.html">Function</a>(parent, uuid, name, description, ontology);</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    <span class="keywordflow">return</span> function-&gt;<a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260">ptr</a>();</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>}</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">   24</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">SOIL::Function::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>{</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root = <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">Element::wjson</a>();</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    json_root[U(<span class="stringliteral">&quot;arguments&quot;</span>)] = HTTP::Json::array();</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    <span class="keywordtype">int</span> i = 0;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; a : arguments)</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    {</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>        json_root[U(<span class="stringliteral">&quot;arguments&quot;</span>)][i] = a.second-&gt;wjson();</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>        i++;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    }</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span> </div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    json_root[U(<span class="stringliteral">&quot;returns&quot;</span>)] = HTTP::Json::array();</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    i = 0;</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; r : returns)</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    {</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>        json_root[U(<span class="stringliteral">&quot;returns&quot;</span>)][i] = r.second-&gt;wjson();</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>        i++;</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>    }</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    json_root[U(<span class="stringliteral">&quot;errors&quot;</span>)] = HTTP::Json::array();</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>}</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span> </div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">   46</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">SOIL::Function::handle_get</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match)</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>{</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> response;</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    response.set_body(this-&gt;wjson());</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    response.set_status_code(HTTP::Status::OK);</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>}</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span> </div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">   54</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">SOIL::Function::handle_post</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match)</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>{</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>    <span class="keyword">auto</span> task = request.extract_json();</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    task.wait();</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span> </div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>    std::map&lt;std::string, HTTP::Json&gt; arguments;</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> body = task.get();</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>    </div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>    <span class="keyword">auto</span> json_arguments = body[U(<span class="stringliteral">&quot;arguments&quot;</span>)].as_array();</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span> </div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    <span class="keywordflow">for</span> (<span class="keyword">auto</span> i = json_arguments.begin(); i != json_arguments.end(); i++)</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>    {</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>        <span class="keyword">auto</span> json_argument = i-&gt;as_object();</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>        std::string uuid = SOIL::to_value&lt;std::string&gt;(json_argument[U(<span class="stringliteral">&quot;uuid&quot;</span>)]);</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> value = json_argument[U(<span class="stringliteral">&quot;value&quot;</span>)];</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span> </div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>        arguments[uuid] = value;</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>    }</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span> </div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>    std::map&lt;std::string, HTTP::Json&gt; returns = this-&gt;invoke(arguments);</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span> </div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>    std::vector&lt;web::json::value&gt; json_returns;</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span> </div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>    <span class="keywordflow">for</span> (<span class="keyword">auto</span> i = returns.begin(); i != returns.end(); i++)</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span>    {</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>        web::json::value local;</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>        local[U(<span class="stringliteral">&quot;uuid&quot;</span>)] = SOIL::to_json&lt;std::string&gt;(i-&gt;first);</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>        local[U(<span class="stringliteral">&quot;value&quot;</span>)] = i -&gt;second;</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>        json_returns.push_back(local);</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>    }</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span> </div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>;</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>    <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>[U(<span class="stringliteral">&quot;returns&quot;</span>)] =HTTP::Json::array(json_returns);</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span> </div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> response;</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>    response.set_body(<a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span>    response.set_status_code(HTTP::Status::OK);</div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span> </div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>}</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span> </div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b">   95</a></span>std::map&lt;std::string, HTTP::Json&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b">SOIL::Function::invoke</a>(std::map&lt;std::string, HTTP::Json&gt; arguments)</div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>{</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span>    <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;The method has not been implemented!&quot;</span>);</div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span>}</div>
+<div class="ttc" id="a_function_8h_html"><div class="ttname"><a href="_function_8h.html">Function.h</a></div></div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a4a78094cb756c0886c787f93462621c0"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">HTTP::Resource::allowed_methods</a></div><div class="ttdeci">std::vector&lt; web::http::method &gt; allowed_methods</div><div class="ttdoc">Allowed methods.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00042">Resource.h:42</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></div><div class="ttdoc">SOIL Base Element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00023">Element.h:24</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a8676609fe497118147e31b25958d5104"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">SOIL::Element::uuid</a></div><div class="ttdeci">std::string uuid</div><div class="ttdoc">Local UUID.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00053">Element.h:53</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a9dd8b98ea77291d638408b123e68536a"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element::wjson</a></div><div class="ttdeci">virtual HTTP::Json wjson(void)</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00130">Element.cpp:130</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></div><div class="ttdoc">Function Class.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8h_source.html#l00021">Function.h:23</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a3fb541cbb68722263ff8d7ab9628a260"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260">SOIL::Function::ptr</a></div><div class="ttdeci">DLL std::shared_ptr&lt; Function &gt; ptr(void)</div><div class="ttdoc">Get Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8h_source.html#l00223">Function.h:223</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a50cf5e875bee2f192e04271642175bf6"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6">SOIL::Function::create</a></div><div class="ttdeci">static std::shared_ptr&lt; Function &gt; create(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</div><div class="ttdoc">Create new Function.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00018">Function.cpp:18</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a5d0ba47fb669127afcbea1a3d192fe88"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">SOIL::Function::handle_post</a></div><div class="ttdeci">virtual DLL HTTP::Response handle_post(HTTP::Request request, std::smatch match=std::smatch())</div><div class="ttdoc">Handle HTTP POST request.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00054">Function.cpp:54</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a636a905c115a1686caef9815c5b1aac9"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">SOIL::Function::handle_get</a></div><div class="ttdeci">virtual DLL HTTP::Response handle_get(HTTP::Request request, std::smatch match=std::smatch())</div><div class="ttdoc">Handle HTTP GET request.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00046">Function.cpp:46</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a8082d73f3dcb5567775dc2db5c291aec"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec">SOIL::Function::~Function</a></div><div class="ttdeci">DLL ~Function()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00014">Function.cpp:14</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_ac4d8391f2f588a467502f0bf9c8c7c7b"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b">SOIL::Function::invoke</a></div><div class="ttdeci">virtual DLL std::map&lt; std::string, HTTP::Json &gt; invoke(std::map&lt; std::string, HTTP::Json &gt; arguments)</div><div class="ttdoc">Core Invocation.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00095">Function.cpp:95</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_add2a16248e512d8efe813f2a27df73b1"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1">SOIL::Function::Function</a></div><div class="ttdeci">DLL Function(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00004">Function.cpp:4</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_add97197a51b3c44f9eb873a23329983e"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">SOIL::Function::wjson</a></div><div class="ttdeci">DLL HTTP::Json wjson(void)</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00024">Function.cpp:24</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_function_8cpp.html">Function.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_function_8h.html b/doc/html/_function_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..176c415f3a0dedbaa2892074182b7c5b50a57de6
--- /dev/null
+++ b/doc/html/_function_8h.html
@@ -0,0 +1,122 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Function.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_function_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Function.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_element_8h_source.html">Element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_container_8h_source.html">Container.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_range_8h_source.html">Range.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_parameter_8h_source.html">Parameter.h</a>&quot;</code><br />
+</div>
+<p><a href="_function_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> Class.  <a href="class_s_o_i_l_1_1_function.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_function_8h.html">Function.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_function_8h_source.html b/doc/html/_function_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..bfd479d8faf7544bb65a037cba187f4b65791805
--- /dev/null
+++ b/doc/html/_function_8h_source.html
@@ -0,0 +1,223 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Function.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_function_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Function.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_function_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_element_8h.html">Element.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="_container_8h.html">Container.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;<a class="code" href="_range_8h.html">Range.h</a>&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &quot;<a class="code" href="_parameter_8h.html">Parameter.h</a>&quot;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>{</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html">   21</a></span>    <span class="keyword">class </span><a class="code hl_class" href="class_s_o_i_l_1_1_function.html">Function</a> :</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>        <span class="keyword">public</span> <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a></div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    {</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>        std::map&lt;std::string, std::shared_ptr&lt;Element&gt;&gt; arguments;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>        std::map&lt;std::string, std::shared_ptr&lt;Element&gt;&gt; returns;</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>        DLL <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1">Function</a>(std::shared_ptr&lt;Element&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a> = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span> </div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>        DLL <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec">~Function</a>();</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span> </div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>        <span class="keyword">static</span> std::shared_ptr&lt;Function&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6">create</a>(std::shared_ptr&lt;Element&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a> = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span> </div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x = -1, <span class="keywordtype">int</span> y = -1&gt;</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>        <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">add_argument</a>(std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string unit, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt;T&gt;</a> range = <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt;T&gt;</a>(), std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a> = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span>        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x = -1, <span class="keywordtype">int</span> y =-1&gt;</div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span>        <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">add_argument</a>(std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string unit, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt;T&gt;</a> range, <span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; default_value, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a> = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span>        </div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno">  130</span>        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x = -1, <span class="keywordtype">int</span> y = -1&gt;</div>
+<div class="line"><a id="l00131" name="l00131"></a><span class="lineno">  131</span>        <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680">add_return</a>(std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string unit, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt;T&gt;</a> range = <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt;T&gt;</a>(), std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a> = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00132" name="l00132"></a><span class="lineno">  132</span> </div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno">  133</span>        </div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span>        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x = -1, <span class="keywordtype">int</span> y = -1&gt;</div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno">  148</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46">make_return</a>(std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T,x,y&gt;</a> value);</div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno">  149</span> </div>
+<div class="line"><a id="l00163" name="l00163"></a><span class="lineno">  163</span>        <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x = -1, <span class="keywordtype">int</span> y = -1&gt;</div>
+<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b">make_argument</a>(std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> external_json);</div>
+<div class="line"><a id="l00165" name="l00165"></a><span class="lineno">  165</span>        </div>
+<div class="line"><a id="l00172" name="l00172"></a><span class="lineno">  172</span>        DLL <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">wjson</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00173" name="l00173"></a><span class="lineno">  173</span> </div>
+<div class="line"><a id="l00183" name="l00183"></a><span class="lineno">  183</span>        DLL <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">handle_get</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00184" name="l00184"></a><span class="lineno">  184</span> </div>
+<div class="line"><a id="l00196" name="l00196"></a><span class="lineno">  196</span>        DLL <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">handle_post</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00197" name="l00197"></a><span class="lineno">  197</span> </div>
+<div class="line"><a id="l00215" name="l00215"></a><span class="lineno">  215</span>        DLL <span class="keyword">virtual</span> std::map&lt;std::string, HTTP::Json&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b">invoke</a>(std::map&lt;std::string, HTTP::Json&gt; arguments);</div>
+<div class="line"><a id="l00216" name="l00216"></a><span class="lineno">  216</span> </div>
+<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260">  223</a></span>        DLL <span class="keyword">inline</span> std::shared_ptr&lt;Function&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260">ptr</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00224" name="l00224"></a><span class="lineno">  224</span>        {</div>
+<div class="line"><a id="l00225" name="l00225"></a><span class="lineno">  225</span>            <span class="keywordflow">return</span> std::dynamic_pointer_cast&lt;Function&gt;(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">Element::self</a>);</div>
+<div class="line"><a id="l00226" name="l00226"></a><span class="lineno">  226</span>        }</div>
+<div class="line"><a id="l00227" name="l00227"></a><span class="lineno">  227</span>    };</div>
+<div class="line"><a id="l00228" name="l00228"></a><span class="lineno">  228</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">  229</a></span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">Function::add_argument</a>(std::string uuid, std::string name, std::string description, std::string unit, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt;T&gt;</a> range, std::string ontology)</div>
+<div class="line"><a id="l00230" name="l00230"></a><span class="lineno">  230</span>    {</div>
+<div class="line"><a id="l00231" name="l00231"></a><span class="lineno">  231</span>        arguments[<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>].reset(<span class="keyword">new</span> <a class="code hl_class" href="class_s_o_i_l_1_1_parameter.html">Parameter&lt;T, x, y&gt;</a>(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">Element::self</a>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, unit, <span class="keyword">false</span>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>, range));</div>
+<div class="line"><a id="l00232" name="l00232"></a><span class="lineno">  232</span>    }</div>
+<div class="line"><a id="l00233" name="l00233"></a><span class="lineno">  233</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#a6e6b923ef2cd3c534e831719ac6bbdb0">  234</a></span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">Function::add_argument</a>(std::string uuid, std::string name, std::string description, std::string unit,  <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt;T&gt;</a> range, <span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T,x,y&gt;</a>&amp; default_value, std::string ontology)</div>
+<div class="line"><a id="l00235" name="l00235"></a><span class="lineno">  235</span>    {</div>
+<div class="line"><a id="l00236" name="l00236"></a><span class="lineno">  236</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_parameter.html">Parameter&lt;T, x, y&gt;</a>* par = <span class="keyword">new</span> <a class="code hl_class" href="class_s_o_i_l_1_1_parameter.html">Parameter&lt;T, x, y&gt;</a>(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">Element::self</a>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, unit, <span class="keyword">false</span>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>, range);</div>
+<div class="line"><a id="l00237" name="l00237"></a><span class="lineno">  237</span>        arguments[<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>].reset(par);</div>
+<div class="line"><a id="l00238" name="l00238"></a><span class="lineno">  238</span>        *par = default_value;</div>
+<div class="line"><a id="l00239" name="l00239"></a><span class="lineno">  239</span>    }</div>
+<div class="line"><a id="l00240" name="l00240"></a><span class="lineno">  240</span> </div>
+<div class="line"><a id="l00241" name="l00241"></a><span class="lineno">  241</span> </div>
+<div class="line"><a id="l00242" name="l00242"></a><span class="lineno">  242</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x,<span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680">  243</a></span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680">Function::add_return</a>(std::string uuid, std::string name, std::string description, std::string unit, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt;T&gt;</a> range, std::string ontology)</div>
+<div class="line"><a id="l00244" name="l00244"></a><span class="lineno">  244</span>    {</div>
+<div class="line"><a id="l00245" name="l00245"></a><span class="lineno">  245</span>        returns[<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>].reset(<span class="keyword">new</span> <a class="code hl_class" href="class_s_o_i_l_1_1_parameter.html">Parameter&lt;T, x, y&gt;</a>(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">Element::self</a>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, unit, <span class="keyword">false</span>, <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>,  range));</div>
+<div class="line"><a id="l00246" name="l00246"></a><span class="lineno">  246</span>    }</div>
+<div class="line"><a id="l00247" name="l00247"></a><span class="lineno">  247</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46">  248</a></span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46">Function::make_return</a>(std::string uuid, <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a> value)</div>
+<div class="line"><a id="l00249" name="l00249"></a><span class="lineno">  249</span>    {</div>
+<div class="line"><a id="l00250" name="l00250"></a><span class="lineno">  250</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root = HTTP::Json::object();</div>
+<div class="line"><a id="l00251" name="l00251"></a><span class="lineno">  251</span>        json_root[U(<span class="stringliteral">&quot;uuid&quot;</span>)] = to_json&lt;std::string&gt;(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>);</div>
+<div class="line"><a id="l00252" name="l00252"></a><span class="lineno">  252</span>        json_root[U(<span class="stringliteral">&quot;value&quot;</span>)] = value.json()[U(<span class="stringliteral">&quot;value&quot;</span>)];</div>
+<div class="line"><a id="l00253" name="l00253"></a><span class="lineno">  253</span>        <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00254" name="l00254"></a><span class="lineno">  254</span>    }</div>
+<div class="line"><a id="l00255" name="l00255"></a><span class="lineno">  255</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b">  256</a></span>    <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a> <a class="code hl_function" href="class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b">Function::make_argument</a>(std::string uuid, <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> external_json)</div>
+<div class="line"><a id="l00257" name="l00257"></a><span class="lineno">  257</span>    {</div>
+<div class="line"><a id="l00258" name="l00258"></a><span class="lineno">  258</span>        <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; a : external_json.as_array())</div>
+<div class="line"><a id="l00259" name="l00259"></a><span class="lineno">  259</span>        {</div>
+<div class="line"><a id="l00260" name="l00260"></a><span class="lineno">  260</span>            <span class="keywordflow">if</span> (to_value&lt;std::string&gt;(a[U(<span class="stringliteral">&quot;uuid&quot;</span>)]) == <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>)</div>
+<div class="line"><a id="l00261" name="l00261"></a><span class="lineno">  261</span>            {</div>
+<div class="line"><a id="l00262" name="l00262"></a><span class="lineno">  262</span>                <span class="keywordflow">return</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>(a[U(<span class="stringliteral">&quot;value&quot;</span>)]);</div>
+<div class="line"><a id="l00263" name="l00263"></a><span class="lineno">  263</span>            }</div>
+<div class="line"><a id="l00264" name="l00264"></a><span class="lineno">  264</span>        }</div>
+<div class="line"><a id="l00265" name="l00265"></a><span class="lineno">  265</span>        <span class="keywordflow">return</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>();</div>
+<div class="line"><a id="l00266" name="l00266"></a><span class="lineno">  266</span>    }</div>
+<div class="line"><a id="l00267" name="l00267"></a><span class="lineno">  267</span>}</div>
+<div class="line"><a id="l00268" name="l00268"></a><span class="lineno">  268</span> </div>
+<div class="ttc" id="a_container_8h_html"><div class="ttname"><a href="_container_8h.html">Container.h</a></div></div>
+<div class="ttc" id="a_element_8h_html"><div class="ttname"><a href="_element_8h.html">Element.h</a></div></div>
+<div class="ttc" id="a_parameter_8h_html"><div class="ttname"><a href="_parameter_8h.html">Parameter.h</a></div></div>
+<div class="ttc" id="a_range_8h_html"><div class="ttname"><a href="_range_8h.html">Range.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></div><div class="ttdoc">SOIL Base Element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00023">Element.h:24</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a8676609fe497118147e31b25958d5104"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">SOIL::Element::uuid</a></div><div class="ttdeci">std::string uuid</div><div class="ttdoc">Local UUID.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00053">Element.h:53</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_aaef3cdce55ced857a81ba285afc92ed9"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">SOIL::Element::description</a></div><div class="ttdeci">std::string description</div><div class="ttdoc">Description.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00067">Element.h:67</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ad89fecb69de794e7b918767d5f21027d"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">SOIL::Element::ontology</a></div><div class="ttdeci">std::string ontology</div><div class="ttdoc">Ontology identifier.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00076">Element.h:76</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ae80d2c6c5f2577aa5a8489f2c0c352e8"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">SOIL::Element::name</a></div><div class="ttdeci">std::string name</div><div class="ttdoc">Name.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00060">Element.h:60</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_af1992c267233cec3b17bc70038d1d84b"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">SOIL::Element::parent</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; parent</div><div class="ttdoc">Parent Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00039">Element.h:39</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_afcdcd6ceb94c7d14b0fce99461bb5e30"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">SOIL::Element::self</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; self</div><div class="ttdoc">Self Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00046">Element.h:46</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></div><div class="ttdoc">Function Class.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8h_source.html#l00021">Function.h:23</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a3fb541cbb68722263ff8d7ab9628a260"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260">SOIL::Function::ptr</a></div><div class="ttdeci">DLL std::shared_ptr&lt; Function &gt; ptr(void)</div><div class="ttdoc">Get Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8h_source.html#l00223">Function.h:223</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a4cdaaf26db414f721aa0c79aaa38cd46"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46">SOIL::Function::make_return</a></div><div class="ttdeci">HTTP::Json make_return(std::string uuid, Container&lt; T, x, y &gt; value)</div><div class="ttdoc">Make JSON Return.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8h_source.html#l00248">Function.h:248</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a50cf5e875bee2f192e04271642175bf6"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6">SOIL::Function::create</a></div><div class="ttdeci">static std::shared_ptr&lt; Function &gt; create(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</div><div class="ttdoc">Create new Function.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00018">Function.cpp:18</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a542306cc71842ef1fe4b13597a5b7d1b"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b">SOIL::Function::make_argument</a></div><div class="ttdeci">Container&lt; T, x, y &gt; make_argument(std::string uuid, HTTP::Json external_json)</div><div class="ttdoc">Make Argument from JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8h_source.html#l00256">Function.h:256</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a5d0ba47fb669127afcbea1a3d192fe88"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">SOIL::Function::handle_post</a></div><div class="ttdeci">virtual DLL HTTP::Response handle_post(HTTP::Request request, std::smatch match=std::smatch())</div><div class="ttdoc">Handle HTTP POST request.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00054">Function.cpp:54</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a636a905c115a1686caef9815c5b1aac9"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">SOIL::Function::handle_get</a></div><div class="ttdeci">virtual DLL HTTP::Response handle_get(HTTP::Request request, std::smatch match=std::smatch())</div><div class="ttdoc">Handle HTTP GET request.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00046">Function.cpp:46</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a7705b93afa26a8a3d3012d88a9fea04d"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">SOIL::Function::add_argument</a></div><div class="ttdeci">void add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range&lt; T &gt; range=SOIL::Range&lt; T &gt;(), std::string ontology=&quot;&quot;)</div><div class="ttdoc">Add argument.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8h_source.html#l00229">Function.h:229</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_a8082d73f3dcb5567775dc2db5c291aec"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec">SOIL::Function::~Function</a></div><div class="ttdeci">DLL ~Function()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00014">Function.cpp:14</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_ac3753d06d5d191ed95e63df56f51f680"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680">SOIL::Function::add_return</a></div><div class="ttdeci">void add_return(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range&lt; T &gt; range=SOIL::Range&lt; T &gt;(), std::string ontology=&quot;&quot;)</div><div class="ttdoc">Add return value.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8h_source.html#l00243">Function.h:243</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_ac4d8391f2f588a467502f0bf9c8c7c7b"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b">SOIL::Function::invoke</a></div><div class="ttdeci">virtual DLL std::map&lt; std::string, HTTP::Json &gt; invoke(std::map&lt; std::string, HTTP::Json &gt; arguments)</div><div class="ttdoc">Core Invocation.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00095">Function.cpp:95</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_add2a16248e512d8efe813f2a27df73b1"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1">SOIL::Function::Function</a></div><div class="ttdeci">DLL Function(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00004">Function.cpp:4</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_function_html_add97197a51b3c44f9eb873a23329983e"><div class="ttname"><a href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">SOIL::Function::wjson</a></div><div class="ttdeci">DLL HTTP::Json wjson(void)</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_function_8cpp_source.html#l00024">Function.cpp:24</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a></div><div class="ttdoc">Parameter Class.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00034">Parameter.h:35</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html">SOIL::Range</a></div><div class="ttdoc">Range Helper Class.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8h_source.html#l00024">Range.h:25</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_function_8h.html">Function.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_hasher_8cpp.html b/doc/html/_hasher_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..18468665ef9440610ca271f1bc3d3ec5580beb11
--- /dev/null
+++ b/doc/html/_hasher_8cpp.html
@@ -0,0 +1,105 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN/Hasher.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_hasher_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Hasher.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_hasher_8h_source.html">Hasher.h</a>&quot;</code><br />
+<code>#include &lt;openssl/sha.h&gt;</code><br />
+<code>#include &lt;sstream&gt;</code><br />
+<code>#include &lt;iomanip&gt;</code><br />
+</div>
+<p><a href="_hasher_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li><li class="navelem"><a class="el" href="_hasher_8cpp.html">Hasher.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_hasher_8cpp_source.html b/doc/html/_hasher_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..c938e864875d7f16e459f0db713948ffa4141bfc
--- /dev/null
+++ b/doc/html/_hasher_8cpp_source.html
@@ -0,0 +1,165 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN/Hasher.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_hasher_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Hasher.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_hasher_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_hasher_8h.html">Hasher.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &lt;openssl/sha.h&gt;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;sstream&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;iomanip&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044">    8</a></span>std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044">SIGN::Hasher::sha256</a>(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* data, <span class="keywordtype">size_t</span> length)</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>{</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    SHA256_CTX context;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    SHA256_Init(&amp;context);</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    SHA256_Update(&amp;context, data, length);</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    std::vector&lt;unsigned char&gt; buffer(SHA256_DIGEST_LENGTH);</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    SHA256_Final(buffer.data(), &amp;context);</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keywordflow">return</span> buffer;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span> </div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>}</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b">   19</a></span><a class="code hl_function" href="class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b">SIGN::Hasher::Hasher</a>()</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>{</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>}</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span> </div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3">   24</a></span><a class="code hl_function" href="class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3">SIGN::Hasher::~Hasher</a>()</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>{</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>}</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span> </div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960">   28</a></span>std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960">SIGN::Hasher::hash</a>()</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>{</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    <span class="keywordflow">return</span> sha256(data.data(), data.size());</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>}</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span> </div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3">   33</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3">SIGN::Hasher::reset</a>()</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>{</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    data.clear();</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>}</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span> </div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d">   38</a></span><span class="keywordtype">size_t</span> <a class="code hl_function" href="class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d">SIGN::Hasher::size</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>{</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    <span class="keywordflow">return</span> SHA256_DIGEST_LENGTH; ;</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>}</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span> </div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_hasher.html#a5bd6f0f8915dab9870ca8eb8a4d39a10">   43</a></span>std::string <a class="code hl_function" href="class_s_i_g_n_1_1_hasher.html#a5bd6f0f8915dab9870ca8eb8a4d39a10">SIGN::Hasher::print</a>(std::vector&lt;unsigned char&gt; bytes, <span class="keywordtype">bool</span> uppercase)</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>{</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    std::ostringstream result;</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span> </div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    <span class="keywordflow">for</span> (std::string::size_type i = 0; i &lt; bytes.size();i++)</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    {</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>        result &lt;&lt; std::hex &lt;&lt; std::setfill(<span class="charliteral">&#39;0&#39;</span>) &lt;&lt; std::setw(2) &lt;&lt; (uppercase ? std::uppercase : std::nouppercase) &lt;&lt; (<span class="keywordtype">int</span>)bytes[i];</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>        <span class="keywordflow">if</span> (i != bytes.size() - 1)</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>        {</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>            result &lt;&lt; std::setw(1) &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>        }</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    }</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>        </div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span> </div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    <span class="keywordflow">return</span> result.str();</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>}</div>
+<div class="ttc" id="a_hasher_8h_html"><div class="ttname"><a href="_hasher_8h.html">Hasher.h</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_hasher_html_a00cfd65d186d606a4fc1572812315960"><div class="ttname"><a href="class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960">SIGN::Hasher::hash</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; hash()</div><div class="ttdoc">Hash the data buffer.</div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8cpp_source.html#l00028">Hasher.cpp:28</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_hasher_html_a1478050616af6fac27055b9a5190a044"><div class="ttname"><a href="class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044">SIGN::Hasher::sha256</a></div><div class="ttdeci">static std::vector&lt; unsigned char &gt; sha256(const unsigned char *data, size_t length)</div><div class="ttdoc">SHA256 hash.</div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8cpp_source.html#l00008">Hasher.cpp:8</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_hasher_html_a4f80bf765513cdff089a634599cc534d"><div class="ttname"><a href="class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d">SIGN::Hasher::size</a></div><div class="ttdeci">size_t size(void)</div><div class="ttdoc">Digest size.</div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8cpp_source.html#l00038">Hasher.cpp:38</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_hasher_html_a582f222aea5015de7faceba2bab99bc3"><div class="ttname"><a href="class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3">SIGN::Hasher::~Hasher</a></div><div class="ttdeci">~Hasher()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8cpp_source.html#l00024">Hasher.cpp:24</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_hasher_html_a5bd6f0f8915dab9870ca8eb8a4d39a10"><div class="ttname"><a href="class_s_i_g_n_1_1_hasher.html#a5bd6f0f8915dab9870ca8eb8a4d39a10">SIGN::Hasher::print</a></div><div class="ttdeci">static std::string print(std::vector&lt; unsigned char &gt; bytes, bool uppercase=true)</div><div class="ttdoc">Print Bytestring.</div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8cpp_source.html#l00043">Hasher.cpp:43</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_hasher_html_a8c2a89d646c15f8da4c091ae843ae06b"><div class="ttname"><a href="class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b">SIGN::Hasher::Hasher</a></div><div class="ttdeci">Hasher()</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8cpp_source.html#l00019">Hasher.cpp:19</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_hasher_html_ac1a37929a88ca5eab2bba5d39105bdf3"><div class="ttname"><a href="class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3">SIGN::Hasher::reset</a></div><div class="ttdeci">void reset()</div><div class="ttdoc">Reset data buffer.</div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8cpp_source.html#l00033">Hasher.cpp:33</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li><li class="navelem"><a class="el" href="_hasher_8cpp.html">Hasher.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_hasher_8h.html b/doc/html/_hasher_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..4cd14e4b601128a6ace044ac8f67dae7dae30d07
--- /dev/null
+++ b/doc/html/_hasher_8h.html
@@ -0,0 +1,119 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN/Hasher.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_hasher_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Hasher.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_i_g_n_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &lt;vector&gt;</code><br />
+<code>#include &lt;string&gt;</code><br />
+</div>
+<p><a href="_hasher_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SHA256 <a class="el" href="class_s_i_g_n_1_1_hasher.html" title="SHA256 Hasher.">Hasher</a>.  <a href="class_s_i_g_n_1_1_hasher.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_i_g_n"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_i_g_n.html">SIGN</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li><li class="navelem"><a class="el" href="_hasher_8h.html">Hasher.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_hasher_8h_source.html b/doc/html/_hasher_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..54466a03f1efc375138f28263ef0e6743bdcb0bb
--- /dev/null
+++ b/doc/html/_hasher_8h_source.html
@@ -0,0 +1,142 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN/Hasher.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_hasher_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Hasher.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_hasher_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"><a class="line" href="namespace_s_i_g_n.html">    6</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_i_g_n.html">SIGN</a></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>{</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_hasher.html">   14</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_s_i_g_n_1_1_hasher.html">Hasher</a></div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    {</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>        std::vector&lt;unsigned char&gt; data;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>        <a class="code hl_class" href="class_s_i_g_n_1_1_hasher.html">Hasher</a>();</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span> </div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>        <a class="code hl_class" href="class_s_i_g_n_1_1_hasher.html">~Hasher</a>();</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span> </div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>        <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt; <span class="keywordtype">void</span> push_back(T x);</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>        </div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>        std::vector&lt;unsigned char&gt; hash();</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span> </div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>        <span class="keywordtype">void</span> reset();</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span> </div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span>        <span class="keywordtype">size_t</span> size(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span> </div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>        <span class="keyword">static</span> std::string print(std::vector&lt;unsigned char&gt; bytes, <span class="keywordtype">bool</span> uppercase = <span class="keyword">true</span>);</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span> </div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>        <span class="keyword">static</span> std::vector&lt;unsigned char&gt; sha256(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* data, <span class="keywordtype">size_t</span> length);</div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>    };</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span> </div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f">   99</a></span>    <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f">Hasher::push_back</a>(T x)</div>
+<div class="line"><a id="l00100" name="l00100"></a><span class="lineno">  100</span>    {</div>
+<div class="line"><a id="l00101" name="l00101"></a><span class="lineno">  101</span>        <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* pointer = <span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(&amp;x);</div>
+<div class="line"><a id="l00102" name="l00102"></a><span class="lineno">  102</span>        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <span class="keyword">sizeof</span>(T); i++)</div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno">  103</span>        {</div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span>            data.push_back(pointer[i]);</div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>        }</div>
+<div class="line"><a id="l00106" name="l00106"></a><span class="lineno">  106</span>    }</div>
+<div class="line"><a id="l00107" name="l00107"></a><span class="lineno">  107</span>}</div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_hasher_html"><div class="ttname"><a href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a></div><div class="ttdoc">SHA256 Hasher.</div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8h_source.html#l00014">Hasher.h:15</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_hasher_html_a5deae136de825a30bf627ec80a967a3f"><div class="ttname"><a href="class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f">SIGN::Hasher::push_back</a></div><div class="ttdeci">void push_back(T x)</div><div class="ttdoc">Add data.</div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8h_source.html#l00099">Hasher.h:99</a></div></div>
+<div class="ttc" id="anamespace_s_i_g_n_html"><div class="ttname"><a href="namespace_s_i_g_n.html">SIGN</a></div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8h_source.html#l00006">Hasher.h:7</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li><li class="navelem"><a class="el" href="_hasher_8h.html">Hasher.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_local_exception_8cpp.html b/doc/html/_local_exception_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..9557b81948ea29290ba8dfc12bf8473aafe5b861
--- /dev/null
+++ b/doc/html/_local_exception_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/LocalException.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_local_exception_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">LocalException.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_local_exception_8h_source.html">LocalException.h</a>&quot;</code><br />
+</div>
+<p><a href="_local_exception_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_local_exception_8cpp.html">LocalException.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_local_exception_8cpp_source.html b/doc/html/_local_exception_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..65da456bed341183072f044dee537ad7bc3ab1a6
--- /dev/null
+++ b/doc/html/_local_exception_8cpp_source.html
@@ -0,0 +1,120 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/LocalException.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_local_exception_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">LocalException.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_local_exception_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_local_exception_8h.html">LocalException.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f">    5</a></span><a class="code hl_function" href="class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f">MQTT::Exception::Exception</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* message, <span class="keywordtype">int</span> code): std::runtime_error(message), _code(code)</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>{</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>}</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span> </div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_exception.html#acc088fa326f26d0ea21aa7bf250eeeae">    9</a></span><a class="code hl_function" href="class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f">MQTT::Exception::Exception</a>(<span class="keyword">const</span> std::exception &amp; exc) : std::runtime_error(exc.what())</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>{</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    _code = 0;</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>}</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span> </div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202">   14</a></span><a class="code hl_function" href="class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202">MQTT::Exception::~Exception</a>()</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>{</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>}</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span> </div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="ttc" id="a_local_exception_8h_html"><div class="ttname"><a href="_local_exception_8h.html">LocalException.h</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_exception_html_aa2e20db284b3c4825824d421dfc3694f"><div class="ttname"><a href="class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f">MQTT::Exception::Exception</a></div><div class="ttdeci">Exception(const char *message=&quot;&quot;, int code=0)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_local_exception_8cpp_source.html#l00005">LocalException.cpp:5</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_exception_html_ae4bb6d8901509f35649da27f9e681202"><div class="ttname"><a href="class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202">MQTT::Exception::~Exception</a></div><div class="ttdeci">~Exception(void)</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_local_exception_8cpp_source.html#l00014">LocalException.cpp:14</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_local_exception_8cpp.html">LocalException.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_local_exception_8h.html b/doc/html/_local_exception_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..b65f48af1e7090305a92018206b09f70ff5c90a9
--- /dev/null
+++ b/doc/html/_local_exception_8h.html
@@ -0,0 +1,118 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/LocalException.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_local_exception_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">LocalException.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_m_q_t_t_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &lt;stdexcept&gt;</code><br />
+</div>
+<p><a href="_local_exception_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a> <a class="el" href="class_m_q_t_t_1_1_exception.html" title="MQTT Publisher Exception.">Exception</a>.  <a href="class_m_q_t_t_1_1_exception.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_m_q_t_t"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_m_q_t_t.html">MQTT</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_local_exception_8h.html">LocalException.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_local_exception_8h_source.html b/doc/html/_local_exception_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..e85339a3a40fe26c30eeb23d44987bfb1750c590
--- /dev/null
+++ b/doc/html/_local_exception_8h_source.html
@@ -0,0 +1,129 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/LocalException.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_local_exception_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">LocalException.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_local_exception_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;stdexcept&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_m_q_t_t.html">MQTT</a></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>{</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_exception.html">   13</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_m_q_t_t_1_1_exception.html">Exception</a> : <span class="keyword">public</span> std::runtime_error</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    {</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span> </div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>        <span class="keywordtype">int</span> _code;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span> </div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>        <a class="code hl_class" href="class_m_q_t_t_1_1_exception.html">Exception</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* message = <span class="stringliteral">&quot;&quot;</span>, <span class="keywordtype">int</span> code = 0);</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>        <a class="code hl_class" href="class_m_q_t_t_1_1_exception.html">Exception</a>(<span class="keyword">const</span> std::exception&amp; exc);</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span> </div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>        <a class="code hl_class" href="class_m_q_t_t_1_1_exception.html">~Exception</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span> </div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1">   55</a></span>        <span class="keyword">inline</span> <span class="keyword">const</span> <span class="keywordtype">int</span> <a class="code hl_function" href="class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1">code</a>(<span class="keywordtype">void</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> _code; }</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>    };</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>}</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span> </div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span> </div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span> </div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_exception_html"><div class="ttname"><a href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a></div><div class="ttdoc">MQTT Publisher Exception.</div><div class="ttdef"><b>Definition:</b> <a href="_local_exception_8h_source.html#l00013">LocalException.h:14</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_exception_html_aa34f052cb61f915550c92b17621b58b1"><div class="ttname"><a href="class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1">MQTT::Exception::code</a></div><div class="ttdeci">const int code(void) const</div><div class="ttdoc">Result Code.</div><div class="ttdef"><b>Definition:</b> <a href="_local_exception_8h_source.html#l00055">LocalException.h:55</a></div></div>
+<div class="ttc" id="anamespace_m_q_t_t_html"><div class="ttname"><a href="namespace_m_q_t_t.html">MQTT</a></div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00005">Configuration.h:6</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_local_exception_8h.html">LocalException.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_m_q_t_t_2_configuration_8cpp.html b/doc/html/_m_q_t_t_2_configuration_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..d4d857490c84105920bd2d218a8e8ac1cba9c6a3
--- /dev/null
+++ b/doc/html/_m_q_t_t_2_configuration_8cpp.html
@@ -0,0 +1,129 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/Configuration.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_m_q_t_t_2_configuration_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#typedef-members">Typedefs</a>  </div>
+  <div class="headertitle"><div class="title">Configuration.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>&quot;</code><br />
+<code>#include &lt;nlohmann/json.hpp&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+</div>
+<p><a href="_m_q_t_t_2_configuration_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ab701e3ac61a85b337ec5c1abaad6742d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a> = nlohmann::json</td></tr>
+<tr class="separator:ab701e3ac61a85b337ec5c1abaad6742d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="ab701e3ac61a85b337ec5c1abaad6742d" name="ab701e3ac61a85b337ec5c1abaad6742d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab701e3ac61a85b337ec5c1abaad6742d">&#9670;&nbsp;</a></span>json</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a> =  nlohmann::json</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">6</a> of file <a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html">Configuration.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_m_q_t_t_2_configuration_8cpp.html">Configuration.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_m_q_t_t_2_configuration_8cpp.js b/doc/html/_m_q_t_t_2_configuration_8cpp.js
new file mode 100644
index 0000000000000000000000000000000000000000..d8900f9556f627795dc804c1e0fa2bff9d1fb032
--- /dev/null
+++ b/doc/html/_m_q_t_t_2_configuration_8cpp.js
@@ -0,0 +1,4 @@
+var _m_q_t_t_2_configuration_8cpp =
+[
+    [ "json", "_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_m_q_t_t_2_configuration_8cpp_source.html b/doc/html/_m_q_t_t_2_configuration_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..b672825d812a9c53c0f1ead49868dfb88507ba65
--- /dev/null
+++ b/doc/html/_m_q_t_t_2_configuration_8cpp_source.html
@@ -0,0 +1,208 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/Configuration.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_m_q_t_t_2_configuration_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Configuration.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_m_q_t_t_2_configuration_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2_configuration_8h.html">Configuration.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &lt;nlohmann/json.hpp&gt;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"><a class="line" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">    6</a></span><span class="keyword">using</span> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a> = <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">nlohmann::json</a>;</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3">    8</a></span><a class="code hl_function" href="class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3">MQTT::Configuration::Configuration</a>()</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>{</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    std::string <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5">host</a> = <span class="stringliteral">&quot;127.0.0.1&quot;</span>;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1">port</a> = 1883;</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">username</a> = <span class="stringliteral">&quot;guest&quot;</span>;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">password</a> = <span class="stringliteral">&quot;guest&quot;</span>;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">clean_session</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">root</a> = <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">keep_alive</a> = 30;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">min_delay_ms</a> = 0;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keywordtype">int</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">connection_timeout_s</a> = 30;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <span class="keywordtype">bool</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">ssl</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <span class="keywordtype">bool</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">verify</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    <span class="keywordtype">bool</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097">websocket</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    std::string <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b">path</a> = <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    std::string <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">certificate_authority</a> = <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">connection_timeout_s</a> = 30;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>}</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#a76525cfc37fb8ddc692db93fd6fb5e6f">   27</a></span><a class="code hl_function" href="class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3">MQTT::Configuration::Configuration</a>(std::string filename)</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>{</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    std::ifstream infile(filename);</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a> j;</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    infile &gt;&gt; j;</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    host = j.value(<span class="stringliteral">&quot;host&quot;</span>, <span class="stringliteral">&quot;127.0.0.1&quot;</span>);</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    port = j.value(<span class="stringliteral">&quot;port&quot;</span>, 1883);</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    username = j.value(<span class="stringliteral">&quot;username&quot;</span>, <span class="stringliteral">&quot;guest&quot;</span>);</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    password = j.value(<span class="stringliteral">&quot;password&quot;</span>, <span class="stringliteral">&quot;guest&quot;</span>);</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    clean_session = j.value(<span class="stringliteral">&quot;clean&quot;</span>, <span class="keyword">true</span>);</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    root = j.value(<span class="stringliteral">&quot;root&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    keep_alive = j.value(<span class="stringliteral">&quot;keep_alive&quot;</span>, 30);</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    min_delay_ms = j.value(<span class="stringliteral">&quot;min_delay&quot;</span>, 0);</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    connection_timeout_s = j.value(<span class="stringliteral">&quot;connection_timeout&quot;</span>, 30);</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>    ssl = j.value(<span class="stringliteral">&quot;ssl&quot;</span>, <span class="keyword">false</span>);</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    verify = j.value(<span class="stringliteral">&quot;verify&quot;</span>, <span class="keyword">true</span>);</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    websocket = j.value(<span class="stringliteral">&quot;websocket&quot;</span>, <span class="keyword">false</span>);</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    path = j.value(<span class="stringliteral">&quot;path&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    certificate_authority = j.value(<span class="stringliteral">&quot;certificate_authority&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span> </div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>}</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span> </div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458">   49</a></span><a class="code hl_function" href="class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458">MQTT::Configuration::~Configuration</a>()</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>{</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>}</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span> </div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">   53</a></span>std::string <a class="code hl_function" href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">MQTT::Configuration::uri</a>()</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>{</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>    std::string prefix;</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>    <span class="keywordflow">if</span> (websocket)</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    {</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>        <span class="keywordflow">if</span> (ssl)</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>        {</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>            prefix = <span class="stringliteral">&quot;wss&quot;</span>;</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>        }</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>        {</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>            prefix = <span class="stringliteral">&quot;ws&quot;</span>;</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>        }</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>        <span class="keywordflow">if</span> (path.size() &gt; 0)</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>        {</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>            <span class="keywordflow">if</span> (path.at(0) != <span class="charliteral">&#39;/&#39;</span>)</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>            {</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>                path = <span class="stringliteral">&quot;/&quot;</span> + path;</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>            }</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span>        }</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>    }</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>    {</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>        <span class="keywordflow">if</span> (ssl)</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>        {</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span>            prefix = <span class="stringliteral">&quot;ssl&quot;</span>;</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>        }</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>        {</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>            prefix = <span class="stringliteral">&quot;tcp&quot;</span>;</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>        }</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>        path = <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span>    }</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>    </div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>    <span class="keywordflow">return</span> prefix + <span class="stringliteral">&quot;://&quot;</span> + host + <span class="stringliteral">&quot;:&quot;</span> + std::to_string(port) + path;</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span> </div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>}</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span> </div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="a_u_d_p_2_configuration_8h_html"><div class="ttname"><a href="_u_d_p_2_configuration_8h.html">Configuration.h</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a00eedbeafcfe5ce10df76e8ac20ac6f3"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3">MQTT::Configuration::Configuration</a></div><div class="ttdeci">Configuration()</div><div class="ttdoc">Default constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00008">Configuration.cpp:8</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a365e6700bb8b4d43539de661490b7574"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">MQTT::Configuration::root</a></div><div class="ttdeci">std::string root</div><div class="ttdoc">MQTT root topic.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00064">Configuration.h:64</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a4298d9cf83be4dcae422d98471ab1df5"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5">MQTT::Configuration::host</a></div><div class="ttdeci">std::string host</div><div class="ttdoc">Hostname of the MQTT broker.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00022">Configuration.h:22</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a45ece5471e689eda8ee1c1e15acfc03b"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">MQTT::Configuration::min_delay_ms</a></div><div class="ttdeci">int min_delay_ms</div><div class="ttdoc">Minimum delay between to messages in milliseconds.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00081">Configuration.h:81</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a62add1ea6d5351e35a6c829ecdb41e06"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">MQTT::Configuration::keep_alive</a></div><div class="ttdeci">int keep_alive</div><div class="ttdoc">Keep alive interval in seconds.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00072">Configuration.h:72</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a73f639dad1b94cc09de808519a7855fe"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">MQTT::Configuration::ssl</a></div><div class="ttdeci">bool ssl</div><div class="ttdoc">Use secured connection.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00099">Configuration.h:99</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a8e47ba510961e85709038796c458b0be"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">MQTT::Configuration::clean_session</a></div><div class="ttdeci">bool clean_session</div><div class="ttdoc">Clean session flag.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00055">Configuration.h:55</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a92b3b5ff34fcfc3f72a28559275f78d1"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1">MQTT::Configuration::port</a></div><div class="ttdeci">int port</div><div class="ttdoc">Port of the MQTT broker.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00030">Configuration.h:30</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a9c5a0645489d20461749953881ba7ab7"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">MQTT::Configuration::password</a></div><div class="ttdeci">std::string password</div><div class="ttdoc">Password for connecting to the MQTT broker.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00047">Configuration.h:47</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_aa943275c72ea7cc94bd9de56c0dfaa9d"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">MQTT::Configuration::certificate_authority</a></div><div class="ttdeci">std::string certificate_authority</div><div class="ttdoc">Path to CA PEM-file.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00133">Configuration.h:133</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ab5887b09a89a934dcda3493f17dccd78"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">MQTT::Configuration::verify</a></div><div class="ttdeci">bool verify</div><div class="ttdoc">Skip SSL verification.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00107">Configuration.h:107</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ac23db9e2e0f174a59f294a4a5139a097"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097">MQTT::Configuration::websocket</a></div><div class="ttdeci">bool websocket</div><div class="ttdoc">Use websocket protocol.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00116">Configuration.h:116</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ac4b05210a99b650da641d3966266ec04"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">MQTT::Configuration::uri</a></div><div class="ttdeci">std::string uri()</div><div class="ttdoc">URI Builder.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00053">Configuration.cpp:53</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ad33e07f1c8389126541445253cbfff52"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">MQTT::Configuration::connection_timeout_s</a></div><div class="ttdeci">int connection_timeout_s</div><div class="ttdoc">Connection timeout in seconds.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00090">Configuration.h:90</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ae61824192da779011f60eded6903db9b"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b">MQTT::Configuration::path</a></div><div class="ttdeci">std::string path</div><div class="ttdoc">Websocket path.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00124">Configuration.h:124</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ae75c1ab7297f4cf3f25e31ec056df338"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">MQTT::Configuration::username</a></div><div class="ttdeci">std::string username</div><div class="ttdoc">Username for connecting to the MQTT broker.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00039">Configuration.h:39</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_af3d0a9c0e14065afc259ad219a4e4458"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458">MQTT::Configuration::~Configuration</a></div><div class="ttdeci">~Configuration()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00049">Configuration.cpp:49</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_m_q_t_t_2_configuration_8cpp.html">Configuration.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_m_q_t_t_2_configuration_8h.html b/doc/html/_m_q_t_t_2_configuration_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..14f96782f5499d80b331ca778b4e737e88cfcb98
--- /dev/null
+++ b/doc/html/_m_q_t_t_2_configuration_8h.html
@@ -0,0 +1,118 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/Configuration.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_m_q_t_t_2_configuration_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Configuration.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;string&gt;</code><br />
+<code>#include &quot;<a class="el" href="_m_q_t_t_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+</div>
+<p><a href="_m_q_t_t_2_configuration_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> publishing configuration.  <a href="class_m_q_t_t_1_1_configuration.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_m_q_t_t"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_m_q_t_t.html">MQTT</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_m_q_t_t_2_configuration_8h.html">Configuration.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_m_q_t_t_2_configuration_8h_source.html b/doc/html/_m_q_t_t_2_configuration_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..59347a51209edee479a988cbc5441c6960c3e1f8
--- /dev/null
+++ b/doc/html/_m_q_t_t_2_configuration_8h_source.html
@@ -0,0 +1,162 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/Configuration.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_m_q_t_t_2_configuration_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Configuration.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_m_q_t_t_2_configuration_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="namespace_m_q_t_t.html">    5</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_m_q_t_t.html">MQTT</a></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>{</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html">   13</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_m_q_t_t_1_1_configuration.html">Configuration</a></div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    {</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5">   22</a></span>        std::string <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5">host</a>;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1">   30</a></span>        <span class="keywordtype">int</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1">port</a>;</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span> </div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">   39</a></span>        std::string <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">username</a>;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span> </div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">   47</a></span>        std::string <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">password</a>;</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span> </div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">   55</a></span>        <span class="keywordtype">bool</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">clean_session</a>;</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span> </div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">   64</a></span>        std::string <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">root</a>;</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span> </div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">   72</a></span>        <span class="keywordtype">int</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">keep_alive</a>;</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span> </div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">   81</a></span>        <span class="keywordtype">int</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">min_delay_ms</a>;</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>        </div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">   90</a></span>        <span class="keywordtype">int</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">connection_timeout_s</a>;</div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span> </div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">   99</a></span>        <span class="keywordtype">bool</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">ssl</a>;</div>
+<div class="line"><a id="l00100" name="l00100"></a><span class="lineno">  100</span> </div>
+<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">  107</a></span>        <span class="keywordtype">bool</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">verify</a>;</div>
+<div class="line"><a id="l00108" name="l00108"></a><span class="lineno">  108</span> </div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097">  116</a></span>        <span class="keywordtype">bool</span> <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097">websocket</a>;</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span> </div>
+<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b">  124</a></span>        std::string <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b">path</a>;</div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno">  125</span> </div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">  133</a></span>        std::string <a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">certificate_authority</a>;</div>
+<div class="line"><a id="l00134" name="l00134"></a><span class="lineno">  134</span>        </div>
+<div class="line"><a id="l00140" name="l00140"></a><span class="lineno">  140</span>        <a class="code hl_class" href="class_m_q_t_t_1_1_configuration.html">Configuration</a>();</div>
+<div class="line"><a id="l00141" name="l00141"></a><span class="lineno">  141</span> </div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno">  149</span>        <a class="code hl_class" href="class_m_q_t_t_1_1_configuration.html">Configuration</a>(std::string filename);</div>
+<div class="line"><a id="l00150" name="l00150"></a><span class="lineno">  150</span> </div>
+<div class="line"><a id="l00156" name="l00156"></a><span class="lineno">  156</span>        <a class="code hl_class" href="class_m_q_t_t_1_1_configuration.html">~Configuration</a>();</div>
+<div class="line"><a id="l00157" name="l00157"></a><span class="lineno">  157</span> </div>
+<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span>        std::string uri();</div>
+<div class="line"><a id="l00165" name="l00165"></a><span class="lineno">  165</span>    };</div>
+<div class="line"><a id="l00166" name="l00166"></a><span class="lineno">  166</span>}</div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></div><div class="ttdoc">MQTT publishing configuration.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00013">Configuration.h:14</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a365e6700bb8b4d43539de661490b7574"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">MQTT::Configuration::root</a></div><div class="ttdeci">std::string root</div><div class="ttdoc">MQTT root topic.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00064">Configuration.h:64</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a4298d9cf83be4dcae422d98471ab1df5"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5">MQTT::Configuration::host</a></div><div class="ttdeci">std::string host</div><div class="ttdoc">Hostname of the MQTT broker.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00022">Configuration.h:22</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a45ece5471e689eda8ee1c1e15acfc03b"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">MQTT::Configuration::min_delay_ms</a></div><div class="ttdeci">int min_delay_ms</div><div class="ttdoc">Minimum delay between to messages in milliseconds.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00081">Configuration.h:81</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a62add1ea6d5351e35a6c829ecdb41e06"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">MQTT::Configuration::keep_alive</a></div><div class="ttdeci">int keep_alive</div><div class="ttdoc">Keep alive interval in seconds.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00072">Configuration.h:72</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a73f639dad1b94cc09de808519a7855fe"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">MQTT::Configuration::ssl</a></div><div class="ttdeci">bool ssl</div><div class="ttdoc">Use secured connection.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00099">Configuration.h:99</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a8e47ba510961e85709038796c458b0be"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">MQTT::Configuration::clean_session</a></div><div class="ttdeci">bool clean_session</div><div class="ttdoc">Clean session flag.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00055">Configuration.h:55</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a92b3b5ff34fcfc3f72a28559275f78d1"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1">MQTT::Configuration::port</a></div><div class="ttdeci">int port</div><div class="ttdoc">Port of the MQTT broker.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00030">Configuration.h:30</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a9c5a0645489d20461749953881ba7ab7"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">MQTT::Configuration::password</a></div><div class="ttdeci">std::string password</div><div class="ttdoc">Password for connecting to the MQTT broker.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00047">Configuration.h:47</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_aa943275c72ea7cc94bd9de56c0dfaa9d"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">MQTT::Configuration::certificate_authority</a></div><div class="ttdeci">std::string certificate_authority</div><div class="ttdoc">Path to CA PEM-file.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00133">Configuration.h:133</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ab5887b09a89a934dcda3493f17dccd78"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">MQTT::Configuration::verify</a></div><div class="ttdeci">bool verify</div><div class="ttdoc">Skip SSL verification.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00107">Configuration.h:107</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ac23db9e2e0f174a59f294a4a5139a097"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097">MQTT::Configuration::websocket</a></div><div class="ttdeci">bool websocket</div><div class="ttdoc">Use websocket protocol.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00116">Configuration.h:116</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ad33e07f1c8389126541445253cbfff52"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">MQTT::Configuration::connection_timeout_s</a></div><div class="ttdeci">int connection_timeout_s</div><div class="ttdoc">Connection timeout in seconds.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00090">Configuration.h:90</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ae61824192da779011f60eded6903db9b"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b">MQTT::Configuration::path</a></div><div class="ttdeci">std::string path</div><div class="ttdoc">Websocket path.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00124">Configuration.h:124</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ae75c1ab7297f4cf3f25e31ec056df338"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">MQTT::Configuration::username</a></div><div class="ttdeci">std::string username</div><div class="ttdoc">Username for connecting to the MQTT broker.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00039">Configuration.h:39</a></div></div>
+<div class="ttc" id="anamespace_m_q_t_t_html"><div class="ttname"><a href="namespace_m_q_t_t.html">MQTT</a></div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00005">Configuration.h:6</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_m_q_t_t_2_configuration_8h.html">Configuration.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_m_q_t_t_2constants_8h.html b/doc/html/_m_q_t_t_2constants_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..2bb7528d8f97e5f54376a48216dce0c7be321234
--- /dev/null
+++ b/doc/html/_m_q_t_t_2constants_8h.html
@@ -0,0 +1,128 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/constants.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_m_q_t_t_2constants_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#define-members">Macros</a>  </div>
+  <div class="headertitle"><div class="title">constants.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_m_q_t_t_2constants_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ac50762666aa00bd3a4308158510f1748"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_m_q_t_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">_WIN32_WINNT</a>&#160;&#160;&#160;0x600</td></tr>
+<tr class="memdesc:ac50762666aa00bd3a4308158510f1748"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default definitions for project.  <a href="_m_q_t_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">More...</a><br /></td></tr>
+<tr class="separator:ac50762666aa00bd3a4308158510f1748"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="ac50762666aa00bd3a4308158510f1748" name="ac50762666aa00bd3a4308158510f1748"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac50762666aa00bd3a4308158510f1748">&#9670;&nbsp;</a></span>_WIN32_WINNT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define _WIN32_WINNT&#160;&#160;&#160;0x600</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >File being referenced by many others containing cross-project defaults. </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2constants_8h_source.html#l00020">20</a> of file <a class="el" href="_m_q_t_t_2constants_8h_source.html">constants.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_m_q_t_t_2constants_8h.html">constants.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_m_q_t_t_2constants_8h.js b/doc/html/_m_q_t_t_2constants_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..2f58ee9834047efcf5ff294a02a29d386455fc21
--- /dev/null
+++ b/doc/html/_m_q_t_t_2constants_8h.js
@@ -0,0 +1,4 @@
+var _m_q_t_t_2constants_8h =
+[
+    [ "_WIN32_WINNT", "_m_q_t_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_m_q_t_t_2constants_8h_source.html b/doc/html/_m_q_t_t_2constants_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..08be4eb7bd177ed096366c6b243b9039fed46184
--- /dev/null
+++ b/doc/html/_m_q_t_t_2constants_8h_source.html
@@ -0,0 +1,117 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/constants.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_m_q_t_t_2constants_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">constants.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_m_q_t_t_2constants_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span> </div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#ifdef _WIN32</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#        pragma warning(disable: 4251)</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#        pragma warning(disable: 4275)</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="preprocessor">#    ifdef _WINDLL</span></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="preprocessor">#        define DLL __declspec(dllexport)</span></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span><span class="preprocessor">#    else</span></div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="preprocessor">#        define DLL __declspec(dllimport)</span></div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span><span class="preprocessor">#    endif</span></div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="preprocessor">#elif defined(__unix__)</span></div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="preprocessor">#    define DLL __attribute__((visibility(&quot;default&quot;</span>)))</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span><span class="preprocessor">#endif</span></div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span> </div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"><a class="line" href="_m_q_t_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">   20</a></span><span class="preprocessor">#define _WIN32_WINNT 0x600</span></div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span><span class="preprocessor">#ifdef _WIN32</span></div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span><span class="preprocessor">    #include &lt;SDKDDKVer.h&gt;</span></div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span><span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_m_q_t_t_2constants_8h.html">constants.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_message_container_8h.html b/doc/html/_message_container_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..014fe2982b1ac8d0c119f91b92de3151816de18a
--- /dev/null
+++ b/doc/html/_message_container_8h.html
@@ -0,0 +1,117 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/MessageContainer.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_message_container_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">MessageContainer.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_m_q_t_t_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+</div>
+<p><a href="_message_container_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_m_q_t_t_1_1_message_container.html">MQTT::MessageContainer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message struct.  <a href="struct_m_q_t_t_1_1_message_container.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_m_q_t_t"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_m_q_t_t.html">MQTT</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_message_container_8h.html">MessageContainer.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_message_container_8h_source.html b/doc/html/_message_container_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..7a1c5f6b93b1ae4fdb25f9778b505ad9c198b0fc
--- /dev/null
+++ b/doc/html/_message_container_8h_source.html
@@ -0,0 +1,122 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/MessageContainer.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_message_container_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MessageContainer.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_message_container_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_m_q_t_t.html">MQTT</a></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span>{</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"><a class="line" href="struct_m_q_t_t_1_1_message_container.html">   10</a></span>    <span class="keyword">struct </span>DLL  <a class="code hl_struct" href="struct_m_q_t_t_1_1_message_container.html">MessageContainer</a></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    {</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"><a class="line" href="struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79">   17</a></span>        std::string <a class="code hl_variable" href="struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79">topic</a>;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">   24</a></span>        std::string <a class="code hl_variable" href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">message</a>;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span> </div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0">   32</a></span>        <span class="keywordtype">int</span> <a class="code hl_variable" href="struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0">qos</a>;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9">   39</a></span>        <span class="keywordtype">bool</span> <a class="code hl_variable" href="struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9">retain</a>;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span> </div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>    };</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>}</div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="anamespace_m_q_t_t_html"><div class="ttname"><a href="namespace_m_q_t_t.html">MQTT</a></div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00005">Configuration.h:6</a></div></div>
+<div class="ttc" id="astruct_m_q_t_t_1_1_message_container_html"><div class="ttname"><a href="struct_m_q_t_t_1_1_message_container.html">MQTT::MessageContainer</a></div><div class="ttdoc">Internal MQTT message struct.</div><div class="ttdef"><b>Definition:</b> <a href="_message_container_8h_source.html#l00010">MessageContainer.h:11</a></div></div>
+<div class="ttc" id="astruct_m_q_t_t_1_1_message_container_html_a2624104fd87f5343692fba4181c8c1f0"><div class="ttname"><a href="struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0">MQTT::MessageContainer::qos</a></div><div class="ttdeci">int qos</div><div class="ttdoc">Quality of Service.</div><div class="ttdef"><b>Definition:</b> <a href="_message_container_8h_source.html#l00032">MessageContainer.h:32</a></div></div>
+<div class="ttc" id="astruct_m_q_t_t_1_1_message_container_html_a563ac8f9dd9878dcc56ac46e9df171da"><div class="ttname"><a href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">MQTT::MessageContainer::message</a></div><div class="ttdeci">std::string message</div><div class="ttdoc">Message.</div><div class="ttdef"><b>Definition:</b> <a href="_message_container_8h_source.html#l00024">MessageContainer.h:24</a></div></div>
+<div class="ttc" id="astruct_m_q_t_t_1_1_message_container_html_aaef0655958e79f05f192d205fd1d3c79"><div class="ttname"><a href="struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79">MQTT::MessageContainer::topic</a></div><div class="ttdeci">std::string topic</div><div class="ttdoc">Message Topic.</div><div class="ttdef"><b>Definition:</b> <a href="_message_container_8h_source.html#l00017">MessageContainer.h:17</a></div></div>
+<div class="ttc" id="astruct_m_q_t_t_1_1_message_container_html_af1400f50c4a851e4b991e368c3e9bee9"><div class="ttname"><a href="struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9">MQTT::MessageContainer::retain</a></div><div class="ttdeci">bool retain</div><div class="ttdoc">Retain Flag.</div><div class="ttdef"><b>Definition:</b> <a href="_message_container_8h_source.html#l00039">MessageContainer.h:39</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_message_container_8h.html">MessageContainer.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_object_8cpp.html b/doc/html/_object_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..79f3035ffff9e6af2a7f1f51d47158ada0c7767e
--- /dev/null
+++ b/doc/html/_object_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Object.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_object_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Object.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_object_8h_source.html">Object.h</a>&quot;</code><br />
+</div>
+<p><a href="_object_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_object_8cpp.html">Object.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_object_8cpp_source.html b/doc/html/_object_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..70975e70620e5dd8513782a80011faa9f1ae06bd
--- /dev/null
+++ b/doc/html/_object_8cpp_source.html
@@ -0,0 +1,201 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Object.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_object_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Object.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_object_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_object_8h.html">Object.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd">    4</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd">SOIL::Object::Object</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string ontology) : <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a>(parent, uuid, name, description, ontology)</div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>{</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>    <span class="keywordflow">if</span> (<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>.substr(0, 3) != <span class="stringliteral">&quot;OBJ&quot;</span>)</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    {</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>        <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;UUIDs for objects must start with OBJ!&quot;</span>);</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    }</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <a class="code hl_variable" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a> = { HTTP::Methods::GET, HTTP::Methods::OPTIONS, HTTP::Methods::HEAD, HTTP::Methods::PUT };</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>}</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span> </div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span> </div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57">   14</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57">SOIL::Object::~Object</a>()</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>{</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>}</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span> </div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">   18</a></span>std::shared_ptr&lt;SOIL::Object&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">SOIL::Object::create</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string ontology)</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>{</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <a class="code hl_class" href="class_s_o_i_l_1_1_object.html">Object</a>* <span class="keywordtype">object</span> = <span class="keyword">new</span> <a class="code hl_class" href="class_s_o_i_l_1_1_object.html">Object</a>(parent, uuid, name, description, ontology);</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    <span class="keywordflow">return</span> <span class="keywordtype">object</span>-&gt;ptr();</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>}</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3">   24</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3">SOIL::Object::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>{</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    </div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root = <a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">Element::wjson</a>();</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    json_root[U(<span class="stringliteral">&quot;children&quot;</span>)] = HTTP::Json::array();</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="keywordtype">int</span> i = 0;</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; child : children)</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    {</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>        json_root[U(<span class="stringliteral">&quot;children&quot;</span>)][i] = <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>();</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>        json_root[U(<span class="stringliteral">&quot;children&quot;</span>)][i][U(<span class="stringliteral">&quot;uuid&quot;</span>)] = HTTP::Json::string(utility::conversions::to_string_t(child.first));</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>        json_root[U(<span class="stringliteral">&quot;children&quot;</span>)][i][U(<span class="stringliteral">&quot;name&quot;</span>)] = HTTP::Json::string(utility::conversions::to_string_t(child.second-&gt;name));</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>        i++;</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    }</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>}</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span> </div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde">   40</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde">SOIL::Object::read</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>{</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>}</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span> </div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f">   44</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f">SOIL::Object::insert</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> body)</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>{</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>    <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;This function has not been implemented!&quot;</span>);</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>}</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span> </div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108">   49</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108">SOIL::Object::remove</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>{</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span> </div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>}</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span> </div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225">   54</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225">SOIL::Object::handle_get</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>{</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>    this-&gt;read();</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> response;</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>    response.set_body(this-&gt;wjson());</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>    response.set_status_code(HTTP::Status::OK);</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>}</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span> </div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978">   63</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978">SOIL::Object::handle_put</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>{</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>    <span class="keyword">auto</span> task = message.extract_json();</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>    task.wait();</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> body  = task.get();</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a> = this-&gt;insert(body);</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> response;</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>    response.set_body(<a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>    response.set_status_code(HTTP::Status::Created);</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>}</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span> </div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7">   75</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7">SOIL::Object::handle_delete</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>{</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>    this-&gt;remove();</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span>    parent-&gt;remove(this-&gt;uuid);</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> response;</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>    response.set_status_code(HTTP::Status::OK);</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>}</div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="a_object_8h_html"><div class="ttname"><a href="_object_8h.html">Object.h</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a4a78094cb756c0886c787f93462621c0"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">HTTP::Resource::allowed_methods</a></div><div class="ttdeci">std::vector&lt; web::http::method &gt; allowed_methods</div><div class="ttdoc">Allowed methods.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00042">Resource.h:42</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></div><div class="ttdoc">SOIL Base Element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00023">Element.h:24</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a8676609fe497118147e31b25958d5104"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">SOIL::Element::uuid</a></div><div class="ttdeci">std::string uuid</div><div class="ttdoc">Local UUID.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00053">Element.h:53</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a9dd8b98ea77291d638408b123e68536a"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element::wjson</a></div><div class="ttdeci">virtual HTTP::Json wjson(void)</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00130">Element.cpp:130</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></div><div class="ttdoc">Object Class.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8h_source.html#l00018">Object.h:20</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_a0d2c97d0d9a71ec307211897d596bbde"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde">SOIL::Object::read</a></div><div class="ttdeci">virtual void read(void)</div><div class="ttdoc">Read callback.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00040">Object.cpp:40</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_a24b2c5323d9f5f0651d48d3d319eb225"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225">SOIL::Object::handle_get</a></div><div class="ttdeci">HTTP::Response handle_get(HTTP::Request message, std::smatch match=std::smatch()) override</div><div class="ttdoc">HTTP GET Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00054">Object.cpp:54</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_a4ce4f8d21682f894c34f447d2a62cd30"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">SOIL::Object::create</a></div><div class="ttdeci">static std::shared_ptr&lt; Object &gt; create(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</div><div class="ttdoc">Create new Object.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00018">Object.cpp:18</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_a4e237fb0358f5adaea25f2ac95b8b5e7"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7">SOIL::Object::handle_delete</a></div><div class="ttdeci">HTTP::Response handle_delete(HTTP::Request message, std::smatch match=std::smatch()) override</div><div class="ttdoc">HTTP DELETE Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00075">Object.cpp:75</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_a5480dbba0b410666dd030006e86b1108"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108">SOIL::Object::remove</a></div><div class="ttdeci">virtual void remove(void)</div><div class="ttdoc">Remove callback.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00049">Object.cpp:49</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_a5dabf727c8256928d1f019520a34be1f"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f">SOIL::Object::insert</a></div><div class="ttdeci">virtual HTTP::Json insert(HTTP::Json body)</div><div class="ttdoc">Insert callback.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00044">Object.cpp:44</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_ab0d8fb2cb9e32c16ea631ed93e7a5d57"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57">SOIL::Object::~Object</a></div><div class="ttdeci">~Object()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00014">Object.cpp:14</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_ac6614134cf7d4c7caaaae13fac999978"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978">SOIL::Object::handle_put</a></div><div class="ttdeci">HTTP::Response handle_put(HTTP::Request message, std::smatch match=std::smatch()) override</div><div class="ttdoc">HTTP PUT Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00063">Object.cpp:63</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_ac821d8158a2c4214b15cb1d9be8954dd"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd">SOIL::Object::Object</a></div><div class="ttdeci">Object(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00004">Object.cpp:4</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_aebb0f522c4ced342fbd33cb377eeb4b3"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3">SOIL::Object::wjson</a></div><div class="ttdeci">web::json::value wjson(void)</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00024">Object.cpp:24</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_object_8cpp.html">Object.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_object_8h.html b/doc/html/_object_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..9b6449a719527d67d3f398b0e4c2af121b1d0324
--- /dev/null
+++ b/doc/html/_object_8h.html
@@ -0,0 +1,119 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Object.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_object_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Object.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_element_8h_source.html">Element.h</a>&quot;</code><br />
+</div>
+<p><a href="_object_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> Class.  <a href="class_s_o_i_l_1_1_object.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_object_8h.html">Object.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_object_8h_source.html b/doc/html/_object_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..43abf3bb0652d3ea4e80f3aab4efc77b3ba0900a
--- /dev/null
+++ b/doc/html/_object_8h_source.html
@@ -0,0 +1,146 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Object.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_object_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Object.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_object_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_element_8h.html">Element.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>{</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html">   18</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_s_o_i_l_1_1_object.html">Object</a> :</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>        <span class="keyword">public</span> <a class="code hl_class" href="class_s_o_i_l_1_1_element.html">Element</a></div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    {</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_object.html">Object</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string ontology = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_object.html">~Object</a>();</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span> </div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>        <span class="keyword">static</span> std::shared_ptr&lt;Object&gt; create(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string ontology = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span> </div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>        web::json::value wjson(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span> </div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> read(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span> </div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> insert(<a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> body);</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span> </div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> remove(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span> </div>
+<div class="line"><a id="l00108" name="l00108"></a><span class="lineno">  108</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> handle_get(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match = std::smatch()) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno">  109</span> </div>
+<div class="line"><a id="l00124" name="l00124"></a><span class="lineno">  124</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> handle_put(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match = std::smatch()) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno">  125</span> </div>
+<div class="line"><a id="l00141" name="l00141"></a><span class="lineno">  141</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> handle_delete(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match = std::smatch()) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00142" name="l00142"></a><span class="lineno">  142</span> </div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e">  149</a></span>        <span class="keyword">inline</span> std::shared_ptr&lt;Object&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e">ptr</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00150" name="l00150"></a><span class="lineno">  150</span>        {</div>
+<div class="line"><a id="l00151" name="l00151"></a><span class="lineno">  151</span>            <span class="keywordflow">return</span> std::dynamic_pointer_cast&lt;Object&gt;(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">Element::self</a>);</div>
+<div class="line"><a id="l00152" name="l00152"></a><span class="lineno">  152</span>        }</div>
+<div class="line"><a id="l00153" name="l00153"></a><span class="lineno">  153</span>    };</div>
+<div class="line"><a id="l00154" name="l00154"></a><span class="lineno">  154</span>}</div>
+<div class="line"><a id="l00155" name="l00155"></a><span class="lineno">  155</span> </div>
+<div class="ttc" id="a_element_8h_html"><div class="ttname"><a href="_element_8h.html">Element.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></div><div class="ttdoc">SOIL Base Element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00023">Element.h:24</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_afcdcd6ceb94c7d14b0fce99461bb5e30"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">SOIL::Element::self</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; self</div><div class="ttdoc">Self Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00046">Element.h:46</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></div><div class="ttdoc">Object Class.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8h_source.html#l00018">Object.h:20</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_a98e9761c2be5e2acdfe673f48259172e"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e">SOIL::Object::ptr</a></div><div class="ttdeci">std::shared_ptr&lt; Object &gt; ptr(void)</div><div class="ttdoc">Get Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8h_source.html#l00149">Object.h:149</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_object_8h.html">Object.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_parameter_8cpp.html b/doc/html/_parameter_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..9a51e3d0470e13b1eb509e28f97c983dda6306c3
--- /dev/null
+++ b/doc/html/_parameter_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Parameter.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_parameter_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Parameter.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_parameter_8h_source.html">Parameter.h</a>&quot;</code><br />
+</div>
+<p><a href="_parameter_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_parameter_8cpp.html">Parameter.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_parameter_8cpp_source.html b/doc/html/_parameter_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..3fd83b076cf23a229c94208a34992ba9582bf079
--- /dev/null
+++ b/doc/html/_parameter_8cpp_source.html
@@ -0,0 +1,101 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Parameter.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_parameter_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Parameter.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_parameter_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_parameter_8h.html">Parameter.h</a>&quot;</span></div>
+<div class="ttc" id="a_parameter_8h_html"><div class="ttname"><a href="_parameter_8h.html">Parameter.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_parameter_8cpp.html">Parameter.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_parameter_8h.html b/doc/html/_parameter_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..c4e48dd521820c87934106d42334954e0dd3c711
--- /dev/null
+++ b/doc/html/_parameter_8h.html
@@ -0,0 +1,125 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Parameter.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_parameter_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Parameter.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_element_8h_source.html">Element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_container_8h_source.html">Container.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_range_8h_source.html">Range.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_figure_8h_source.html">Figure.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_publisher_8h_source.html">MQTT/Publisher.h</a>&quot;</code><br />
+<code>#include &lt;boost/algorithm/string/join.hpp&gt;</code><br />
+</div>
+<p><a href="_parameter_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> Class.  <a href="class_s_o_i_l_1_1_parameter.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_parameter_8h.html">Parameter.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_parameter_8h_source.html b/doc/html/_parameter_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..5aeebe594fc62a5b0d2cc3db78fdca20ad98b873
--- /dev/null
+++ b/doc/html/_parameter_8h_source.html
@@ -0,0 +1,307 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Parameter.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_parameter_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Parameter.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_parameter_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_s_o_i_l_2_types_8h.html">Types.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="_element_8h.html">Element.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;<a class="code" href="_container_8h.html">Container.h</a>&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &quot;<a class="code" href="_range_8h.html">Range.h</a>&quot;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#include &quot;<a class="code" href="_figure_8h.html">Figure.h</a>&quot;</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#include &quot;<a class="code" href="_publisher_8h.html">MQTT/Publisher.h</a>&quot;</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#include &lt;boost/algorithm/string/join.hpp&gt;</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span> </div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>{</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x=-1, <span class="keywordtype">int</span> y=-1&gt;</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html">   34</a></span>    <span class="keyword">class </span><a class="code hl_class" href="class_s_o_i_l_1_1_parameter.html">Parameter</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure</a>&lt;T, x, y&gt;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    {</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    <span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>        </div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>        <span class="comment">//Looks stale as Figure as a time member</span></div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>        <span class="comment">//TIME time;</span></div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span> </div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">   46</a></span>        <span class="keywordtype">bool</span> <a class="code hl_variable" href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">constant</a>;</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span> </div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d">read</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span> </div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c">write</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span> </div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>        <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4">Parameter</a>(std::shared_ptr&lt;Element&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, <span class="keywordtype">bool</span> <a class="code hl_variable" href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">constant</a> = <span class="keyword">false</span>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a> = <span class="stringliteral">&quot;&quot;</span>, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a> = <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a>(), <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a> = <a class="code hl_typedef" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>());</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>        </div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>        <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5">~Parameter</a>();</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span> </div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno">  103</span>        <span class="keyword">static</span> std::shared_ptr&lt;Parameter&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad">create</a>(std::shared_ptr&lt;Element&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, <span class="keywordtype">bool</span> <a class="code hl_variable" href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">constant</a> = <span class="keyword">false</span>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a> = <span class="stringliteral">&quot;&quot;</span>, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a> = <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a>(), <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a> = <a class="code hl_typedef" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>());</div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span> </div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno">  116</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_parameter.html">Parameter&lt;T, x, y&gt;</a>&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf">operator =</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>);</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span> </div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno">  118</span> </div>
+<div class="line"><a id="l00128" name="l00128"></a><span class="lineno">  128</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">wjson</a>(<span class="keywordtype">void</span>) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00129" name="l00129"></a><span class="lineno">  129</span> </div>
+<div class="line"><a id="l00141" name="l00141"></a><span class="lineno">  141</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad">handle_get</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match = std::smatch()) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00142" name="l00142"></a><span class="lineno">  142</span> </div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno">  158</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad">handle_patch</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match = std::smatch()) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00159" name="l00159"></a><span class="lineno">  159</span> </div>
+<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08">  166</a></span>        <span class="keyword">inline</span> std::shared_ptr&lt;Parameter&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08">ptr</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00167" name="l00167"></a><span class="lineno">  167</span>        {</div>
+<div class="line"><a id="l00168" name="l00168"></a><span class="lineno">  168</span>            <span class="keywordflow">return</span> std::dynamic_pointer_cast&lt;Parameter&gt;(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">Element::self</a>);</div>
+<div class="line"><a id="l00169" name="l00169"></a><span class="lineno">  169</span>        }</div>
+<div class="line"><a id="l00170" name="l00170"></a><span class="lineno">  170</span> </div>
+<div class="line"><a id="l00192" name="l00192"></a><span class="lineno">  192</span>        <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9">mqtt</a>(std::shared_ptr&lt;MQTT::Publisher&gt; publisher, <span class="keywordtype">int</span> qos = 0, <span class="keywordtype">bool</span> retain = <span class="keyword">false</span>);</div>
+<div class="line"><a id="l00193" name="l00193"></a><span class="lineno">  193</span>    };</div>
+<div class="line"><a id="l00194" name="l00194"></a><span class="lineno">  194</span>    </div>
+<div class="line"><a id="l00195" name="l00195"></a><span class="lineno">  195</span> </div>
+<div class="line"><a id="l00196" name="l00196"></a><span class="lineno">  196</span> </div>
+<div class="line"><a id="l00197" name="l00197"></a><span class="lineno">  197</span>}</div>
+<div class="line"><a id="l00198" name="l00198"></a><span class="lineno">  198</span> </div>
+<div class="line"><a id="l00199" name="l00199"></a><span class="lineno">  199</span> </div>
+<div class="line"><a id="l00200" name="l00200"></a><span class="lineno">  200</span> </div>
+<div class="line"><a id="l00201" name="l00201"></a><span class="lineno">  201</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4">  202</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4">SOIL::Parameter&lt;T, x, y&gt;::Parameter</a>(std::shared_ptr&lt;SOIL::Element&gt; parent, std::string uuid, std::string name, std::string description, std::string unit, <span class="keywordtype">bool</span> constant, std::string ontology, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> range, <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::TIME</a> time) : <a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a>::<a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure</a>&lt;T, x, y&gt;(parent, uuid, name, description, unit, ontology, range, time), constant(constant)</div>
+<div class="line"><a id="l00203" name="l00203"></a><span class="lineno">  203</span>{</div>
+<div class="line"><a id="l00204" name="l00204"></a><span class="lineno">  204</span>    <span class="keywordflow">if</span> (<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>.substr(0, 3) != <span class="stringliteral">&quot;PAR&quot;</span>)</div>
+<div class="line"><a id="l00205" name="l00205"></a><span class="lineno">  205</span>    {</div>
+<div class="line"><a id="l00206" name="l00206"></a><span class="lineno">  206</span>        <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;UUIDs for parameters must start with PAR!&quot;</span>);</div>
+<div class="line"><a id="l00207" name="l00207"></a><span class="lineno">  207</span>    }</div>
+<div class="line"><a id="l00208" name="l00208"></a><span class="lineno">  208</span> </div>
+<div class="line"><a id="l00209" name="l00209"></a><span class="lineno">  209</span>    <a class="code hl_variable" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">HTTP::Resource::allowed_methods</a> = { HTTP::Methods::GET, HTTP::Methods::OPTIONS, HTTP::Methods::HEAD, HTTP::Methods::PATCH };</div>
+<div class="line"><a id="l00210" name="l00210"></a><span class="lineno">  210</span>}</div>
+<div class="line"><a id="l00211" name="l00211"></a><span class="lineno">  211</span> </div>
+<div class="line"><a id="l00212" name="l00212"></a><span class="lineno">  212</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5">  213</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5">SOIL::Parameter&lt;T,x,y&gt;::~Parameter</a>()</div>
+<div class="line"><a id="l00214" name="l00214"></a><span class="lineno">  214</span>{</div>
+<div class="line"><a id="l00215" name="l00215"></a><span class="lineno">  215</span>}</div>
+<div class="line"><a id="l00216" name="l00216"></a><span class="lineno">  216</span> </div>
+<div class="line"><a id="l00217" name="l00217"></a><span class="lineno">  217</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad">  218</a></span><span class="keyword">inline</span> std::shared_ptr&lt;SOIL::Parameter&lt;T, x, y&gt; &gt; <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad">SOIL::Parameter&lt;T, x, y&gt;::create</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string unit, <span class="keywordtype">bool</span> constant, std::string ontology, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> range, <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> time)</div>
+<div class="line"><a id="l00219" name="l00219"></a><span class="lineno">  219</span>{</div>
+<div class="line"><a id="l00220" name="l00220"></a><span class="lineno">  220</span>    <a class="code hl_class" href="class_s_o_i_l_1_1_parameter.html">Parameter&lt;T, x, y&gt;</a>* parameter = <span class="keyword">new</span> <a class="code hl_class" href="class_s_o_i_l_1_1_parameter.html">Parameter&lt;T, x, y&gt;</a>(parent, uuid, name, description, unit, constant, ontology, range, time);</div>
+<div class="line"><a id="l00221" name="l00221"></a><span class="lineno">  221</span>    <span class="keywordflow">return</span> parameter-&gt;<a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08">ptr</a>();</div>
+<div class="line"><a id="l00222" name="l00222"></a><span class="lineno">  222</span>}</div>
+<div class="line"><a id="l00223" name="l00223"></a><span class="lineno">  223</span> </div>
+<div class="line"><a id="l00224" name="l00224"></a><span class="lineno">  224</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf">  225</a></span><span class="keyword">inline</span> <a class="code hl_class" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt;T, x, y&gt;</a>&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf">SOIL::Parameter&lt;T, x, y&gt;::operator=</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; value)</div>
+<div class="line"><a id="l00226" name="l00226"></a><span class="lineno">  226</span>{</div>
+<div class="line"><a id="l00227" name="l00227"></a><span class="lineno">  227</span>    <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">Figure&lt;T,x,y&gt;::operator=</a>(value);</div>
+<div class="line"><a id="l00228" name="l00228"></a><span class="lineno">  228</span>    <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a id="l00229" name="l00229"></a><span class="lineno">  229</span>}</div>
+<div class="line"><a id="l00230" name="l00230"></a><span class="lineno">  230</span> </div>
+<div class="line"><a id="l00231" name="l00231"></a><span class="lineno">  231</span> </div>
+<div class="line"><a id="l00232" name="l00232"></a><span class="lineno">  232</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">  233</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">SOIL::Parameter&lt;T,x,y&gt;::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00234" name="l00234"></a><span class="lineno">  234</span>{</div>
+<div class="line"><a id="l00235" name="l00235"></a><span class="lineno">  235</span>    std::unique_lock&lt;std::recursive_mutex&gt; lock(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">Element::mutex</a>);</div>
+<div class="line"><a id="l00236" name="l00236"></a><span class="lineno">  236</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root = <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">Figure&lt;T,x,y&gt; ::wjson</a>();</div>
+<div class="line"><a id="l00237" name="l00237"></a><span class="lineno">  237</span>    json_root[U(<span class="stringliteral">&quot;constant&quot;</span>)] = HTTP::Json::boolean(constant);</div>
+<div class="line"><a id="l00238" name="l00238"></a><span class="lineno">  238</span> </div>
+<div class="line"><a id="l00239" name="l00239"></a><span class="lineno">  239</span>    <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00240" name="l00240"></a><span class="lineno">  240</span>}</div>
+<div class="line"><a id="l00241" name="l00241"></a><span class="lineno">  241</span> </div>
+<div class="line"><a id="l00242" name="l00242"></a><span class="lineno">  242</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d">  243</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d">SOIL::Parameter&lt;T,x,y&gt;::read</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00244" name="l00244"></a><span class="lineno">  244</span>{</div>
+<div class="line"><a id="l00245" name="l00245"></a><span class="lineno">  245</span>}</div>
+<div class="line"><a id="l00246" name="l00246"></a><span class="lineno">  246</span> </div>
+<div class="line"><a id="l00247" name="l00247"></a><span class="lineno">  247</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c">  248</a></span><span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c">SOIL::Parameter&lt;T, x, y&gt;::write</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00249" name="l00249"></a><span class="lineno">  249</span>{</div>
+<div class="line"><a id="l00250" name="l00250"></a><span class="lineno">  250</span>}</div>
+<div class="line"><a id="l00251" name="l00251"></a><span class="lineno">  251</span> </div>
+<div class="line"><a id="l00252" name="l00252"></a><span class="lineno">  252</span> </div>
+<div class="line"><a id="l00253" name="l00253"></a><span class="lineno">  253</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad">  254</a></span><span class="keyword">inline</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad">SOIL::Parameter&lt;T, x, y&gt;::handle_get</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00255" name="l00255"></a><span class="lineno">  255</span>{</div>
+<div class="line"><a id="l00256" name="l00256"></a><span class="lineno">  256</span>    this-&gt;read();</div>
+<div class="line"><a id="l00257" name="l00257"></a><span class="lineno">  257</span>    </div>
+<div class="line"><a id="l00258" name="l00258"></a><span class="lineno">  258</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> response;</div>
+<div class="line"><a id="l00259" name="l00259"></a><span class="lineno">  259</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> body = this-&gt;wjson();</div>
+<div class="line"><a id="l00260" name="l00260"></a><span class="lineno">  260</span>    response.set_body(body);</div>
+<div class="line"><a id="l00261" name="l00261"></a><span class="lineno">  261</span> </div>
+<div class="line"><a id="l00262" name="l00262"></a><span class="lineno">  262</span>    response.set_status_code(HTTP::Status::OK);</div>
+<div class="line"><a id="l00263" name="l00263"></a><span class="lineno">  263</span> </div>
+<div class="line"><a id="l00264" name="l00264"></a><span class="lineno">  264</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00265" name="l00265"></a><span class="lineno">  265</span>}</div>
+<div class="line"><a id="l00266" name="l00266"></a><span class="lineno">  266</span> </div>
+<div class="line"><a id="l00267" name="l00267"></a><span class="lineno">  267</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad">  268</a></span><span class="keyword">inline</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad">SOIL::Parameter&lt;T, x, y&gt;::handle_patch</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00269" name="l00269"></a><span class="lineno">  269</span>{</div>
+<div class="line"><a id="l00270" name="l00270"></a><span class="lineno">  270</span>    <span class="keyword">auto</span> task  = message.extract_json();</div>
+<div class="line"><a id="l00271" name="l00271"></a><span class="lineno">  271</span>    task.wait();</div>
+<div class="line"><a id="l00272" name="l00272"></a><span class="lineno">  272</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> external_json = task.get();</div>
+<div class="line"><a id="l00273" name="l00273"></a><span class="lineno">  273</span> </div>
+<div class="line"><a id="l00274" name="l00274"></a><span class="lineno">  274</span>    <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::TIME</a> timestamp;</div>
+<div class="line"><a id="l00275" name="l00275"></a><span class="lineno">  275</span> </div>
+<div class="line"><a id="l00276" name="l00276"></a><span class="lineno">  276</span>    <span class="keywordflow">if</span> (external_json.has_field(U(<span class="stringliteral">&quot;timestamp&quot;</span>)))</div>
+<div class="line"><a id="l00277" name="l00277"></a><span class="lineno">  277</span>    {</div>
+<div class="line"><a id="l00278" name="l00278"></a><span class="lineno">  278</span>        timestamp = to_value&lt;TIME&gt;(external_json[U(<span class="stringliteral">&quot;timestamp&quot;</span>)]);</div>
+<div class="line"><a id="l00279" name="l00279"></a><span class="lineno">  279</span>    }</div>
+<div class="line"><a id="l00280" name="l00280"></a><span class="lineno">  280</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00281" name="l00281"></a><span class="lineno">  281</span>    {</div>
+<div class="line"><a id="l00282" name="l00282"></a><span class="lineno">  282</span>        timestamp = <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">SOIL::TIME::utc_now</a>();</div>
+<div class="line"><a id="l00283" name="l00283"></a><span class="lineno">  283</span>    }</div>
+<div class="line"><a id="l00284" name="l00284"></a><span class="lineno">  284</span>    </div>
+<div class="line"><a id="l00285" name="l00285"></a><span class="lineno">  285</span> </div>
+<div class="line"><a id="l00286" name="l00286"></a><span class="lineno">  286</span>    this-&gt;update(<a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>(external_json[U(<span class="stringliteral">&quot;value&quot;</span>)]), timestamp);</div>
+<div class="line"><a id="l00287" name="l00287"></a><span class="lineno">  287</span> </div>
+<div class="line"><a id="l00288" name="l00288"></a><span class="lineno">  288</span>    </div>
+<div class="line"><a id="l00289" name="l00289"></a><span class="lineno">  289</span>    this-&gt;write();</div>
+<div class="line"><a id="l00290" name="l00290"></a><span class="lineno">  290</span> </div>
+<div class="line"><a id="l00291" name="l00291"></a><span class="lineno">  291</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> response;</div>
+<div class="line"><a id="l00292" name="l00292"></a><span class="lineno">  292</span>    response.set_body(this-&gt;wjson());</div>
+<div class="line"><a id="l00293" name="l00293"></a><span class="lineno">  293</span>    response.set_status_code(HTTP::Status::Created);</div>
+<div class="line"><a id="l00294" name="l00294"></a><span class="lineno">  294</span> </div>
+<div class="line"><a id="l00295" name="l00295"></a><span class="lineno">  295</span> </div>
+<div class="line"><a id="l00296" name="l00296"></a><span class="lineno">  296</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00297" name="l00297"></a><span class="lineno">  297</span>}</div>
+<div class="line"><a id="l00298" name="l00298"></a><span class="lineno">  298</span> </div>
+<div class="line"><a id="l00299" name="l00299"></a><span class="lineno">  299</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9">  300</a></span><span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9">SOIL::Parameter&lt;T, x, y&gt;::mqtt</a>(std::shared_ptr&lt;MQTT::Publisher&gt; publisher, <span class="keywordtype">int</span> qos, <span class="keywordtype">bool</span> retain)</div>
+<div class="line"><a id="l00301" name="l00301"></a><span class="lineno">  301</span>{</div>
+<div class="line"><a id="l00302" name="l00302"></a><span class="lineno">  302</span>    std::string topic = boost::algorithm::join(this-&gt;fqid(), <span class="stringliteral">&quot;/&quot;</span>);</div>
+<div class="line"><a id="l00303" name="l00303"></a><span class="lineno">  303</span>    <span class="keywordflow">return</span> publisher-&gt;publish(topic, this-&gt;<a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>(), qos, retain);</div>
+<div class="line"><a id="l00304" name="l00304"></a><span class="lineno">  304</span>}</div>
+<div class="line"><a id="l00305" name="l00305"></a><span class="lineno">  305</span> </div>
+<div class="line"><a id="l00306" name="l00306"></a><span class="lineno">  306</span> </div>
+<div class="line"><a id="l00307" name="l00307"></a><span class="lineno">  307</span> </div>
+<div class="ttc" id="a_container_8h_html"><div class="ttname"><a href="_container_8h.html">Container.h</a></div></div>
+<div class="ttc" id="a_element_8h_html"><div class="ttname"><a href="_element_8h.html">Element.h</a></div></div>
+<div class="ttc" id="a_figure_8h_html"><div class="ttname"><a href="_figure_8h.html">Figure.h</a></div></div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="a_publisher_8h_html"><div class="ttname"><a href="_publisher_8h.html">Publisher.h</a></div></div>
+<div class="ttc" id="a_range_8h_html"><div class="ttname"><a href="_range_8h.html">Range.h</a></div></div>
+<div class="ttc" id="a_s_o_i_l_2_types_8h_html"><div class="ttname"><a href="_s_o_i_l_2_types_8h.html">Types.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a4a78094cb756c0886c787f93462621c0"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">HTTP::Resource::allowed_methods</a></div><div class="ttdeci">std::vector&lt; web::http::method &gt; allowed_methods</div><div class="ttdoc">Allowed methods.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00042">Resource.h:42</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a8676609fe497118147e31b25958d5104"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">SOIL::Element::uuid</a></div><div class="ttdeci">std::string uuid</div><div class="ttdoc">Local UUID.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00053">Element.h:53</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_aaef3cdce55ced857a81ba285afc92ed9"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">SOIL::Element::description</a></div><div class="ttdeci">std::string description</div><div class="ttdoc">Description.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00067">Element.h:67</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ad89fecb69de794e7b918767d5f21027d"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">SOIL::Element::ontology</a></div><div class="ttdeci">std::string ontology</div><div class="ttdoc">Ontology identifier.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00076">Element.h:76</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ae80d2c6c5f2577aa5a8489f2c0c352e8"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">SOIL::Element::name</a></div><div class="ttdeci">std::string name</div><div class="ttdoc">Name.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00060">Element.h:60</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_af1992c267233cec3b17bc70038d1d84b"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">SOIL::Element::parent</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; parent</div><div class="ttdoc">Parent Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00039">Element.h:39</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_afc29676fd98e4c6b7ab004514c175b7c"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">SOIL::Element::mutex</a></div><div class="ttdeci">std::recursive_mutex mutex</div><div class="ttdoc">Element Mutex.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00083">Element.h:83</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_afcdcd6ceb94c7d14b0fce99461bb5e30"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">SOIL::Element::self</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; self</div><div class="ttdoc">Self Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00046">Element.h:46</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a></div><div class="ttdoc">Intermediate class for Variable and Parameter that derives from Element.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00048">Figure.h:49</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a4e4d6c93a559d5e18178de9a79b472ec"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">SOIL::Figure::operator=</a></div><div class="ttdeci">Figure&lt; T, x, y &gt; &amp; operator=(const Container&lt; T, x, y &gt; &amp;value)</div><div class="ttdoc">Assignment operator.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00259">Figure.h:259</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a627d9d3386a719a6612ec3068812ea67"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">SOIL::Figure&lt; T, -1, -1 &gt;::unit</a></div><div class="ttdeci">std::string unit</div><div class="ttdoc">Unit.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00063">Figure.h:63</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a8f320356ea837f06e439b74c2a22e81c"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">SOIL::Figure&lt; T, -1, -1 &gt;::time</a></div><div class="ttdeci">TIME time</div><div class="ttdoc">Data Timestamp.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00056">Figure.h:56</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a97c7e2488708c155d366e2cdc1934c3b"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">SOIL::Figure&lt; T, -1, -1 &gt;::value</a></div><div class="ttdeci">Container&lt; T, x, y &gt; value</div><div class="ttdoc">Value.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00070">Figure.h:70</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_ab431dcf967cbfb8591b9128257595712"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">SOIL::Figure&lt; T, -1, -1 &gt;::range</a></div><div class="ttdeci">Range&lt; T &gt; range</div><div class="ttdoc">Range.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00077">Figure.h:77</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_aca02467b79b6d4a9590553b612876b20"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void) override</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00229">Figure.h:229</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a></div><div class="ttdoc">Parameter Class.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00034">Parameter.h:35</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_a37602b6b8f95595a78b70a9b0eb865ad"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad">SOIL::Parameter::handle_get</a></div><div class="ttdeci">HTTP::Response handle_get(HTTP::Request message, std::smatch match=std::smatch()) override</div><div class="ttdoc">HTTP GET Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00254">Parameter.h:254</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_a3c7401cb8d13756cc70d1df4e16db2e5"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5">SOIL::Parameter::~Parameter</a></div><div class="ttdeci">~Parameter()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00213">Parameter.h:213</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_a3ee4708c79c724f7905eecb9e2b2cc08"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08">SOIL::Parameter::ptr</a></div><div class="ttdeci">std::shared_ptr&lt; Parameter &gt; ptr(void)</div><div class="ttdoc">Get Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00166">Parameter.h:166</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_a57567b4cfe6b370e9af7c3ef6f10be6d"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d">SOIL::Parameter::read</a></div><div class="ttdeci">virtual void read(void)</div><div class="ttdoc">Read callback.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00243">Parameter.h:243</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_a698d4320aa3e34bf080f9e416fb12ce4"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4">SOIL::Parameter::Parameter</a></div><div class="ttdeci">Parameter(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant=false, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME())</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00202">Parameter.h:202</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_a905eb12cd0e50cf245f2003643602acf"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf">SOIL::Parameter::operator=</a></div><div class="ttdeci">Parameter&lt; T, x, y &gt; &amp; operator=(const Container&lt; T, x, y &gt; &amp;value)</div><div class="ttdoc">Assignment operator.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00225">Parameter.h:225</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_aadc9c63027042e0e834b183698e964b9"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9">SOIL::Parameter::mqtt</a></div><div class="ttdeci">bool mqtt(std::shared_ptr&lt; MQTT::Publisher &gt; publisher, int qos=0, bool retain=false)</div><div class="ttdoc">Publish to MQTT.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00300">Parameter.h:300</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_ac58916de16e381e40123bf9633a151ad"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad">SOIL::Parameter::handle_patch</a></div><div class="ttdeci">HTTP::Response handle_patch(HTTP::Request message, std::smatch match=std::smatch()) override</div><div class="ttdoc">HTTP PATCH Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00268">Parameter.h:268</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_ae6326c41af3bca1b02f8d8dcca05ecad"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad">SOIL::Parameter::create</a></div><div class="ttdeci">static std::shared_ptr&lt; Parameter &gt; create(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant=false, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME())</div><div class="ttdoc">Create new Parameter.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00218">Parameter.h:218</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_aec2434faa57778dbc8783ec77a86d627"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">SOIL::Parameter::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void) override</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00233">Parameter.h:233</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_aed57214457012af12a859669e182e841"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">SOIL::Parameter::constant</a></div><div class="ttdeci">bool constant</div><div class="ttdoc">Constant flag.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00046">Parameter.h:46</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_parameter_html_af378abd9212084ebb270383d3cd4300c"><div class="ttname"><a href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c">SOIL::Parameter::write</a></div><div class="ttdeci">virtual void write(void)</div><div class="ttdoc">Write callback.</div><div class="ttdef"><b>Definition:</b> <a href="_parameter_8h_source.html#l00248">Parameter.h:248</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html">SOIL::Range</a></div><div class="ttdoc">Range Helper Class.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8h_source.html#l00024">Range.h:25</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00012">Time.h:13</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_ae06629b296dcd9b01b6019101a020208"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">SOIL::Time::utc_now</a></div><div class="ttdeci">static DLL boost::posix_time::ptime utc_now(void)</div><div class="ttdoc">Current Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00057">Time.cpp:57</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a088b157f218c9c844ae77c2c07f1b328"><div class="ttname"><a href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a></div><div class="ttdeci">Time TIME</div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00054">Types.h:54</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_parameter_8h.html">Parameter.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_publisher_8cpp.html b/doc/html/_publisher_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..25f8ab3083cf34d54025949aefdd9ac48e107175
--- /dev/null
+++ b/doc/html/_publisher_8cpp.html
@@ -0,0 +1,134 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/Publisher.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_publisher_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#define-members">Macros</a>  </div>
+  <div class="headertitle"><div class="title">Publisher.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_local_exception_8h_source.html">LocalException.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_publisher_8h_source.html">Publisher.h</a>&quot;</code><br />
+<code>#include &lt;nlohmann/json.hpp&gt;</code><br />
+<code>#include &lt;regex&gt;</code><br />
+<code>#include &lt;chrono&gt;</code><br />
+<code>#include &lt;condition_variable&gt;</code><br />
+<code>#include &lt;mqtt/async_client.h&gt;</code><br />
+<code>#include &lt;boost/date_time/posix_time/posix_time.hpp&gt;</code><br />
+</div>
+<p><a href="_publisher_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a7448c142e0c36065fc7e625cd4b6b045"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_publisher_8cpp.html#a7448c142e0c36065fc7e625cd4b6b045">PAHO_MQTT_IMPORTS</a></td></tr>
+<tr class="separator:a7448c142e0c36065fc7e625cd4b6b045"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="a7448c142e0c36065fc7e625cd4b6b045" name="a7448c142e0c36065fc7e625cd4b6b045"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7448c142e0c36065fc7e625cd4b6b045">&#9670;&nbsp;</a></span>PAHO_MQTT_IMPORTS</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define PAHO_MQTT_IMPORTS</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00007">7</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_publisher_8cpp.html">Publisher.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_publisher_8cpp.js b/doc/html/_publisher_8cpp.js
new file mode 100644
index 0000000000000000000000000000000000000000..7b085eabf1a96d0cab3277919325eaa060be12c9
--- /dev/null
+++ b/doc/html/_publisher_8cpp.js
@@ -0,0 +1,4 @@
+var _publisher_8cpp =
+[
+    [ "PAHO_MQTT_IMPORTS", "_publisher_8cpp.html#a7448c142e0c36065fc7e625cd4b6b045", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_publisher_8cpp_source.html b/doc/html/_publisher_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..3002badc4472a811173d2745b60a2c5eba4b9b4f
--- /dev/null
+++ b/doc/html/_publisher_8cpp_source.html
@@ -0,0 +1,374 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/Publisher.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_publisher_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Publisher.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_publisher_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_local_exception_8h.html">LocalException.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_publisher_8h.html">Publisher.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;nlohmann/json.hpp&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;regex&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;chrono&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;condition_variable&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="_publisher_8cpp.html#a7448c142e0c36065fc7e625cd4b6b045">    7</a></span><span class="preprocessor">#define PAHO_MQTT_IMPORTS</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#include &lt;mqtt/async_client.h&gt;</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#include &lt;boost/date_time/posix_time/posix_time.hpp&gt;</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span> </div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span> </div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="keywordtype">int</span> MQTT::Publisher::instances = 0;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span> </div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span> </div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span> </div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="keywordtype">void</span> MQTT::Publisher::loop(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>{</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <a class="code hl_struct" href="struct_m_q_t_t_1_1_message_container.html">MQTT::MessageContainer</a> message;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <span class="keywordflow">while</span> (worker_running.load(std::memory_order_consume))</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    {</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>        <span class="keywordflow">if</span> (queue_size.load(std::memory_order_consume) &gt; 0)</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>        {</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>            std::unique_lock&lt;std::mutex&gt; queue_lock(queue_mutex);</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>            message = queue.front();</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>            queue.pop_front();</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>            queue_size.store(<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(queue.size()));</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>        }</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>        {</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>            std::unique_lock&lt;std::mutex&gt; queue_lock(queue_mutex);</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>            <span class="keywordflow">while</span> (queue_size.load(std::memory_order_consume) == 0)</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>            {</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>                queue_condition.wait(queue_lock);</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>            }</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>            <span class="keywordflow">continue</span>;</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>        }</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>        <span class="keywordflow">try</span> {</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>            <span class="keyword">auto</span> paho_message = mqtt::make_message((configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">root</a> + message.<a class="code hl_variable" href="struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79">topic</a>).c_str(), message.<a class="code hl_variable" href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">message</a>.c_str(), message.<a class="code hl_variable" href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">message</a>.size(), message.<a class="code hl_variable" href="struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0">qos</a>, message.<a class="code hl_variable" href="struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9">retain</a>);</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>            <span class="keyword">auto</span> token = client-&gt;publish(paho_message);</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>        }</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>        <span class="keywordflow">catch</span> (std::exception&amp;)</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>        {</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>            <span class="comment">/* pass */</span></div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>        }</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    }</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>}</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span> </div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span><span class="keywordtype">void</span> MQTT::Publisher::restart_worker(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>{</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    <span class="keywordflow">if</span> (!worker_running.load(std::memory_order_consume))</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>    {</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>        std::unique_lock&lt;std::mutex&gt; queue_lock(queue_mutex);</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>        queue.clear();</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>        worker_running.store(<span class="keyword">true</span>, std::memory_order_release);</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>        worker.reset(<span class="keyword">new</span> std::thread(&amp;MQTT::Publisher::loop, <span class="keyword">this</span>));</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>    }</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>}</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span> </div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span><span class="keywordtype">void</span> MQTT::Publisher::stop_worker(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>{</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>    worker_running.store(<span class="keyword">false</span>, std::memory_order_release);</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>    std::unique_lock&lt;std::mutex&gt; queue_lock(queue_mutex);</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>    queue_condition.notify_all();</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>}</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span> </div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac">   66</a></span><a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac">MQTT::Publisher::Publisher</a>(std::string <span class="keywordtype">id</span>, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> buffer) : id(id), buffer(buffer)</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>{</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>    <span class="keywordflow">if</span> (instances == 0)</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>    {</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>        <span class="comment">/* pass */</span>;</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>    }</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span>    instances++;</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span> </div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>    </div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>    worker_running.store(<span class="keyword">false</span>, std::memory_order_release);</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>    queue.resize(0);</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>    queue_size.store(0, std::memory_order_release);</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span> </div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>}</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span> </div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span> </div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205">   82</a></span><a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205">MQTT::Publisher::~Publisher</a>()</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>{</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>    this-&gt;disconnect();</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span>    worker-&gt;detach();</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>    instances--;</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>    <span class="keywordflow">if</span> (instances == 0)</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>    {</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>        <span class="comment">/* pass */</span>;</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span>    }</div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span>}</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span> </div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93">   93</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0">MQTT::Publisher::connect</a>(<a class="code hl_class" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a> configuration)</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>{</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>    <span class="keywordflow">try</span></div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>    {</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span>        client.reset(<span class="keyword">new</span> mqtt::async_client(configuration.<a class="code hl_function" href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">uri</a>(), <span class="keywordtype">id</span>));</div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span> </div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno">   99</span>        <span class="keyword">auto</span> ssl = mqtt::ssl_options_builder();</div>
+<div class="line"><a id="l00100" name="l00100"></a><span class="lineno">  100</span>        <span class="keyword">auto</span> options = mqtt::connect_options_builder();</div>
+<div class="line"><a id="l00101" name="l00101"></a><span class="lineno">  101</span>        options.user_name(configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">username</a>);</div>
+<div class="line"><a id="l00102" name="l00102"></a><span class="lineno">  102</span>        options.password(configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">password</a>);</div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno">  103</span>        options.clean_session(configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">clean_session</a>);</div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span>        options.keep_alive_interval(std::chrono::seconds(configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">keep_alive</a>));</div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>        options.connect_timeout(std::chrono::seconds(configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">connection_timeout_s</a>));</div>
+<div class="line"><a id="l00106" name="l00106"></a><span class="lineno">  106</span>        </div>
+<div class="line"><a id="l00107" name="l00107"></a><span class="lineno">  107</span>        <span class="keywordflow">if</span> (configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">ssl</a>)</div>
+<div class="line"><a id="l00108" name="l00108"></a><span class="lineno">  108</span>        {</div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno">  109</span>            ssl.enable_server_cert_auth(configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">verify</a>);</div>
+<div class="line"><a id="l00110" name="l00110"></a><span class="lineno">  110</span>            ssl.trust_store(configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">certificate_authority</a>);</div>
+<div class="line"><a id="l00111" name="l00111"></a><span class="lineno">  111</span>            ssl.ssl_version(MQTT_SSL_VERSION_DEFAULT);</div>
+<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span>            options.ssl(ssl.finalize());</div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span>        }</div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span>        </div>
+<div class="line"><a id="l00115" name="l00115"></a><span class="lineno">  115</span> </div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno">  116</span>        <span class="keyword">auto</span> token = client-&gt;connect(options.finalize());</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span>        <span class="keyword">auto</span> response = token-&gt;get_connect_response();</div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno">  118</span>    </div>
+<div class="line"><a id="l00119" name="l00119"></a><span class="lineno">  119</span>        <span class="keywordflow">if</span> (!client-&gt;is_connected())</div>
+<div class="line"><a id="l00120" name="l00120"></a><span class="lineno">  120</span>        {</div>
+<div class="line"><a id="l00121" name="l00121"></a><span class="lineno">  121</span>            <span class="keywordflow">throw</span> std::runtime_error(mqtt::exception(token-&gt;get_return_code()));</div>
+<div class="line"><a id="l00122" name="l00122"></a><span class="lineno">  122</span>        }</div>
+<div class="line"><a id="l00123" name="l00123"></a><span class="lineno">  123</span> </div>
+<div class="line"><a id="l00124" name="l00124"></a><span class="lineno">  124</span>        restart_worker();</div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno">  125</span>    }</div>
+<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span>    <span class="keywordflow">catch</span> (std::exception&amp; exc)</div>
+<div class="line"><a id="l00127" name="l00127"></a><span class="lineno">  127</span>    {</div>
+<div class="line"><a id="l00128" name="l00128"></a><span class="lineno">  128</span>        <span class="keywordflow">throw</span> <a class="code hl_class" href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a>(exc);</div>
+<div class="line"><a id="l00129" name="l00129"></a><span class="lineno">  129</span>    }</div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno">  130</span>}</div>
+<div class="line"><a id="l00131" name="l00131"></a><span class="lineno">  131</span> </div>
+<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0">  132</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0">MQTT::Publisher::connect</a>()</div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno">  133</span>{</div>
+<div class="line"><a id="l00134" name="l00134"></a><span class="lineno">  134</span>    this-&gt;connect(this-&gt;configuration);</div>
+<div class="line"><a id="l00135" name="l00135"></a><span class="lineno">  135</span>}</div>
+<div class="line"><a id="l00136" name="l00136"></a><span class="lineno">  136</span> </div>
+<div class="line"><a id="l00137" name="l00137"></a><span class="lineno">  137</span> </div>
+<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08">  138</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08">MQTT::Publisher::reconnect</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00139" name="l00139"></a><span class="lineno">  139</span>{</div>
+<div class="line"><a id="l00140" name="l00140"></a><span class="lineno">  140</span>    <span class="keywordflow">try</span></div>
+<div class="line"><a id="l00141" name="l00141"></a><span class="lineno">  141</span>    {</div>
+<div class="line"><a id="l00142" name="l00142"></a><span class="lineno">  142</span>        <span class="keyword">auto</span> token = client-&gt;reconnect();</div>
+<div class="line"><a id="l00143" name="l00143"></a><span class="lineno">  143</span>        <span class="keyword">auto</span> response = token-&gt;get_connect_response();</div>
+<div class="line"><a id="l00144" name="l00144"></a><span class="lineno">  144</span> </div>
+<div class="line"><a id="l00145" name="l00145"></a><span class="lineno">  145</span>        <span class="keywordflow">if</span> (!client-&gt;is_connected())</div>
+<div class="line"><a id="l00146" name="l00146"></a><span class="lineno">  146</span>        {</div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span>            <span class="keywordflow">throw</span> std::runtime_error(mqtt::exception(token-&gt;get_return_code()));</div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno">  148</span>        }</div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno">  149</span>        restart_worker();</div>
+<div class="line"><a id="l00150" name="l00150"></a><span class="lineno">  150</span>    }</div>
+<div class="line"><a id="l00151" name="l00151"></a><span class="lineno">  151</span>    <span class="keywordflow">catch</span> (std::exception&amp; exc)</div>
+<div class="line"><a id="l00152" name="l00152"></a><span class="lineno">  152</span>    {</div>
+<div class="line"><a id="l00153" name="l00153"></a><span class="lineno">  153</span>        <span class="keywordflow">throw</span> <a class="code hl_class" href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a>(exc);</div>
+<div class="line"><a id="l00154" name="l00154"></a><span class="lineno">  154</span>    }</div>
+<div class="line"><a id="l00155" name="l00155"></a><span class="lineno">  155</span>}</div>
+<div class="line"><a id="l00156" name="l00156"></a><span class="lineno">  156</span> </div>
+<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e">  157</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e">MQTT::Publisher::disconnect</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> timeout)</div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno">  158</span>{</div>
+<div class="line"><a id="l00159" name="l00159"></a><span class="lineno">  159</span>    <span class="keywordflow">if</span> (client.get() != NULL)</div>
+<div class="line"><a id="l00160" name="l00160"></a><span class="lineno">  160</span>    {</div>
+<div class="line"><a id="l00161" name="l00161"></a><span class="lineno">  161</span>        <span class="keyword">auto</span> token = client-&gt;disconnect();</div>
+<div class="line"><a id="l00162" name="l00162"></a><span class="lineno">  162</span>        token-&gt;wait_for(timeout);</div>
+<div class="line"><a id="l00163" name="l00163"></a><span class="lineno">  163</span>    }</div>
+<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span>    stop_worker();</div>
+<div class="line"><a id="l00165" name="l00165"></a><span class="lineno">  165</span>    client.reset();</div>
+<div class="line"><a id="l00166" name="l00166"></a><span class="lineno">  166</span>}</div>
+<div class="line"><a id="l00167" name="l00167"></a><span class="lineno">  167</span> </div>
+<div class="line"><a id="l00168" name="l00168"></a><span class="lineno">  168</span> </div>
+<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801">  169</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801">MQTT::Publisher::set_root_topic</a>(std::string root_topic)</div>
+<div class="line"><a id="l00170" name="l00170"></a><span class="lineno">  170</span>{</div>
+<div class="line"><a id="l00171" name="l00171"></a><span class="lineno">  171</span>    configuration.root = root_topic;</div>
+<div class="line"><a id="l00172" name="l00172"></a><span class="lineno">  172</span>    std::string::iterator last_character = configuration.root.end() - 1;</div>
+<div class="line"><a id="l00173" name="l00173"></a><span class="lineno">  173</span>    <span class="keywordflow">if</span> ((*last_character) != <span class="charliteral">&#39;/&#39;</span>)</div>
+<div class="line"><a id="l00174" name="l00174"></a><span class="lineno">  174</span>    {</div>
+<div class="line"><a id="l00175" name="l00175"></a><span class="lineno">  175</span>        configuration.root += <span class="stringliteral">&quot;/&quot;</span>;</div>
+<div class="line"><a id="l00176" name="l00176"></a><span class="lineno">  176</span>    }</div>
+<div class="line"><a id="l00177" name="l00177"></a><span class="lineno">  177</span>}</div>
+<div class="line"><a id="l00178" name="l00178"></a><span class="lineno">  178</span> </div>
+<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d">  179</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d">MQTT::Publisher::set_buffer</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> buffer)</div>
+<div class="line"><a id="l00180" name="l00180"></a><span class="lineno">  180</span>{</div>
+<div class="line"><a id="l00181" name="l00181"></a><span class="lineno">  181</span>    this-&gt;buffer = buffer;</div>
+<div class="line"><a id="l00182" name="l00182"></a><span class="lineno">  182</span>}</div>
+<div class="line"><a id="l00183" name="l00183"></a><span class="lineno">  183</span> </div>
+<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d">  184</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d">MQTT::Publisher::is_connected</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00185" name="l00185"></a><span class="lineno">  185</span>{</div>
+<div class="line"><a id="l00186" name="l00186"></a><span class="lineno">  186</span>    <span class="keywordflow">try</span></div>
+<div class="line"><a id="l00187" name="l00187"></a><span class="lineno">  187</span>    {</div>
+<div class="line"><a id="l00188" name="l00188"></a><span class="lineno">  188</span>        <span class="keywordflow">return</span> client-&gt;is_connected();</div>
+<div class="line"><a id="l00189" name="l00189"></a><span class="lineno">  189</span>    }</div>
+<div class="line"><a id="l00190" name="l00190"></a><span class="lineno">  190</span>    <span class="keywordflow">catch</span> (std::exception&amp; exc)</div>
+<div class="line"><a id="l00191" name="l00191"></a><span class="lineno">  191</span>    {</div>
+<div class="line"><a id="l00192" name="l00192"></a><span class="lineno">  192</span>        <span class="keywordflow">throw</span> <a class="code hl_class" href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a>(exc);</div>
+<div class="line"><a id="l00193" name="l00193"></a><span class="lineno">  193</span>    }</div>
+<div class="line"><a id="l00194" name="l00194"></a><span class="lineno">  194</span>}</div>
+<div class="line"><a id="l00195" name="l00195"></a><span class="lineno">  195</span> </div>
+<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15">  196</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15">MQTT::Publisher::configure</a>(<a class="code hl_class" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a> configuration)</div>
+<div class="line"><a id="l00197" name="l00197"></a><span class="lineno">  197</span>{</div>
+<div class="line"><a id="l00198" name="l00198"></a><span class="lineno">  198</span>    this-&gt;configuration = configuration;</div>
+<div class="line"><a id="l00199" name="l00199"></a><span class="lineno">  199</span>    std::string::iterator last_character = this-&gt;configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">root</a>.end() - 1;</div>
+<div class="line"><a id="l00200" name="l00200"></a><span class="lineno">  200</span>    <span class="keywordflow">if</span> ((*last_character) != <span class="charliteral">&#39;/&#39;</span>)</div>
+<div class="line"><a id="l00201" name="l00201"></a><span class="lineno">  201</span>    {</div>
+<div class="line"><a id="l00202" name="l00202"></a><span class="lineno">  202</span>        this-&gt;configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">root</a> += <span class="stringliteral">&quot;/&quot;</span>;</div>
+<div class="line"><a id="l00203" name="l00203"></a><span class="lineno">  203</span>    }</div>
+<div class="line"><a id="l00204" name="l00204"></a><span class="lineno">  204</span>}</div>
+<div class="line"><a id="l00205" name="l00205"></a><span class="lineno">  205</span> </div>
+<div class="line"><a id="l00206" name="l00206"></a><span class="lineno">  206</span> </div>
+<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe">  207</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe">MQTT::Publisher::publish</a>(std::string topic, std::string message, <span class="keywordtype">int</span> qos, <span class="keywordtype">bool</span> retain)</div>
+<div class="line"><a id="l00208" name="l00208"></a><span class="lineno">  208</span>{</div>
+<div class="line"><a id="l00209" name="l00209"></a><span class="lineno">  209</span>    <a class="code hl_struct" href="struct_m_q_t_t_1_1_message_container.html">MQTT::MessageContainer</a> mqtt_message = { topic, message, qos, retain };</div>
+<div class="line"><a id="l00210" name="l00210"></a><span class="lineno">  210</span>    <span class="keywordflow">if</span> ((qos &gt; 0) || (queue_size.load(std::memory_order_consume) &lt;= <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(buffer)))</div>
+<div class="line"><a id="l00211" name="l00211"></a><span class="lineno">  211</span>    {</div>
+<div class="line"><a id="l00212" name="l00212"></a><span class="lineno">  212</span>        std::unique_lock&lt;std::mutex&gt; queue_lock(queue_mutex);</div>
+<div class="line"><a id="l00213" name="l00213"></a><span class="lineno">  213</span>        queue.push_back(mqtt_message);</div>
+<div class="line"><a id="l00214" name="l00214"></a><span class="lineno">  214</span>        queue_size.store(<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(queue.size()), std::memory_order_release);</div>
+<div class="line"><a id="l00215" name="l00215"></a><span class="lineno">  215</span>        queue_condition.notify_all();</div>
+<div class="line"><a id="l00216" name="l00216"></a><span class="lineno">  216</span>        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00217" name="l00217"></a><span class="lineno">  217</span>    }</div>
+<div class="line"><a id="l00218" name="l00218"></a><span class="lineno">  218</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00219" name="l00219"></a><span class="lineno">  219</span>    {</div>
+<div class="line"><a id="l00220" name="l00220"></a><span class="lineno">  220</span>        <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00221" name="l00221"></a><span class="lineno">  221</span>    }</div>
+<div class="line"><a id="l00222" name="l00222"></a><span class="lineno">  222</span>}</div>
+<div class="line"><a id="l00223" name="l00223"></a><span class="lineno">  223</span> </div>
+<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a6096485cddc28d316dd37cd32de809a7">  224</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe">MQTT::Publisher::publish</a>(std::vector&lt;std::string&gt; topics, std::vector&lt;std::string&gt; messages, <span class="keywordtype">int</span> qos, <span class="keywordtype">bool</span> retain)</div>
+<div class="line"><a id="l00225" name="l00225"></a><span class="lineno">  225</span>{</div>
+<div class="line"><a id="l00226" name="l00226"></a><span class="lineno">  226</span>    <span class="keywordtype">int</span> n = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(topics.size());</div>
+<div class="line"><a id="l00227" name="l00227"></a><span class="lineno">  227</span>    std::vector&lt;MQTT::MessageContainer&gt; mqtt_messages(n);</div>
+<div class="line"><a id="l00228" name="l00228"></a><span class="lineno">  228</span>    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; n; i++)</div>
+<div class="line"><a id="l00229" name="l00229"></a><span class="lineno">  229</span>    {</div>
+<div class="line"><a id="l00230" name="l00230"></a><span class="lineno">  230</span>        mqtt_messages.at(i) = { topics.at(i), messages.at(i), qos, retain };</div>
+<div class="line"><a id="l00231" name="l00231"></a><span class="lineno">  231</span>    }</div>
+<div class="line"><a id="l00232" name="l00232"></a><span class="lineno">  232</span>    </div>
+<div class="line"><a id="l00233" name="l00233"></a><span class="lineno">  233</span>    <span class="keywordflow">if</span> ((qos &gt; 0) || (queue_size.load(std::memory_order_consume) &lt;= <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(buffer)))</div>
+<div class="line"><a id="l00234" name="l00234"></a><span class="lineno">  234</span>    {</div>
+<div class="line"><a id="l00235" name="l00235"></a><span class="lineno">  235</span>        std::unique_lock&lt;std::mutex&gt; queue_lock(queue_mutex);</div>
+<div class="line"><a id="l00236" name="l00236"></a><span class="lineno">  236</span>        queue.insert(queue.end(), mqtt_messages.begin(), mqtt_messages.end());</div>
+<div class="line"><a id="l00237" name="l00237"></a><span class="lineno">  237</span>        queue_size.store(<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(queue.size()), std::memory_order_release);</div>
+<div class="line"><a id="l00238" name="l00238"></a><span class="lineno">  238</span>        queue_condition.notify_all();</div>
+<div class="line"><a id="l00239" name="l00239"></a><span class="lineno">  239</span>        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00240" name="l00240"></a><span class="lineno">  240</span>    }</div>
+<div class="line"><a id="l00241" name="l00241"></a><span class="lineno">  241</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00242" name="l00242"></a><span class="lineno">  242</span>    {</div>
+<div class="line"><a id="l00243" name="l00243"></a><span class="lineno">  243</span>        <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00244" name="l00244"></a><span class="lineno">  244</span>    }</div>
+<div class="line"><a id="l00245" name="l00245"></a><span class="lineno">  245</span> </div>
+<div class="line"><a id="l00246" name="l00246"></a><span class="lineno">  246</span>}</div>
+<div class="ttc" id="a_local_exception_8h_html"><div class="ttname"><a href="_local_exception_8h.html">LocalException.h</a></div></div>
+<div class="ttc" id="a_publisher_8h_html"><div class="ttname"><a href="_publisher_8h.html">Publisher.h</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></div><div class="ttdoc">MQTT publishing configuration.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00013">Configuration.h:14</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a365e6700bb8b4d43539de661490b7574"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">MQTT::Configuration::root</a></div><div class="ttdeci">std::string root</div><div class="ttdoc">MQTT root topic.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00064">Configuration.h:64</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a62add1ea6d5351e35a6c829ecdb41e06"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">MQTT::Configuration::keep_alive</a></div><div class="ttdeci">int keep_alive</div><div class="ttdoc">Keep alive interval in seconds.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00072">Configuration.h:72</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a73f639dad1b94cc09de808519a7855fe"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">MQTT::Configuration::ssl</a></div><div class="ttdeci">bool ssl</div><div class="ttdoc">Use secured connection.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00099">Configuration.h:99</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a8e47ba510961e85709038796c458b0be"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">MQTT::Configuration::clean_session</a></div><div class="ttdeci">bool clean_session</div><div class="ttdoc">Clean session flag.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00055">Configuration.h:55</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a9c5a0645489d20461749953881ba7ab7"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">MQTT::Configuration::password</a></div><div class="ttdeci">std::string password</div><div class="ttdoc">Password for connecting to the MQTT broker.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00047">Configuration.h:47</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_aa943275c72ea7cc94bd9de56c0dfaa9d"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">MQTT::Configuration::certificate_authority</a></div><div class="ttdeci">std::string certificate_authority</div><div class="ttdoc">Path to CA PEM-file.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00133">Configuration.h:133</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ab5887b09a89a934dcda3493f17dccd78"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">MQTT::Configuration::verify</a></div><div class="ttdeci">bool verify</div><div class="ttdoc">Skip SSL verification.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00107">Configuration.h:107</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ac4b05210a99b650da641d3966266ec04"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">MQTT::Configuration::uri</a></div><div class="ttdeci">std::string uri()</div><div class="ttdoc">URI Builder.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00053">Configuration.cpp:53</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ad33e07f1c8389126541445253cbfff52"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">MQTT::Configuration::connection_timeout_s</a></div><div class="ttdeci">int connection_timeout_s</div><div class="ttdoc">Connection timeout in seconds.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00090">Configuration.h:90</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ae75c1ab7297f4cf3f25e31ec056df338"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">MQTT::Configuration::username</a></div><div class="ttdeci">std::string username</div><div class="ttdoc">Username for connecting to the MQTT broker.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00039">Configuration.h:39</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_exception_html"><div class="ttname"><a href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a></div><div class="ttdoc">MQTT Publisher Exception.</div><div class="ttdef"><b>Definition:</b> <a href="_local_exception_8h_source.html#l00013">LocalException.h:14</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_a027fef266eed826037e4188766f165f0"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0">MQTT::Publisher::connect</a></div><div class="ttdeci">void connect()</div><div class="ttdoc">Connect to broker.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8cpp_source.html#l00132">Publisher.cpp:132</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_a10e8765c67285d1b9a969c531d091e08"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08">MQTT::Publisher::reconnect</a></div><div class="ttdeci">void reconnect(void)</div><div class="ttdoc">Direct Reconnect.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8cpp_source.html#l00138">Publisher.cpp:138</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_a2904eace56884e6d996113707a729a15"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15">MQTT::Publisher::configure</a></div><div class="ttdeci">void configure(MQTT::Configuration configuration)</div><div class="ttdoc">Register new configuration.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8cpp_source.html#l00196">Publisher.cpp:196</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_a45246cdc54d4972c4639018549605bbe"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe">MQTT::Publisher::publish</a></div><div class="ttdeci">bool publish(std::string topic, std::string message, int qos, bool retain)</div><div class="ttdoc">Publish an MQTT message.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8cpp_source.html#l00207">Publisher.cpp:207</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_a4af13f0d9c7dd02c7eb707122d551801"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801">MQTT::Publisher::set_root_topic</a></div><div class="ttdeci">void set_root_topic(std::string root_topic)</div><div class="ttdoc">Set new root topic.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8cpp_source.html#l00169">Publisher.cpp:169</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_a60b4c5ff7ca2bfee4b13ac00d954c205"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205">MQTT::Publisher::~Publisher</a></div><div class="ttdeci">~Publisher()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8cpp_source.html#l00082">Publisher.cpp:82</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_a6a1dfbd4bc21455ac307e73c4aefda3d"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d">MQTT::Publisher::set_buffer</a></div><div class="ttdeci">void set_buffer(unsigned int buffer)</div><div class="ttdoc">Set message queue size.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8cpp_source.html#l00179">Publisher.cpp:179</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_a725aac90d42d1b9e09e25d3e3347575d"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d">MQTT::Publisher::is_connected</a></div><div class="ttdeci">bool is_connected(void)</div><div class="ttdoc">Is connected?</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8cpp_source.html#l00184">Publisher.cpp:184</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_a9cf2cb13cc906810ce3f403c4ce646ac"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac">MQTT::Publisher::Publisher</a></div><div class="ttdeci">Publisher(std::string id, unsigned int buffer=1024)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8cpp_source.html#l00066">Publisher.cpp:66</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_ac3a08d98f8387d2859c500c982bb243e"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e">MQTT::Publisher::disconnect</a></div><div class="ttdeci">void disconnect(unsigned int timeout=10000)</div><div class="ttdoc">Diconnect from the broker.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8cpp_source.html#l00157">Publisher.cpp:157</a></div></div>
+<div class="ttc" id="astruct_m_q_t_t_1_1_message_container_html"><div class="ttname"><a href="struct_m_q_t_t_1_1_message_container.html">MQTT::MessageContainer</a></div><div class="ttdoc">Internal MQTT message struct.</div><div class="ttdef"><b>Definition:</b> <a href="_message_container_8h_source.html#l00010">MessageContainer.h:11</a></div></div>
+<div class="ttc" id="astruct_m_q_t_t_1_1_message_container_html_a2624104fd87f5343692fba4181c8c1f0"><div class="ttname"><a href="struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0">MQTT::MessageContainer::qos</a></div><div class="ttdeci">int qos</div><div class="ttdoc">Quality of Service.</div><div class="ttdef"><b>Definition:</b> <a href="_message_container_8h_source.html#l00032">MessageContainer.h:32</a></div></div>
+<div class="ttc" id="astruct_m_q_t_t_1_1_message_container_html_a563ac8f9dd9878dcc56ac46e9df171da"><div class="ttname"><a href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">MQTT::MessageContainer::message</a></div><div class="ttdeci">std::string message</div><div class="ttdoc">Message.</div><div class="ttdef"><b>Definition:</b> <a href="_message_container_8h_source.html#l00024">MessageContainer.h:24</a></div></div>
+<div class="ttc" id="astruct_m_q_t_t_1_1_message_container_html_aaef0655958e79f05f192d205fd1d3c79"><div class="ttname"><a href="struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79">MQTT::MessageContainer::topic</a></div><div class="ttdeci">std::string topic</div><div class="ttdoc">Message Topic.</div><div class="ttdef"><b>Definition:</b> <a href="_message_container_8h_source.html#l00017">MessageContainer.h:17</a></div></div>
+<div class="ttc" id="astruct_m_q_t_t_1_1_message_container_html_af1400f50c4a851e4b991e368c3e9bee9"><div class="ttname"><a href="struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9">MQTT::MessageContainer::retain</a></div><div class="ttdeci">bool retain</div><div class="ttdoc">Retain Flag.</div><div class="ttdef"><b>Definition:</b> <a href="_message_container_8h_source.html#l00039">MessageContainer.h:39</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_publisher_8cpp.html">Publisher.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_publisher_8h.html b/doc/html/_publisher_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..07031102c1fea0c91f7eb8f0b16b40260ab9938f
--- /dev/null
+++ b/doc/html/_publisher_8h.html
@@ -0,0 +1,127 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/Publisher.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_publisher_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Publisher.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_m_q_t_t_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_message_container_8h_source.html">MessageContainer.h</a>&quot;</code><br />
+<code>#include &lt;deque&gt;</code><br />
+<code>#include &lt;atomic&gt;</code><br />
+<code>#include &lt;mutex&gt;</code><br />
+<code>#include &lt;thread&gt;</code><br />
+<code>#include &lt;vector&gt;</code><br />
+<code>#include &lt;condition_variable&gt;</code><br />
+</div>
+<p><a href="_publisher_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a>.  <a href="class_m_q_t_t_1_1_publisher.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacemqtt"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemqtt.html">mqtt</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:namespace_m_q_t_t"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_m_q_t_t.html">MQTT</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_publisher_8h.html">Publisher.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_publisher_8h.js b/doc/html/_publisher_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..8e34b1f94067bc8db4ac32d950ed0fe115097794
--- /dev/null
+++ b/doc/html/_publisher_8h.js
@@ -0,0 +1,5 @@
+var _publisher_8h =
+[
+    [ "MQTT::Publisher", "class_m_q_t_t_1_1_publisher.html", "class_m_q_t_t_1_1_publisher" ],
+    [ "PAHO_MQTT_IMPORTS", "_publisher_8h.html#a7448c142e0c36065fc7e625cd4b6b045", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_publisher_8h_source.html b/doc/html/_publisher_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..00a6c091dd0b266f2ec537f781aa8ee95bd172c5
--- /dev/null
+++ b/doc/html/_publisher_8h_source.html
@@ -0,0 +1,192 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT/Publisher.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_publisher_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Publisher.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_publisher_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2_configuration_8h.html">Configuration.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="_message_container_8h.html">MessageContainer.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;deque&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;atomic&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#include &lt;mutex&gt;</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#include &lt;thread&gt;</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#include &lt;condition_variable&gt;</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="comment">//#include &lt;mqtt/async_client.h&gt;</span></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span> </div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span> </div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="namespacemqtt.html">   14</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespacemqtt.html">mqtt</a></div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>{</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <span class="keyword">class </span>async_client;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>}</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_m_q_t_t.html">MQTT</a></div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>{</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html">   35</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_m_q_t_t_1_1_publisher.html">Publisher</a></div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    {</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>        <span class="keyword">static</span> <span class="keywordtype">int</span> instances;</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span> </div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>        std::string id;</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span> </div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>        <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> buffer;</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span> </div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>        <a class="code hl_class" href="class_m_q_t_t_1_1_configuration.html">Configuration</a> configuration;</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span> </div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>        std::shared_ptr&lt;mqtt::async_client&gt; client;</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span> </div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>        std::deque&lt;MessageContainer&gt; queue;</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span> </div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span>        std::atomic&lt;int&gt; queue_size;</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span> </div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span>        std::mutex queue_mutex;</div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno">   99</span> </div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>        std::condition_variable queue_condition;</div>
+<div class="line"><a id="l00106" name="l00106"></a><span class="lineno">  106</span> </div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span>        std::shared_ptr&lt;std::thread&gt; worker;</div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span> </div>
+<div class="line"><a id="l00121" name="l00121"></a><span class="lineno">  121</span>        std::atomic&lt;bool&gt; worker_running;</div>
+<div class="line"><a id="l00122" name="l00122"></a><span class="lineno">  122</span> </div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno">  130</span>        <span class="keywordtype">void</span> loop(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00131" name="l00131"></a><span class="lineno">  131</span> </div>
+<div class="line"><a id="l00138" name="l00138"></a><span class="lineno">  138</span>        <span class="keywordtype">void</span> restart_worker(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00139" name="l00139"></a><span class="lineno">  139</span> </div>
+<div class="line"><a id="l00145" name="l00145"></a><span class="lineno">  145</span>        <span class="keywordtype">void</span> stop_worker(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00146" name="l00146"></a><span class="lineno">  146</span>        </div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span> </div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno">  148</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00157" name="l00157"></a><span class="lineno">  157</span>        <a class="code hl_class" href="class_m_q_t_t_1_1_publisher.html">Publisher</a>(std::string <span class="keywordtype">id</span>, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> buffer = 1024);</div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno">  158</span>        </div>
+<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span>        <a class="code hl_class" href="class_m_q_t_t_1_1_publisher.html">~Publisher</a>();</div>
+<div class="line"><a id="l00165" name="l00165"></a><span class="lineno">  165</span> </div>
+<div class="line"><a id="l00177" name="l00177"></a><span class="lineno">  177</span>        <span class="keywordtype">bool</span> publish(std::string topic, std::string message, <span class="keywordtype">int</span> qos, <span class="keywordtype">bool</span> retain);</div>
+<div class="line"><a id="l00178" name="l00178"></a><span class="lineno">  178</span> </div>
+<div class="line"><a id="l00190" name="l00190"></a><span class="lineno">  190</span>        <span class="keywordtype">bool</span> publish(std::vector&lt;std::string&gt; topics, std::vector&lt;std::string&gt; messages, <span class="keywordtype">int</span> qos, <span class="keywordtype">bool</span> retain);</div>
+<div class="line"><a id="l00191" name="l00191"></a><span class="lineno">  191</span> </div>
+<div class="line"><a id="l00200" name="l00200"></a><span class="lineno">  200</span>        <span class="keywordtype">void</span> connect(<a class="code hl_class" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a> configuration);</div>
+<div class="line"><a id="l00201" name="l00201"></a><span class="lineno">  201</span> </div>
+<div class="line"><a id="l00207" name="l00207"></a><span class="lineno">  207</span>        <span class="keywordtype">void</span> connect();</div>
+<div class="line"><a id="l00208" name="l00208"></a><span class="lineno">  208</span> </div>
+<div class="line"><a id="l00214" name="l00214"></a><span class="lineno">  214</span>        <span class="keywordtype">void</span> reconnect(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00215" name="l00215"></a><span class="lineno">  215</span>        </div>
+<div class="line"><a id="l00224" name="l00224"></a><span class="lineno">  224</span>        <span class="keywordtype">void</span> disconnect(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> timeout = 10000);</div>
+<div class="line"><a id="l00225" name="l00225"></a><span class="lineno">  225</span> </div>
+<div class="line"><a id="l00232" name="l00232"></a><span class="lineno">  232</span>        <span class="keywordtype">void</span> set_root_topic(std::string root_topic);</div>
+<div class="line"><a id="l00233" name="l00233"></a><span class="lineno">  233</span> </div>
+<div class="line"><a id="l00241" name="l00241"></a><span class="lineno">  241</span>        <span class="keywordtype">void</span> set_buffer(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> buffer);</div>
+<div class="line"><a id="l00242" name="l00242"></a><span class="lineno">  242</span> </div>
+<div class="line"><a id="l00251" name="l00251"></a><span class="lineno">  251</span>        <span class="keywordtype">bool</span> is_connected(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00252" name="l00252"></a><span class="lineno">  252</span> </div>
+<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"><a class="line" href="class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd">  261</a></span>        <span class="keyword">inline</span> <span class="keywordtype">int</span> <a class="code hl_function" href="class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd">min_delay_ms</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> configuration.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">min_delay_ms</a>; }</div>
+<div class="line"><a id="l00262" name="l00262"></a><span class="lineno">  262</span> </div>
+<div class="line"><a id="l00270" name="l00270"></a><span class="lineno">  270</span>        <span class="keywordtype">void</span> configure(<a class="code hl_class" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a> configuration);</div>
+<div class="line"><a id="l00271" name="l00271"></a><span class="lineno">  271</span> </div>
+<div class="line"><a id="l00272" name="l00272"></a><span class="lineno">  272</span> </div>
+<div class="line"><a id="l00273" name="l00273"></a><span class="lineno">  273</span>    };</div>
+<div class="line"><a id="l00274" name="l00274"></a><span class="lineno">  274</span>}</div>
+<div class="line"><a id="l00275" name="l00275"></a><span class="lineno">  275</span> </div>
+<div class="line"><a id="l00276" name="l00276"></a><span class="lineno">  276</span> </div>
+<div class="ttc" id="a_message_container_8h_html"><div class="ttname"><a href="_message_container_8h.html">MessageContainer.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2_configuration_8h_html"><div class="ttname"><a href="_u_d_p_2_configuration_8h.html">Configuration.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></div><div class="ttdoc">MQTT publishing configuration.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00013">Configuration.h:14</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_a45ece5471e689eda8ee1c1e15acfc03b"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">MQTT::Configuration::min_delay_ms</a></div><div class="ttdeci">int min_delay_ms</div><div class="ttdoc">Minimum delay between to messages in milliseconds.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00081">Configuration.h:81</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></div><div class="ttdoc">MQTT Publisher.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8h_source.html#l00035">Publisher.h:36</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_publisher_html_a23f69f0d29a0f7e98d0ed2c0a74c47bd"><div class="ttname"><a href="class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd">MQTT::Publisher::min_delay_ms</a></div><div class="ttdeci">int min_delay_ms(void)</div><div class="ttdoc">Minimum delay between to messages in milliseconds.</div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8h_source.html#l00261">Publisher.h:261</a></div></div>
+<div class="ttc" id="anamespace_m_q_t_t_html"><div class="ttname"><a href="namespace_m_q_t_t.html">MQTT</a></div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00005">Configuration.h:6</a></div></div>
+<div class="ttc" id="anamespacemqtt_html"><div class="ttname"><a href="namespacemqtt.html">mqtt</a></div><div class="ttdef"><b>Definition:</b> <a href="_publisher_8h_source.html#l00014">Publisher.h:15</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li><li class="navelem"><a class="el" href="_publisher_8h.html">Publisher.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_r_e_a_d_m_e_8md.html b/doc/html/_r_e_a_d_m_e_8md.html
new file mode 100644
index 0000000000000000000000000000000000000000..13ad6e54def7d2e8bb224e95cffbfa0de18adc11
--- /dev/null
+++ b/doc/html/_r_e_a_d_m_e_8md.html
@@ -0,0 +1,99 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: README.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_r_e_a_d_m_e_8md.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">README.md File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="_r_e_a_d_m_e_8md.html">README.md</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_r_e_s_t_2_types_8h.html b/doc/html/_r_e_s_t_2_types_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..bba68f9d0fb849dc629dcbf022d882a7aad71d04
--- /dev/null
+++ b/doc/html/_r_e_s_t_2_types_8h.html
@@ -0,0 +1,129 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/Types.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_r_e_s_t_2_types_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#typedef-members">Typedefs</a>  </div>
+  <div class="headertitle"><div class="title">Types.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;cpprest/http_listener.h&gt;</code><br />
+</div>
+<p><a href="_r_e_s_t_2_types_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_h_t_t_p"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html">HTTP</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ab1754212af3bb8edc420a97cffb176ea"><td class="memItemLeft" align="right" valign="top">typedef web::http::http_request&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></td></tr>
+<tr class="memdesc:ab1754212af3bb8edc420a97cffb176ea"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Request.  <a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">More...</a><br /></td></tr>
+<tr class="separator:ab1754212af3bb8edc420a97cffb176ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7f55b32590882bc9b905c78799fabdf"><td class="memItemLeft" align="right" valign="top">typedef web::http::http_response&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></td></tr>
+<tr class="memdesc:af7f55b32590882bc9b905c78799fabdf"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Response.  <a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">More...</a><br /></td></tr>
+<tr class="separator:af7f55b32590882bc9b905c78799fabdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af603c787079c0b8cacc07b6be6ae5e95"><td class="memItemLeft" align="right" valign="top">typedef web::http::status_codes&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95">HTTP::Status</a></td></tr>
+<tr class="memdesc:af603c787079c0b8cacc07b6be6ae5e95"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Status.  <a href="namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95">More...</a><br /></td></tr>
+<tr class="separator:af603c787079c0b8cacc07b6be6ae5e95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28a83748614f1c141821ce4b9da83d3f"><td class="memItemLeft" align="right" valign="top">typedef web::http::methods&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f">HTTP::Methods</a></td></tr>
+<tr class="memdesc:a28a83748614f1c141821ce4b9da83d3f"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Methods.  <a href="namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f">More...</a><br /></td></tr>
+<tr class="separator:a28a83748614f1c141821ce4b9da83d3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a317431a644c9db16a1657ecc77677a11"><td class="memItemLeft" align="right" valign="top">typedef web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></td></tr>
+<tr class="memdesc:a317431a644c9db16a1657ecc77677a11"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">More...</a><br /></td></tr>
+<tr class="separator:a317431a644c9db16a1657ecc77677a11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_r_e_s_t_2_types_8h.html">Types.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_r_e_s_t_2_types_8h.js b/doc/html/_r_e_s_t_2_types_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..dbeed6ab2be5ad1be9b2ac38e14fbbd1b54feaa1
--- /dev/null
+++ b/doc/html/_r_e_s_t_2_types_8h.js
@@ -0,0 +1,8 @@
+var _r_e_s_t_2_types_8h =
+[
+    [ "Json", "_r_e_s_t_2_types_8h.html#a317431a644c9db16a1657ecc77677a11", null ],
+    [ "Methods", "_r_e_s_t_2_types_8h.html#a28a83748614f1c141821ce4b9da83d3f", null ],
+    [ "Request", "_r_e_s_t_2_types_8h.html#ab1754212af3bb8edc420a97cffb176ea", null ],
+    [ "Response", "_r_e_s_t_2_types_8h.html#af7f55b32590882bc9b905c78799fabdf", null ],
+    [ "Status", "_r_e_s_t_2_types_8h.html#af603c787079c0b8cacc07b6be6ae5e95", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_r_e_s_t_2_types_8h_source.html b/doc/html/_r_e_s_t_2_types_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..82683c2fddd1301d50fba06b082b44f611e810a7
--- /dev/null
+++ b/doc/html/_r_e_s_t_2_types_8h_source.html
@@ -0,0 +1,121 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/Types.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_r_e_s_t_2_types_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Types.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_r_e_s_t_2_types_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &lt;cpprest/http_listener.h&gt;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_h_t_t_p.html">HTTP</a></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>{</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"><a class="line" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">   11</a></span>    <span class="keyword">typedef</span> web::http::http_request <a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>;</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span> </div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">   18</a></span>    <span class="keyword">typedef</span> web::http::http_response <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span> </div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"><a class="line" href="namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95">   25</a></span>    <span class="keyword">typedef</span> web::http::status_codes <a class="code hl_typedef" href="namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95">Status</a>;</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f">   32</a></span>    <span class="keyword">typedef</span> web::http::methods <a class="code hl_typedef" href="namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f">Methods</a>;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">   39</a></span>    <span class="keyword">typedef</span> web::json::value <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">Json</a>;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span> </div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>}</div>
+<div class="ttc" id="anamespace_h_t_t_p_html"><div class="ttname"><a href="namespace_h_t_t_p.html">HTTP</a></div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00008">Resource.h:8</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a28a83748614f1c141821ce4b9da83d3f"><div class="ttname"><a href="namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f">HTTP::Methods</a></div><div class="ttdeci">web::http::methods Methods</div><div class="ttdoc">HTTP Methods.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00032">Types.h:32</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af603c787079c0b8cacc07b6be6ae5e95"><div class="ttname"><a href="namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95">HTTP::Status</a></div><div class="ttdeci">web::http::status_codes Status</div><div class="ttdoc">HTTP Status.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00025">Types.h:25</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_r_e_s_t_2_types_8h.html">Types.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_r_e_s_t_2constants_8h.html b/doc/html/_r_e_s_t_2constants_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..806b4d923617ea7e8d75fa3a76db69b122cb7962
--- /dev/null
+++ b/doc/html/_r_e_s_t_2constants_8h.html
@@ -0,0 +1,128 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/constants.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_r_e_s_t_2constants_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#define-members">Macros</a>  </div>
+  <div class="headertitle"><div class="title">constants.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_r_e_s_t_2constants_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ac50762666aa00bd3a4308158510f1748"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_r_e_s_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">_WIN32_WINNT</a>&#160;&#160;&#160;0x600</td></tr>
+<tr class="memdesc:ac50762666aa00bd3a4308158510f1748"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default definitions for project.  <a href="_r_e_s_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">More...</a><br /></td></tr>
+<tr class="separator:ac50762666aa00bd3a4308158510f1748"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="ac50762666aa00bd3a4308158510f1748" name="ac50762666aa00bd3a4308158510f1748"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac50762666aa00bd3a4308158510f1748">&#9670;&nbsp;</a></span>_WIN32_WINNT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define _WIN32_WINNT&#160;&#160;&#160;0x600</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >File being referenced by many others containing cross-project defaults. </p>
+
+<p class="definition">Definition at line <a class="el" href="_r_e_s_t_2constants_8h_source.html#l00019">19</a> of file <a class="el" href="_r_e_s_t_2constants_8h_source.html">constants.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_r_e_s_t_2constants_8h.html">constants.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_r_e_s_t_2constants_8h.js b/doc/html/_r_e_s_t_2constants_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..d623efdc42b18a5a3e96fc677cb70d88fa28cb1a
--- /dev/null
+++ b/doc/html/_r_e_s_t_2constants_8h.js
@@ -0,0 +1,4 @@
+var _r_e_s_t_2constants_8h =
+[
+    [ "_WIN32_WINNT", "_r_e_s_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_r_e_s_t_2constants_8h_source.html b/doc/html/_r_e_s_t_2constants_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..ac41ff1ead56ef47946226119e28435ac9798eac
--- /dev/null
+++ b/doc/html/_r_e_s_t_2constants_8h_source.html
@@ -0,0 +1,117 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/constants.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_r_e_s_t_2constants_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">constants.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_r_e_s_t_2constants_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#ifdef _WIN32</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#        pragma warning(disable: 4251)</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#        pragma warning(disable: 4275)</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#    ifdef _WINDLL</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="preprocessor">#        define DLL __declspec(dllexport)</span></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="preprocessor">#    else</span></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span><span class="preprocessor">#        define DLL __declspec(dllimport)</span></div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="preprocessor">#    endif</span></div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span><span class="preprocessor">#elif defined(__unix__)</span></div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="preprocessor">#    define DLL __attribute__((visibility(&quot;default&quot;</span>)))</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="preprocessor">#endif</span></div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="_r_e_s_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">   19</a></span><span class="preprocessor">#define _WIN32_WINNT 0x600</span></div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span><span class="preprocessor">#ifdef _WIN32</span></div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span><span class="preprocessor">#include &lt;SDKDDKVer.h&gt;</span></div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span><span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_r_e_s_t_2constants_8h.html">constants.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_range_8cpp.html b/doc/html/_range_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..e834bbd0ddfe2ed72ce6514c1d76aaa31c2be70c
--- /dev/null
+++ b/doc/html/_range_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Range.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_range_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Range.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_range_8h_source.html">Range.h</a>&quot;</code><br />
+</div>
+<p><a href="_range_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_range_8cpp.html">Range.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_range_8cpp_source.html b/doc/html/_range_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..4bd6e70aa6578911e48465678b040fd0e8788d87
--- /dev/null
+++ b/doc/html/_range_8cpp_source.html
@@ -0,0 +1,215 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Range.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_range_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Range.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_range_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_range_8h.html">Range.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a635b0935b69730c81232c9f26267e5ec">    3</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">SOIL::Range&lt;std::string&gt;::Range</a>() : set(false), low(0), high(std::numeric_limits&lt;size_t&gt;::max())</div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span>{</div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>}</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a940f37a4449075b3d335deb546644df1">    7</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">SOIL::Range&lt;std::string&gt;::Range</a>(<span class="keywordtype">size_t</span> low, <span class="keywordtype">size_t</span> high) : set(true), low(low), high(high)</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>{</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>}</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span> </div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ae8c03e56fc933a95c0fec0d69b81da55">   11</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">SOIL::Range&lt;std::string&gt;::Range</a>(std::vector&lt;size_t&gt; limits) : set(true)</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>{</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keywordflow">if</span> (limits.size() == 0)</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    {</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>        set = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    }</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keywordflow">else</span> <span class="keywordflow">if</span> (limits.size() == 2)</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    {</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>        low = limits.at(0);</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>        high = limits.at(1);</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>        set = <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    }</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    {</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>        <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Invalid vector for range initialization!&quot;</span>);</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    }</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>}</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span> </div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a280aacb2fb5b4ad22c866a83671967c5">   29</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">SOIL::Range&lt;std::string&gt;::~Range</a>()</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>{</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>}</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span> </div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ad5847bdeceb2dcf632de0e7c0c3bc73f">   33</a></span>web::json::value <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">SOIL::Range&lt;std::string&gt;::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>{</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    web::json::value range_array = web::json::value::array();</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    <span class="keywordflow">if</span> (set)</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    {</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>        range_array[0] = <a class="code hl_function" href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">SOIL::to_json&lt;int&gt;</a>(<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(low));</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>        range_array[1] = <a class="code hl_function" href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">SOIL::to_json&lt;int&gt;</a>(<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(high));</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    }</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>    <span class="keywordflow">return</span> range_array;</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>}</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span> </div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a030f2f9b3f2e56f0e832956e069226d2">   44</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">SOIL::Range&lt;std::string&gt;::check</a>(<span class="keyword">const</span> std::string &amp; value)</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>{</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>    <span class="keywordflow">if</span> (set)</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    {</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>        <span class="keywordflow">return</span> ((value.size() &gt;= low) &amp;&amp; (value.size() &lt;= high));</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    }</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>    {</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>    }</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>}</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span> </div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span> </div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span> </div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">   58</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">SOIL::Range&lt;SOIL::ENUM&gt;::Range</a>() : set(false)</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>{</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>}</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span> </div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span> </div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span><a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">SOIL::Range&lt;SOIL::ENUM&gt;::Range</a>(std::vector&lt;std::string&gt; choices) : set(true), choices(choices)</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>{</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>    </div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>}</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span> </div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">   68</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">SOIL::Range&lt;SOIL::ENUM&gt;::~Range</a>()</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>{</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>}</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span> </div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">   72</a></span>web::json::value <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">SOIL::Range&lt;SOIL::ENUM&gt;::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>{</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>    web::json::value range_array = web::json::value::array();</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>    <span class="keywordflow">if</span> (set)</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>    {</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; static_cast&lt;int&gt;(choices.size()); i++)</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span>        {</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>            range_array[i] = SOIL::to_json&lt;std::string&gt;(choices.at(i));</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>        }</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>    }</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>    <span class="keywordflow">return</span> range_array;</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>}</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span> </div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">   85</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">SOIL::Range&lt;SOIL::ENUM&gt;::check</a>(<span class="keyword">const</span> std::string&amp; value)</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>{</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>    <span class="keywordflow">if</span> (set)</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>    { </div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; static_cast&lt;int&gt;(choices.size()); i++)</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span>        {</div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span>            <span class="keywordflow">if</span> (value == choices.at(i))</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span>            {</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>                <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>            }</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>        }</div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>        <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span>    }</div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno">   99</span>    {</div>
+<div class="line"><a id="l00100" name="l00100"></a><span class="lineno">  100</span>        <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00101" name="l00101"></a><span class="lineno">  101</span>    }</div>
+<div class="line"><a id="l00102" name="l00102"></a><span class="lineno">  102</span>}</div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno">  103</span> </div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span><span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">SOIL::Range&lt;SOIL::ENUM&gt;::check</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">SOIL::ENUM</a>&amp; value)</div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>{</div>
+<div class="line"><a id="l00106" name="l00106"></a><span class="lineno">  106</span>    <span class="keywordflow">return</span> this-&gt;check(value.<a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">selected</a>());</div>
+<div class="line"><a id="l00107" name="l00107"></a><span class="lineno">  107</span>}</div>
+<div class="line"><a id="l00108" name="l00108"></a><span class="lineno">  108</span> </div>
+<div class="ttc" id="a_range_8h_html"><div class="ttname"><a href="_range_8h.html">Range.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></div><div class="ttdoc">SOIL Enum Datatype.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8h_source.html#l00015">Enum.h:16</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html_aa02862d7713c094d7ae5819eab23765f"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">SOIL::Enum::selected</a></div><div class="ttdeci">std::string selected(void) const</div><div class="ttdoc">Get selected value.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8cpp_source.html#l00021">Enum.cpp:21</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html_a65b2542daa4ce48d6738533e6e417ade"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">SOIL::Range::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void)</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8cpp_source.html#l00072">Range.cpp:72</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html_a958a4969a97f2eb69c9732c66dc3393e"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">SOIL::Range::Range</a></div><div class="ttdeci">Range()</div><div class="ttdoc">Default Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8cpp_source.html#l00058">Range.cpp:58</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html_a98473208bab6e8563fef085b9c71cd53"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">SOIL::Range::check</a></div><div class="ttdeci">bool check(const T &amp;value)</div><div class="ttdoc">Check.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8cpp_source.html#l00085">Range.cpp:85</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html_ae371a8bd8d3c27d3e77b4e563084b19b"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">SOIL::Range::~Range</a></div><div class="ttdeci">~Range()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8cpp_source.html#l00068">Range.cpp:68</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a86cf6d407ececca2487dcbe521978d21"><div class="ttname"><a href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">SOIL::to_json&lt; int &gt;</a></div><div class="ttdeci">DLL web::json::value to_json&lt; int &gt;(const int &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00023">json_helpers.cpp:23</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_range_8cpp.html">Range.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_range_8h.html b/doc/html/_range_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..c867b6bdb5f1bfc25d7da1684f96fb698332eaea
--- /dev/null
+++ b/doc/html/_range_8h.html
@@ -0,0 +1,127 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Range.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_range_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Range.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="json__helpers_8h_source.html">json_helpers.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_r_e_s_t_2_types_8h_source.html">REST/Types.h</a>&quot;</code><br />
+</div>
+<p><a href="_range_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt; T &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> Helper Class.  <a href="class_s_o_i_l_1_1_range.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">SOIL::Range&lt; std::string &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">String <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a>.  <a href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">SOIL::Range&lt; ENUM &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a>.  <a href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_range_8h.html">Range.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_range_8h_source.html b/doc/html/_range_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..b11afc53cc762bbc00bcbbd5beef7e828f5ded1e
--- /dev/null
+++ b/doc/html/_range_8h_source.html
@@ -0,0 +1,245 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Range.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_range_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Range.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_range_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="json__helpers_8h.html">json_helpers.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="_s_o_i_l_2_types_8h.html">Types.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;<a class="code" href="_r_e_s_t_2_types_8h.html">REST/Types.h</a>&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>{</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range.html">   24</a></span>    <span class="keyword">class </span><a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range</a></div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    {</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>        T low;</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>        T high;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span> </div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>        <span class="keywordtype">bool</span> set;</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>        <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">Range</a>();</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span> </div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>        <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">Range</a>(T low, T high);</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span> </div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>        <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">Range</a>(std::vector&lt;T&gt; limits);</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span> </div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>        <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">~Range</a>();</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span> </div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">wjson</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span> </div>
+<div class="line"><a id="l00101" name="l00101"></a><span class="lineno">  101</span>        <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">check</a>(<span class="keyword">const</span> T &amp; value);</div>
+<div class="line"><a id="l00102" name="l00102"></a><span class="lineno">  102</span>    };</div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno">  103</span> </div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno">  109</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">  110</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range</a>&lt;std::string&gt;</div>
+<div class="line"><a id="l00111" name="l00111"></a><span class="lineno">  111</span>    {</div>
+<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span>        <span class="keywordtype">size_t</span> low;</div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span>        <span class="keywordtype">size_t</span> high;</div>
+<div class="line"><a id="l00115" name="l00115"></a><span class="lineno">  115</span>        <span class="keywordtype">bool</span> set;</div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno">  116</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range</a>();</div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno">  118</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range</a>(<span class="keywordtype">size_t</span> low, <span class="keywordtype">size_t</span> high);</div>
+<div class="line"><a id="l00119" name="l00119"></a><span class="lineno">  119</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range</a>(std::vector&lt;size_t&gt; limits);</div>
+<div class="line"><a id="l00120" name="l00120"></a><span class="lineno">  120</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">~Range</a>();</div>
+<div class="line"><a id="l00121" name="l00121"></a><span class="lineno">  121</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> wjson(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00122" name="l00122"></a><span class="lineno">  122</span>        <span class="keywordtype">bool</span> check(<span class="keyword">const</span> std::string&amp; value);</div>
+<div class="line"><a id="l00123" name="l00123"></a><span class="lineno">  123</span>    };</div>
+<div class="line"><a id="l00124" name="l00124"></a><span class="lineno">  124</span> </div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno">  130</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">  131</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range</a>&lt;<a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">ENUM</a>&gt;</div>
+<div class="line"><a id="l00132" name="l00132"></a><span class="lineno">  132</span>    {</div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno">  133</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00134" name="l00134"></a><span class="lineno">  134</span>        std::vector&lt;std::string&gt; choices;</div>
+<div class="line"><a id="l00135" name="l00135"></a><span class="lineno">  135</span>        <span class="keywordtype">bool</span> set;</div>
+<div class="line"><a id="l00136" name="l00136"></a><span class="lineno">  136</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38">  137</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38">Range</a>();</div>
+<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#abd3d86c944aa61089231909a8d24e7f8">  138</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#abd3d86c944aa61089231909a8d24e7f8">Range</a>(std::vector&lt;std::string&gt; choices);</div>
+<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c">  139</a></span>        <a class="code hl_function" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c">~Range</a>();</div>
+<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3">  140</a></span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3">wjson</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b">  141</a></span>        <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b">check</a>(<span class="keyword">const</span> std::string&amp; value);</div>
+<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#afd07b4bbc51b9b69f1ad8798fcc77fa6">  142</a></span>        <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#afd07b4bbc51b9b69f1ad8798fcc77fa6">check</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">SOIL::ENUM</a>&amp; value);</div>
+<div class="line"><a id="l00143" name="l00143"></a><span class="lineno">  143</span>    };</div>
+<div class="line"><a id="l00144" name="l00144"></a><span class="lineno">  144</span> </div>
+<div class="line"><a id="l00145" name="l00145"></a><span class="lineno">  145</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00146" name="l00146"></a><span class="lineno">  146</span>    <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">Range&lt;T&gt;::Range</a>() : set(false)</div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span>    {</div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno">  148</span>    }</div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno">  149</span> </div>
+<div class="line"><a id="l00150" name="l00150"></a><span class="lineno">  150</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range.html#a97c8857f5b22eb87ca35c1c21a1bd814">  151</a></span>    <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">Range&lt;T&gt;::Range</a>(T low, T high): set(true), low(low), high(high)</div>
+<div class="line"><a id="l00152" name="l00152"></a><span class="lineno">  152</span>    {</div>
+<div class="line"><a id="l00153" name="l00153"></a><span class="lineno">  153</span>    }</div>
+<div class="line"><a id="l00154" name="l00154"></a><span class="lineno">  154</span> </div>
+<div class="line"><a id="l00155" name="l00155"></a><span class="lineno">  155</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_range.html#a7f49766e22783da9259eee242663581b">  156</a></span>    <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">Range&lt;T&gt;::Range</a>(std::vector&lt;T&gt; limits)</div>
+<div class="line"><a id="l00157" name="l00157"></a><span class="lineno">  157</span>    {</div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno">  158</span>        <span class="keywordflow">if</span> (limits.size() == 0)</div>
+<div class="line"><a id="l00159" name="l00159"></a><span class="lineno">  159</span>        {</div>
+<div class="line"><a id="l00160" name="l00160"></a><span class="lineno">  160</span>            set = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00161" name="l00161"></a><span class="lineno">  161</span>        }</div>
+<div class="line"><a id="l00162" name="l00162"></a><span class="lineno">  162</span>        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (limits.size() == 2)</div>
+<div class="line"><a id="l00163" name="l00163"></a><span class="lineno">  163</span>        {</div>
+<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span>            low = limits.at(0);</div>
+<div class="line"><a id="l00165" name="l00165"></a><span class="lineno">  165</span>            high = limits.at(1);</div>
+<div class="line"><a id="l00166" name="l00166"></a><span class="lineno">  166</span>            set = <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00167" name="l00167"></a><span class="lineno">  167</span>        }</div>
+<div class="line"><a id="l00168" name="l00168"></a><span class="lineno">  168</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00169" name="l00169"></a><span class="lineno">  169</span>        {</div>
+<div class="line"><a id="l00170" name="l00170"></a><span class="lineno">  170</span>            <span class="keywordflow">throw</span> std::runtime_error(<span class="stringliteral">&quot;Invalid vector for range initialization!&quot;</span>);</div>
+<div class="line"><a id="l00171" name="l00171"></a><span class="lineno">  171</span>        }</div>
+<div class="line"><a id="l00172" name="l00172"></a><span class="lineno">  172</span>    }</div>
+<div class="line"><a id="l00173" name="l00173"></a><span class="lineno">  173</span> </div>
+<div class="line"><a id="l00174" name="l00174"></a><span class="lineno">  174</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00175" name="l00175"></a><span class="lineno">  175</span>    <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">Range&lt;T&gt;::~Range</a>()</div>
+<div class="line"><a id="l00176" name="l00176"></a><span class="lineno">  176</span>    {</div>
+<div class="line"><a id="l00177" name="l00177"></a><span class="lineno">  177</span>    }</div>
+<div class="line"><a id="l00178" name="l00178"></a><span class="lineno">  178</span> </div>
+<div class="line"><a id="l00179" name="l00179"></a><span class="lineno">  179</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00180" name="l00180"></a><span class="lineno">  180</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">Range&lt;T&gt;::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00181" name="l00181"></a><span class="lineno">  181</span>    {</div>
+<div class="line"><a id="l00182" name="l00182"></a><span class="lineno">  182</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> range_array = HTTP::Json::array();</div>
+<div class="line"><a id="l00183" name="l00183"></a><span class="lineno">  183</span>        <span class="keywordflow">if</span> (set)</div>
+<div class="line"><a id="l00184" name="l00184"></a><span class="lineno">  184</span>        {</div>
+<div class="line"><a id="l00185" name="l00185"></a><span class="lineno">  185</span>            range_array[0] = to_json&lt;T&gt;(low);</div>
+<div class="line"><a id="l00186" name="l00186"></a><span class="lineno">  186</span>            range_array[1] = to_json&lt;T&gt;(high);</div>
+<div class="line"><a id="l00187" name="l00187"></a><span class="lineno">  187</span>        }</div>
+<div class="line"><a id="l00188" name="l00188"></a><span class="lineno">  188</span>        <span class="keywordflow">return</span> range_array;</div>
+<div class="line"><a id="l00189" name="l00189"></a><span class="lineno">  189</span>    }</div>
+<div class="line"><a id="l00190" name="l00190"></a><span class="lineno">  190</span> </div>
+<div class="line"><a id="l00191" name="l00191"></a><span class="lineno">  191</span> </div>
+<div class="line"><a id="l00192" name="l00192"></a><span class="lineno">  192</span>    <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00193" name="l00193"></a><span class="lineno">  193</span>    <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">Range&lt;T&gt;::check</a>(<span class="keyword">const</span> T &amp; value)</div>
+<div class="line"><a id="l00194" name="l00194"></a><span class="lineno">  194</span>    {</div>
+<div class="line"><a id="l00195" name="l00195"></a><span class="lineno">  195</span>        <span class="keywordflow">if</span> (set)</div>
+<div class="line"><a id="l00196" name="l00196"></a><span class="lineno">  196</span>        {</div>
+<div class="line"><a id="l00197" name="l00197"></a><span class="lineno">  197</span>            <span class="keywordflow">return</span> ((value &gt;= low) &amp;&amp; (value &lt;= high));</div>
+<div class="line"><a id="l00198" name="l00198"></a><span class="lineno">  198</span>        }</div>
+<div class="line"><a id="l00199" name="l00199"></a><span class="lineno">  199</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00200" name="l00200"></a><span class="lineno">  200</span>        {</div>
+<div class="line"><a id="l00201" name="l00201"></a><span class="lineno">  201</span>            <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00202" name="l00202"></a><span class="lineno">  202</span>        }</div>
+<div class="line"><a id="l00203" name="l00203"></a><span class="lineno">  203</span>    }</div>
+<div class="line"><a id="l00204" name="l00204"></a><span class="lineno">  204</span> </div>
+<div class="line"><a id="l00205" name="l00205"></a><span class="lineno">  205</span> </div>
+<div class="line"><a id="l00206" name="l00206"></a><span class="lineno">  206</span>    </div>
+<div class="line"><a id="l00207" name="l00207"></a><span class="lineno">  207</span> </div>
+<div class="line"><a id="l00208" name="l00208"></a><span class="lineno">  208</span>}</div>
+<div class="line"><a id="l00209" name="l00209"></a><span class="lineno">  209</span> </div>
+<div class="line"><a id="l00210" name="l00210"></a><span class="lineno">  210</span> </div>
+<div class="ttc" id="a_r_e_s_t_2_types_8h_html"><div class="ttname"><a href="_r_e_s_t_2_types_8h.html">Types.h</a></div></div>
+<div class="ttc" id="a_s_o_i_l_2_types_8h_html"><div class="ttname"><a href="_s_o_i_l_2_types_8h.html">Types.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></div><div class="ttdoc">SOIL Enum Datatype.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8h_source.html#l00015">Enum.h:16</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_html_a4099d35a82c3b57745d3c4d0165f590b"><div class="ttname"><a href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b">SOIL::Range&lt; ENUM &gt;::check</a></div><div class="ttdeci">bool check(const std::string &amp;value)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_html_ab17c214a8c1af57e06e292b19ce1ae38"><div class="ttname"><a href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38">SOIL::Range&lt; ENUM &gt;::Range</a></div><div class="ttdeci">Range()</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_html_abd3d86c944aa61089231909a8d24e7f8"><div class="ttname"><a href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#abd3d86c944aa61089231909a8d24e7f8">SOIL::Range&lt; ENUM &gt;::Range</a></div><div class="ttdeci">Range(std::vector&lt; std::string &gt; choices)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_html_ac783001a590c29c1b9f128d3ad293c2c"><div class="ttname"><a href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c">SOIL::Range&lt; ENUM &gt;::~Range</a></div><div class="ttdeci">~Range()</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_html_acb0783d3e05740740715a4fb8948a2d3"><div class="ttname"><a href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3">SOIL::Range&lt; ENUM &gt;::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_html_afd07b4bbc51b9b69f1ad8798fcc77fa6"><div class="ttname"><a href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#afd07b4bbc51b9b69f1ad8798fcc77fa6">SOIL::Range&lt; ENUM &gt;::check</a></div><div class="ttdeci">bool check(const SOIL::ENUM &amp;value)</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html">SOIL::Range</a></div><div class="ttdoc">Range Helper Class.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8h_source.html#l00024">Range.h:25</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html_a65b2542daa4ce48d6738533e6e417ade"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">SOIL::Range::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void)</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8cpp_source.html#l00072">Range.cpp:72</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html_a958a4969a97f2eb69c9732c66dc3393e"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">SOIL::Range::Range</a></div><div class="ttdeci">Range()</div><div class="ttdoc">Default Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8cpp_source.html#l00058">Range.cpp:58</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html_a98473208bab6e8563fef085b9c71cd53"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">SOIL::Range::check</a></div><div class="ttdeci">bool check(const T &amp;value)</div><div class="ttdoc">Check.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8cpp_source.html#l00085">Range.cpp:85</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html_ae371a8bd8d3c27d3e77b4e563084b19b"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">SOIL::Range::~Range</a></div><div class="ttdeci">~Range()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8cpp_source.html#l00068">Range.cpp:68</a></div></div>
+<div class="ttc" id="ajson__helpers_8h_html"><div class="ttname"><a href="json__helpers_8h.html">json_helpers.h</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_range_8h.html">Range.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_resource_8cpp.html b/doc/html/_resource_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..02f5adb2169abc1bf07a83c0f8fca013896b6bcb
--- /dev/null
+++ b/doc/html/_resource_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/Resource.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_resource_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Resource.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_resource_8h_source.html">Resource.h</a>&quot;</code><br />
+</div>
+<p><a href="_resource_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_resource_8cpp.html">Resource.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_resource_8cpp_source.html b/doc/html/_resource_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..1309992b8460d377ff73dded9ecf4b172e236c97
--- /dev/null
+++ b/doc/html/_resource_8cpp_source.html
@@ -0,0 +1,282 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/Resource.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_resource_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Resource.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_resource_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_resource_8h.html">Resource.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">    3</a></span>web::json::value <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">HTTP::Resource::request_info</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span>{</div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>    web::json::value headers;</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>    <span class="keywordflow">for</span> (web::http::http_headers::iterator i = message.headers().begin(); i != message.headers().end(); i++)</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    {</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>        headers[i-&gt;first] = web::json::value::string(i-&gt;second);</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    }</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    web::json::value body;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    body[U(<span class="stringliteral">&quot;method&quot;</span>)] = web::json::value::string(message.method());</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    body[U(<span class="stringliteral">&quot;headers&quot;</span>)] = headers;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keyword">auto</span> task = message.extract_string();</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    task.wait();</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    body[U(<span class="stringliteral">&quot;body&quot;</span>)] = web::json::value::string(task.get());</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    web::uri uri = message.absolute_uri();</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    web::json::value url;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    url[U(<span class="stringliteral">&quot;path&quot;</span>)] = web::json::value::string(uri.path());</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    url[U(<span class="stringliteral">&quot;scheme&quot;</span>)] = web::json::value::string(uri.scheme());</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    url[U(<span class="stringliteral">&quot;query&quot;</span>)] = web::json::value::string(uri.query());</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    url[U(<span class="stringliteral">&quot;host&quot;</span>)] = web::json::value::string(uri.host());</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    url[U(<span class="stringliteral">&quot;port&quot;</span>)] = web::json::value::number(uri.port());</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    body[U(<span class="stringliteral">&quot;url&quot;</span>)] = url;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    body[U(<span class="stringliteral">&quot;remote_address&quot;</span>)] = web::json::value(message.remote_address());</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    std::vector&lt;web::json::value&gt; matches;</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; match.size(); i++)</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    {</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>        std::string m = match.str(i);</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>        matches.push_back(web::json::value::string(utility::conversions::to_string_t(m)));</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    }</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    body[U(<span class="stringliteral">&quot;matches&quot;</span>)] = web::json::value::array(matches);</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    <span class="keywordflow">return</span> body;</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>}</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span> </div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> HTTP::Resource::fallback(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>{</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>    </div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    web::json::value body = request_info(message, match);</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> response;</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    response.set_body(body);</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    response.set_status_code(Status::NotImplemented);</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>    this-&gt;apply_headers(response);</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>}</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span> </div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">   50</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">HTTP::Resource::apply_headers</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> &amp; response)</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>{</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>    utility::string_t allowed_methods;</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>    <span class="keywordflow">for</span> (<span class="keyword">auto</span> i = this-&gt;allowed_methods.begin(); i != this-&gt;allowed_methods.end(); i++)</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    {</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>        <span class="keywordflow">if</span> (i != this-&gt;allowed_methods.begin())</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>        {</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>            allowed_methods.append(U(<span class="stringliteral">&quot;, &quot;</span>));</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>        }</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>        allowed_methods.append(*i);</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>    }</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>    response.headers().add(U(<span class="stringliteral">&quot;Access-Control-Allow-Origin&quot;</span>), utility::conversions::to_string_t(allowed_origins));</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>    response.headers().add(U(<span class="stringliteral">&quot;Access-Control-Allow-Headers&quot;</span>), U(<span class="stringliteral">&quot;content-type&quot;</span>));</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>    response.headers().add(U(<span class="stringliteral">&quot;Allow&quot;</span>), allowed_methods);</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    response.headers().add(U(<span class="stringliteral">&quot;Content-Type&quot;</span>), utility::conversions::to_string_t(content_type));</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>}</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span> </div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">   67</a></span><a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">HTTP::Resource::Resource</a>()</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>{</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>    allowed_origins = <span class="stringliteral">&quot;*&quot;</span>;</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>    allowed_methods = { web::http::methods::GET, web::http::methods::DEL, web::http::methods::PATCH, web::http::methods::POST, web::http::methods::OPTIONS, web::http::methods::HEAD, web::http::methods::PUT };</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>    content_type = <span class="stringliteral">&quot;application/json&quot;</span>;</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span>}</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span> </div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">   74</a></span><a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">HTTP::Resource::~Resource</a>()</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>{</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>}</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span> </div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">   78</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">HTTP::Resource::handle</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>{</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> response;</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>    <span class="keywordflow">try</span></div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>    {</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>        <span class="keywordflow">if</span> (message.method() == Methods::GET)</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>        {</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span>            response = this-&gt;handle_get(message, match);</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>        }</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (message.method() == Methods::POST)</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>        {</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>            response = this-&gt;handle_post(message, match);</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span>        }</div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span>        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (message.method() == Methods::PATCH)</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span>        {</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>            response = this-&gt;handle_patch(message, match);</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>        }</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (message.method() == Methods::DEL)</div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>        {</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span>            response = this-&gt;handle_delete(message, match);</div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span>        }</div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno">   99</span>        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (message.method() == Methods::PUT)</div>
+<div class="line"><a id="l00100" name="l00100"></a><span class="lineno">  100</span>        {</div>
+<div class="line"><a id="l00101" name="l00101"></a><span class="lineno">  101</span>            response = this-&gt;handle_put(message, match);</div>
+<div class="line"><a id="l00102" name="l00102"></a><span class="lineno">  102</span>        }</div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno">  103</span>        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (message.method() == Methods::OPTIONS)</div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span>        {</div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>            response = this-&gt;handle_options(message, match);</div>
+<div class="line"><a id="l00106" name="l00106"></a><span class="lineno">  106</span>        }</div>
+<div class="line"><a id="l00107" name="l00107"></a><span class="lineno">  107</span>        <span class="keywordflow">else</span> <span class="keywordflow">if</span> (message.method() == Methods::HEAD)</div>
+<div class="line"><a id="l00108" name="l00108"></a><span class="lineno">  108</span>        {</div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno">  109</span>            response = this-&gt;handle_head(message, match);</div>
+<div class="line"><a id="l00110" name="l00110"></a><span class="lineno">  110</span>        }</div>
+<div class="line"><a id="l00111" name="l00111"></a><span class="lineno">  111</span>    }</div>
+<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span>    <span class="keywordflow">catch</span> (std::exception&amp; exception)</div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span>    {</div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span>        response = handle_exception(message, exception, match);</div>
+<div class="line"><a id="l00115" name="l00115"></a><span class="lineno">  115</span> </div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno">  116</span>    }</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno">  118</span>}</div>
+<div class="line"><a id="l00119" name="l00119"></a><span class="lineno">  119</span> </div>
+<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">  120</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">HTTP::Resource::handle_get</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00121" name="l00121"></a><span class="lineno">  121</span>{</div>
+<div class="line"><a id="l00122" name="l00122"></a><span class="lineno">  122</span>    <span class="keywordflow">return</span> this-&gt;fallback(message, match);</div>
+<div class="line"><a id="l00123" name="l00123"></a><span class="lineno">  123</span>}</div>
+<div class="line"><a id="l00124" name="l00124"></a><span class="lineno">  124</span> </div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">  125</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">HTTP::Resource::handle_post</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span>{</div>
+<div class="line"><a id="l00127" name="l00127"></a><span class="lineno">  127</span>    <span class="keywordflow">return</span> this-&gt;fallback(message, match);</div>
+<div class="line"><a id="l00128" name="l00128"></a><span class="lineno">  128</span>}</div>
+<div class="line"><a id="l00129" name="l00129"></a><span class="lineno">  129</span> </div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">  130</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">HTTP::Resource::handle_patch</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00131" name="l00131"></a><span class="lineno">  131</span>{</div>
+<div class="line"><a id="l00132" name="l00132"></a><span class="lineno">  132</span>    <span class="keywordflow">return</span> this-&gt;fallback(message, match);</div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno">  133</span>}</div>
+<div class="line"><a id="l00134" name="l00134"></a><span class="lineno">  134</span> </div>
+<div class="line"><a id="l00135" name="l00135"></a><span class="lineno">  135</span> </div>
+<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">  136</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">HTTP::Resource::handle_delete</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00137" name="l00137"></a><span class="lineno">  137</span>{</div>
+<div class="line"><a id="l00138" name="l00138"></a><span class="lineno">  138</span>    <span class="keywordflow">return</span> this-&gt;fallback(message, match);</div>
+<div class="line"><a id="l00139" name="l00139"></a><span class="lineno">  139</span>}</div>
+<div class="line"><a id="l00140" name="l00140"></a><span class="lineno">  140</span> </div>
+<div class="line"><a id="l00141" name="l00141"></a><span class="lineno">  141</span> </div>
+<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">  142</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">HTTP::Resource::handle_put</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00143" name="l00143"></a><span class="lineno">  143</span>{</div>
+<div class="line"><a id="l00144" name="l00144"></a><span class="lineno">  144</span>    <span class="keywordflow">return</span> this-&gt;fallback(message, match);</div>
+<div class="line"><a id="l00145" name="l00145"></a><span class="lineno">  145</span>}</div>
+<div class="line"><a id="l00146" name="l00146"></a><span class="lineno">  146</span> </div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span> </div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">  148</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">HTTP::Resource::handle_options</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno">  149</span>{</div>
+<div class="line"><a id="l00150" name="l00150"></a><span class="lineno">  150</span>    <span class="keywordflow">return</span> this-&gt;fallback(message, match);</div>
+<div class="line"><a id="l00151" name="l00151"></a><span class="lineno">  151</span>}</div>
+<div class="line"><a id="l00152" name="l00152"></a><span class="lineno">  152</span> </div>
+<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">  153</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">HTTP::Resource::handle_head</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00154" name="l00154"></a><span class="lineno">  154</span>{</div>
+<div class="line"><a id="l00155" name="l00155"></a><span class="lineno">  155</span>    <span class="keywordflow">return</span> this-&gt;fallback(message, match);</div>
+<div class="line"><a id="l00156" name="l00156"></a><span class="lineno">  156</span>}</div>
+<div class="line"><a id="l00157" name="l00157"></a><span class="lineno">  157</span> </div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">  158</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">HTTP::Resource::handle_exception</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::exception &amp; exception, std::smatch match)</div>
+<div class="line"><a id="l00159" name="l00159"></a><span class="lineno">  159</span>{</div>
+<div class="line"><a id="l00160" name="l00160"></a><span class="lineno">  160</span>    web::json::value body = request_info(message, match);</div>
+<div class="line"><a id="l00161" name="l00161"></a><span class="lineno">  161</span>    body[U(<span class="stringliteral">&quot;error&quot;</span>)] = web::json::value(utility::conversions::to_string_t(exception.what()));</div>
+<div class="line"><a id="l00162" name="l00162"></a><span class="lineno">  162</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> response;</div>
+<div class="line"><a id="l00163" name="l00163"></a><span class="lineno">  163</span>    response.set_body(body);</div>
+<div class="line"><a id="l00164" name="l00164"></a><span class="lineno">  164</span>    response.set_status_code(Status::InternalError);</div>
+<div class="line"><a id="l00165" name="l00165"></a><span class="lineno">  165</span>    this-&gt;apply_headers(response);</div>
+<div class="line"><a id="l00166" name="l00166"></a><span class="lineno">  166</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00167" name="l00167"></a><span class="lineno">  167</span>}</div>
+<div class="ttc" id="a_resource_8h_html"><div class="ttname"><a href="_resource_8h.html">Resource.h</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a188f4a9d639f416317a9f5a6992e6ec5"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">HTTP::Resource::~Resource</a></div><div class="ttdeci">~Resource()</div><div class="ttdoc">Default Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00074">Resource.cpp:74</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a21b1e78bdca84f9fd04fd026a0c3ea9c"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">HTTP::Resource::handle_put</a></div><div class="ttdeci">virtual Response handle_put(Request message, std::smatch match=std::smatch())</div><div class="ttdoc">HTTP PUT Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00142">Resource.cpp:142</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a3af3a05ec6058b8a8e058ceebe1d7ddf"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">HTTP::Resource::handle_post</a></div><div class="ttdeci">virtual Response handle_post(Request message, std::smatch match=std::smatch())</div><div class="ttdoc">HTTP POST Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00125">Resource.cpp:125</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a4d76365792fb2684cc05a36ee2573dad"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">HTTP::Resource::request_info</a></div><div class="ttdeci">static web::json::value request_info(Request message, std::smatch match=std::smatch())</div><div class="ttdoc">Request Info.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00003">Resource.cpp:3</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a5d1c2122fd6f7ea51c03c3b5cb45f2fc"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">HTTP::Resource::Resource</a></div><div class="ttdeci">Resource()</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00067">Resource.cpp:67</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a742c093a9caba778c16592c424c4a169"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">HTTP::Resource::handle</a></div><div class="ttdeci">virtual Response handle(Request message, std::smatch match=std::smatch())</div><div class="ttdoc">HTTP Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00078">Resource.cpp:78</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a812b69953a8704e2528165c7d79012a5"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">HTTP::Resource::handle_head</a></div><div class="ttdeci">virtual Response handle_head(Request message, std::smatch match=std::smatch())</div><div class="ttdoc">HTTP HEAD Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00153">Resource.cpp:153</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_aa65b75aa0006d4dc26b92dc6ae8017eb"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">HTTP::Resource::apply_headers</a></div><div class="ttdeci">void apply_headers(Response &amp;response)</div><div class="ttdoc">Apply headers.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00050">Resource.cpp:50</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_aad145d8d9ff6e9b1d0044b7e26678800"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">HTTP::Resource::handle_exception</a></div><div class="ttdeci">virtual Response handle_exception(Request message, std::exception &amp;exception, std::smatch match=std::smatch())</div><div class="ttdoc">HTTP Exception handler.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00158">Resource.cpp:158</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_abc5c8dc34053d3b02eae489f5c1afda4"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">HTTP::Resource::handle_options</a></div><div class="ttdeci">virtual Response handle_options(Request message, std::smatch match=std::smatch())</div><div class="ttdoc">HTTP OPTIONS Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00148">Resource.cpp:148</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_ae0d3b5ab1757e069f38c55e2d5ecc3af"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">HTTP::Resource::handle_delete</a></div><div class="ttdeci">virtual Response handle_delete(Request message, std::smatch match=std::smatch())</div><div class="ttdoc">HTTP DELETE Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00136">Resource.cpp:136</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_ae6913253b8e38f0f4eed9903058ae589"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">HTTP::Resource::handle_get</a></div><div class="ttdeci">virtual Response handle_get(Request message, std::smatch match=std::smatch())</div><div class="ttdoc">HTTP GET Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00120">Resource.cpp:120</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_aec711995a2b463d35443e66e4eb70533"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">HTTP::Resource::handle_patch</a></div><div class="ttdeci">virtual Response handle_patch(Request message, std::smatch match=std::smatch())</div><div class="ttdoc">HTTP PATCH Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8cpp_source.html#l00130">Resource.cpp:130</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_resource_8cpp.html">Resource.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_resource_8h.html b/doc/html/_resource_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..cd41a6c7dee74f4892fd60f0653711c88ba522f3
--- /dev/null
+++ b/doc/html/_resource_8h.html
@@ -0,0 +1,121 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/Resource.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_resource_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Resource.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_r_e_s_t_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_r_e_s_t_2_types_8h_source.html">Types.h</a>&quot;</code><br />
+<code>#include &quot;cpprest/http_listener.h&quot;</code><br />
+<code>#include &lt;regex&gt;</code><br />
+<code>#include &lt;vector&gt;</code><br />
+</div>
+<p><a href="_resource_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> <a class="el" href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class.">Resource</a> base class.  <a href="class_h_t_t_p_1_1_resource.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_h_t_t_p"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html">HTTP</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_resource_8h.html">Resource.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_resource_8h_source.html b/doc/html/_resource_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..6354047f93b748624566e5fb165b73e372cdb617
--- /dev/null
+++ b/doc/html/_resource_8h_source.html
@@ -0,0 +1,156 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/Resource.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_resource_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Resource.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_resource_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_s_o_i_l_2_types_8h.html">Types.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;cpprest/http_listener.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;regex&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="namespace_h_t_t_p.html">    8</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_h_t_t_p.html">HTTP</a> {</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span> </div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html">   20</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_h_t_t_p_1_1_resource.html">Resource</a></div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    {</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> fallback(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    <span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">   42</a></span>        std::vector&lt;web::http::method&gt; <a class="code hl_variable" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a>;</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span> </div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">   50</a></span>        std::string <a class="code hl_variable" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a>;</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span> </div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">   60</a></span>        std::string <a class="code hl_variable" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a>;</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span> </div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>        <span class="keywordtype">void</span> apply_headers(<a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&amp; response);</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>        <a class="code hl_class" href="class_h_t_t_p_1_1_resource.html">Resource</a>();</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span> </div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>        <a class="code hl_class" href="class_h_t_t_p_1_1_resource.html">~Resource</a>();</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span> </div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>        <span class="keyword">static</span> web::json::value request_info(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span> </div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno">  109</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> handle(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00110" name="l00110"></a><span class="lineno">  110</span> </div>
+<div class="line"><a id="l00122" name="l00122"></a><span class="lineno">  122</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> handle_get(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00123" name="l00123"></a><span class="lineno">  123</span> </div>
+<div class="line"><a id="l00135" name="l00135"></a><span class="lineno">  135</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> handle_put(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00136" name="l00136"></a><span class="lineno">  136</span> </div>
+<div class="line"><a id="l00148" name="l00148"></a><span class="lineno">  148</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> handle_post(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00149" name="l00149"></a><span class="lineno">  149</span> </div>
+<div class="line"><a id="l00161" name="l00161"></a><span class="lineno">  161</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> handle_delete(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00162" name="l00162"></a><span class="lineno">  162</span> </div>
+<div class="line"><a id="l00174" name="l00174"></a><span class="lineno">  174</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> handle_patch(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00175" name="l00175"></a><span class="lineno">  175</span> </div>
+<div class="line"><a id="l00187" name="l00187"></a><span class="lineno">  187</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> handle_options(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00188" name="l00188"></a><span class="lineno">  188</span> </div>
+<div class="line"><a id="l00200" name="l00200"></a><span class="lineno">  200</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> handle_head(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00201" name="l00201"></a><span class="lineno">  201</span> </div>
+<div class="line"><a id="l00213" name="l00213"></a><span class="lineno">  213</span>        <span class="keyword">virtual</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> handle_exception(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message,  std::exception&amp; exception, std::smatch match = std::smatch());</div>
+<div class="line"><a id="l00214" name="l00214"></a><span class="lineno">  214</span>    };</div>
+<div class="line"><a id="l00215" name="l00215"></a><span class="lineno">  215</span>}</div>
+<div class="line"><a id="l00216" name="l00216"></a><span class="lineno">  216</span> </div>
+<div class="ttc" id="a_s_o_i_l_2_types_8h_html"><div class="ttname"><a href="_s_o_i_l_2_types_8h.html">Types.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></div><div class="ttdoc">HTTP Resource base class.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00020">Resource.h:21</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a4a78094cb756c0886c787f93462621c0"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">HTTP::Resource::allowed_methods</a></div><div class="ttdeci">std::vector&lt; web::http::method &gt; allowed_methods</div><div class="ttdoc">Allowed methods.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00042">Resource.h:42</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a8cb354f4fa7e6d76bdd748f50728b752"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">HTTP::Resource::allowed_origins</a></div><div class="ttdeci">std::string allowed_origins</div><div class="ttdoc">Allowed Origins.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00060">Resource.h:60</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a9d14fee20d1db0e8bd76e6f151e606e6"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">HTTP::Resource::content_type</a></div><div class="ttdeci">std::string content_type</div><div class="ttdoc">Content type.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00050">Resource.h:50</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html"><div class="ttname"><a href="namespace_h_t_t_p.html">HTTP</a></div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00008">Resource.h:8</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_resource_8h.html">Resource.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_s_i_g_n_2constants_8h.html b/doc/html/_s_i_g_n_2constants_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..cebd853d391549c5e93135f062d95a39d2590e5d
--- /dev/null
+++ b/doc/html/_s_i_g_n_2constants_8h.html
@@ -0,0 +1,128 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN/constants.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_s_i_g_n_2constants_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#define-members">Macros</a>  </div>
+  <div class="headertitle"><div class="title">constants.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_s_i_g_n_2constants_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ac50762666aa00bd3a4308158510f1748"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_i_g_n_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">_WIN32_WINNT</a>&#160;&#160;&#160;0x600</td></tr>
+<tr class="memdesc:ac50762666aa00bd3a4308158510f1748"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default definitions for project.  <a href="_s_i_g_n_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">More...</a><br /></td></tr>
+<tr class="separator:ac50762666aa00bd3a4308158510f1748"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="ac50762666aa00bd3a4308158510f1748" name="ac50762666aa00bd3a4308158510f1748"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac50762666aa00bd3a4308158510f1748">&#9670;&nbsp;</a></span>_WIN32_WINNT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define _WIN32_WINNT&#160;&#160;&#160;0x600</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >File being referenced by many others containing cross-project defaults. </p>
+
+<p class="definition">Definition at line <a class="el" href="_s_i_g_n_2constants_8h_source.html#l00019">19</a> of file <a class="el" href="_s_i_g_n_2constants_8h_source.html">constants.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li><li class="navelem"><a class="el" href="_s_i_g_n_2constants_8h.html">constants.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_s_i_g_n_2constants_8h.js b/doc/html/_s_i_g_n_2constants_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..e00fef1a6b8158a997999d1588f2cca6a94298cb
--- /dev/null
+++ b/doc/html/_s_i_g_n_2constants_8h.js
@@ -0,0 +1,4 @@
+var _s_i_g_n_2constants_8h =
+[
+    [ "_WIN32_WINNT", "_s_i_g_n_2constants_8h.html#ac50762666aa00bd3a4308158510f1748", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_s_i_g_n_2constants_8h_source.html b/doc/html/_s_i_g_n_2constants_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..fb593737b716d1b68ff5c7dc5bbf7bc7b0f589d7
--- /dev/null
+++ b/doc/html/_s_i_g_n_2constants_8h_source.html
@@ -0,0 +1,117 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN/constants.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_s_i_g_n_2constants_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">constants.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_s_i_g_n_2constants_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#ifdef _WIN32</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#        pragma warning(disable: 4251)</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#        pragma warning(disable: 4275)</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#    ifdef _WINDLL</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="preprocessor">#        define DLL __declspec(dllexport)</span></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="preprocessor">#    else</span></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span><span class="preprocessor">#        define DLL __declspec(dllimport)</span></div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="preprocessor">#    endif</span></div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span><span class="preprocessor">#elif defined(__unix__)</span></div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="preprocessor">#    define DLL __attribute__((visibility(&quot;default&quot;</span>)))</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="preprocessor">#endif</span></div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="_s_i_g_n_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">   19</a></span><span class="preprocessor">#define _WIN32_WINNT 0x600</span></div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span><span class="preprocessor">#ifdef _WIN32</span></div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span><span class="preprocessor">#include &lt;SDKDDKVer.h&gt;</span></div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span><span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li><li class="navelem"><a class="el" href="_s_i_g_n_2constants_8h.html">constants.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_s_o_i_l_2_types_8h.html b/doc/html/_s_o_i_l_2_types_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..a21ce4741cdfcbf0ffd9fa021e7d2d5ab3676925
--- /dev/null
+++ b/doc/html/_s_o_i_l_2_types_8h.html
@@ -0,0 +1,137 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Types.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_s_o_i_l_2_types_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#typedef-members">Typedefs</a>  </div>
+  <div class="headertitle"><div class="title">Types.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_time_8h_source.html">Time.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_enum_8h_source.html">Enum.h</a>&quot;</code><br />
+</div>
+<p><a href="_s_o_i_l_2_types_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aef76c04a3939438dd7454193a3d56384"><td class="memItemLeft" align="right" valign="top">typedef int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384">SOIL::INT</a></td></tr>
+<tr class="memdesc:aef76c04a3939438dd7454193a3d56384"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Integer.  <a href="namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384">More...</a><br /></td></tr>
+<tr class="separator:aef76c04a3939438dd7454193a3d56384"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1691ac525df63feb4f180fcc32f307f1"><td class="memItemLeft" align="right" valign="top">typedef double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1">SOIL::DOUBLE</a></td></tr>
+<tr class="memdesc:a1691ac525df63feb4f180fcc32f307f1"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Double.  <a href="namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1">More...</a><br /></td></tr>
+<tr class="separator:a1691ac525df63feb4f180fcc32f307f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79f0d9e5821444f0265d9edf1e37f237"><td class="memItemLeft" align="right" valign="top">typedef bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">SOIL::BOOL</a></td></tr>
+<tr class="memdesc:a79f0d9e5821444f0265d9edf1e37f237"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Boolean.  <a href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">More...</a><br /></td></tr>
+<tr class="separator:a79f0d9e5821444f0265d9edf1e37f237"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69374c360d593ed3cd4df6f3ebb40643"><td class="memItemLeft" align="right" valign="top">typedef std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643">SOIL::STRING</a></td></tr>
+<tr class="memdesc:a69374c360d593ed3cd4df6f3ebb40643"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> String.  <a href="namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643">More...</a><br /></td></tr>
+<tr class="separator:a69374c360d593ed3cd4df6f3ebb40643"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d5fe6676b3cd6aef4b24e9c4ba4f097"><td class="memItemLeft" align="right" valign="top">typedef Enum&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a></td></tr>
+<tr class="memdesc:a1d5fe6676b3cd6aef4b24e9c4ba4f097"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a>.  <a href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">More...</a><br /></td></tr>
+<tr class="separator:a1d5fe6676b3cd6aef4b24e9c4ba4f097"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a088b157f218c9c844ae77c2c07f1b328"><td class="memItemLeft" align="right" valign="top">typedef Time&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a></td></tr>
+<tr class="memdesc:a088b157f218c9c844ae77c2c07f1b328"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a>.  <a href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">More...</a><br /></td></tr>
+<tr class="separator:a088b157f218c9c844ae77c2c07f1b328"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a738722655e044a443e338fde0f97e9a0"><td class="memItemLeft" align="right" valign="top">typedef std::vector&lt; unsigned int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0">SOIL::DIMENSION</a></td></tr>
+<tr class="memdesc:a738722655e044a443e338fde0f97e9a0"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Dimension.  <a href="namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0">More...</a><br /></td></tr>
+<tr class="separator:a738722655e044a443e338fde0f97e9a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_s_o_i_l_2_types_8h.html">Types.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_s_o_i_l_2_types_8h.js b/doc/html/_s_o_i_l_2_types_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..6d2e366fe77bcc42328c21cfe11916357a5d0a3e
--- /dev/null
+++ b/doc/html/_s_o_i_l_2_types_8h.js
@@ -0,0 +1,10 @@
+var _s_o_i_l_2_types_8h =
+[
+    [ "BOOL", "_s_o_i_l_2_types_8h.html#a79f0d9e5821444f0265d9edf1e37f237", null ],
+    [ "DIMENSION", "_s_o_i_l_2_types_8h.html#a738722655e044a443e338fde0f97e9a0", null ],
+    [ "DOUBLE", "_s_o_i_l_2_types_8h.html#a1691ac525df63feb4f180fcc32f307f1", null ],
+    [ "ENUM", "_s_o_i_l_2_types_8h.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097", null ],
+    [ "INT", "_s_o_i_l_2_types_8h.html#aef76c04a3939438dd7454193a3d56384", null ],
+    [ "STRING", "_s_o_i_l_2_types_8h.html#a69374c360d593ed3cd4df6f3ebb40643", null ],
+    [ "TIME", "_s_o_i_l_2_types_8h.html#a088b157f218c9c844ae77c2c07f1b328", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_s_o_i_l_2_types_8h_source.html b/doc/html/_s_o_i_l_2_types_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..fd4030ff55e5819d4c89870afd8d0b523cb075d1
--- /dev/null
+++ b/doc/html/_s_o_i_l_2_types_8h_source.html
@@ -0,0 +1,133 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Types.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_s_o_i_l_2_types_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Types.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_s_o_i_l_2_types_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span> </div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#include &quot;<a class="code" href="_time_8h.html">Time.h</a>&quot;</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#include &quot;<a class="code" href="_enum_8h.html">Enum.h</a>&quot;</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>{</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384">   18</a></span>    <span class="keyword">typedef</span> int64_t <a class="code hl_typedef" href="namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384">INT</a>;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span> </div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1">   26</a></span>    <span class="keyword">typedef</span> <span class="keywordtype">double</span> <a class="code hl_typedef" href="namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1">DOUBLE</a>;</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span> </div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">   33</a></span>    <span class="keyword">typedef</span> <span class="keywordtype">bool</span> <a class="code hl_typedef" href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">BOOL</a>;</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span> </div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643">   40</a></span>    <span class="keyword">typedef</span> std::string <a class="code hl_typedef" href="namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643">STRING</a>;</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span> </div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">   47</a></span>    <span class="keyword">typedef</span> <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">Enum</a> <a class="code hl_typedef" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">ENUM</a>;</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    </div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">   54</a></span>    <span class="keyword">typedef</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">Time</a> <a class="code hl_typedef" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>;</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span> </div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0">   61</a></span>    <span class="keyword">typedef</span> std::vector&lt;unsigned int&gt; <a class="code hl_typedef" href="namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0">DIMENSION</a>;</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span> </div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span> </div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>}</div>
+<div class="ttc" id="a_enum_8h_html"><div class="ttname"><a href="_enum_8h.html">Enum.h</a></div></div>
+<div class="ttc" id="a_time_8h_html"><div class="ttname"><a href="_time_8h.html">Time.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></div><div class="ttdoc">SOIL Enum Datatype.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8h_source.html#l00015">Enum.h:16</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00012">Time.h:13</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a088b157f218c9c844ae77c2c07f1b328"><div class="ttname"><a href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a></div><div class="ttdeci">Time TIME</div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00054">Types.h:54</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a1691ac525df63feb4f180fcc32f307f1"><div class="ttname"><a href="namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1">SOIL::DOUBLE</a></div><div class="ttdeci">double DOUBLE</div><div class="ttdoc">SOIL Double.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00026">Types.h:26</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a1d5fe6676b3cd6aef4b24e9c4ba4f097"><div class="ttname"><a href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a></div><div class="ttdeci">Enum ENUM</div><div class="ttdoc">SOIL Enum.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00047">Types.h:47</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a69374c360d593ed3cd4df6f3ebb40643"><div class="ttname"><a href="namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643">SOIL::STRING</a></div><div class="ttdeci">std::string STRING</div><div class="ttdoc">SOIL String.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00040">Types.h:40</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a738722655e044a443e338fde0f97e9a0"><div class="ttname"><a href="namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0">SOIL::DIMENSION</a></div><div class="ttdeci">std::vector&lt; unsigned int &gt; DIMENSION</div><div class="ttdoc">SOIL Dimension.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00061">Types.h:61</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a79f0d9e5821444f0265d9edf1e37f237"><div class="ttname"><a href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">SOIL::BOOL</a></div><div class="ttdeci">bool BOOL</div><div class="ttdoc">SOIL Boolean.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00033">Types.h:33</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_aef76c04a3939438dd7454193a3d56384"><div class="ttname"><a href="namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384">SOIL::INT</a></div><div class="ttdeci">int64_t INT</div><div class="ttdoc">SOIL Integer.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_s_o_i_l_2_types_8h.html">Types.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_s_o_i_l_2constants_8h.html b/doc/html/_s_o_i_l_2constants_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..ea0b7858f4ce6b02c49298604001ea2b292fe9b3
--- /dev/null
+++ b/doc/html/_s_o_i_l_2constants_8h.html
@@ -0,0 +1,128 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/constants.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_s_o_i_l_2constants_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#define-members">Macros</a>  </div>
+  <div class="headertitle"><div class="title">constants.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_s_o_i_l_2constants_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ac50762666aa00bd3a4308158510f1748"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_o_i_l_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">_WIN32_WINNT</a>&#160;&#160;&#160;0x600</td></tr>
+<tr class="memdesc:ac50762666aa00bd3a4308158510f1748"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default definitions for project.  <a href="_s_o_i_l_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">More...</a><br /></td></tr>
+<tr class="separator:ac50762666aa00bd3a4308158510f1748"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="ac50762666aa00bd3a4308158510f1748" name="ac50762666aa00bd3a4308158510f1748"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac50762666aa00bd3a4308158510f1748">&#9670;&nbsp;</a></span>_WIN32_WINNT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define _WIN32_WINNT&#160;&#160;&#160;0x600</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >File being referenced by many others containing cross-project defaults. </p>
+
+<p class="definition">Definition at line <a class="el" href="_s_o_i_l_2constants_8h_source.html#l00019">19</a> of file <a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_s_o_i_l_2constants_8h.html">constants.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_s_o_i_l_2constants_8h.js b/doc/html/_s_o_i_l_2constants_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..ef1038f6bcfea7625b2afce27823b077eada401d
--- /dev/null
+++ b/doc/html/_s_o_i_l_2constants_8h.js
@@ -0,0 +1,4 @@
+var _s_o_i_l_2constants_8h =
+[
+    [ "_WIN32_WINNT", "_s_o_i_l_2constants_8h.html#ac50762666aa00bd3a4308158510f1748", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_s_o_i_l_2constants_8h_source.html b/doc/html/_s_o_i_l_2constants_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..8870f05133189fe32aa401cad7f618edff10d2c1
--- /dev/null
+++ b/doc/html/_s_o_i_l_2constants_8h_source.html
@@ -0,0 +1,117 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/constants.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_s_o_i_l_2constants_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">constants.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_s_o_i_l_2constants_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#ifdef _WIN32</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#        pragma warning(disable: 4251)</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#        pragma warning(disable: 4275)</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#    ifdef _WINDLL</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="preprocessor">#        define DLL __declspec(dllexport)</span></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="preprocessor">#    else</span></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span><span class="preprocessor">#        define DLL __declspec(dllimport)</span></div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="preprocessor">#    endif</span></div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span><span class="preprocessor">#elif defined(__unix__)</span></div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="preprocessor">#    define DLL __attribute__((visibility(&quot;default&quot;</span>)))</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="preprocessor">#endif</span></div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="_s_o_i_l_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">   19</a></span><span class="preprocessor">#define _WIN32_WINNT 0x600</span></div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span><span class="preprocessor">#ifdef _WIN32</span></div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span><span class="preprocessor">#include &lt;SDKDDKVer.h&gt;</span></div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span><span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_s_o_i_l_2constants_8h.html">constants.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_server_8cpp.html b/doc/html/_server_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..4d5617e98de2579579056fe67230608c4a360e2e
--- /dev/null
+++ b/doc/html/_server_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/Server.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_server_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Server.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_server_8h_source.html">Server.h</a>&quot;</code><br />
+</div>
+<p><a href="_server_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_server_8cpp.html">Server.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_server_8cpp_source.html b/doc/html/_server_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..f0971a3d4ca35c2061fdb1eae9226851d7162a37
--- /dev/null
+++ b/doc/html/_server_8cpp_source.html
@@ -0,0 +1,159 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/Server.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_server_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Server.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_server_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_server_8h.html">Server.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="keyword">using namespace </span>std;</div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="keyword">using namespace </span>web;</div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="keyword">using namespace </span>utility;</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="keyword">using namespace </span>http;</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="keyword">using namespace </span>web::http::experimental::listener;</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span> </div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0">    9</a></span><a class="code hl_function" href="class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0">HTTP::Server::Server</a>(std::string url) : listener(utility::conversions::to_string_t(url))</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>{</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    listener.support(std::bind(&amp;Server::handle, <span class="keyword">this</span>, std::placeholders::_1));</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>}</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span> </div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span> </div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759">   15</a></span><a class="code hl_function" href="class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759">HTTP::Server::~Server</a>()</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>{</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>}</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span><span class="keywordtype">void</span> HTTP::Server::handle(http_request message)</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>{</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    <span class="keywordflow">for</span> (<span class="keyword">auto</span> i = resources.begin(); i != resources.end(); i++)</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    {</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>        std::smatch match;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>        std::string line = utility::conversions::to_utf8string(message.relative_uri().to_string());</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>        std::regex regex(i-&gt;first);</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>        <span class="keywordflow">if</span> (std::regex_search(line, match, regex))</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>        {</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>            <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> response = i-&gt;second-&gt;handle(message, match);</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>            message.reply(response);</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>            <span class="keywordflow">return</span>;</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>        }</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    }</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> response = default_resource.handle(message);</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    message.reply(response);</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    </div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>}</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span> </div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83">   39</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83">HTTP::Server::add</a>(std::string path, std::shared_ptr&lt;Resource&gt; resource)</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>{</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>    resources.push_back(std::make_pair(path, resource));</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>}</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span> </div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238">   44</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238">HTTP::Server::remove</a>(std::string path)</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>{</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>    <span class="keywordflow">for</span> (<span class="keyword">auto</span> i = resources.begin(); i != resources.end(); i++)</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    {</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>        <span class="keywordflow">if</span> (i-&gt;first == path)</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>        {</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>            resources.erase(i);</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>            <span class="keywordflow">break</span>;</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>        }</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>    }</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>}</div>
+<div class="ttc" id="a_server_8h_html"><div class="ttname"><a href="_server_8h.html">Server.h</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html_a2017a683878ebf7d90ad3a62c3516238"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238">HTTP::Server::remove</a></div><div class="ttdeci">void remove(std::string path)</div><div class="ttdoc">Register resource.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8cpp_source.html#l00044">Server.cpp:44</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html_aaea152f2562b0c0c4f16bfdc5472a759"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759">HTTP::Server::~Server</a></div><div class="ttdeci">~Server()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8cpp_source.html#l00015">Server.cpp:15</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html_ab739ee20c13e7d2e3979b67d39fc1ea0"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0">HTTP::Server::Server</a></div><div class="ttdeci">Server(std::string url)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8cpp_source.html#l00009">Server.cpp:9</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html_abb452f50d7c5660ee204e47e20066c83"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83">HTTP::Server::add</a></div><div class="ttdeci">void add(std::string path, std::shared_ptr&lt; Resource &gt; resource)</div><div class="ttdoc">Register resource.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8cpp_source.html#l00039">Server.cpp:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_server_8cpp.html">Server.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_server_8h.html b/doc/html/_server_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..ad67f435e74159316ad95fe1667b8870cfc44eb5
--- /dev/null
+++ b/doc/html/_server_8h.html
@@ -0,0 +1,119 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/Server.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_server_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Server.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_r_e_s_t_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;cpprest/http_listener.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="_resource_8h_source.html">Resource.h</a>&quot;</code><br />
+</div>
+<p><a href="_server_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_server.html">HTTP::Server</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">HTPP <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">Server</a>.  <a href="class_h_t_t_p_1_1_server.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_h_t_t_p"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html">HTTP</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_server_8h.html">Server.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_server_8h_source.html b/doc/html/_server_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..a25e94057a176ae983161076653bb08eb2e7f563
--- /dev/null
+++ b/doc/html/_server_8h_source.html
@@ -0,0 +1,146 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST/Server.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_server_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Server.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_server_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;cpprest/http_listener.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="_resource_8h.html">Resource.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="keyword">using namespace </span>web;</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="keyword">using namespace </span>http;</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">using namespace </span>utility;</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="keyword">using namespace </span>http::experimental::listener;</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span> </div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_h_t_t_p.html">HTTP</a></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>{</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_server.html">   21</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_h_t_t_p_1_1_server.html">Server</a></div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    {</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>        <a class="code hl_class" href="class_h_t_t_p_1_1_resource.html">Resource</a> default_resource;</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span> </div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>        std::vector&lt;std::pair&lt;std::string, std::shared_ptr&lt;Resource&gt; &gt; &gt; resources;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span> </div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>        <span class="keywordtype">void</span> handle(http_request message);</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span> </div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span> </div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>        http_listener listener;</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span> </div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>        <a class="code hl_class" href="class_h_t_t_p_1_1_server.html">Server</a>(std::string url);</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span> </div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>        <a class="code hl_class" href="class_h_t_t_p_1_1_server.html">~Server</a>();</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span> </div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486">   84</a></span>        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486">open</a>() { listener.open().wait(); }</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span> </div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"><a class="line" href="class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a">   91</a></span>        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a">close</a>() { listener.close().wait(); }</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span> </div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span>        <span class="keywordtype">void</span> add(std::string path, std::shared_ptr&lt;Resource&gt; resource);</div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span> </div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span>        <span class="keywordtype">void</span> remove(std::string path);</div>
+<div class="line"><a id="l00115" name="l00115"></a><span class="lineno">  115</span> </div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno">  116</span>    };</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span>}</div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno">  118</span> </div>
+<div class="ttc" id="a_resource_8h_html"><div class="ttname"><a href="_resource_8h.html">Resource.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></div><div class="ttdoc">HTTP Resource base class.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00020">Resource.h:21</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html">HTTP::Server</a></div><div class="ttdoc">HTPP Server.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8h_source.html#l00021">Server.h:22</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html_a9f24bc848a91d7d8a7e084b102de4e7a"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a">HTTP::Server::close</a></div><div class="ttdeci">void close()</div><div class="ttdoc">Stop listener.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8h_source.html#l00091">Server.h:91</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html_aec1277227e7f17a1115e6d868a07b486"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486">HTTP::Server::open</a></div><div class="ttdeci">void open()</div><div class="ttdoc">Start listener.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8h_source.html#l00084">Server.h:84</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html"><div class="ttname"><a href="namespace_h_t_t_p.html">HTTP</a></div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00008">Resource.h:8</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li><li class="navelem"><a class="el" href="_server_8h.html">Server.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_signer_8cpp.html b/doc/html/_signer_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..d2f6bcd5579c0f02602b8bf8e9bfdcb3c061642e
--- /dev/null
+++ b/doc/html/_signer_8cpp.html
@@ -0,0 +1,110 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN/Signer.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_signer_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Signer.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_signer_8h_source.html">Signer.h</a>&quot;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+<code>#include &lt;sstream&gt;</code><br />
+<code>#include &lt;iostream&gt;</code><br />
+<code>#include &lt;openssl/rsa.h&gt;</code><br />
+<code>#include &lt;openssl/ssl.h&gt;</code><br />
+<code>#include &lt;openssl/err.h&gt;</code><br />
+<code>#include &lt;openssl/evp.h&gt;</code><br />
+<code>#include &lt;openssl/opensslv.h&gt;</code><br />
+</div>
+<p><a href="_signer_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li><li class="navelem"><a class="el" href="_signer_8cpp.html">Signer.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_signer_8cpp_source.html b/doc/html/_signer_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..ebfb372f836f4d58fad2bf3b91b57f25ee24da6c
--- /dev/null
+++ b/doc/html/_signer_8cpp_source.html
@@ -0,0 +1,168 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN/Signer.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_signer_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Signer.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_signer_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_signer_8h.html">Signer.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;sstream&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &lt;openssl/rsa.h&gt;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &lt;openssl/ssl.h&gt;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#include &lt;openssl/err.h&gt;</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#include &lt;openssl/evp.h&gt;</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#include &lt;openssl/opensslv.h&gt;</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span> </div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794">   11</a></span><a class="code hl_function" href="class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794">SIGN::Signer::Signer</a>(std::string filename)</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>{</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    _name = filename;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    std::ifstream keyfile(filename);</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    std::stringstream buffer;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    buffer &lt;&lt; keyfile.rdbuf();</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    std::string key = buffer.str();</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    BIO* bio = BIO_new(BIO_s_mem());</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    BIO_write(bio, key.c_str(), <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(key.length()));</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    private_key = PEM_read_bio_PrivateKey(bio, NULL, NULL, NULL);</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    BIO_free(bio);</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    context = EVP_MD_CTX_create();</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    EVP_MD_CTX_set_flags(context, EVP_MD_CTX_FLAG_ONESHOT &amp; EVP_MD_CTX_FLAG_FINALISE &amp; EVP_MD_CTX_FLAG_REUSE);</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    </div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span> </div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="comment">// Make sure Signer gets a warm start</span></div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    std::vector&lt;unsigned char&gt; dummy(256, <span class="charliteral">&#39; &#39;</span>);</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    this-&gt;<a class="code hl_function" href="class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f">sign</a>(dummy);</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span> </div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>}</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span> </div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d">   36</a></span><a class="code hl_function" href="class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d">SIGN::Signer::~Signer</a>()</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>{</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    EVP_PKEY_free(private_key);</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>}</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span> </div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f">   41</a></span>std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f">SIGN::Signer::sign</a>(std::vector&lt;unsigned char&gt; message)</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>{</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    EVP_DigestSignInit(context, NULL, EVP_sha256(), NULL, private_key);</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    EVP_DigestSignUpdate(context, message.data(), message.size());</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span> </div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>    <span class="keywordtype">size_t</span> length = 512;</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    EVP_DigestSignFinal(context, NULL, &amp;length);</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* buffer = <span class="keyword">new</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>[length];</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    EVP_DigestSignFinal(context, buffer, &amp;length);</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    <span class="comment">//EVP_DigestSign(context, buffer, &amp;length, message.data(), message.size());</span></div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>    std::vector&lt;unsigned char&gt; result;</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>    result.reserve(length);</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>    <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; length; i++)</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    {</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>        result.push_back(buffer[i]);</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>    }</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    <span class="keyword">delete</span> [] buffer;</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>    <span class="keywordflow">return</span> result;</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>}</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span> </div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4">   61</a></span>std::string <a class="code hl_function" href="class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4">SIGN::Signer::openssl_version</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>    <span class="keywordflow">return</span> OPENSSL_VERSION_TEXT;</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>}</div>
+<div class="ttc" id="a_signer_8h_html"><div class="ttname"><a href="_signer_8h.html">Signer.h</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_signer_html_a0315eec3c80b3238ee64e26115de9f0f"><div class="ttname"><a href="class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f">SIGN::Signer::sign</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; sign(std::vector&lt; unsigned char &gt; digest)</div><div class="ttdoc">Sign bytes.</div><div class="ttdef"><b>Definition:</b> <a href="_signer_8cpp_source.html#l00041">Signer.cpp:41</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_signer_html_a8fbad2b5e76a6333dfa7fd537a5600e4"><div class="ttname"><a href="class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4">SIGN::Signer::openssl_version</a></div><div class="ttdeci">std::string openssl_version(void) const</div><div class="ttdoc">OpenSSL Version.</div><div class="ttdef"><b>Definition:</b> <a href="_signer_8cpp_source.html#l00061">Signer.cpp:61</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_signer_html_ae312cab4c8479a9a4a56f90257ab8e7d"><div class="ttname"><a href="class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d">SIGN::Signer::~Signer</a></div><div class="ttdeci">~Signer()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_signer_8cpp_source.html#l00036">Signer.cpp:36</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_signer_html_aeb36266abd34f99a53482713be5b7794"><div class="ttname"><a href="class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794">SIGN::Signer::Signer</a></div><div class="ttdeci">Signer(std::string filename)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_signer_8cpp_source.html#l00011">Signer.cpp:11</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li><li class="navelem"><a class="el" href="_signer_8cpp.html">Signer.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_signer_8h.html b/doc/html/_signer_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..9e0b878da8fed5edd47de5ec7f9a81e8a1bc159e
--- /dev/null
+++ b/doc/html/_signer_8h.html
@@ -0,0 +1,160 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN/Signer.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_signer_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#typedef-members">Typedefs</a>  </div>
+  <div class="headertitle"><div class="title">Signer.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_i_g_n_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &lt;vector&gt;</code><br />
+<code>#include &lt;string&gt;</code><br />
+</div>
+<p><a href="_signer_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">Signer</a>.  <a href="class_s_i_g_n_1_1_signer.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_i_g_n"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_i_g_n.html">SIGN</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a2fca4fef9e4c7a2a739b1ea04acb56ce"><td class="memItemLeft" align="right" valign="top">typedef struct evp_pkey_st&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce">EVP_PKEY</a></td></tr>
+<tr class="separator:a2fca4fef9e4c7a2a739b1ea04acb56ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11ccc869c9ea1749e6fe88f44826b56a"><td class="memItemLeft" align="right" valign="top">typedef struct evp_md_ctx_st&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a">EVP_MD_CTX</a></td></tr>
+<tr class="separator:a11ccc869c9ea1749e6fe88f44826b56a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a11ccc869c9ea1749e6fe88f44826b56a" name="a11ccc869c9ea1749e6fe88f44826b56a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a11ccc869c9ea1749e6fe88f44826b56a">&#9670;&nbsp;</a></span>EVP_MD_CTX</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef struct evp_md_ctx_st <a class="el" href="_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a">EVP_MD_CTX</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_signer_8h_source.html#l00007">7</a> of file <a class="el" href="_signer_8h_source.html">Signer.h</a>.</p>
+
+</div>
+</div>
+<a id="a2fca4fef9e4c7a2a739b1ea04acb56ce" name="a2fca4fef9e4c7a2a739b1ea04acb56ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2fca4fef9e4c7a2a739b1ea04acb56ce">&#9670;&nbsp;</a></span>EVP_PKEY</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef struct evp_pkey_st <a class="el" href="_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce">EVP_PKEY</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_signer_8h_source.html#l00006">6</a> of file <a class="el" href="_signer_8h_source.html">Signer.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li><li class="navelem"><a class="el" href="_signer_8h.html">Signer.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_signer_8h.js b/doc/html/_signer_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..9943acfea6e226c1605774bdcac67008a61fe6c4
--- /dev/null
+++ b/doc/html/_signer_8h.js
@@ -0,0 +1,6 @@
+var _signer_8h =
+[
+    [ "SIGN::Signer", "class_s_i_g_n_1_1_signer.html", "class_s_i_g_n_1_1_signer" ],
+    [ "EVP_MD_CTX", "_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a", null ],
+    [ "EVP_PKEY", "_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_signer_8h_source.html b/doc/html/_signer_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..7cd1d17a50cecb1997f05b66b1f0023e1d07001c
--- /dev/null
+++ b/doc/html/_signer_8h_source.html
@@ -0,0 +1,137 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN/Signer.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_signer_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Signer.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_signer_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"><a class="line" href="_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce">    6</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span>evp_pkey_st <a class="code hl_typedef" href="_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce">EVP_PKEY</a>;</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a">    7</a></span><span class="keyword">typedef</span> <span class="keyword">struct </span>evp_md_ctx_st <a class="code hl_typedef" href="_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a">EVP_MD_CTX</a>;</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span> </div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span> </div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_i_g_n.html">SIGN</a></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>{</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_signer.html">   18</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_s_i_g_n_1_1_signer.html">Signer</a></div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    {</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>        std::string _name;</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span> </div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>        <a class="code hl_typedef" href="_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce">EVP_PKEY</a>* private_key;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>        <a class="code hl_typedef" href="_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a">EVP_MD_CTX</a>* context;</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>        <a class="code hl_class" href="class_s_i_g_n_1_1_signer.html">Signer</a>(std::string filename);</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span> </div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>        <a class="code hl_class" href="class_s_i_g_n_1_1_signer.html">~Signer</a>();</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span> </div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>        std::vector&lt;unsigned char&gt; sign(std::vector&lt;unsigned char&gt; digest);</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>        </div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>        std::string openssl_version(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span> </div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"><a class="line" href="class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925">   86</a></span>        <span class="keyword">inline</span> std::string <a class="code hl_function" href="class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925">name</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> _name; }</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>    };</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>}</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span> </div>
+<div class="ttc" id="a_signer_8h_html_a11ccc869c9ea1749e6fe88f44826b56a"><div class="ttname"><a href="_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a">EVP_MD_CTX</a></div><div class="ttdeci">struct evp_md_ctx_st EVP_MD_CTX</div><div class="ttdef"><b>Definition:</b> <a href="_signer_8h_source.html#l00007">Signer.h:7</a></div></div>
+<div class="ttc" id="a_signer_8h_html_a2fca4fef9e4c7a2a739b1ea04acb56ce"><div class="ttname"><a href="_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce">EVP_PKEY</a></div><div class="ttdeci">struct evp_pkey_st EVP_PKEY</div><div class="ttdef"><b>Definition:</b> <a href="_signer_8h_source.html#l00006">Signer.h:6</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_signer_html"><div class="ttname"><a href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a></div><div class="ttdoc">Signer.</div><div class="ttdef"><b>Definition:</b> <a href="_signer_8h_source.html#l00018">Signer.h:19</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_signer_html_a6b83d99b55d005f7ae32a3e18a9d5925"><div class="ttname"><a href="class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925">SIGN::Signer::name</a></div><div class="ttdeci">std::string name() const</div><div class="ttdoc">Filename.</div><div class="ttdef"><b>Definition:</b> <a href="_signer_8h_source.html#l00086">Signer.h:86</a></div></div>
+<div class="ttc" id="anamespace_s_i_g_n_html"><div class="ttname"><a href="namespace_s_i_g_n.html">SIGN</a></div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8h_source.html#l00006">Hasher.h:7</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li><li class="navelem"><a class="el" href="_signer_8h.html">Signer.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_time_8cpp.html b/doc/html/_time_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..41b6451112e95d6dcc40d884e9d1d24821141f4b
--- /dev/null
+++ b/doc/html/_time_8cpp.html
@@ -0,0 +1,103 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Time.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_time_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Time.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_time_8h_source.html">Time.h</a>&quot;</code><br />
+<code>#include &lt;boost/algorithm/string/replace.hpp&gt;</code><br />
+</div>
+<p><a href="_time_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_time_8cpp.html">Time.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_time_8cpp_source.html b/doc/html/_time_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..01bd744d46f0aa8814ac13b7bfcc0e9282d1dd94
--- /dev/null
+++ b/doc/html/_time_8cpp_source.html
@@ -0,0 +1,247 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Time.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_time_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Time.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_time_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_time_8h.html">Time.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &lt;boost/algorithm/string/replace.hpp&gt;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">    6</a></span>std::string <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">SOIL::Time::rfc3339</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    <span class="keywordflow">if</span> (<a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">is_null</a>())</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    {</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>        <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    }</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    {</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>        std::string timestring = boost::posix_time::to_iso_extended_string(timestamp);</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>        boost::replace_all(timestring, <span class="stringliteral">&quot;,&quot;</span>, <span class="stringliteral">&quot;.&quot;</span>);</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>        <span class="keywordflow">if</span> (timestring == <span class="stringliteral">&quot;not-a-date-time&quot;</span>)</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>        {</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>            <span class="keywordflow">return</span> <span class="stringliteral">&quot;&quot;</span>;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>        }</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>        <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>        {</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>            <span class="keywordflow">return</span> timestring + <span class="stringliteral">&quot;Z&quot;</span>;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>        }</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    }</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>}</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">   27</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">SOIL::Time::Time</a>()</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>{</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>}</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span> </div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#a7e51f091b04752599a4086ea3b0856f4">   31</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">SOIL::Time::Time</a>(std::string value)</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>{</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <span class="keywordflow">if</span> (value == <span class="stringliteral">&quot;&quot;</span>)</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    {</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>        _null = <span class="keyword">true</span>;</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    }</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    {</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>        boost::replace_all(value, <span class="stringliteral">&quot;T&quot;</span>, <span class="stringliteral">&quot; &quot;</span>);</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>        boost::replace_all(value, <span class="stringliteral">&quot;Z&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>        timestamp = boost::posix_time::time_from_string(value);</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>        _null = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    }</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>}</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span> </div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#ac84bbf33a7816b4502795d68a5e62486">   46</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">SOIL::Time::Time</a>(boost::posix_time::ptime value)</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>{</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    _null = <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    timestamp = value;</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>}</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span> </div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span> </div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16">   53</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16">SOIL::Time::~Time</a>()</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>{</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>}</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span> </div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">   57</a></span>boost::posix_time::ptime <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">SOIL::Time::utc_now</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>{</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>     <span class="keywordflow">return</span> boost::posix_time::microsec_clock::universal_time();</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>}</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span> </div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993">   62</a></span>std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993">SOIL::Time::serialize</a>(<span class="keywordtype">void</span>)<span class="keyword"> const</span></div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span><span class="keyword"></span>{</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    <span class="keywordflow">if</span> (is_null())</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>    {</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>        <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Time is not set&quot;</span>);</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>    }</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>    std::vector&lt;unsigned char&gt; serialization;</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>    <span class="keywordtype">size_t</span> size = <span class="keyword">sizeof</span>(uint16_t) + 5 * <span class="keyword">sizeof</span>(uint8_t) + <span class="keyword">sizeof</span>(uint32_t);</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>    serialization.reserve(size);</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span> </div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span>    <span class="keyword">auto</span> date = timestamp.date();</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>    <span class="keyword">auto</span> time = timestamp.time_of_day();</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>    uint16_t year = <span class="keyword">static_cast&lt;</span>uint16_t<span class="keyword">&gt;</span>(date.year());</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>    uint8_t month = <span class="keyword">static_cast&lt;</span>uint8_t<span class="keyword">&gt;</span>(date.month().as_number());</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>    uint8_t day = <span class="keyword">static_cast&lt;</span>uint8_t<span class="keyword">&gt;</span>(date.day().as_number());</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>    uint8_t hour = <span class="keyword">static_cast&lt;</span>uint8_t<span class="keyword">&gt;</span>(time.hours());</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span>    uint8_t minute = <span class="keyword">static_cast&lt;</span>uint8_t<span class="keyword">&gt;</span>(time.minutes());</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>    uint8_t seconds = <span class="keyword">static_cast&lt;</span>uint8_t<span class="keyword">&gt;</span>(time.seconds());</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>    uint32_t nanoseconds = <span class="keyword">static_cast&lt;</span>uint32_t<span class="keyword">&gt;</span>(time.fractional_seconds());</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span> </div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>    <span class="keywordflow">switch</span> (time.num_fractional_digits())</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>    {</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>    <span class="keywordflow">case</span> 3:</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span>        nanoseconds *= 1000000;</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>        <span class="keywordflow">break</span>;</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>    <span class="keywordflow">case</span> 6:</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>        nanoseconds *= 1000;</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>        <span class="keywordflow">break</span>;</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span>    <span class="keywordflow">case</span> 9:</div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span>        <span class="keywordflow">break</span>;</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span>    <span class="keywordflow">default</span>:</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>        <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;Unknown fractional seconds!&quot;</span>);</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>    }</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span> </div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>    <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* pointer = <span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(&amp;year);</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span>    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <span class="keyword">sizeof</span>(uint16_t); i++)</div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span>    {</div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno">   99</span>        serialization.push_back(pointer[i]);</div>
+<div class="line"><a id="l00100" name="l00100"></a><span class="lineno">  100</span>    };</div>
+<div class="line"><a id="l00101" name="l00101"></a><span class="lineno">  101</span>    serialization.push_back(month);</div>
+<div class="line"><a id="l00102" name="l00102"></a><span class="lineno">  102</span>    serialization.push_back(day);</div>
+<div class="line"><a id="l00103" name="l00103"></a><span class="lineno">  103</span>    serialization.push_back(hour);</div>
+<div class="line"><a id="l00104" name="l00104"></a><span class="lineno">  104</span>    serialization.push_back(minute);</div>
+<div class="line"><a id="l00105" name="l00105"></a><span class="lineno">  105</span>    serialization.push_back(seconds);</div>
+<div class="line"><a id="l00106" name="l00106"></a><span class="lineno">  106</span> </div>
+<div class="line"><a id="l00107" name="l00107"></a><span class="lineno">  107</span>    pointer = <span class="keyword">reinterpret_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(&amp;nanoseconds);</div>
+<div class="line"><a id="l00108" name="l00108"></a><span class="lineno">  108</span>    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; <span class="keyword">sizeof</span>(uint32_t); i++)</div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno">  109</span>    {</div>
+<div class="line"><a id="l00110" name="l00110"></a><span class="lineno">  110</span>        serialization.push_back(pointer[i]);</div>
+<div class="line"><a id="l00111" name="l00111"></a><span class="lineno">  111</span>    };</div>
+<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span> </div>
+<div class="line"><a id="l00113" name="l00113"></a><span class="lineno">  113</span>    <span class="keywordflow">return</span> serialization;</div>
+<div class="line"><a id="l00114" name="l00114"></a><span class="lineno">  114</span>}</div>
+<div class="line"><a id="l00115" name="l00115"></a><span class="lineno">  115</span> </div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">  116</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">SOIL::operator&gt;=</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a> &amp; t1, <span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a> &amp; t2)</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span>{</div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno">  118</span>    <span class="keywordflow">if</span> (t1.<a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">is_null</a>() || t2.<a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">is_null</a>())</div>
+<div class="line"><a id="l00119" name="l00119"></a><span class="lineno">  119</span>    {</div>
+<div class="line"><a id="l00120" name="l00120"></a><span class="lineno">  120</span>        <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00121" name="l00121"></a><span class="lineno">  121</span>    }</div>
+<div class="line"><a id="l00122" name="l00122"></a><span class="lineno">  122</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00123" name="l00123"></a><span class="lineno">  123</span>    {</div>
+<div class="line"><a id="l00124" name="l00124"></a><span class="lineno">  124</span>        <span class="keywordflow">return</span> (t1.timestamp &gt;= t2.timestamp);</div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno">  125</span>    }</div>
+<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span>}</div>
+<div class="line"><a id="l00127" name="l00127"></a><span class="lineno">  127</span> </div>
+<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">  128</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">SOIL::operator&lt;=</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a> &amp; t1, <span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a> &amp; t2)</div>
+<div class="line"><a id="l00129" name="l00129"></a><span class="lineno">  129</span>{</div>
+<div class="line"><a id="l00130" name="l00130"></a><span class="lineno">  130</span>    <span class="keywordflow">if</span> (t1.<a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">is_null</a>() || t2.<a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">is_null</a>())</div>
+<div class="line"><a id="l00131" name="l00131"></a><span class="lineno">  131</span>    {</div>
+<div class="line"><a id="l00132" name="l00132"></a><span class="lineno">  132</span>        <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno">  133</span>    }</div>
+<div class="line"><a id="l00134" name="l00134"></a><span class="lineno">  134</span>    <span class="keywordflow">else</span></div>
+<div class="line"><a id="l00135" name="l00135"></a><span class="lineno">  135</span>    {</div>
+<div class="line"><a id="l00136" name="l00136"></a><span class="lineno">  136</span>        <span class="keywordflow">return</span> (t1.timestamp &lt;= t2.timestamp);</div>
+<div class="line"><a id="l00137" name="l00137"></a><span class="lineno">  137</span>    }</div>
+<div class="line"><a id="l00138" name="l00138"></a><span class="lineno">  138</span>}</div>
+<div class="ttc" id="a_time_8h_html"><div class="ttname"><a href="_time_8h.html">Time.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00012">Time.h:13</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a5248a0ed5db231883fd8d1ee34ab2325"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">SOIL::Time::is_null</a></div><div class="ttdeci">bool is_null(void) const</div><div class="ttdoc">Is Null?</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00092">Time.h:92</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a5fe6292ab3b05d9107c6884dfbb5da16"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16">SOIL::Time::~Time</a></div><div class="ttdeci">DLL ~Time()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00053">Time.cpp:53</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a60eb480cb5dca0fbcd090b2e85e7ebaf"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">SOIL::Time::Time</a></div><div class="ttdeci">DLL Time()</div><div class="ttdoc">Uninitialized Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00027">Time.cpp:27</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a8b1d27ee800ce3dddeb38356c5edb86d"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">SOIL::Time::rfc3339</a></div><div class="ttdeci">DLL std::string rfc3339(void) const</div><div class="ttdoc">RFC3339 representation.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00006">Time.cpp:6</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_abf817530c975ea5bfce48be781a55993"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993">SOIL::Time::serialize</a></div><div class="ttdeci">DLL std::vector&lt; unsigned char &gt; serialize(void) const</div><div class="ttdoc">Bytewise serialization.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00062">Time.cpp:62</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_ae06629b296dcd9b01b6019101a020208"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">SOIL::Time::utc_now</a></div><div class="ttdeci">static DLL boost::posix_time::ptime utc_now(void)</div><div class="ttdoc">Current Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00057">Time.cpp:57</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a3b4ec3441b90255cca35259c5e4a9321"><div class="ttname"><a href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">SOIL::operator&lt;=</a></div><div class="ttdeci">DLL bool operator&lt;=(const Time &amp;t1, const Time &amp;t2)</div><div class="ttdoc">LEQ Time Operator.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00128">Time.cpp:128</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_adc8de2e2651ccc2e7c03e8289cd64c2b"><div class="ttname"><a href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">SOIL::operator&gt;=</a></div><div class="ttdeci">DLL bool operator&gt;=(const Time &amp;t1, const Time &amp;t2)</div><div class="ttdoc">GEQ Time Operator.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00116">Time.cpp:116</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_time_8cpp.html">Time.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_time_8h.html b/doc/html/_time_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..0d135e53d8b340ce31b9617ac8a4c540bce66db7
--- /dev/null
+++ b/doc/html/_time_8h.html
@@ -0,0 +1,130 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Time.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_time_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle"><div class="title">Time.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &lt;boost/date_time/posix_time/posix_time.hpp&gt;</code><br />
+<code>#include &lt;locale&gt;</code><br />
+</div>
+<p><a href="_time_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a>.  <a href="class_s_o_i_l_1_1_time.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:adc8de2e2651ccc2e7c03e8289cd64c2b"><td class="memItemLeft" align="right" valign="top">DLL bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">SOIL::operator&gt;=</a> (const Time &amp;t1, const Time &amp;t2)</td></tr>
+<tr class="memdesc:adc8de2e2651ccc2e7c03e8289cd64c2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEQ <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> Operator.  <a href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">More...</a><br /></td></tr>
+<tr class="separator:adc8de2e2651ccc2e7c03e8289cd64c2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b4ec3441b90255cca35259c5e4a9321"><td class="memItemLeft" align="right" valign="top">DLL bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">SOIL::operator&lt;=</a> (const Time &amp;t1, const Time &amp;t2)</td></tr>
+<tr class="memdesc:a3b4ec3441b90255cca35259c5e4a9321"><td class="mdescLeft">&#160;</td><td class="mdescRight">LEQ <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> Operator.  <a href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">More...</a><br /></td></tr>
+<tr class="separator:a3b4ec3441b90255cca35259c5e4a9321"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_time_8h.html">Time.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_time_8h.js b/doc/html/_time_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..130f346822b2c6c2f371dc62a9aa7058061e394c
--- /dev/null
+++ b/doc/html/_time_8h.js
@@ -0,0 +1,6 @@
+var _time_8h =
+[
+    [ "SOIL::Time", "class_s_o_i_l_1_1_time.html", "class_s_o_i_l_1_1_time" ],
+    [ "operator<=", "_time_8h.html#a3b4ec3441b90255cca35259c5e4a9321", null ],
+    [ "operator>=", "_time_8h.html#adc8de2e2651ccc2e7c03e8289cd64c2b", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_time_8h_source.html b/doc/html/_time_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..2859736959b0454ab583b9f47afd27b2784daca0
--- /dev/null
+++ b/doc/html/_time_8h_source.html
@@ -0,0 +1,154 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Time.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_time_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Time.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_time_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;boost/date_time/posix_time/posix_time.hpp&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;locale&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>{</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html">   12</a></span>    <span class="keyword">class </span><a class="code hl_class" href="class_s_o_i_l_1_1_time.html">Time</a></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    {</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keyword">private</span>:</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>        <span class="keywordtype">bool</span> _null;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>        boost::posix_time::ptime timestamp;</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>        DLL std::string <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">rfc3339</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>        </div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>        DLL <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">Time</a>();</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span> </div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>        DLL <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">Time</a>(std::string value);</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span> </div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span>        DLL <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">Time</a>(boost::posix_time::ptime value);</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span> </div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>        DLL <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16">~Time</a>();</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span> </div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">   92</a></span>        <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">is_null</a>(<span class="keywordtype">void</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> _null; }</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span> </div>
+<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f">  100</a></span>        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f">set_null</a>(<span class="keywordtype">bool</span> _null = <span class="keyword">true</span>) { this-&gt;_null = _null; }</div>
+<div class="line"><a id="l00101" name="l00101"></a><span class="lineno">  101</span> </div>
+<div class="line"><a id="l00111" name="l00111"></a><span class="lineno">  111</span>        <span class="keyword">static</span> DLL  boost::posix_time::ptime <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">utc_now</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00112" name="l00112"></a><span class="lineno">  112</span> </div>
+<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa">  118</a></span>        <span class="keyword">friend</span>  DLL <span class="keywordtype">bool</span> <a class="code hl_friend" href="class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa">operator&gt;=</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">Time</a>&amp; t1, <span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">Time</a>&amp; t2);</div>
+<div class="line"><a id="l00119" name="l00119"></a><span class="lineno">  119</span> </div>
+<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda">  125</a></span>        <span class="keyword">friend</span>  DLL <span class="keywordtype">bool</span> <a class="code hl_friend" href="class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda">operator&lt;=</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">Time</a>&amp; t1, <span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">Time</a>&amp; t2);</div>
+<div class="line"><a id="l00126" name="l00126"></a><span class="lineno">  126</span> </div>
+<div class="line"><a id="l00143" name="l00143"></a><span class="lineno">  143</span>        DLL std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993">serialize</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00144" name="l00144"></a><span class="lineno">  144</span>    };</div>
+<div class="line"><a id="l00145" name="l00145"></a><span class="lineno">  145</span> </div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno">  158</span>    DLL <span class="keywordtype">bool</span> <a class="code hl_function" href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">operator&gt;=</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">Time</a>&amp; t1, <span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">Time</a>&amp; t2);</div>
+<div class="line"><a id="l00159" name="l00159"></a><span class="lineno">  159</span> </div>
+<div class="line"><a id="l00160" name="l00160"></a><span class="lineno">  160</span> </div>
+<div class="line"><a id="l00173" name="l00173"></a><span class="lineno">  173</span>    DLL <span class="keywordtype">bool</span> <a class="code hl_function" href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">operator&lt;=</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">Time</a>&amp; t1, <span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">Time</a>&amp; t2);</div>
+<div class="line"><a id="l00174" name="l00174"></a><span class="lineno">  174</span>}</div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00012">Time.h:13</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a155e5f5e05694a584161bcc064d57eda"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda">SOIL::Time::operator&lt;=</a></div><div class="ttdeci">friend DLL bool operator&lt;=(const Time &amp;t1, const Time &amp;t2)</div><div class="ttdoc">Friend Operator &lt;=.</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a5248a0ed5db231883fd8d1ee34ab2325"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">SOIL::Time::is_null</a></div><div class="ttdeci">bool is_null(void) const</div><div class="ttdoc">Is Null?</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00092">Time.h:92</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a5fe6292ab3b05d9107c6884dfbb5da16"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16">SOIL::Time::~Time</a></div><div class="ttdeci">DLL ~Time()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00053">Time.cpp:53</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a60eb480cb5dca0fbcd090b2e85e7ebaf"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">SOIL::Time::Time</a></div><div class="ttdeci">DLL Time()</div><div class="ttdoc">Uninitialized Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00027">Time.cpp:27</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a78fdd7cac3e6ce1141080c35efd5f95f"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f">SOIL::Time::set_null</a></div><div class="ttdeci">void set_null(bool _null=true)</div><div class="ttdoc">Set null.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00100">Time.h:100</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a8b1d27ee800ce3dddeb38356c5edb86d"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">SOIL::Time::rfc3339</a></div><div class="ttdeci">DLL std::string rfc3339(void) const</div><div class="ttdoc">RFC3339 representation.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00006">Time.cpp:6</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_abe58e5fa4fc2cb986785a751fa6807aa"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa">SOIL::Time::operator&gt;=</a></div><div class="ttdeci">friend DLL bool operator&gt;=(const Time &amp;t1, const Time &amp;t2)</div><div class="ttdoc">Friend Operator &gt;=.</div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_abf817530c975ea5bfce48be781a55993"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993">SOIL::Time::serialize</a></div><div class="ttdeci">DLL std::vector&lt; unsigned char &gt; serialize(void) const</div><div class="ttdoc">Bytewise serialization.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00062">Time.cpp:62</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_ae06629b296dcd9b01b6019101a020208"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">SOIL::Time::utc_now</a></div><div class="ttdeci">static DLL boost::posix_time::ptime utc_now(void)</div><div class="ttdoc">Current Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00057">Time.cpp:57</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a3b4ec3441b90255cca35259c5e4a9321"><div class="ttname"><a href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">SOIL::operator&lt;=</a></div><div class="ttdeci">DLL bool operator&lt;=(const Time &amp;t1, const Time &amp;t2)</div><div class="ttdoc">LEQ Time Operator.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00128">Time.cpp:128</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_adc8de2e2651ccc2e7c03e8289cd64c2b"><div class="ttname"><a href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">SOIL::operator&gt;=</a></div><div class="ttdeci">DLL bool operator&gt;=(const Time &amp;t1, const Time &amp;t2)</div><div class="ttdoc">GEQ Time Operator.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00116">Time.cpp:116</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_time_8h.html">Time.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_types_8cpp.html b/doc/html/_types_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..cc7d2278fd340710a819649d8b854deb23d13f2f
--- /dev/null
+++ b/doc/html/_types_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Types.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_types_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Types.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>&quot;</code><br />
+</div>
+<p><a href="_types_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_types_8cpp.html">Types.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_types_8cpp_source.html b/doc/html/_types_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..0d112074dbfbd367fb580472015a06656b06c385
--- /dev/null
+++ b/doc/html/_types_8cpp_source.html
@@ -0,0 +1,101 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Types.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_types_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Types.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_types_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_s_o_i_l_2_types_8h.html">Types.h</a>&quot;</span></div>
+<div class="ttc" id="a_s_o_i_l_2_types_8h_html"><div class="ttname"><a href="_s_o_i_l_2_types_8h.html">Types.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_types_8cpp.html">Types.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_u_d_p_2_configuration_8cpp.html b/doc/html/_u_d_p_2_configuration_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..716aaf9340ca8368d3f57a7aa784201b7fa8b24f
--- /dev/null
+++ b/doc/html/_u_d_p_2_configuration_8cpp.html
@@ -0,0 +1,129 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Configuration.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_u_d_p_2_configuration_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#typedef-members">Typedefs</a>  </div>
+  <div class="headertitle"><div class="title">Configuration.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_u_d_p_2_configuration_8h_source.html">Configuration.h</a>&quot;</code><br />
+<code>#include &lt;nlohmann/json.hpp&gt;</code><br />
+<code>#include &lt;fstream&gt;</code><br />
+</div>
+<p><a href="_u_d_p_2_configuration_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ab701e3ac61a85b337ec5c1abaad6742d"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_u_d_p_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a> = nlohmann::json</td></tr>
+<tr class="separator:ab701e3ac61a85b337ec5c1abaad6742d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="ab701e3ac61a85b337ec5c1abaad6742d" name="ab701e3ac61a85b337ec5c1abaad6742d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab701e3ac61a85b337ec5c1abaad6742d">&#9670;&nbsp;</a></span>json</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">using <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a> =  nlohmann::json</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_u_d_p_2_configuration_8cpp_source.html#l00005">5</a> of file <a class="el" href="_u_d_p_2_configuration_8cpp_source.html">Configuration.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_u_d_p_2_configuration_8cpp.html">Configuration.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_u_d_p_2_configuration_8cpp.js b/doc/html/_u_d_p_2_configuration_8cpp.js
new file mode 100644
index 0000000000000000000000000000000000000000..ceaa1fa77aa21b568b27177a9e451e9fc9ee96a6
--- /dev/null
+++ b/doc/html/_u_d_p_2_configuration_8cpp.js
@@ -0,0 +1,4 @@
+var _u_d_p_2_configuration_8cpp =
+[
+    [ "json", "_u_d_p_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d", null ]
+];
\ No newline at end of file
diff --git a/doc/html/_u_d_p_2_configuration_8cpp_source.html b/doc/html/_u_d_p_2_configuration_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..d208e337b8f45bc232314ce891e7a4c80c9bc3ae
--- /dev/null
+++ b/doc/html/_u_d_p_2_configuration_8cpp_source.html
@@ -0,0 +1,131 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Configuration.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_u_d_p_2_configuration_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Configuration.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_u_d_p_2_configuration_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2_configuration_8h.html">Configuration.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &lt;nlohmann/json.hpp&gt;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;fstream&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="_u_d_p_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">    5</a></span><span class="keyword">using</span> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a> = <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">nlohmann::json</a>;</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed">    7</a></span><a class="code hl_function" href="class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed">UDP::Configuration::Configuration</a>()</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>{</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    <a class="code hl_variable" href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">clients</a>.clear();</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>}</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span> </div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_configuration.html#a16a012d0744f694e3f9f9865ce89c624">   12</a></span><a class="code hl_function" href="class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed">UDP::Configuration::Configuration</a>(std::string filename)</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>{</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    std::ifstream infile(filename);</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a> j;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    infile &gt;&gt; j;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span> </div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keywordflow">for</span> (json::iterator it = j[<span class="stringliteral">&quot;clients&quot;</span>].begin(); it != j[<span class="stringliteral">&quot;clients&quot;</span>].end(); it++)</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    {</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>        clients[(*it)[<span class="stringliteral">&quot;address&quot;</span>]] = (*it)[<span class="stringliteral">&quot;port&quot;</span>];</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    }</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>}</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada">   24</a></span><a class="code hl_function" href="class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada">UDP::Configuration::~Configuration</a>()</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>{</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    clients.clear();</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>}</div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="a_u_d_p_2_configuration_8h_html"><div class="ttname"><a href="_u_d_p_2_configuration_8h.html">Configuration.h</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html_a320ba9474ff76cbc5626d667a4388a55"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">UDP::Configuration::clients</a></div><div class="ttdeci">std::map&lt; std::string, int &gt; clients</div><div class="ttdoc">List of clients.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8h_source.html#l00028">Configuration.h:28</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html_accb7231b058bddbcde4345ee13cc7ada"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada">UDP::Configuration::~Configuration</a></div><div class="ttdeci">~Configuration()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8cpp_source.html#l00024">Configuration.cpp:24</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html_ad8e8aaa5d502e7688ff6b08b50a523ed"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed">UDP::Configuration::Configuration</a></div><div class="ttdeci">Configuration()</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8cpp_source.html#l00007">Configuration.cpp:7</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_u_d_p_2_configuration_8cpp.html">Configuration.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_u_d_p_2_configuration_8h.html b/doc/html/_u_d_p_2_configuration_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..978b0d8bbf09793e75bcb1dc3232a67391ed7c1b
--- /dev/null
+++ b/doc/html/_u_d_p_2_configuration_8h.html
@@ -0,0 +1,119 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Configuration.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_u_d_p_2_configuration_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Configuration.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_u_d_p_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &lt;map&gt;</code><br />
+<code>#include &lt;string&gt;</code><br />
+</div>
+<p><a href="_u_d_p_2_configuration_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_configuration.html" title="UDP Broadcast Configuration.">Configuration</a>.  <a href="class_u_d_p_1_1_configuration.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_u_d_p"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_u_d_p.html">UDP</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_u_d_p_2_configuration_8h.html">Configuration.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_u_d_p_2_configuration_8h_source.html b/doc/html/_u_d_p_2_configuration_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..643a7fd2b8f8a8045ceea60e615f11c3fb07259d
--- /dev/null
+++ b/doc/html/_u_d_p_2_configuration_8h_source.html
@@ -0,0 +1,124 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/Configuration.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_u_d_p_2_configuration_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Configuration.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_u_d_p_2_configuration_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &lt;map&gt;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="keyword">namespace  </span><a class="code hl_namespace" href="namespace_u_d_p.html">UDP</a></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>{</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_configuration.html">   13</a></span>    <span class="keyword">class </span>DLL <a class="code hl_class" href="class_u_d_p_1_1_configuration.html">Configuration</a></div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    {</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">   21</a></span>        <span class="keyword">typedef</span> std::map&lt;std::string, int&gt;::iterator <a class="code hl_typedef" href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">iterator</a>;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span> </div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">   28</a></span>        std::map&lt;std::string, int&gt; <a class="code hl_variable" href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">clients</a>;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span> </div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>        <a class="code hl_class" href="class_u_d_p_1_1_configuration.html">Configuration</a>();</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span> </div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>        <a class="code hl_class" href="class_u_d_p_1_1_configuration.html">Configuration</a>(std::string filename);</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span> </div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>        <a class="code hl_class" href="class_u_d_p_1_1_configuration.html">~Configuration</a>();</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>    };</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>}</div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a></div><div class="ttdoc">UDP Broadcast Configuration.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8h_source.html#l00013">Configuration.h:14</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html_a2f1e39379df27d5d6f81987dcade6053"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">UDP::Configuration::iterator</a></div><div class="ttdeci">std::map&lt; std::string, int &gt;::iterator iterator</div><div class="ttdoc">Iterator.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8h_source.html#l00021">Configuration.h:21</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html_a320ba9474ff76cbc5626d667a4388a55"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">UDP::Configuration::clients</a></div><div class="ttdeci">std::map&lt; std::string, int &gt; clients</div><div class="ttdoc">List of clients.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8h_source.html#l00028">Configuration.h:28</a></div></div>
+<div class="ttc" id="anamespace_u_d_p_html"><div class="ttname"><a href="namespace_u_d_p.html">UDP</a></div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8h_source.html#l00013">Broadcast.h:14</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_u_d_p_2_configuration_8h.html">Configuration.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_u_d_p_2constants_8h.html b/doc/html/_u_d_p_2constants_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..3978da021412e5fbb4f6fd310ac7701fc4a30bd2
--- /dev/null
+++ b/doc/html/_u_d_p_2constants_8h.html
@@ -0,0 +1,101 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/constants.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_u_d_p_2constants_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">constants.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_u_d_p_2constants_8h_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_u_d_p_2constants_8h.html">constants.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_u_d_p_2constants_8h_source.html b/doc/html/_u_d_p_2constants_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..0bccfda55d6eb9dd066ae43582ba74439cd9e730
--- /dev/null
+++ b/doc/html/_u_d_p_2constants_8h_source.html
@@ -0,0 +1,116 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP/constants.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_u_d_p_2constants_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">constants.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_u_d_p_2constants_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#ifdef _WIN32</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#        pragma warning(disable: 4251)</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#        pragma warning(disable: 4275)</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#    ifdef _WINDLL</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="preprocessor">#        define DLL __declspec(dllexport)</span></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="preprocessor">#    else</span></div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span><span class="preprocessor">#        define DLL __declspec(dllimport)</span></div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="preprocessor">#    endif</span></div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span><span class="preprocessor">#elif defined(__unix__)</span></div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="preprocessor">#    define DLL __attribute__((visibility(&quot;default&quot;</span>)))</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="preprocessor">#endif</span></div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span><span class="preprocessor">#ifdef _WIN32</span></div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span><span class="preprocessor">#include &lt;SDKDDKVer.h&gt;</span></div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span><span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li><li class="navelem"><a class="el" href="_u_d_p_2constants_8h.html">constants.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_variable_8cpp.html b/doc/html/_variable_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..36df37aadc1f8ecf788d026d253845d962b7e6ed
--- /dev/null
+++ b/doc/html/_variable_8cpp.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Variable.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_variable_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Variable.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_variable_8h_source.html">Variable.h</a>&quot;</code><br />
+</div>
+<p><a href="_variable_8cpp_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_variable_8cpp.html">Variable.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_variable_8cpp_source.html b/doc/html/_variable_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..1d2bef455ffe5e4433e99d564a5b1dc37c7d055f
--- /dev/null
+++ b/doc/html/_variable_8cpp_source.html
@@ -0,0 +1,101 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Variable.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_variable_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Variable.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_variable_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_variable_8h.html">Variable.h</a>&quot;</span></div>
+<div class="ttc" id="a_variable_8h_html"><div class="ttname"><a href="_variable_8h.html">Variable.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_variable_8cpp.html">Variable.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_variable_8h.html b/doc/html/_variable_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..2f7936b2efe9dfa35ea0dc24ea7071663b42644b
--- /dev/null
+++ b/doc/html/_variable_8h.html
@@ -0,0 +1,127 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Variable.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_variable_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#namespaces">Namespaces</a>  </div>
+  <div class="headertitle"><div class="title">Variable.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_element_8h_source.html">Element.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_container_8h_source.html">Container.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_range_8h_source.html">Range.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_figure_8h_source.html">Figure.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_signer_8h_source.html">SIGN/Signer.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_hasher_8h_source.html">SIGN/Hasher.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_publisher_8h_source.html">MQTT/Publisher.h</a>&quot;</code><br />
+<code>#include &lt;boost/algorithm/string/join.hpp&gt;</code><br />
+</div>
+<p><a href="_variable_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> Class.  <a href="class_s_o_i_l_1_1_variable.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_variable_8h.html">Variable.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/_variable_8h_source.html b/doc/html/_variable_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..aa12e6c5518df793176c8ebbc631f7d4a27e8268
--- /dev/null
+++ b/doc/html/_variable_8h_source.html
@@ -0,0 +1,406 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/Variable.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('_variable_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Variable.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="_variable_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_s_o_i_l_2_types_8h.html">Types.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="_element_8h.html">Element.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;<a class="code" href="_container_8h.html">Container.h</a>&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &quot;<a class="code" href="_range_8h.html">Range.h</a>&quot;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#include &quot;<a class="code" href="_figure_8h.html">Figure.h</a>&quot;</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#include &quot;<a class="code" href="_signer_8h.html">SIGN/Signer.h</a>&quot;</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#include &quot;<a class="code" href="_hasher_8h.html">SIGN/Hasher.h</a>&quot;</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#include &quot;<a class="code" href="_publisher_8h.html">MQTT/Publisher.h</a>&quot;</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="preprocessor">#include &lt;boost/algorithm/string/join.hpp&gt;</span></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span> </div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span> </div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>{</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x = -1, <span class="keywordtype">int</span> y = -1&gt;</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html">   41</a></span>    <span class="keyword">class </span><a class="code hl_class" href="class_s_o_i_l_1_1_variable.html">Variable</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure</a>&lt;T, x, y&gt;</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    {</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    <span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span> </div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">   51</a></span>        std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">nonce</a>;</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span> </div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9">   61</a></span>        std::vector&lt;unsigned char&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9">hash</a>;</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span> </div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639">   74</a></span>        <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, x&gt;</a>  <a class="code hl_variable" href="class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639">covariance</a>;</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span> </div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7">read</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>        </div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span>        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb">write</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span> </div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>    <span class="keyword">public</span>:</div>
+<div class="line"><a id="l00109" name="l00109"></a><span class="lineno">  109</span>        <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05">Variable</a>(std::shared_ptr&lt;Element&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a> = <span class="stringliteral">&quot;&quot;</span>, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a> = <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a>(), <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a> = <a class="code hl_typedef" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>(), std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">nonce</a> = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00110" name="l00110"></a><span class="lineno">  110</span>        </div>
+<div class="line"><a id="l00116" name="l00116"></a><span class="lineno">  116</span>        <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa">~Variable</a>();</div>
+<div class="line"><a id="l00117" name="l00117"></a><span class="lineno">  117</span> </div>
+<div class="line"><a id="l00133" name="l00133"></a><span class="lineno">  133</span>        <span class="keyword">static</span> std::shared_ptr&lt;Variable&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">create</a>(std::shared_ptr&lt;Element&gt; <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a> = <span class="stringliteral">&quot;&quot;</span>, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a> = <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a>(), <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a> = <a class="code hl_typedef" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>(), std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">nonce</a> = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00134" name="l00134"></a><span class="lineno">  134</span> </div>
+<div class="line"><a id="l00146" name="l00146"></a><span class="lineno">  146</span>        <a class="code hl_class" href="class_s_o_i_l_1_1_variable.html">Variable&lt;T, x, y&gt;</a>&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d">operator =</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>);</div>
+<div class="line"><a id="l00147" name="l00147"></a><span class="lineno">  147</span> </div>
+<div class="line"><a id="l00157" name="l00157"></a><span class="lineno">  157</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">wjson</a>(<span class="keywordtype">void</span>) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00158" name="l00158"></a><span class="lineno">  158</span> </div>
+<div class="line"><a id="l00173" name="l00173"></a><span class="lineno">  173</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe">handle_get</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match = std::smatch()) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00174" name="l00174"></a><span class="lineno">  174</span> </div>
+<div class="line"><a id="l00187" name="l00187"></a><span class="lineno">  187</span>        <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72">handle_options</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match = std::smatch()) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00188" name="l00188"></a><span class="lineno">  188</span> </div>
+<div class="line"><a id="l00199" name="l00199"></a><span class="lineno">  199</span>        <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e">update</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>, <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> <a class="code hl_variable" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>, std::string <a class="code hl_variable" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">nonce</a> = <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00200" name="l00200"></a><span class="lineno">  200</span> </div>
+<div class="line"><a id="l00211" name="l00211"></a><span class="lineno">  211</span>        <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4">set_covariance</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, x&gt;</a>  <a class="code hl_variable" href="class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639">covariance</a>);</div>
+<div class="line"><a id="l00212" name="l00212"></a><span class="lineno">  212</span> </div>
+<div class="line"><a id="l00229" name="l00229"></a><span class="lineno">  229</span>        std::vector &lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a">bytes</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00230" name="l00230"></a><span class="lineno">  230</span> </div>
+<div class="line"><a id="l00239" name="l00239"></a><span class="lineno">  239</span>        std::vector &lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e">sha256</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a id="l00240" name="l00240"></a><span class="lineno">  240</span> </div>
+<div class="line"><a id="l00255" name="l00255"></a><span class="lineno">  255</span>        std::vector &lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247">sign</a>(std::shared_ptr&lt;SIGN::Signer&gt; signer = NULL);</div>
+<div class="line"><a id="l00256" name="l00256"></a><span class="lineno">  256</span> </div>
+<div class="line"><a id="l00268" name="l00268"></a><span class="lineno">  268</span>        std::vector &lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7">fingerprint</a>(std::shared_ptr&lt;SIGN::Signer&gt; signer);</div>
+<div class="line"><a id="l00269" name="l00269"></a><span class="lineno">  269</span> </div>
+<div class="line"><a id="l00270" name="l00270"></a><span class="lineno">  270</span>        </div>
+<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06">  277</a></span>        <span class="keyword">inline</span> std::shared_ptr&lt;Variable&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06">ptr</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00278" name="l00278"></a><span class="lineno">  278</span>        {</div>
+<div class="line"><a id="l00279" name="l00279"></a><span class="lineno">  279</span>            <span class="keywordflow">return</span> std::dynamic_pointer_cast&lt;Variable&gt;(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">Element::self</a>);</div>
+<div class="line"><a id="l00280" name="l00280"></a><span class="lineno">  280</span>        }</div>
+<div class="line"><a id="l00281" name="l00281"></a><span class="lineno">  281</span> </div>
+<div class="line"><a id="l00303" name="l00303"></a><span class="lineno">  303</span>        <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f">mqtt</a>(std::shared_ptr&lt;MQTT::Publisher&gt; publisher, <span class="keywordtype">int</span> qos = 0, <span class="keywordtype">bool</span> retain = <span class="keyword">false</span>);</div>
+<div class="line"><a id="l00304" name="l00304"></a><span class="lineno">  304</span>    };</div>
+<div class="line"><a id="l00305" name="l00305"></a><span class="lineno">  305</span> </div>
+<div class="line"><a id="l00306" name="l00306"></a><span class="lineno">  306</span> </div>
+<div class="line"><a id="l00307" name="l00307"></a><span class="lineno">  307</span>}</div>
+<div class="line"><a id="l00308" name="l00308"></a><span class="lineno">  308</span> </div>
+<div class="line"><a id="l00309" name="l00309"></a><span class="lineno">  309</span> </div>
+<div class="line"><a id="l00310" name="l00310"></a><span class="lineno">  310</span> </div>
+<div class="line"><a id="l00311" name="l00311"></a><span class="lineno">  311</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00312" name="l00312"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05">  312</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05">SOIL::Variable&lt;T, x, y&gt;::Variable</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> range, <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> time, std::string nonce) : <a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a>::<a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure</a>&lt;T, x, y&gt;(parent, uuid, name, description, unit, ontology, range, time)</div>
+<div class="line"><a id="l00313" name="l00313"></a><span class="lineno">  313</span>{</div>
+<div class="line"><a id="l00314" name="l00314"></a><span class="lineno">  314</span>    <span class="keywordflow">if</span> (<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>.substr(0, 3) != <span class="stringliteral">&quot;VAR&quot;</span>)</div>
+<div class="line"><a id="l00315" name="l00315"></a><span class="lineno">  315</span>    {</div>
+<div class="line"><a id="l00316" name="l00316"></a><span class="lineno">  316</span>        <span class="keywordflow">throw</span> std::logic_error(<span class="stringliteral">&quot;UUIDs for Variables must start with VAR!&quot;</span>);</div>
+<div class="line"><a id="l00317" name="l00317"></a><span class="lineno">  317</span>    }</div>
+<div class="line"><a id="l00318" name="l00318"></a><span class="lineno">  318</span> </div>
+<div class="line"><a id="l00319" name="l00319"></a><span class="lineno">  319</span>    <a class="code hl_variable" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">HTTP::Resource::allowed_methods</a> = { HTTP::Methods::GET, HTTP::Methods::GET, HTTP::Methods::OPTIONS, HTTP::Methods::HEAD};</div>
+<div class="line"><a id="l00320" name="l00320"></a><span class="lineno">  320</span>}</div>
+<div class="line"><a id="l00321" name="l00321"></a><span class="lineno">  321</span> </div>
+<div class="line"><a id="l00322" name="l00322"></a><span class="lineno">  322</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa">  323</a></span><a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa">SOIL::Variable&lt;T, x, y&gt;::~Variable</a>()</div>
+<div class="line"><a id="l00324" name="l00324"></a><span class="lineno">  324</span>{</div>
+<div class="line"><a id="l00325" name="l00325"></a><span class="lineno">  325</span>}</div>
+<div class="line"><a id="l00326" name="l00326"></a><span class="lineno">  326</span> </div>
+<div class="line"><a id="l00327" name="l00327"></a><span class="lineno">  327</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">  328</a></span><span class="keyword">inline</span> std::shared_ptr&lt;SOIL::Variable&lt;T,x,y&gt; &gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">SOIL::Variable&lt;T, x, y&gt;::create</a>(std::shared_ptr&lt;Element&gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology, <a class="code hl_class" href="class_s_o_i_l_1_1_range.html">Range&lt;T&gt;</a> range, <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> time, std::string nonce)</div>
+<div class="line"><a id="l00329" name="l00329"></a><span class="lineno">  329</span>{</div>
+<div class="line"><a id="l00330" name="l00330"></a><span class="lineno">  330</span>    <a class="code hl_class" href="class_s_o_i_l_1_1_variable.html">Variable&lt;T, x, y&gt;</a>* variable = <span class="keyword">new</span> <a class="code hl_class" href="class_s_o_i_l_1_1_variable.html">Variable&lt;T, x, y&gt;</a>(parent, uuid, name, description, unit, ontology, range, time, nonce);</div>
+<div class="line"><a id="l00331" name="l00331"></a><span class="lineno">  331</span>    <span class="keywordflow">return</span> variable-&gt;<a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06">ptr</a>();</div>
+<div class="line"><a id="l00332" name="l00332"></a><span class="lineno">  332</span>}</div>
+<div class="line"><a id="l00333" name="l00333"></a><span class="lineno">  333</span> </div>
+<div class="line"><a id="l00334" name="l00334"></a><span class="lineno">  334</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00335" name="l00335"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d">  335</a></span><span class="keyword">inline</span> <a class="code hl_class" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt;T, x, y&gt;</a>&amp; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d">SOIL::Variable&lt;T, x, y&gt;::operator=</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; value)</div>
+<div class="line"><a id="l00336" name="l00336"></a><span class="lineno">  336</span>{</div>
+<div class="line"><a id="l00337" name="l00337"></a><span class="lineno">  337</span>    <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">Figure&lt;T, x, y&gt;::operator=</a>(value);</div>
+<div class="line"><a id="l00338" name="l00338"></a><span class="lineno">  338</span>    <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a id="l00339" name="l00339"></a><span class="lineno">  339</span>}</div>
+<div class="line"><a id="l00340" name="l00340"></a><span class="lineno">  340</span> </div>
+<div class="line"><a id="l00341" name="l00341"></a><span class="lineno">  341</span> </div>
+<div class="line"><a id="l00342" name="l00342"></a><span class="lineno">  342</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">  343</a></span><a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">SOIL::Variable&lt;T, x, y&gt;::wjson</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00344" name="l00344"></a><span class="lineno">  344</span>{</div>
+<div class="line"><a id="l00345" name="l00345"></a><span class="lineno">  345</span>    std::unique_lock&lt;std::recursive_mutex&gt; lock(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">Element::mutex</a>);</div>
+<div class="line"><a id="l00346" name="l00346"></a><span class="lineno">  346</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> json_root = <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure&lt;T, x, y&gt;::wjson</a>();</div>
+<div class="line"><a id="l00347" name="l00347"></a><span class="lineno">  347</span> </div>
+<div class="line"><a id="l00348" name="l00348"></a><span class="lineno">  348</span>    </div>
+<div class="line"><a id="l00349" name="l00349"></a><span class="lineno">  349</span>    std::ostringstream buffer;</div>
+<div class="line"><a id="l00350" name="l00350"></a><span class="lineno">  350</span> </div>
+<div class="line"><a id="l00351" name="l00351"></a><span class="lineno">  351</span>    <span class="keywordflow">for</span> (std::string::size_type i = 0; i &lt; hash.size();i++)</div>
+<div class="line"><a id="l00352" name="l00352"></a><span class="lineno">  352</span>    {</div>
+<div class="line"><a id="l00353" name="l00353"></a><span class="lineno">  353</span>        buffer &lt;&lt; std::hex &lt;&lt; std::setfill(<span class="charliteral">&#39;0&#39;</span>) &lt;&lt; std::setw(2) &lt;&lt; std::uppercase  &lt;&lt; (int)hash[i];</div>
+<div class="line"><a id="l00354" name="l00354"></a><span class="lineno">  354</span>        <span class="keywordflow">if</span> (i != hash.size() - 1)</div>
+<div class="line"><a id="l00355" name="l00355"></a><span class="lineno">  355</span>        {</div>
+<div class="line"><a id="l00356" name="l00356"></a><span class="lineno">  356</span>            buffer &lt;&lt; std::setw(1) &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;</div>
+<div class="line"><a id="l00357" name="l00357"></a><span class="lineno">  357</span>        }</div>
+<div class="line"><a id="l00358" name="l00358"></a><span class="lineno">  358</span>    }</div>
+<div class="line"><a id="l00359" name="l00359"></a><span class="lineno">  359</span> </div>
+<div class="line"><a id="l00360" name="l00360"></a><span class="lineno">  360</span>    std::string readable_hash = buffer.str();</div>
+<div class="line"><a id="l00361" name="l00361"></a><span class="lineno">  361</span>    </div>
+<div class="line"><a id="l00362" name="l00362"></a><span class="lineno">  362</span>    json_root[U(<span class="stringliteral">&quot;nonce&quot;</span>)] = (nonce == <span class="stringliteral">&quot;&quot;</span>) ? HTTP::Json::null() : <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(nonce);</div>
+<div class="line"><a id="l00363" name="l00363"></a><span class="lineno">  363</span>    json_root[U(<span class="stringliteral">&quot;hash&quot;</span>)] = (readable_hash == <span class="stringliteral">&quot;&quot;</span>) ? HTTP::Json::null() : <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(readable_hash);</div>
+<div class="line"><a id="l00364" name="l00364"></a><span class="lineno">  364</span>    json_root[U(<span class="stringliteral">&quot;covariance&quot;</span>)] = covariance.<a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">wjson</a>()[U(<span class="stringliteral">&quot;value&quot;</span>)];</div>
+<div class="line"><a id="l00365" name="l00365"></a><span class="lineno">  365</span> </div>
+<div class="line"><a id="l00366" name="l00366"></a><span class="lineno">  366</span>    <span class="keywordflow">return</span> json_root;</div>
+<div class="line"><a id="l00367" name="l00367"></a><span class="lineno">  367</span>}</div>
+<div class="line"><a id="l00368" name="l00368"></a><span class="lineno">  368</span> </div>
+<div class="line"><a id="l00369" name="l00369"></a><span class="lineno">  369</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00370" name="l00370"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7">  370</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7">SOIL::Variable&lt;T, x, y&gt;::read</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00371" name="l00371"></a><span class="lineno">  371</span>{</div>
+<div class="line"><a id="l00372" name="l00372"></a><span class="lineno">  372</span>}</div>
+<div class="line"><a id="l00373" name="l00373"></a><span class="lineno">  373</span> </div>
+<div class="line"><a id="l00374" name="l00374"></a><span class="lineno">  374</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00375" name="l00375"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb">  375</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb">SOIL::Variable&lt;T, x, y&gt;::write</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00376" name="l00376"></a><span class="lineno">  376</span>{</div>
+<div class="line"><a id="l00377" name="l00377"></a><span class="lineno">  377</span>}</div>
+<div class="line"><a id="l00378" name="l00378"></a><span class="lineno">  378</span> </div>
+<div class="line"><a id="l00379" name="l00379"></a><span class="lineno">  379</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4">  380</a></span><span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4">SOIL::Variable&lt;T, x, y&gt;::set_covariance</a>(<a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, x&gt;</a> covariance)</div>
+<div class="line"><a id="l00381" name="l00381"></a><span class="lineno">  381</span>{</div>
+<div class="line"><a id="l00382" name="l00382"></a><span class="lineno">  382</span>    std::unique_lock&lt;std::recursive_mutex&gt; lock(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">Element::mutex</a>);</div>
+<div class="line"><a id="l00383" name="l00383"></a><span class="lineno">  383</span>    this-&gt;covariance = covariance;</div>
+<div class="line"><a id="l00384" name="l00384"></a><span class="lineno">  384</span>}</div>
+<div class="line"><a id="l00385" name="l00385"></a><span class="lineno">  385</span> </div>
+<div class="line"><a id="l00386" name="l00386"></a><span class="lineno">  386</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00387" name="l00387"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a">  387</a></span><span class="keyword">inline</span> std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a">SOIL::Variable&lt;T, x, y&gt;::bytes</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00388" name="l00388"></a><span class="lineno">  388</span>{</div>
+<div class="line"><a id="l00389" name="l00389"></a><span class="lineno">  389</span>    std::unique_lock&lt;std::recursive_mutex&gt; lock(<a class="code hl_variable" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">Element::mutex</a>);</div>
+<div class="line"><a id="l00390" name="l00390"></a><span class="lineno">  390</span>    std::vector&lt;unsigned char&gt; result;</div>
+<div class="line"><a id="l00391" name="l00391"></a><span class="lineno">  391</span>    std::vector&lt;unsigned char&gt; bytes_dimension = <a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure&lt;T, x, y&gt;::value</a>.serialize_dimensions();</div>
+<div class="line"><a id="l00392" name="l00392"></a><span class="lineno">  392</span>    std::vector&lt;unsigned char&gt; bytes_value = <a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure&lt;T, x, y&gt;::value</a>.serialize_value();</div>
+<div class="line"><a id="l00393" name="l00393"></a><span class="lineno">  393</span>    std::vector&lt;unsigned char&gt; bytes_covariance = covariance.<a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">serialize_value</a>();</div>
+<div class="line"><a id="l00394" name="l00394"></a><span class="lineno">  394</span>    std::vector&lt;unsigned char&gt; bytes_unit(3, <span class="charliteral">&#39; &#39;</span>);</div>
+<div class="line"><a id="l00395" name="l00395"></a><span class="lineno">  395</span>    std::vector&lt;unsigned char&gt; bytes_time = <a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure&lt;T,x,y&gt;::time</a>.serialize();</div>
+<div class="line"><a id="l00396" name="l00396"></a><span class="lineno">  396</span>    std::vector&lt;unsigned char&gt; bytes_nonce;</div>
+<div class="line"><a id="l00397" name="l00397"></a><span class="lineno">  397</span>    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; static_cast&lt;int&gt;(std::min(<span class="keyword">static_cast&lt;</span><span class="keywordtype">size_t</span><span class="keyword">&gt;</span>(3), <a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure&lt;T,x,y&gt;::unit</a>.length())); i++)</div>
+<div class="line"><a id="l00398" name="l00398"></a><span class="lineno">  398</span>    {</div>
+<div class="line"><a id="l00399" name="l00399"></a><span class="lineno">  399</span>        bytes_unit.at(i) = <a class="code hl_class" href="class_s_o_i_l_1_1_figure.html">Figure&lt;T, x, y&gt;::unit</a>.at(i);</div>
+<div class="line"><a id="l00400" name="l00400"></a><span class="lineno">  400</span>    }</div>
+<div class="line"><a id="l00401" name="l00401"></a><span class="lineno">  401</span>    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; static_cast&lt;int&gt;(nonce.length()); i++)</div>
+<div class="line"><a id="l00402" name="l00402"></a><span class="lineno">  402</span>    {</div>
+<div class="line"><a id="l00403" name="l00403"></a><span class="lineno">  403</span>        bytes_nonce.push_back(nonce.at(i));</div>
+<div class="line"><a id="l00404" name="l00404"></a><span class="lineno">  404</span>    }</div>
+<div class="line"><a id="l00405" name="l00405"></a><span class="lineno">  405</span> </div>
+<div class="line"><a id="l00406" name="l00406"></a><span class="lineno">  406</span>    result.<a class="code hl_function" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a>(result.end(), bytes_dimension.begin(), bytes_dimension.end());</div>
+<div class="line"><a id="l00407" name="l00407"></a><span class="lineno">  407</span>    result.insert(result.end(), bytes_value.begin(), bytes_value.end());</div>
+<div class="line"><a id="l00408" name="l00408"></a><span class="lineno">  408</span>    result.insert(result.end(), bytes_covariance.begin(), bytes_covariance.end());</div>
+<div class="line"><a id="l00409" name="l00409"></a><span class="lineno">  409</span>    result.insert(result.end(), bytes_unit.begin(), bytes_unit.end());</div>
+<div class="line"><a id="l00410" name="l00410"></a><span class="lineno">  410</span>    result.insert(result.end(), bytes_time.begin(), bytes_time.end());</div>
+<div class="line"><a id="l00411" name="l00411"></a><span class="lineno">  411</span>    result.insert(result.end(), bytes_nonce.begin(), bytes_nonce.end());</div>
+<div class="line"><a id="l00412" name="l00412"></a><span class="lineno">  412</span> </div>
+<div class="line"><a id="l00413" name="l00413"></a><span class="lineno">  413</span>    <span class="keywordflow">return</span> result;</div>
+<div class="line"><a id="l00414" name="l00414"></a><span class="lineno">  414</span>}</div>
+<div class="line"><a id="l00415" name="l00415"></a><span class="lineno">  415</span> </div>
+<div class="line"><a id="l00416" name="l00416"></a><span class="lineno">  416</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00417" name="l00417"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e">  417</a></span><span class="keyword">inline</span> std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e">SOIL::Variable&lt;T, x, y&gt;::sha256</a>(<span class="keywordtype">void</span>)</div>
+<div class="line"><a id="l00418" name="l00418"></a><span class="lineno">  418</span>{</div>
+<div class="line"><a id="l00419" name="l00419"></a><span class="lineno">  419</span>    std::vector&lt;unsigned char&gt; data = this-&gt;bytes();</div>
+<div class="line"><a id="l00420" name="l00420"></a><span class="lineno">  420</span>    <span class="keywordflow">return</span> <a class="code hl_function" href="class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044">SIGN::Hasher::sha256</a>(data.data(), data.size());</div>
+<div class="line"><a id="l00421" name="l00421"></a><span class="lineno">  421</span>}</div>
+<div class="line"><a id="l00422" name="l00422"></a><span class="lineno">  422</span> </div>
+<div class="line"><a id="l00423" name="l00423"></a><span class="lineno">  423</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00424" name="l00424"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7">  424</a></span><span class="keyword">inline</span> std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7">SOIL::Variable&lt;T, x, y&gt;::fingerprint</a>(std::shared_ptr&lt;SIGN::Signer&gt; signer)</div>
+<div class="line"><a id="l00425" name="l00425"></a><span class="lineno">  425</span>{</div>
+<div class="line"><a id="l00426" name="l00426"></a><span class="lineno">  426</span>    <span class="keywordflow">return</span> signer-&gt;sign(this-&gt;sha256());</div>
+<div class="line"><a id="l00427" name="l00427"></a><span class="lineno">  427</span>}</div>
+<div class="line"><a id="l00428" name="l00428"></a><span class="lineno">  428</span> </div>
+<div class="line"><a id="l00429" name="l00429"></a><span class="lineno">  429</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00430" name="l00430"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247">  430</a></span><span class="keyword">inline</span> std::vector&lt;unsigned char&gt; <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247">SOIL::Variable&lt;T, x, y&gt;::sign</a>(std::shared_ptr&lt;SIGN::Signer&gt; signer)</div>
+<div class="line"><a id="l00431" name="l00431"></a><span class="lineno">  431</span>{</div>
+<div class="line"><a id="l00432" name="l00432"></a><span class="lineno">  432</span>    <span class="keywordflow">if</span> (signer != NULL)</div>
+<div class="line"><a id="l00433" name="l00433"></a><span class="lineno">  433</span>    {</div>
+<div class="line"><a id="l00434" name="l00434"></a><span class="lineno">  434</span>        this-&gt;hash = this-&gt;fingerprint(signer);</div>
+<div class="line"><a id="l00435" name="l00435"></a><span class="lineno">  435</span>    }</div>
+<div class="line"><a id="l00436" name="l00436"></a><span class="lineno">  436</span>    <span class="keywordflow">else</span> {</div>
+<div class="line"><a id="l00437" name="l00437"></a><span class="lineno">  437</span>        this-&gt;hash = this-&gt;sha256();</div>
+<div class="line"><a id="l00438" name="l00438"></a><span class="lineno">  438</span>    }</div>
+<div class="line"><a id="l00439" name="l00439"></a><span class="lineno">  439</span> </div>
+<div class="line"><a id="l00440" name="l00440"></a><span class="lineno">  440</span>    <span class="keywordflow">return</span> this-&gt;hash;</div>
+<div class="line"><a id="l00441" name="l00441"></a><span class="lineno">  441</span>}</div>
+<div class="line"><a id="l00442" name="l00442"></a><span class="lineno">  442</span> </div>
+<div class="line"><a id="l00443" name="l00443"></a><span class="lineno">  443</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00444" name="l00444"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f">  444</a></span><span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f">SOIL::Variable&lt;T, x, y&gt;::mqtt</a>(std::shared_ptr&lt;MQTT::Publisher&gt; publisher, <span class="keywordtype">int</span> qos, <span class="keywordtype">bool</span> retain)</div>
+<div class="line"><a id="l00445" name="l00445"></a><span class="lineno">  445</span>{</div>
+<div class="line"><a id="l00446" name="l00446"></a><span class="lineno">  446</span>    std::string topic = boost::algorithm::join(this-&gt;fqid(), <span class="stringliteral">&quot;/&quot;</span>);</div>
+<div class="line"><a id="l00447" name="l00447"></a><span class="lineno">  447</span>    <span class="keywordflow">return</span> publisher-&gt;publish(topic, this-&gt;<a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>(), qos, retain);</div>
+<div class="line"><a id="l00448" name="l00448"></a><span class="lineno">  448</span>}</div>
+<div class="line"><a id="l00449" name="l00449"></a><span class="lineno">  449</span> </div>
+<div class="line"><a id="l00450" name="l00450"></a><span class="lineno">  450</span> </div>
+<div class="line"><a id="l00451" name="l00451"></a><span class="lineno">  451</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00452" name="l00452"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe">  452</a></span><span class="keyword">inline</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe">SOIL::Variable&lt;T, x, y&gt;::handle_get</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00453" name="l00453"></a><span class="lineno">  453</span>{</div>
+<div class="line"><a id="l00454" name="l00454"></a><span class="lineno">  454</span>    this-&gt;read();</div>
+<div class="line"><a id="l00455" name="l00455"></a><span class="lineno">  455</span> </div>
+<div class="line"><a id="l00456" name="l00456"></a><span class="lineno">  456</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> response;</div>
+<div class="line"><a id="l00457" name="l00457"></a><span class="lineno">  457</span>    response.set_body(this-&gt;wjson());</div>
+<div class="line"><a id="l00458" name="l00458"></a><span class="lineno">  458</span>    response.set_status_code(HTTP::Status::OK);</div>
+<div class="line"><a id="l00459" name="l00459"></a><span class="lineno">  459</span> </div>
+<div class="line"><a id="l00460" name="l00460"></a><span class="lineno">  460</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00461" name="l00461"></a><span class="lineno">  461</span>}</div>
+<div class="line"><a id="l00462" name="l00462"></a><span class="lineno">  462</span> </div>
+<div class="line"><a id="l00463" name="l00463"></a><span class="lineno">  463</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00464" name="l00464"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72">  464</a></span><span class="keyword">inline</span> <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72">SOIL::Variable&lt;T, x, y&gt;::handle_options</a>(<a class="code hl_typedef" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match)</div>
+<div class="line"><a id="l00465" name="l00465"></a><span class="lineno">  465</span>{</div>
+<div class="line"><a id="l00466" name="l00466"></a><span class="lineno">  466</span>    <a class="code hl_typedef" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> response;</div>
+<div class="line"><a id="l00467" name="l00467"></a><span class="lineno">  467</span>    response.set_body(this-&gt;wjson());</div>
+<div class="line"><a id="l00468" name="l00468"></a><span class="lineno">  468</span>    response.set_status_code(HTTP::Status::OK);</div>
+<div class="line"><a id="l00469" name="l00469"></a><span class="lineno">  469</span> </div>
+<div class="line"><a id="l00470" name="l00470"></a><span class="lineno">  470</span>    <span class="keywordflow">return</span> response;</div>
+<div class="line"><a id="l00471" name="l00471"></a><span class="lineno">  471</span>}</div>
+<div class="line"><a id="l00472" name="l00472"></a><span class="lineno">  472</span> </div>
+<div class="line"><a id="l00473" name="l00473"></a><span class="lineno">  473</span><span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y&gt;</div>
+<div class="line"><a id="l00474" name="l00474"></a><span class="lineno"><a class="line" href="class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e">  474</a></span><span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e">SOIL::Variable&lt;T, x, y&gt;::update</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_container.html">Container&lt;T, x, y&gt;</a>&amp; value, <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">TIME</a> time, std::string nonce)</div>
+<div class="line"><a id="l00475" name="l00475"></a><span class="lineno">  475</span>{</div>
+<div class="line"><a id="l00476" name="l00476"></a><span class="lineno">  476</span>    <a class="code hl_function" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">Figure&lt;T, x, y&gt;::update</a>(value, time);</div>
+<div class="line"><a id="l00477" name="l00477"></a><span class="lineno">  477</span>    this-&gt;nonce = nonce;</div>
+<div class="line"><a id="l00478" name="l00478"></a><span class="lineno">  478</span> </div>
+<div class="line"><a id="l00479" name="l00479"></a><span class="lineno">  479</span>    hash.clear();</div>
+<div class="line"><a id="l00480" name="l00480"></a><span class="lineno">  480</span>    covariance.<a class="code hl_function" href="class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39">set_null</a>(<span class="keyword">true</span>);</div>
+<div class="line"><a id="l00481" name="l00481"></a><span class="lineno">  481</span>}</div>
+<div class="line"><a id="l00482" name="l00482"></a><span class="lineno">  482</span> </div>
+<div class="line"><a id="l00483" name="l00483"></a><span class="lineno">  483</span> </div>
+<div class="line"><a id="l00484" name="l00484"></a><span class="lineno">  484</span> </div>
+<div class="line"><a id="l00485" name="l00485"></a><span class="lineno">  485</span> </div>
+<div class="ttc" id="a_container_8h_html"><div class="ttname"><a href="_container_8h.html">Container.h</a></div></div>
+<div class="ttc" id="a_element_8h_html"><div class="ttname"><a href="_element_8h.html">Element.h</a></div></div>
+<div class="ttc" id="a_figure_8h_html"><div class="ttname"><a href="_figure_8h.html">Figure.h</a></div></div>
+<div class="ttc" id="a_hasher_8h_html"><div class="ttname"><a href="_hasher_8h.html">Hasher.h</a></div></div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="a_publisher_8h_html"><div class="ttname"><a href="_publisher_8h.html">Publisher.h</a></div></div>
+<div class="ttc" id="a_range_8h_html"><div class="ttname"><a href="_range_8h.html">Range.h</a></div></div>
+<div class="ttc" id="a_s_o_i_l_2_types_8h_html"><div class="ttname"><a href="_s_o_i_l_2_types_8h.html">Types.h</a></div></div>
+<div class="ttc" id="a_signer_8h_html"><div class="ttname"><a href="_signer_8h.html">Signer.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_resource_html_a4a78094cb756c0886c787f93462621c0"><div class="ttname"><a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">HTTP::Resource::allowed_methods</a></div><div class="ttdeci">std::vector&lt; web::http::method &gt; allowed_methods</div><div class="ttdoc">Allowed methods.</div><div class="ttdef"><b>Definition:</b> <a href="_resource_8h_source.html#l00042">Resource.h:42</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_hasher_html_a1478050616af6fac27055b9a5190a044"><div class="ttname"><a href="class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044">SIGN::Hasher::sha256</a></div><div class="ttdeci">static std::vector&lt; unsigned char &gt; sha256(const unsigned char *data, size_t length)</div><div class="ttdoc">SHA256 hash.</div><div class="ttdef"><b>Definition:</b> <a href="_hasher_8cpp_source.html#l00008">Hasher.cpp:8</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html">SOIL::Container</a></div><div class="ttdoc">Data Container.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00021">Container.h:22</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a197355701a388b65d7ea327ddd45024a"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">SOIL::Container::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void)</div><div class="ttdoc">WJSON representation.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00269">Container.h:269</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a386c1992526628067cad3295763e6e39"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39">SOIL::Container::set_null</a></div><div class="ttdeci">void set_null(bool _null=true)</div><div class="ttdoc">Set null.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00087">Container.h:87</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_container_html_a5bb5198238af5ed6058e2f77ddb15f38"><div class="ttname"><a href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">SOIL::Container::serialize_value</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; serialize_value(void) const</div><div class="ttdoc">Serialize value.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00323">Container.h:323</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a06d51f457b4412d64c3980a377fbc9f0"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">SOIL::Element::insert</a></div><div class="ttdeci">bool insert(std::string uuid, std::shared_ptr&lt; Element &gt; child)</div><div class="ttdoc">Add Child Element.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8cpp_source.html#l00091">Element.cpp:91</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_a8676609fe497118147e31b25958d5104"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">SOIL::Element::uuid</a></div><div class="ttdeci">std::string uuid</div><div class="ttdoc">Local UUID.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00053">Element.h:53</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_aaef3cdce55ced857a81ba285afc92ed9"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">SOIL::Element::description</a></div><div class="ttdeci">std::string description</div><div class="ttdoc">Description.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00067">Element.h:67</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ad89fecb69de794e7b918767d5f21027d"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">SOIL::Element::ontology</a></div><div class="ttdeci">std::string ontology</div><div class="ttdoc">Ontology identifier.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00076">Element.h:76</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_ae80d2c6c5f2577aa5a8489f2c0c352e8"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">SOIL::Element::name</a></div><div class="ttdeci">std::string name</div><div class="ttdoc">Name.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00060">Element.h:60</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_af1992c267233cec3b17bc70038d1d84b"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">SOIL::Element::parent</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; parent</div><div class="ttdoc">Parent Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00039">Element.h:39</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_afc29676fd98e4c6b7ab004514c175b7c"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">SOIL::Element::mutex</a></div><div class="ttdeci">std::recursive_mutex mutex</div><div class="ttdoc">Element Mutex.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00083">Element.h:83</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_element_html_afcdcd6ceb94c7d14b0fce99461bb5e30"><div class="ttname"><a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">SOIL::Element::self</a></div><div class="ttdeci">std::shared_ptr&lt; Element &gt; self</div><div class="ttdoc">Self Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_element_8h_source.html#l00046">Element.h:46</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a></div><div class="ttdoc">Intermediate class for Variable and Parameter that derives from Element.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00048">Figure.h:49</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a4e4d6c93a559d5e18178de9a79b472ec"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">SOIL::Figure::operator=</a></div><div class="ttdeci">Figure&lt; T, x, y &gt; &amp; operator=(const Container&lt; T, x, y &gt; &amp;value)</div><div class="ttdoc">Assignment operator.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00259">Figure.h:259</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a627d9d3386a719a6612ec3068812ea67"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">SOIL::Figure&lt; T, -1, -1 &gt;::unit</a></div><div class="ttdeci">std::string unit</div><div class="ttdoc">Unit.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00063">Figure.h:63</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a65998054544cd71fdb47c0b1b956e883"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">SOIL::Figure::update</a></div><div class="ttdeci">virtual void update(const Container&lt; T, x, y &gt; &amp;value, TIME time)</div><div class="ttdoc">Update.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00308">Figure.h:308</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a8f320356ea837f06e439b74c2a22e81c"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">SOIL::Figure&lt; T, -1, -1 &gt;::time</a></div><div class="ttdeci">TIME time</div><div class="ttdoc">Data Timestamp.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00056">Figure.h:56</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_a97c7e2488708c155d366e2cdc1934c3b"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">SOIL::Figure&lt; T, -1, -1 &gt;::value</a></div><div class="ttdeci">Container&lt; T, x, y &gt; value</div><div class="ttdoc">Value.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00070">Figure.h:70</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_ab431dcf967cbfb8591b9128257595712"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">SOIL::Figure&lt; T, -1, -1 &gt;::range</a></div><div class="ttdeci">Range&lt; T &gt; range</div><div class="ttdoc">Range.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00077">Figure.h:77</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_figure_html_aca02467b79b6d4a9590553b612876b20"><div class="ttname"><a href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void) override</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_figure_8h_source.html#l00229">Figure.h:229</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_range_html"><div class="ttname"><a href="class_s_o_i_l_1_1_range.html">SOIL::Range</a></div><div class="ttdoc">Range Helper Class.</div><div class="ttdef"><b>Definition:</b> <a href="_range_8h_source.html#l00024">Range.h:25</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00012">Time.h:13</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a></div><div class="ttdoc">Variable Class.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00041">Variable.h:42</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a04574823a93f387d4d1aaa4a7087f22e"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e">SOIL::Variable::sha256</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; sha256(void)</div><div class="ttdoc">Calculate SHA256.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00417">Variable.h:417</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a10c29b035a567af07850dd1f27e218fe"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe">SOIL::Variable::handle_get</a></div><div class="ttdeci">HTTP::Response handle_get(HTTP::Request message, std::smatch match=std::smatch()) override</div><div class="ttdoc">HTTP GET Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00452">Variable.h:452</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a159b3f2994697e91aeaef8649376aee3"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">SOIL::Variable::nonce</a></div><div class="ttdeci">std::string nonce</div><div class="ttdoc">Nonce.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00051">Variable.h:51</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a22c13c0c69fca4f40a3b25285e746e06"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06">SOIL::Variable::ptr</a></div><div class="ttdeci">std::shared_ptr&lt; Variable &gt; ptr(void)</div><div class="ttdoc">Get Pointer.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00277">Variable.h:277</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a2bdfc0ecf346e6544ba897f86a5fa1e4"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4">SOIL::Variable::set_covariance</a></div><div class="ttdeci">void set_covariance(Container&lt; T, x, x &gt; covariance)</div><div class="ttdoc">Set Covariance.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00380">Variable.h:380</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a37198446b18018989419984f3ec82c68"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">SOIL::Variable::wjson</a></div><div class="ttdeci">HTTP::Json wjson(void) override</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00343">Variable.h:343</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a421f6aeaee92e362e455edcbe6b58231"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">SOIL::Variable::create</a></div><div class="ttdeci">static std::shared_ptr&lt; Variable &gt; create(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME(), std::string nonce=&quot;&quot;)</div><div class="ttdoc">Create new Variable.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00328">Variable.h:328</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a42d3242d0f2619bbedbe54473e5bde05"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05">SOIL::Variable::Variable</a></div><div class="ttdeci">Variable(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME(), std::string nonce=&quot;&quot;)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00312">Variable.h:312</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a62d80e5cd14d377d3bea90e6332b0b72"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72">SOIL::Variable::handle_options</a></div><div class="ttdeci">HTTP::Response handle_options(HTTP::Request message, std::smatch match=std::smatch()) override</div><div class="ttdoc">HTTP OPTIONS Handler.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00464">Variable.h:464</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a85828d5d8162aff4c496c782a432b55d"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d">SOIL::Variable::operator=</a></div><div class="ttdeci">Variable&lt; T, x, y &gt; &amp; operator=(const Container&lt; T, x, y &gt; &amp;value)</div><div class="ttdoc">Assignment operator.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00335">Variable.h:335</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a8ef20bb80d404cba203ebe64a9c3296f"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f">SOIL::Variable::mqtt</a></div><div class="ttdeci">bool mqtt(std::shared_ptr&lt; MQTT::Publisher &gt; publisher, int qos=0, bool retain=false)</div><div class="ttdoc">Publish to MQTT.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00444">Variable.h:444</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a95274da091367dba743e0cf0052b4dd7"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7">SOIL::Variable::read</a></div><div class="ttdeci">virtual void read(void)</div><div class="ttdoc">Read callback.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00370">Variable.h:370</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a9b112a792be9ae8647bc58fd4e28c5bb"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb">SOIL::Variable::write</a></div><div class="ttdeci">virtual void write(void)</div><div class="ttdoc">Write callback.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00375">Variable.h:375</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_aaeba9a89d6c0b950246fff61ac221fa7"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7">SOIL::Variable::fingerprint</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; fingerprint(std::shared_ptr&lt; SIGN::Signer &gt; signer)</div><div class="ttdoc">Calculate RSA fingerprint.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00424">Variable.h:424</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_ab1c36ffeef15739332ebd39c3c63184e"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e">SOIL::Variable::update</a></div><div class="ttdeci">void update(const Container&lt; T, x, y &gt; &amp;value, TIME time, std::string nonce=&quot;&quot;)</div><div class="ttdoc">Update value.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00474">Variable.h:474</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_ab7eac644327edcff9e211b45e1905d2a"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a">SOIL::Variable::bytes</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; bytes(void)</div><div class="ttdoc">Get bytewise representation.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00387">Variable.h:387</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_abaafa5ebe21c155fc27800d22275d639"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639">SOIL::Variable::covariance</a></div><div class="ttdeci">Container&lt; T, x, x &gt; covariance</div><div class="ttdoc">Covariance of the value.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00074">Variable.h:74</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_abb8683a103f7eed6be691c6057312baa"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa">SOIL::Variable::~Variable</a></div><div class="ttdeci">~Variable()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00323">Variable.h:323</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_adf66dfb35361158c8c05cc5ed81bd247"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247">SOIL::Variable::sign</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; sign(std::shared_ptr&lt; SIGN::Signer &gt; signer=NULL)</div><div class="ttdoc">Sign the variable data.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00430">Variable.h:430</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_ae5349b85d820a6204f44af04b528f6a9"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9">SOIL::Variable::hash</a></div><div class="ttdeci">std::vector&lt; unsigned char &gt; hash</div><div class="ttdoc">Checking Hash.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00061">Variable.h:61</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_a317431a644c9db16a1657ecc77677a11"><div class="ttname"><a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></div><div class="ttdeci">web::json::value Json</div><div class="ttdoc">HTTP JSON.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00039">Types.h:39</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_ab1754212af3bb8edc420a97cffb176ea"><div class="ttname"><a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></div><div class="ttdeci">web::http::http_request Request</div><div class="ttdoc">HTTP Request.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00011">Types.h:11</a></div></div>
+<div class="ttc" id="anamespace_h_t_t_p_html_af7f55b32590882bc9b905c78799fabdf"><div class="ttname"><a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></div><div class="ttdeci">web::http::http_response Response</div><div class="ttdoc">HTTP Response.</div><div class="ttdef"><b>Definition:</b> <a href="_r_e_s_t_2_types_8h_source.html#l00018">Types.h:18</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a088b157f218c9c844ae77c2c07f1b328"><div class="ttname"><a href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a></div><div class="ttdeci">Time TIME</div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00054">Types.h:54</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a82671406aa31a367c38dcad31d359b92"><div class="ttname"><a href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a></div><div class="ttdeci">DLL web::json::value to_json(const T &amp;value)</div><div class="ttdoc">Value to JSON.</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="_variable_8h.html">Variable.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/annotated.html b/doc/html/annotated.html
new file mode 100644
index 0000000000000000000000000000000000000000..fd2344e1b86b913f0135a210e474934a86a6e652
--- /dev/null
+++ b/doc/html/annotated.html
@@ -0,0 +1,132 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('annotated.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Class List</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_h_t_t_p.html" target="_self">HTTP</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_h_t_t_p_1_1_resource.html" target="_self">Resource</a></td><td class="desc"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> <a class="el" href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class.">Resource</a> base class </td></tr>
+<tr id="row_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_h_t_t_p_1_1_server.html" target="_self">Server</a></td><td class="desc">HTPP <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">Server</a> </td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_1_" class="arrow" onclick="toggleFolder('1_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_m_q_t_t.html" target="_self">MQTT</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_m_q_t_t_1_1_configuration.html" target="_self">Configuration</a></td><td class="desc"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> publishing configuration </td></tr>
+<tr id="row_1_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_m_q_t_t_1_1_exception.html" target="_self">Exception</a></td><td class="desc"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a> <a class="el" href="class_m_q_t_t_1_1_exception.html" title="MQTT Publisher Exception.">Exception</a> </td></tr>
+<tr id="row_1_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_m_q_t_t_1_1_message_container.html" target="_self">MessageContainer</a></td><td class="desc">Internal <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message struct </td></tr>
+<tr id="row_1_3_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_m_q_t_t_1_1_publisher.html" target="_self">Publisher</a></td><td class="desc"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a> </td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_2_" class="arrow" onclick="toggleFolder('2_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_s_i_g_n.html" target="_self">SIGN</a></td><td class="desc"></td></tr>
+<tr id="row_2_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_i_g_n_1_1_hasher.html" target="_self">Hasher</a></td><td class="desc">SHA256 <a class="el" href="class_s_i_g_n_1_1_hasher.html" title="SHA256 Hasher.">Hasher</a> </td></tr>
+<tr id="row_2_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_i_g_n_1_1_signer.html" target="_self">Signer</a></td><td class="desc"><a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">Signer</a> </td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_3_" class="arrow" onclick="toggleFolder('3_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_s_o_i_l.html" target="_self">SOIL</a></td><td class="desc">Type definitions </td></tr>
+<tr id="row_3_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_container.html" target="_self">Container</a></td><td class="desc">Data <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> </td></tr>
+<tr id="row_3_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html" target="_self">Container&lt; T, -1, -1 &gt;</a></td><td class="desc">Template specialization for Scalars </td></tr>
+<tr id="row_3_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html" target="_self">Container&lt; T, x, -1 &gt;</a></td><td class="desc">Template specialization for 1D-Arrays/Vectors </td></tr>
+<tr id="row_3_3_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_element.html" target="_self">Element</a></td><td class="desc"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Base <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> </td></tr>
+<tr id="row_3_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_enum.html" target="_self">Enum</a></td><td class="desc"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> Datatype </td></tr>
+<tr id="row_3_5_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_figure.html" target="_self">Figure</a></td><td class="desc">Intermediate class for <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> that derives from <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> </td></tr>
+<tr id="row_3_6_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_function.html" target="_self">Function</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> Class </td></tr>
+<tr id="row_3_7_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_object.html" target="_self">Object</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> Class </td></tr>
+<tr id="row_3_8_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_parameter.html" target="_self">Parameter</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> Class </td></tr>
+<tr id="row_3_9_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_range.html" target="_self">Range</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> Helper Class </td></tr>
+<tr id="row_3_10_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html" target="_self">Range&lt; ENUM &gt;</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> </td></tr>
+<tr id="row_3_11_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html" target="_self">Range&lt; std::string &gt;</a></td><td class="desc">String <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> </td></tr>
+<tr id="row_3_12_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_time.html" target="_self">Time</a></td><td class="desc"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> </td></tr>
+<tr id="row_3_13_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_variable.html" target="_self">Variable</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> Class </td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_4_" class="arrow" onclick="toggleFolder('4_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_u_d_p.html" target="_self">UDP</a></td><td class="desc"></td></tr>
+<tr id="row_4_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_u_d_p_1_1_broadcast.html" target="_self">Broadcast</a></td><td class="desc"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> </td></tr>
+<tr id="row_4_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_u_d_p_1_1_configuration.html" target="_self">Configuration</a></td><td class="desc"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_configuration.html" title="UDP Broadcast Configuration.">Configuration</a> </td></tr>
+<tr id="row_4_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_u_d_p_1_1_exception.html" target="_self">Exception</a></td><td class="desc"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_exception.html" title="UDP Broadcast Exception.">Exception</a> </td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/annotated_dup.js b/doc/html/annotated_dup.js
new file mode 100644
index 0000000000000000000000000000000000000000..2df876abcc10203fc20b1a78374605d0cd2c220b
--- /dev/null
+++ b/doc/html/annotated_dup.js
@@ -0,0 +1,38 @@
+var annotated_dup =
+[
+    [ "HTTP", "namespace_h_t_t_p.html", [
+      [ "Resource", "class_h_t_t_p_1_1_resource.html", "class_h_t_t_p_1_1_resource" ],
+      [ "Server", "class_h_t_t_p_1_1_server.html", "class_h_t_t_p_1_1_server" ]
+    ] ],
+    [ "MQTT", "namespace_m_q_t_t.html", [
+      [ "Configuration", "class_m_q_t_t_1_1_configuration.html", "class_m_q_t_t_1_1_configuration" ],
+      [ "Exception", "class_m_q_t_t_1_1_exception.html", "class_m_q_t_t_1_1_exception" ],
+      [ "MessageContainer", "struct_m_q_t_t_1_1_message_container.html", "struct_m_q_t_t_1_1_message_container" ],
+      [ "Publisher", "class_m_q_t_t_1_1_publisher.html", "class_m_q_t_t_1_1_publisher" ]
+    ] ],
+    [ "SIGN", "namespace_s_i_g_n.html", [
+      [ "Hasher", "class_s_i_g_n_1_1_hasher.html", "class_s_i_g_n_1_1_hasher" ],
+      [ "Signer", "class_s_i_g_n_1_1_signer.html", "class_s_i_g_n_1_1_signer" ]
+    ] ],
+    [ "SOIL", "namespace_s_o_i_l.html", [
+      [ "Container", "class_s_o_i_l_1_1_container.html", "class_s_o_i_l_1_1_container" ],
+      [ "Container< T, -1, -1 >", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4" ],
+      [ "Container< T, x, -1 >", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4" ],
+      [ "Element", "class_s_o_i_l_1_1_element.html", "class_s_o_i_l_1_1_element" ],
+      [ "Enum", "class_s_o_i_l_1_1_enum.html", "class_s_o_i_l_1_1_enum" ],
+      [ "Figure", "class_s_o_i_l_1_1_figure.html", "class_s_o_i_l_1_1_figure" ],
+      [ "Function", "class_s_o_i_l_1_1_function.html", "class_s_o_i_l_1_1_function" ],
+      [ "Object", "class_s_o_i_l_1_1_object.html", "class_s_o_i_l_1_1_object" ],
+      [ "Parameter", "class_s_o_i_l_1_1_parameter.html", "class_s_o_i_l_1_1_parameter" ],
+      [ "Range", "class_s_o_i_l_1_1_range.html", "class_s_o_i_l_1_1_range" ],
+      [ "Range< ENUM >", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4" ],
+      [ "Range< std::string >", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4" ],
+      [ "Time", "class_s_o_i_l_1_1_time.html", "class_s_o_i_l_1_1_time" ],
+      [ "Variable", "class_s_o_i_l_1_1_variable.html", "class_s_o_i_l_1_1_variable" ]
+    ] ],
+    [ "UDP", "namespace_u_d_p.html", [
+      [ "Broadcast", "class_u_d_p_1_1_broadcast.html", "class_u_d_p_1_1_broadcast" ],
+      [ "Configuration", "class_u_d_p_1_1_configuration.html", "class_u_d_p_1_1_configuration" ],
+      [ "Exception", "class_u_d_p_1_1_exception.html", "class_u_d_p_1_1_exception" ]
+    ] ]
+];
\ No newline at end of file
diff --git a/doc/html/bc_s.png b/doc/html/bc_s.png
new file mode 100644
index 0000000000000000000000000000000000000000..224b29aa9847d5a4b3902efd602b7ddf7d33e6c2
Binary files /dev/null and b/doc/html/bc_s.png differ
diff --git a/doc/html/bdwn.png b/doc/html/bdwn.png
new file mode 100644
index 0000000000000000000000000000000000000000..940a0b950443a0bb1b216ac03c45b8a16c955452
Binary files /dev/null and b/doc/html/bdwn.png differ
diff --git a/doc/html/class_enum-members.html b/doc/html/class_enum-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..08909c1cf4dcef6e1b7351e82f9d602be6a28002
--- /dev/null
+++ b/doc/html/class_enum-members.html
@@ -0,0 +1,110 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>C++ Unified Device Interface: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">C++ Unified Device Interface
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_enum.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Enum Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_enum.html">Enum</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_enum.html#a6ece45e4921e0303de7d1a0eaffe0ba7">choices</a>(void)</td><td class="entry"><a class="el" href="class_enum.html">Enum</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_enum.html#a88044fc2d8c40fdbd34049717c00c901">Enum</a>()</td><td class="entry"><a class="el" href="class_enum.html">Enum</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_enum.html#a3cc97267c04e877766cde56481b7b321">Enum</a>(std::string value)</td><td class="entry"><a class="el" href="class_enum.html">Enum</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_enum.html#a1a48d44dd680f2c1d3285fba7b48e72a">Enum</a>(std::string value, std::vector&lt; std::string &gt; choices)</td><td class="entry"><a class="el" href="class_enum.html">Enum</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_enum.html#ae7eca943c191351cc57b1e6bca20b255">index</a>() const</td><td class="entry"><a class="el" href="class_enum.html">Enum</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_enum.html#ae93fc5b0ce7372e9d6ff39c6a3ce977a">index</a>(std::string value) const</td><td class="entry"><a class="el" href="class_enum.html">Enum</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_enum.html#a5af796ca10d9c904c15f1151862b752a">selected</a>(void) const</td><td class="entry"><a class="el" href="class_enum.html">Enum</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_enum.html#a49a08e164a30fec159dadd253eb77cb2">set</a>(int value)</td><td class="entry"><a class="el" href="class_enum.html">Enum</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_enum.html#ac47597e0a437470009a53e43939900a4">set</a>(std::string value)</td><td class="entry"><a class="el" href="class_enum.html">Enum</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_enum.html#aa8da6534b07c9a5ee67e215fa5087b05">~Enum</a>()</td><td class="entry"><a class="el" href="class_enum.html">Enum</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_enum.html b/doc/html/class_enum.html
new file mode 100644
index 0000000000000000000000000000000000000000..92b0e2ecbe46fd670b0a67b16c837211e70fd596
--- /dev/null
+++ b/doc/html/class_enum.html
@@ -0,0 +1,418 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>C++ Unified Device Interface: Enum Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">C++ Unified Device Interface
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_enum.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_enum-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">Enum Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_enum.html" title="SOIL Enum Datatype.">Enum</a> Datatype.  
+ <a href="class_enum.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_enum_8h_source.html">Enum.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a88044fc2d8c40fdbd34049717c00c901"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_enum.html#a88044fc2d8c40fdbd34049717c00c901">Enum</a> ()</td></tr>
+<tr class="memdesc:a88044fc2d8c40fdbd34049717c00c901"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_enum.html#a88044fc2d8c40fdbd34049717c00c901">More...</a><br /></td></tr>
+<tr class="separator:a88044fc2d8c40fdbd34049717c00c901"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cc97267c04e877766cde56481b7b321"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_enum.html#a3cc97267c04e877766cde56481b7b321">Enum</a> (std::string value)</td></tr>
+<tr class="memdesc:a3cc97267c04e877766cde56481b7b321"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor intialized with value.  <a href="class_enum.html#a3cc97267c04e877766cde56481b7b321">More...</a><br /></td></tr>
+<tr class="separator:a3cc97267c04e877766cde56481b7b321"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a48d44dd680f2c1d3285fba7b48e72a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_enum.html#a1a48d44dd680f2c1d3285fba7b48e72a">Enum</a> (std::string value, std::vector&lt; std::string &gt; <a class="el" href="class_enum.html#a6ece45e4921e0303de7d1a0eaffe0ba7">choices</a>)</td></tr>
+<tr class="memdesc:a1a48d44dd680f2c1d3285fba7b48e72a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializing Container.  <a href="class_enum.html#a1a48d44dd680f2c1d3285fba7b48e72a">More...</a><br /></td></tr>
+<tr class="separator:a1a48d44dd680f2c1d3285fba7b48e72a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8da6534b07c9a5ee67e215fa5087b05"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_enum.html#aa8da6534b07c9a5ee67e215fa5087b05">~Enum</a> ()</td></tr>
+<tr class="memdesc:aa8da6534b07c9a5ee67e215fa5087b05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_enum.html#aa8da6534b07c9a5ee67e215fa5087b05">More...</a><br /></td></tr>
+<tr class="separator:aa8da6534b07c9a5ee67e215fa5087b05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5af796ca10d9c904c15f1151862b752a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_enum.html#a5af796ca10d9c904c15f1151862b752a">selected</a> (void) const</td></tr>
+<tr class="memdesc:a5af796ca10d9c904c15f1151862b752a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get selected value.  <a href="class_enum.html#a5af796ca10d9c904c15f1151862b752a">More...</a><br /></td></tr>
+<tr class="separator:a5af796ca10d9c904c15f1151862b752a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ece45e4921e0303de7d1a0eaffe0ba7"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_enum.html#a6ece45e4921e0303de7d1a0eaffe0ba7">choices</a> (void)</td></tr>
+<tr class="memdesc:a6ece45e4921e0303de7d1a0eaffe0ba7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Choices.  <a href="class_enum.html#a6ece45e4921e0303de7d1a0eaffe0ba7">More...</a><br /></td></tr>
+<tr class="separator:a6ece45e4921e0303de7d1a0eaffe0ba7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7eca943c191351cc57b1e6bca20b255"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_enum.html#ae7eca943c191351cc57b1e6bca20b255">index</a> () const</td></tr>
+<tr class="memdesc:ae7eca943c191351cc57b1e6bca20b255"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get index of selected element.  <a href="class_enum.html#ae7eca943c191351cc57b1e6bca20b255">More...</a><br /></td></tr>
+<tr class="separator:ae7eca943c191351cc57b1e6bca20b255"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae93fc5b0ce7372e9d6ff39c6a3ce977a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_enum.html#ae93fc5b0ce7372e9d6ff39c6a3ce977a">index</a> (std::string value) const</td></tr>
+<tr class="memdesc:ae93fc5b0ce7372e9d6ff39c6a3ce977a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine index of value.  <a href="class_enum.html#ae93fc5b0ce7372e9d6ff39c6a3ce977a">More...</a><br /></td></tr>
+<tr class="separator:ae93fc5b0ce7372e9d6ff39c6a3ce977a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49a08e164a30fec159dadd253eb77cb2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_enum.html#a49a08e164a30fec159dadd253eb77cb2">set</a> (int value)</td></tr>
+<tr class="memdesc:a49a08e164a30fec159dadd253eb77cb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set selected item (index)  <a href="class_enum.html#a49a08e164a30fec159dadd253eb77cb2">More...</a><br /></td></tr>
+<tr class="separator:a49a08e164a30fec159dadd253eb77cb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac47597e0a437470009a53e43939900a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_enum.html#ac47597e0a437470009a53e43939900a4">set</a> (std::string value)</td></tr>
+<tr class="memdesc:ac47597e0a437470009a53e43939900a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set selected item (value)  <a href="class_enum.html#ac47597e0a437470009a53e43939900a4">More...</a><br /></td></tr>
+<tr class="separator:ac47597e0a437470009a53e43939900a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >C++ class to represent the <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_enum.html" title="SOIL Enum Datatype.">Enum</a> datatype. Internally it is based on strings. </p>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8h_source.html#l00013">13</a> of file <a class="el" href="_enum_8h_source.html">Enum.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a88044fc2d8c40fdbd34049717c00c901" name="a88044fc2d8c40fdbd34049717c00c901"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a88044fc2d8c40fdbd34049717c00c901">&#9670;&nbsp;</a></span>Enum() <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Enum::Enum </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard constructor which leaves everything uninitialized. </p>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00004">4</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a3cc97267c04e877766cde56481b7b321" name="a3cc97267c04e877766cde56481b7b321"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3cc97267c04e877766cde56481b7b321">&#9670;&nbsp;</a></span>Enum() <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Enum::Enum </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor that initializes the enumeration with a selected value.</p>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>Check whether this constructor is still meaningful in future releases. Usage is not recommended. </dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value for initialization </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00008">8</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a1a48d44dd680f2c1d3285fba7b48e72a" name="a1a48d44dd680f2c1d3285fba7b48e72a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a48d44dd680f2c1d3285fba7b48e72a">&#9670;&nbsp;</a></span>Enum() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Enum::Enum </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>value</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::vector&lt; std::string &gt;&#160;</td>
+          <td class="paramname"><em>choices</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor that initializes the enumeration with choices and a value.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value for initialization </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">choices</td><td>Applicable set of choices for the enumeration </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00012">12</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa8da6534b07c9a5ee67e215fa5087b05" name="aa8da6534b07c9a5ee67e215fa5087b05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa8da6534b07c9a5ee67e215fa5087b05">&#9670;&nbsp;</a></span>~Enum()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">Enum::~Enum </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard destructor without special efforts. </p>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00017">17</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a6ece45e4921e0303de7d1a0eaffe0ba7" name="a6ece45e4921e0303de7d1a0eaffe0ba7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ece45e4921e0303de7d1a0eaffe0ba7">&#9670;&nbsp;</a></span>choices()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; std::string &gt; Enum::choices </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Get the choices that are available for this enumeration. </p><dl class="section return"><dt>Returns</dt><dd>Available choices as vector of strings </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00026">26</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ae7eca943c191351cc57b1e6bca20b255" name="ae7eca943c191351cc57b1e6bca20b255"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae7eca943c191351cc57b1e6bca20b255">&#9670;&nbsp;</a></span>index() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int Enum::index </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Traversed the vector of choices and return the index of the current element. </p><dl class="section return"><dt>Returns</dt><dd>Index of the selected element </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00031">31</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ae93fc5b0ce7372e9d6ff39c6a3ce977a" name="ae93fc5b0ce7372e9d6ff39c6a3ce977a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae93fc5b0ce7372e9d6ff39c6a3ce977a">&#9670;&nbsp;</a></span>index() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int Enum::index </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Converts a string value to its integer value. This function is useful when interacting with C++ ENUMs consisting of integers.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::logic_error</td><td>If the value is not found, an exception is thrown.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to search </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Index of the searched value </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00043">43</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a5af796ca10d9c904c15f1151862b752a" name="a5af796ca10d9c904c15f1151862b752a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5af796ca10d9c904c15f1151862b752a">&#9670;&nbsp;</a></span>selected()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string Enum::selected </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Get the value that the enum currently holds as selected. </p><dl class="section return"><dt>Returns</dt><dd>Current value </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00021">21</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a49a08e164a30fec159dadd253eb77cb2" name="a49a08e164a30fec159dadd253eb77cb2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49a08e164a30fec159dadd253eb77cb2">&#9670;&nbsp;</a></span>set() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Enum::set </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Set the currently selected item the enumeration holds based on its integer index.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::logic_error</td><td>If the index exceeds the number of choices, an exception is thrown.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Index of the value to set </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00055">55</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ac47597e0a437470009a53e43939900a4" name="ac47597e0a437470009a53e43939900a4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac47597e0a437470009a53e43939900a4">&#9670;&nbsp;</a></span>set() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void Enum::set </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Set the currently selected item the enumeration holds based on a string value.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::logic_error</td><td>If the value is not among the choices, an exception is thrown.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to set </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00067">67</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SOIL/<a class="el" href="_enum_8h_source.html">Enum.h</a></li>
+<li>src/SOIL/<a class="el" href="_enum_8cpp_source.html">Enum.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_enum.html">Enum</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_enum.js b/doc/html/class_enum.js
new file mode 100644
index 0000000000000000000000000000000000000000..ab8eb15345302560159c9a3ec1e1784b26d36611
--- /dev/null
+++ b/doc/html/class_enum.js
@@ -0,0 +1,13 @@
+var class_enum =
+[
+    [ "Enum", "class_enum.html#a88044fc2d8c40fdbd34049717c00c901", null ],
+    [ "Enum", "class_enum.html#a3cc97267c04e877766cde56481b7b321", null ],
+    [ "Enum", "class_enum.html#a1a48d44dd680f2c1d3285fba7b48e72a", null ],
+    [ "~Enum", "class_enum.html#aa8da6534b07c9a5ee67e215fa5087b05", null ],
+    [ "choices", "class_enum.html#a6ece45e4921e0303de7d1a0eaffe0ba7", null ],
+    [ "index", "class_enum.html#ae7eca943c191351cc57b1e6bca20b255", null ],
+    [ "index", "class_enum.html#ae93fc5b0ce7372e9d6ff39c6a3ce977a", null ],
+    [ "selected", "class_enum.html#a5af796ca10d9c904c15f1151862b752a", null ],
+    [ "set", "class_enum.html#a49a08e164a30fec159dadd253eb77cb2", null ],
+    [ "set", "class_enum.html#ac47597e0a437470009a53e43939900a4", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_h_t_t_p_1_1_resource-members.html b/doc/html/class_h_t_t_p_1_1_resource-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..2fc48b5a886a1c4c48538d26fd2bfba1b76bb6ee
--- /dev/null
+++ b/doc/html/class_h_t_t_p_1_1_resource-members.html
@@ -0,0 +1,117 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_h_t_t_p_1_1_resource.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">HTTP::Resource Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a>(Response &amp;response)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">handle</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a>(Request message, std::exception &amp;exception, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">handle_get</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_h_t_t_p_1_1_resource.html b/doc/html/class_h_t_t_p_1_1_resource.html
new file mode 100644
index 0000000000000000000000000000000000000000..0eda0591e52901930b6e662e7c37e677d1f43b59
--- /dev/null
+++ b/doc/html/class_h_t_t_p_1_1_resource.html
@@ -0,0 +1,838 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: HTTP::Resource Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_h_t_t_p_1_1_resource.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="class_h_t_t_p_1_1_resource-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">HTTP::Resource Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_h_t_t_p.html">HTTP</a> <a class="el" href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class.">Resource</a> base class.  
+ <a href="class_h_t_t_p_1_1_resource.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_resource_8h_source.html">Resource.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for HTTP::Resource:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_h_t_t_p_1_1_resource.png" usemap="#HTTP::Resource_map" alt=""/>
+  <map id="HTTP::Resource_map" name="HTTP::Resource_map">
+<area href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element." alt="SOIL::Element" shape="rect" coords="352,56,518,80"/>
+<area href="class_s_o_i_l_1_1_figure.html" alt="SOIL::Figure&lt; T, -1, -1 &gt;" shape="rect" coords="88,112,254,136"/>
+<area href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element." alt="SOIL::Figure&lt; T, x, y &gt;" shape="rect" coords="264,112,430,136"/>
+<area href="class_s_o_i_l_1_1_function.html" title="Function Class." alt="SOIL::Function" shape="rect" coords="440,112,606,136"/>
+<area href="class_s_o_i_l_1_1_object.html" title="Object Class." alt="SOIL::Object" shape="rect" coords="616,112,782,136"/>
+<area href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class." alt="SOIL::Parameter&lt; T, x, y &gt;" shape="rect" coords="0,168,166,192"/>
+<area href="class_s_o_i_l_1_1_variable.html" title="Variable Class." alt="SOIL::Variable&lt; T, x, y &gt;" shape="rect" coords="176,168,342,192"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a5d1c2122fd6f7ea51c03c3b5cb45f2fc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a> ()</td></tr>
+<tr class="memdesc:a5d1c2122fd6f7ea51c03c3b5cb45f2fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">More...</a><br /></td></tr>
+<tr class="separator:a5d1c2122fd6f7ea51c03c3b5cb45f2fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a188f4a9d639f416317a9f5a6992e6ec5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a> ()</td></tr>
+<tr class="memdesc:a188f4a9d639f416317a9f5a6992e6ec5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Destructor.  <a href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">More...</a><br /></td></tr>
+<tr class="separator:a188f4a9d639f416317a9f5a6992e6ec5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a742c093a9caba778c16592c424c4a169"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a742c093a9caba778c16592c424c4a169"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">More...</a><br /></td></tr>
+<tr class="separator:a742c093a9caba778c16592c424c4a169"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6913253b8e38f0f4eed9903058ae589"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae6913253b8e38f0f4eed9903058ae589"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">More...</a><br /></td></tr>
+<tr class="separator:ae6913253b8e38f0f4eed9903058ae589"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21b1e78bdca84f9fd04fd026a0c3ea9c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a21b1e78bdca84f9fd04fd026a0c3ea9c"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PUT Handler.  <a href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">More...</a><br /></td></tr>
+<tr class="separator:a21b1e78bdca84f9fd04fd026a0c3ea9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3af3a05ec6058b8a8e058ceebe1d7ddf"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a3af3a05ec6058b8a8e058ceebe1d7ddf"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST Handler.  <a href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">More...</a><br /></td></tr>
+<tr class="separator:a3af3a05ec6058b8a8e058ceebe1d7ddf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0d3b5ab1757e069f38c55e2d5ecc3af"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae0d3b5ab1757e069f38c55e2d5ecc3af"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> DELETE Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">More...</a><br /></td></tr>
+<tr class="separator:ae0d3b5ab1757e069f38c55e2d5ecc3af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec711995a2b463d35443e66e4eb70533"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aec711995a2b463d35443e66e4eb70533"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PATCH Handler.  <a href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">More...</a><br /></td></tr>
+<tr class="separator:aec711995a2b463d35443e66e4eb70533"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc5c8dc34053d3b02eae489f5c1afda4"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:abc5c8dc34053d3b02eae489f5c1afda4"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> OPTIONS Handler.  <a href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">More...</a><br /></td></tr>
+<tr class="separator:abc5c8dc34053d3b02eae489f5c1afda4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a812b69953a8704e2528165c7d79012a5"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a812b69953a8704e2528165c7d79012a5"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> HEAD Handler.  <a href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">More...</a><br /></td></tr>
+<tr class="separator:a812b69953a8704e2528165c7d79012a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad145d8d9ff6e9b1d0044b7e26678800"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::exception &amp;exception, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aad145d8d9ff6e9b1d0044b7e26678800"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Exception handler.  <a href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">More...</a><br /></td></tr>
+<tr class="separator:aad145d8d9ff6e9b1d0044b7e26678800"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a4d76365792fb2684cc05a36ee2573dad"><td class="memItemLeft" align="right" valign="top">static web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a4d76365792fb2684cc05a36ee2573dad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request Info.  <a href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">More...</a><br /></td></tr>
+<tr class="separator:a4d76365792fb2684cc05a36ee2573dad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:aa65b75aa0006d4dc26b92dc6ae8017eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a> (<a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> &amp;response)</td></tr>
+<tr class="memdesc:aa65b75aa0006d4dc26b92dc6ae8017eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply headers.  <a href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">More...</a><br /></td></tr>
+<tr class="separator:aa65b75aa0006d4dc26b92dc6ae8017eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a4a78094cb756c0886c787f93462621c0"><td class="memItemLeft" align="right" valign="top">std::vector&lt; web::http::method &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td></tr>
+<tr class="memdesc:a4a78094cb756c0886c787f93462621c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed methods.  <a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">More...</a><br /></td></tr>
+<tr class="separator:a4a78094cb756c0886c787f93462621c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d14fee20d1db0e8bd76e6f151e606e6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td></tr>
+<tr class="memdesc:a9d14fee20d1db0e8bd76e6f151e606e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Content type.  <a href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">More...</a><br /></td></tr>
+<tr class="separator:a9d14fee20d1db0e8bd76e6f151e606e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cb354f4fa7e6d76bdd748f50728b752"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td></tr>
+<tr class="memdesc:a8cb354f4fa7e6d76bdd748f50728b752"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed Origins.  <a href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">More...</a><br /></td></tr>
+<tr class="separator:a8cb354f4fa7e6d76bdd748f50728b752"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Base class for any resource that is implemented using this library. It should always be subclassed by the class implmenting the resource itself, and the relevant functions should be overriden. All <a class="el" href="namespace_h_t_t_p.html">HTTP</a> business logic internally relies on the <em>cpprestsdk</em> library. The former internally uses widestrings, which leads to the need for conversion work at some places. </p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8h_source.html#l00020">20</a> of file <a class="el" href="_resource_8h_source.html">Resource.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a5d1c2122fd6f7ea51c03c3b5cb45f2fc" name="a5d1c2122fd6f7ea51c03c3b5cb45f2fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">&#9670;&nbsp;</a></span>Resource()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">HTTP::Resource::Resource </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default Constructor, sets the above mentioned defaults for allowed_methods, content_type and allowed_origins </p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00067">67</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a188f4a9d639f416317a9f5a6992e6ec5" name="a188f4a9d639f416317a9f5a6992e6ec5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a188f4a9d639f416317a9f5a6992e6ec5">&#9670;&nbsp;</a></span>~Resource()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">HTTP::Resource::~Resource </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default destructor, does no custom business logic. </p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00074">74</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="aa65b75aa0006d4dc26b92dc6ae8017eb" name="aa65b75aa0006d4dc26b92dc6ae8017eb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa65b75aa0006d4dc26b92dc6ae8017eb">&#9670;&nbsp;</a></span>apply_headers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void HTTP::Resource::apply_headers </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> &amp;&#160;</td>
+          <td class="paramname"><em>response</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Apply headers to the <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response object. This function shoud be called in the handler before returning the repsonse object to the server. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in,out]</td><td class="paramname">response</td><td>Response object to act on. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00050">50</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a742c093a9caba778c16592c424c4a169" name="a742c093a9caba778c16592c424c4a169"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a742c093a9caba778c16592c424c4a169">&#9670;&nbsp;</a></span>handle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> HTTP::Resource::handle </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests. By default, this function redirects to the more specifc ones based on the respective <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Verb. In case an exception occurs, it calls the exception handler.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented in <a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">SOIL::Element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00078">78</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ae0d3b5ab1757e069f38c55e2d5ecc3af" name="ae0d3b5ab1757e069f38c55e2d5ecc3af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae0d3b5ab1757e069f38c55e2d5ecc3af">&#9670;&nbsp;</a></span>handle_delete()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> HTTP::Resource::handle_delete </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a DELETE method. This function should be overridden by the implementation of the resource. Per default, it resorts to the internal fallback function.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented in <a class="el" href="class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7">SOIL::Object</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00136">136</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aad145d8d9ff6e9b1d0044b7e26678800" name="aad145d8d9ff6e9b1d0044b7e26678800"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aad145d8d9ff6e9b1d0044b7e26678800">&#9670;&nbsp;</a></span>handle_exception()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> HTTP::Resource::handle_exception </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::exception &amp;&#160;</td>
+          <td class="paramname"><em>exception</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler function which can be called inside other handler functions to manage exceptions. It returns the request's information and exeption error text while setting the <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to 500 (Internal Error).</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">exception</td><td>Exception to handle and to copy the error message from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00158">158</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ae6913253b8e38f0f4eed9903058ae589" name="ae6913253b8e38f0f4eed9903058ae589"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6913253b8e38f0f4eed9903058ae589">&#9670;&nbsp;</a></span>handle_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> HTTP::Resource::handle_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a GET method. This function should be overridden by the implementation of the resource. Per default, it resorts to the internal fallback function.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented in <a class="el" href="class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe">SOIL::Variable&lt; T, x, y &gt;</a>, and <a class="el" href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">SOIL::Function</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00120">120</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a812b69953a8704e2528165c7d79012a5" name="a812b69953a8704e2528165c7d79012a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a812b69953a8704e2528165c7d79012a5">&#9670;&nbsp;</a></span>handle_head()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> HTTP::Resource::handle_head </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a HEAD method. This function should be overridden by the implementation of the resource. Per default, it resorts to the internal fallback function.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00153">153</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="abc5c8dc34053d3b02eae489f5c1afda4" name="abc5c8dc34053d3b02eae489f5c1afda4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc5c8dc34053d3b02eae489f5c1afda4">&#9670;&nbsp;</a></span>handle_options()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> HTTP::Resource::handle_options </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on an OPTIONS method. This function should be overridden by the implementation of the resource. Per default, it resorts to the internal fallback function.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented in <a class="el" href="class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72">SOIL::Variable&lt; T, x, y &gt;</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00148">148</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aec711995a2b463d35443e66e4eb70533" name="aec711995a2b463d35443e66e4eb70533"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec711995a2b463d35443e66e4eb70533">&#9670;&nbsp;</a></span>handle_patch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> HTTP::Resource::handle_patch </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a PATCH method. This function should be overridden by the implementation of the resource. Per default, it resorts to the internal fallback function.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented in <a class="el" href="class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad">SOIL::Parameter&lt; T, x, y &gt;</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00130">130</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a3af3a05ec6058b8a8e058ceebe1d7ddf" name="a3af3a05ec6058b8a8e058ceebe1d7ddf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3af3a05ec6058b8a8e058ceebe1d7ddf">&#9670;&nbsp;</a></span>handle_post()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> HTTP::Resource::handle_post </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a POST method. This function should be overridden by the implementation of the resource. Per default, it resorts to the internal fallback function.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented in <a class="el" href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">SOIL::Function</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00125">125</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a21b1e78bdca84f9fd04fd026a0c3ea9c" name="a21b1e78bdca84f9fd04fd026a0c3ea9c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a21b1e78bdca84f9fd04fd026a0c3ea9c">&#9670;&nbsp;</a></span>handle_put()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> HTTP::Resource::handle_put </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a PUT method. This function should be overridden by the implementation of the resource. Per default, it resorts to the internal fallback function.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented in <a class="el" href="class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978">SOIL::Object</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00142">142</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a4d76365792fb2684cc05a36ee2573dad" name="a4d76365792fb2684cc05a36ee2573dad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d76365792fb2684cc05a36ee2573dad">&#9670;&nbsp;</a></span>request_info()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">web::json::value HTTP::Resource::request_info </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Extracts all sort of information from the request and returns it in JSON format. This is useful for fallback methods.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Request information in JSON format </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8cpp_source.html#l00003">3</a> of file <a class="el" href="_resource_8cpp_source.html">Resource.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a4a78094cb756c0886c787f93462621c0" name="a4a78094cb756c0886c787f93462621c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4a78094cb756c0886c787f93462621c0">&#9670;&nbsp;</a></span>allowed_methods</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;web::http::method&gt; HTTP::Resource::allowed_methods</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >List of allowed <a class="el" href="namespace_h_t_t_p.html">HTTP</a> methods for this resource implemented as <code>std::string</code> Defaults to all methods (GET, DELETE, PATCH, POST, OPTIONS, HEAD, PUT) </p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8h_source.html#l00042">42</a> of file <a class="el" href="_resource_8h_source.html">Resource.h</a>.</p>
+
+</div>
+</div>
+<a id="a8cb354f4fa7e6d76bdd748f50728b752" name="a8cb354f4fa7e6d76bdd748f50728b752"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8cb354f4fa7e6d76bdd748f50728b752">&#9670;&nbsp;</a></span>allowed_origins</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string HTTP::Resource::allowed_origins</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Origins that are allowed, relavant when implementing web clients and running into CORS issues. Defaults to <code>*</code> .</p>
+<dl class="section post"><dt>Postcondition</dt><dd>If you want to be serious about security, you should limit the origins here. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8h_source.html#l00060">60</a> of file <a class="el" href="_resource_8h_source.html">Resource.h</a>.</p>
+
+</div>
+</div>
+<a id="a9d14fee20d1db0e8bd76e6f151e606e6" name="a9d14fee20d1db0e8bd76e6f151e606e6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d14fee20d1db0e8bd76e6f151e606e6">&#9670;&nbsp;</a></span>content_type</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string HTTP::Resource::content_type</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Content type that is delivered by this resource. Defaults to <code>application/json</code> </p>
+
+<p class="definition">Definition at line <a class="el" href="_resource_8h_source.html#l00050">50</a> of file <a class="el" href="_resource_8h_source.html">Resource.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/REST/<a class="el" href="_resource_8h_source.html">Resource.h</a></li>
+<li>src/REST/<a class="el" href="_resource_8cpp_source.html">Resource.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_h_t_t_p.html">HTTP</a></li><li class="navelem"><a class="el" href="class_h_t_t_p_1_1_resource.html">Resource</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_h_t_t_p_1_1_resource.js b/doc/html/class_h_t_t_p_1_1_resource.js
new file mode 100644
index 0000000000000000000000000000000000000000..77b683a97803d69d8c222d19ef8de01cff8408d2
--- /dev/null
+++ b/doc/html/class_h_t_t_p_1_1_resource.js
@@ -0,0 +1,18 @@
+var class_h_t_t_p_1_1_resource =
+[
+    [ "Resource", "class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc", null ],
+    [ "~Resource", "class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5", null ],
+    [ "apply_headers", "class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb", null ],
+    [ "handle", "class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169", null ],
+    [ "handle_delete", "class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af", null ],
+    [ "handle_exception", "class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800", null ],
+    [ "handle_get", "class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589", null ],
+    [ "handle_head", "class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5", null ],
+    [ "handle_options", "class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4", null ],
+    [ "handle_patch", "class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533", null ],
+    [ "handle_post", "class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf", null ],
+    [ "handle_put", "class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c", null ],
+    [ "allowed_methods", "class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0", null ],
+    [ "allowed_origins", "class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752", null ],
+    [ "content_type", "class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_h_t_t_p_1_1_resource.png b/doc/html/class_h_t_t_p_1_1_resource.png
new file mode 100644
index 0000000000000000000000000000000000000000..3c00f3adc36ac21c540bd4a18c2a265513ace58b
Binary files /dev/null and b/doc/html/class_h_t_t_p_1_1_resource.png differ
diff --git a/doc/html/class_h_t_t_p_1_1_server-members.html b/doc/html/class_h_t_t_p_1_1_server-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..cb6c297272316400209020244b5e64ab5acd4a20
--- /dev/null
+++ b/doc/html/class_h_t_t_p_1_1_server-members.html
@@ -0,0 +1,107 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_h_t_t_p_1_1_server.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">HTTP::Server Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_h_t_t_p_1_1_server.html">HTTP::Server</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83">add</a>(std::string path, std::shared_ptr&lt; Resource &gt; resource)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html">HTTP::Server</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a">close</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html">HTTP::Server</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486">open</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html">HTTP::Server</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238">remove</a>(std::string path)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html">HTTP::Server</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0">Server</a>(std::string url)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html">HTTP::Server</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759">~Server</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_server.html">HTTP::Server</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_h_t_t_p_1_1_server.html b/doc/html/class_h_t_t_p_1_1_server.html
new file mode 100644
index 0000000000000000000000000000000000000000..d81cc319303991d4fe2048fdac27ca335b09935e
--- /dev/null
+++ b/doc/html/class_h_t_t_p_1_1_server.html
@@ -0,0 +1,310 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: HTTP::Server Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_h_t_t_p_1_1_server.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_h_t_t_p_1_1_server-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">HTTP::Server Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>HTPP <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">Server</a>.  
+ <a href="class_h_t_t_p_1_1_server.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_server_8h_source.html">Server.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ab739ee20c13e7d2e3979b67d39fc1ea0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0">Server</a> (std::string url)</td></tr>
+<tr class="memdesc:ab739ee20c13e7d2e3979b67d39fc1ea0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0">More...</a><br /></td></tr>
+<tr class="separator:ab739ee20c13e7d2e3979b67d39fc1ea0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaea152f2562b0c0c4f16bfdc5472a759"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759">~Server</a> ()</td></tr>
+<tr class="memdesc:aaea152f2562b0c0c4f16bfdc5472a759"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759">More...</a><br /></td></tr>
+<tr class="separator:aaea152f2562b0c0c4f16bfdc5472a759"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec1277227e7f17a1115e6d868a07b486"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486">open</a> ()</td></tr>
+<tr class="memdesc:aec1277227e7f17a1115e6d868a07b486"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start listener.  <a href="class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486">More...</a><br /></td></tr>
+<tr class="separator:aec1277227e7f17a1115e6d868a07b486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f24bc848a91d7d8a7e084b102de4e7a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a">close</a> ()</td></tr>
+<tr class="memdesc:a9f24bc848a91d7d8a7e084b102de4e7a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stop listener.  <a href="class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a">More...</a><br /></td></tr>
+<tr class="separator:a9f24bc848a91d7d8a7e084b102de4e7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb452f50d7c5660ee204e47e20066c83"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83">add</a> (std::string path, std::shared_ptr&lt; <a class="el" href="class_h_t_t_p_1_1_resource.html">Resource</a> &gt; resource)</td></tr>
+<tr class="memdesc:abb452f50d7c5660ee204e47e20066c83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register resource.  <a href="class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83">More...</a><br /></td></tr>
+<tr class="separator:abb452f50d7c5660ee204e47e20066c83"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2017a683878ebf7d90ad3a62c3516238"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238">remove</a> (std::string path)</td></tr>
+<tr class="memdesc:a2017a683878ebf7d90ad3a62c3516238"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register resource.  <a href="class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238">More...</a><br /></td></tr>
+<tr class="separator:a2017a683878ebf7d90ad3a62c3516238"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Abstraction layer for an <a class="el" href="namespace_h_t_t_p.html">HTTP</a> <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">Server</a> implemented using the cpprestsdk.</p>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo:</a></b></dt><dd>cpprestsdk is now in maintenance mode, if this library shall be in the very long term, a substitute may need to be found. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_server_8h_source.html#l00021">21</a> of file <a class="el" href="_server_8h_source.html">Server.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ab739ee20c13e7d2e3979b67d39fc1ea0" name="ab739ee20c13e7d2e3979b67d39fc1ea0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab739ee20c13e7d2e3979b67d39fc1ea0">&#9670;&nbsp;</a></span>Server()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">HTTP::Server::Server </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>url</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor setting up the server, but not accepting connections upon construction. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">url</td><td>Base URL, e.g. <code><a href="http://localhost:8000">http://localhost:8000</a></code>. Please note that the hostname part indicates the interface on which the server will listen.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section post"><dt>Postcondition</dt><dd>When using another interface than localhost, Windows will prompt for firewall permissions. In general firewalls should be considered when working with <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Servers. </dd>
+<dd>
+HTTPS is currently not implemented here - The current recommendation is that a reverse proxy is used for this purpose, e.g. NGINX or Microsoft IIS. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_server_8cpp_source.html#l00009">9</a> of file <a class="el" href="_server_8cpp_source.html">Server.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aaea152f2562b0c0c4f16bfdc5472a759" name="aaea152f2562b0c0c4f16bfdc5472a759"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaea152f2562b0c0c4f16bfdc5472a759">&#9670;&nbsp;</a></span>~Server()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">HTTP::Server::~Server </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard Destructor without custom logic. The server will be closed upon destruction, so make sure that the lifecycle of the server objects is apropriately managed in your application. </p>
+
+<p class="definition">Definition at line <a class="el" href="_server_8cpp_source.html#l00015">15</a> of file <a class="el" href="_server_8cpp_source.html">Server.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="abb452f50d7c5660ee204e47e20066c83" name="abb452f50d7c5660ee204e47e20066c83"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb452f50d7c5660ee204e47e20066c83">&#9670;&nbsp;</a></span>add()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void HTTP::Server::add </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>path</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_h_t_t_p_1_1_resource.html">Resource</a> &gt;&#160;</td>
+          <td class="paramname"><em>resource</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Register a resource by means of a matching expression and shared pointer reference. Please note that the order of adding resources to the sever determines the precedence in matching. The frst matching resource will handle the request. This is a common source of errors. This function can be called dynamically at runtime, also when the server is already running.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>Path of the resource written as regular expression. Use <code>L"/?(.*)"</code> to match everything under the root path. The path simulatenously acts as unique identifier. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">resource</td><td>Shared pointer to the resource that shall handle this path. Please be aware of the lifecycle in case you interfere with the pointers. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_server_8cpp_source.html#l00039">39</a> of file <a class="el" href="_server_8cpp_source.html">Server.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a9f24bc848a91d7d8a7e084b102de4e7a" name="a9f24bc848a91d7d8a7e084b102de4e7a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9f24bc848a91d7d8a7e084b102de4e7a">&#9670;&nbsp;</a></span>close()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void HTTP::Server::close </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Open the server for incoming connections. This is a blocking call. </p>
+
+<p class="definition">Definition at line <a class="el" href="_server_8h_source.html#l00091">91</a> of file <a class="el" href="_server_8h_source.html">Server.h</a>.</p>
+
+</div>
+</div>
+<a id="aec1277227e7f17a1115e6d868a07b486" name="aec1277227e7f17a1115e6d868a07b486"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec1277227e7f17a1115e6d868a07b486">&#9670;&nbsp;</a></span>open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void HTTP::Server::open </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Open the server for incoming connections. This is a blocking call. </p>
+
+<p class="definition">Definition at line <a class="el" href="_server_8h_source.html#l00084">84</a> of file <a class="el" href="_server_8h_source.html">Server.h</a>.</p>
+
+</div>
+</div>
+<a id="a2017a683878ebf7d90ad3a62c3516238" name="a2017a683878ebf7d90ad3a62c3516238"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2017a683878ebf7d90ad3a62c3516238">&#9670;&nbsp;</a></span>remove()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void HTTP::Server::remove </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>path</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Remove a previously registered resource. This function can be called dynamically at runtime, also when the server is already running.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>Path of the resource written as regular expression. Use <code>L"/?(.*)"</code> which was used to add the resource and acts an unique identifier. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_server_8cpp_source.html#l00044">44</a> of file <a class="el" href="_server_8cpp_source.html">Server.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/REST/<a class="el" href="_server_8h_source.html">Server.h</a></li>
+<li>src/REST/<a class="el" href="_server_8cpp_source.html">Server.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_h_t_t_p.html">HTTP</a></li><li class="navelem"><a class="el" href="class_h_t_t_p_1_1_server.html">Server</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_h_t_t_p_1_1_server.js b/doc/html/class_h_t_t_p_1_1_server.js
new file mode 100644
index 0000000000000000000000000000000000000000..2eb360b44fd92143d9e01aa425ecb97434c8bd7c
--- /dev/null
+++ b/doc/html/class_h_t_t_p_1_1_server.js
@@ -0,0 +1,9 @@
+var class_h_t_t_p_1_1_server =
+[
+    [ "Server", "class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0", null ],
+    [ "~Server", "class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759", null ],
+    [ "add", "class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83", null ],
+    [ "close", "class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a", null ],
+    [ "open", "class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486", null ],
+    [ "remove", "class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_m_q_t_t_1_1_configuration-members.html b/doc/html/class_m_q_t_t_1_1_configuration-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..49367f030fb061d65908c235e7997b40f079341b
--- /dev/null
+++ b/doc/html/class_m_q_t_t_1_1_configuration-members.html
@@ -0,0 +1,119 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_m_q_t_t_1_1_configuration.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MQTT::Configuration Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">certificate_authority</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">clean_session</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3">Configuration</a>()</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a76525cfc37fb8ddc692db93fd6fb5e6f">Configuration</a>(std::string filename)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">connection_timeout_s</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5">host</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">keep_alive</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">min_delay_ms</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">password</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b">path</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1">port</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">root</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">ssl</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">uri</a>()</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">username</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">verify</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097">websocket</a></td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458">~Configuration</a>()</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_m_q_t_t_1_1_configuration.html b/doc/html/class_m_q_t_t_1_1_configuration.html
new file mode 100644
index 0000000000000000000000000000000000000000..627301e30702b5fc37af6748498b94923e4642fe
--- /dev/null
+++ b/doc/html/class_m_q_t_t_1_1_configuration.html
@@ -0,0 +1,504 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: MQTT::Configuration Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_m_q_t_t_1_1_configuration.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="class_m_q_t_t_1_1_configuration-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">MQTT::Configuration Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_m_q_t_t.html">MQTT</a> publishing configuration.  
+ <a href="class_m_q_t_t_1_1_configuration.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a00eedbeafcfe5ce10df76e8ac20ac6f3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3">Configuration</a> ()</td></tr>
+<tr class="memdesc:a00eedbeafcfe5ce10df76e8ac20ac6f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor.  <a href="class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3">More...</a><br /></td></tr>
+<tr class="separator:a00eedbeafcfe5ce10df76e8ac20ac6f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76525cfc37fb8ddc692db93fd6fb5e6f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a76525cfc37fb8ddc692db93fd6fb5e6f">Configuration</a> (std::string filename)</td></tr>
+<tr class="memdesc:a76525cfc37fb8ddc692db93fd6fb5e6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON Constructor.  <a href="class_m_q_t_t_1_1_configuration.html#a76525cfc37fb8ddc692db93fd6fb5e6f">More...</a><br /></td></tr>
+<tr class="separator:a76525cfc37fb8ddc692db93fd6fb5e6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3d0a9c0e14065afc259ad219a4e4458"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458">~Configuration</a> ()</td></tr>
+<tr class="memdesc:af3d0a9c0e14065afc259ad219a4e4458"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458">More...</a><br /></td></tr>
+<tr class="separator:af3d0a9c0e14065afc259ad219a4e4458"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4b05210a99b650da641d3966266ec04"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">uri</a> ()</td></tr>
+<tr class="memdesc:ac4b05210a99b650da641d3966266ec04"><td class="mdescLeft">&#160;</td><td class="mdescRight">URI Builder.  <a href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">More...</a><br /></td></tr>
+<tr class="separator:ac4b05210a99b650da641d3966266ec04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a4298d9cf83be4dcae422d98471ab1df5"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5">host</a></td></tr>
+<tr class="memdesc:a4298d9cf83be4dcae422d98471ab1df5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hostname of the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> broker.  <a href="class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5">More...</a><br /></td></tr>
+<tr class="separator:a4298d9cf83be4dcae422d98471ab1df5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92b3b5ff34fcfc3f72a28559275f78d1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1">port</a></td></tr>
+<tr class="memdesc:a92b3b5ff34fcfc3f72a28559275f78d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Port of the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> broker.  <a href="class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1">More...</a><br /></td></tr>
+<tr class="separator:a92b3b5ff34fcfc3f72a28559275f78d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae75c1ab7297f4cf3f25e31ec056df338"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">username</a></td></tr>
+<tr class="memdesc:ae75c1ab7297f4cf3f25e31ec056df338"><td class="mdescLeft">&#160;</td><td class="mdescRight">Username for connecting to the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> broker.  <a href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">More...</a><br /></td></tr>
+<tr class="separator:ae75c1ab7297f4cf3f25e31ec056df338"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c5a0645489d20461749953881ba7ab7"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">password</a></td></tr>
+<tr class="memdesc:a9c5a0645489d20461749953881ba7ab7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Password for connecting to the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> broker.  <a href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">More...</a><br /></td></tr>
+<tr class="separator:a9c5a0645489d20461749953881ba7ab7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e47ba510961e85709038796c458b0be"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">clean_session</a></td></tr>
+<tr class="memdesc:a8e47ba510961e85709038796c458b0be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clean session flag.  <a href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">More...</a><br /></td></tr>
+<tr class="separator:a8e47ba510961e85709038796c458b0be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a365e6700bb8b4d43539de661490b7574"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">root</a></td></tr>
+<tr class="memdesc:a365e6700bb8b4d43539de661490b7574"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> root topic.  <a href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">More...</a><br /></td></tr>
+<tr class="separator:a365e6700bb8b4d43539de661490b7574"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62add1ea6d5351e35a6c829ecdb41e06"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">keep_alive</a></td></tr>
+<tr class="memdesc:a62add1ea6d5351e35a6c829ecdb41e06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Keep alive interval in seconds.  <a href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">More...</a><br /></td></tr>
+<tr class="separator:a62add1ea6d5351e35a6c829ecdb41e06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45ece5471e689eda8ee1c1e15acfc03b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">min_delay_ms</a></td></tr>
+<tr class="memdesc:a45ece5471e689eda8ee1c1e15acfc03b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Minimum delay between to messages in milliseconds.  <a href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">More...</a><br /></td></tr>
+<tr class="separator:a45ece5471e689eda8ee1c1e15acfc03b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad33e07f1c8389126541445253cbfff52"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">connection_timeout_s</a></td></tr>
+<tr class="memdesc:ad33e07f1c8389126541445253cbfff52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connection timeout in seconds.  <a href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">More...</a><br /></td></tr>
+<tr class="separator:ad33e07f1c8389126541445253cbfff52"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73f639dad1b94cc09de808519a7855fe"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">ssl</a></td></tr>
+<tr class="memdesc:a73f639dad1b94cc09de808519a7855fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use secured connection.  <a href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">More...</a><br /></td></tr>
+<tr class="separator:a73f639dad1b94cc09de808519a7855fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5887b09a89a934dcda3493f17dccd78"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">verify</a></td></tr>
+<tr class="memdesc:ab5887b09a89a934dcda3493f17dccd78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Skip SSL verification.  <a href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">More...</a><br /></td></tr>
+<tr class="separator:ab5887b09a89a934dcda3493f17dccd78"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac23db9e2e0f174a59f294a4a5139a097"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097">websocket</a></td></tr>
+<tr class="memdesc:ac23db9e2e0f174a59f294a4a5139a097"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use websocket protocol.  <a href="class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097">More...</a><br /></td></tr>
+<tr class="separator:ac23db9e2e0f174a59f294a4a5139a097"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae61824192da779011f60eded6903db9b"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b">path</a></td></tr>
+<tr class="memdesc:ae61824192da779011f60eded6903db9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Websocket path.  <a href="class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b">More...</a><br /></td></tr>
+<tr class="separator:ae61824192da779011f60eded6903db9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa943275c72ea7cc94bd9de56c0dfaa9d"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">certificate_authority</a></td></tr>
+<tr class="memdesc:aa943275c72ea7cc94bd9de56c0dfaa9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Path to CA PEM-file.  <a href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">More...</a><br /></td></tr>
+<tr class="separator:aa943275c72ea7cc94bd9de56c0dfaa9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Class acting as enhanced struct to accomodate all configuration options. Therefore all members are public to be directly accessible. </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00013">13</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a00eedbeafcfe5ce10df76e8ac20ac6f3" name="a00eedbeafcfe5ce10df76e8ac20ac6f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a00eedbeafcfe5ce10df76e8ac20ac6f3">&#9670;&nbsp;</a></span>Configuration() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">MQTT::Configuration::Configuration </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default constructor applying the defaults documented. </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html#l00008">8</a> of file <a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html">Configuration.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a76525cfc37fb8ddc692db93fd6fb5e6f" name="a76525cfc37fb8ddc692db93fd6fb5e6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a76525cfc37fb8ddc692db93fd6fb5e6f">&#9670;&nbsp;</a></span>Configuration() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">MQTT::Configuration::Configuration </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>filename</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Reads the configuration from a JSON-file. See the project assets for an example file. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">filename</td><td>Path to JSON-file (absolute or relative). </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html#l00027">27</a> of file <a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html">Configuration.cpp</a>.</p>
+
+</div>
+</div>
+<a id="af3d0a9c0e14065afc259ad219a4e4458" name="af3d0a9c0e14065afc259ad219a4e4458"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af3d0a9c0e14065afc259ad219a4e4458">&#9670;&nbsp;</a></span>~Configuration()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">MQTT::Configuration::~Configuration </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard Destructor </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html#l00049">49</a> of file <a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html">Configuration.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ac4b05210a99b650da641d3966266ec04" name="ac4b05210a99b650da641d3966266ec04"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac4b05210a99b650da641d3966266ec04">&#9670;&nbsp;</a></span>uri()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string MQTT::Configuration::uri </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Builds an URI for the underlying Paho-MQTT library. </p><dl class="section return"><dt>Returns</dt><dd>Full URI string, e.g. <code>tcp://127</code>.0.0.1:1883 . </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html#l00053">53</a> of file <a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html">Configuration.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="aa943275c72ea7cc94bd9de56c0dfaa9d" name="aa943275c72ea7cc94bd9de56c0dfaa9d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa943275c72ea7cc94bd9de56c0dfaa9d">&#9670;&nbsp;</a></span>certificate_authority</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string MQTT::Configuration::certificate_authority</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Path to a file containing the trusted certificate authorities in PEM-format for OpenSSL. This is mandatory when properly implementing secure <a class="el" href="namespace_m_q_t_t.html">MQTT</a>. </p><dl class="section pre"><dt>Precondition</dt><dd>Make sure that the hostname used for connecting is matching its name in the certificate chain. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00133">133</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="a8e47ba510961e85709038796c458b0be" name="a8e47ba510961e85709038796c458b0be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8e47ba510961e85709038796c458b0be">&#9670;&nbsp;</a></span>clean_session</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool MQTT::Configuration::clean_session</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Flag whether to start a clean <a class="el" href="namespace_m_q_t_t.html">MQTT</a> session. Defaults to <code>true</code> . </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00055">55</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="ad33e07f1c8389126541445253cbfff52" name="ad33e07f1c8389126541445253cbfff52"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad33e07f1c8389126541445253cbfff52">&#9670;&nbsp;</a></span>connection_timeout_s</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int MQTT::Configuration::connection_timeout_s</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Number of seconds to wait until the connection succeeds. This influence the length of the blocking call during connection. Defaults to <code>30</code> . </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00090">90</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="a4298d9cf83be4dcae422d98471ab1df5" name="a4298d9cf83be4dcae422d98471ab1df5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4298d9cf83be4dcae422d98471ab1df5">&#9670;&nbsp;</a></span>host</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string MQTT::Configuration::host</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Adress or hostname of the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> broker. Can be an FQDN or IP address. Defaults to <code>127.0.0.1</code> . </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00022">22</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="a62add1ea6d5351e35a6c829ecdb41e06" name="a62add1ea6d5351e35a6c829ecdb41e06"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a62add1ea6d5351e35a6c829ecdb41e06">&#9670;&nbsp;</a></span>keep_alive</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int MQTT::Configuration::keep_alive</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Keep alive interval in seconds for the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> client. Defaults to <code>30</code> . </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00072">72</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="a45ece5471e689eda8ee1c1e15acfc03b" name="a45ece5471e689eda8ee1c1e15acfc03b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45ece5471e689eda8ee1c1e15acfc03b">&#9670;&nbsp;</a></span>min_delay_ms</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int MQTT::Configuration::min_delay_ms</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >A minimum delay which should be kept between sending two messages, provided in milliseconds. Defaults to <code>0</code> . </p><dl class="section post"><dt>Postcondition</dt><dd>This is not enforced in the client, but should be called as property of the publishing by the using code. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00081">81</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="a9c5a0645489d20461749953881ba7ab7" name="a9c5a0645489d20461749953881ba7ab7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9c5a0645489d20461749953881ba7ab7">&#9670;&nbsp;</a></span>password</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string MQTT::Configuration::password</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Password when connecting to the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> broker. Be mindful with passwords when committing to version control! Defaults to <code>guest</code> . </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00047">47</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="ae61824192da779011f60eded6903db9b" name="ae61824192da779011f60eded6903db9b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae61824192da779011f60eded6903db9b">&#9670;&nbsp;</a></span>path</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string MQTT::Configuration::path</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Websocket path that forms the last part of the URI, e.g. <code>/mqtt-ws/</code>. Defaults to <code>""</code> . </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00124">124</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="a92b3b5ff34fcfc3f72a28559275f78d1" name="a92b3b5ff34fcfc3f72a28559275f78d1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a92b3b5ff34fcfc3f72a28559275f78d1">&#9670;&nbsp;</a></span>port</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int MQTT::Configuration::port</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Port to use for the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> broker. Defaults to <code>1883</code> in the constructor. Typical ports are 1883 (<a class="el" href="namespace_m_q_t_t.html">MQTT</a>), 8883 (<a class="el" href="namespace_m_q_t_t.html">MQTT</a> over TLS) and 443 (<a class="el" href="namespace_m_q_t_t.html">MQTT</a> over secure websockets). </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00030">30</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="a365e6700bb8b4d43539de661490b7574" name="a365e6700bb8b4d43539de661490b7574"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a365e6700bb8b4d43539de661490b7574">&#9670;&nbsp;</a></span>root</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string MQTT::Configuration::root</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Root topic that is prepended to any published topic. This is intended for cases where permisions enfore that you publish under a defined root topic. The default is no root topic prefix. </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00064">64</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="a73f639dad1b94cc09de808519a7855fe" name="a73f639dad1b94cc09de808519a7855fe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73f639dad1b94cc09de808519a7855fe">&#9670;&nbsp;</a></span>ssl</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool MQTT::Configuration::ssl</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Boolean flag whether to use a secured connection (<a class="el" href="namespace_m_q_t_t.html">MQTT</a> over TLS or secure websocket). Defaults to <code>false</code> . </p><dl class="section pre"><dt>Precondition</dt><dd>If not ignoring verification, trusted root certificated must be provided in a PEM-file. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00099">99</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="ae75c1ab7297f4cf3f25e31ec056df338" name="ae75c1ab7297f4cf3f25e31ec056df338"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae75c1ab7297f4cf3f25e31ec056df338">&#9670;&nbsp;</a></span>username</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string MQTT::Configuration::username</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Username when connecting to the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> broker. When using RabbitMQ, make sure to consider the VHOST prefix. Defaults to <code>guest</code> . </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00039">39</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="ab5887b09a89a934dcda3493f17dccd78" name="ab5887b09a89a934dcda3493f17dccd78"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab5887b09a89a934dcda3493f17dccd78">&#9670;&nbsp;</a></span>verify</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool MQTT::Configuration::verify</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Boolean flag whether to ignore SSL certificate validation, i.e. for hostname matching and trusted authority. This should only be used for basic development purposes. </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00107">107</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<a id="ac23db9e2e0f174a59f294a4a5139a097" name="ac23db9e2e0f174a59f294a4a5139a097"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac23db9e2e0f174a59f294a4a5139a097">&#9670;&nbsp;</a></span>websocket</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool MQTT::Configuration::websocket</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Boolean flag whether to use the websocket extension of <a class="el" href="namespace_m_q_t_t.html">MQTT</a>. Make sure to specify the correct path. Defaults to <code>false</code> . </p>
+
+<p class="definition">Definition at line <a class="el" href="_m_q_t_t_2_configuration_8h_source.html#l00116">116</a> of file <a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/MQTT/<a class="el" href="_m_q_t_t_2_configuration_8h_source.html">Configuration.h</a></li>
+<li>src/MQTT/<a class="el" href="_m_q_t_t_2_configuration_8cpp_source.html">Configuration.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_m_q_t_t.html">MQTT</a></li><li class="navelem"><a class="el" href="class_m_q_t_t_1_1_configuration.html">Configuration</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_m_q_t_t_1_1_configuration.js b/doc/html/class_m_q_t_t_1_1_configuration.js
new file mode 100644
index 0000000000000000000000000000000000000000..f5b81d77d52a9cd0e62dda624b4fcea566f9f8ff
--- /dev/null
+++ b/doc/html/class_m_q_t_t_1_1_configuration.js
@@ -0,0 +1,21 @@
+var class_m_q_t_t_1_1_configuration =
+[
+    [ "Configuration", "class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3", null ],
+    [ "Configuration", "class_m_q_t_t_1_1_configuration.html#a76525cfc37fb8ddc692db93fd6fb5e6f", null ],
+    [ "~Configuration", "class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458", null ],
+    [ "uri", "class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04", null ],
+    [ "certificate_authority", "class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d", null ],
+    [ "clean_session", "class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be", null ],
+    [ "connection_timeout_s", "class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52", null ],
+    [ "host", "class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5", null ],
+    [ "keep_alive", "class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06", null ],
+    [ "min_delay_ms", "class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b", null ],
+    [ "password", "class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7", null ],
+    [ "path", "class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b", null ],
+    [ "port", "class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1", null ],
+    [ "root", "class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574", null ],
+    [ "ssl", "class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe", null ],
+    [ "username", "class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338", null ],
+    [ "verify", "class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78", null ],
+    [ "websocket", "class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_m_q_t_t_1_1_exception-members.html b/doc/html/class_m_q_t_t_1_1_exception-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..6be175b3357207e6ed77268251d2982b992da9c8
--- /dev/null
+++ b/doc/html/class_m_q_t_t_1_1_exception-members.html
@@ -0,0 +1,105 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_m_q_t_t_1_1_exception.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MQTT::Exception Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1">code</a>(void) const</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f">Exception</a>(const char *message=&quot;&quot;, int code=0)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_exception.html#acc088fa326f26d0ea21aa7bf250eeeae">Exception</a>(const std::exception &amp;exc)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202">~Exception</a>(void)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_exception.html">MQTT::Exception</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_m_q_t_t_1_1_exception.html b/doc/html/class_m_q_t_t_1_1_exception.html
new file mode 100644
index 0000000000000000000000000000000000000000..ec0f93e91e5c06cc2ef86550c78c2df0e79a3d23
--- /dev/null
+++ b/doc/html/class_m_q_t_t_1_1_exception.html
@@ -0,0 +1,252 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: MQTT::Exception Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_m_q_t_t_1_1_exception.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_m_q_t_t_1_1_exception-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">MQTT::Exception Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a> <a class="el" href="class_m_q_t_t_1_1_exception.html" title="MQTT Publisher Exception.">Exception</a>.  
+ <a href="class_m_q_t_t_1_1_exception.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_local_exception_8h_source.html">LocalException.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for MQTT::Exception:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_m_q_t_t_1_1_exception.png" alt=""/>
+ </div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa2e20db284b3c4825824d421dfc3694f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f">Exception</a> (const char *message=&quot;&quot;, int <a class="el" href="class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1">code</a>=0)</td></tr>
+<tr class="memdesc:aa2e20db284b3c4825824d421dfc3694f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f">More...</a><br /></td></tr>
+<tr class="separator:aa2e20db284b3c4825824d421dfc3694f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acc088fa326f26d0ea21aa7bf250eeeae"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_exception.html#acc088fa326f26d0ea21aa7bf250eeeae">Exception</a> (const std::exception &amp;exc)</td></tr>
+<tr class="memdesc:acc088fa326f26d0ea21aa7bf250eeeae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construcor from exception.  <a href="class_m_q_t_t_1_1_exception.html#acc088fa326f26d0ea21aa7bf250eeeae">More...</a><br /></td></tr>
+<tr class="separator:acc088fa326f26d0ea21aa7bf250eeeae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4bb6d8901509f35649da27f9e681202"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202">~Exception</a> (void)</td></tr>
+<tr class="memdesc:ae4bb6d8901509f35649da27f9e681202"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202">More...</a><br /></td></tr>
+<tr class="separator:ae4bb6d8901509f35649da27f9e681202"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa34f052cb61f915550c92b17621b58b1"><td class="memItemLeft" align="right" valign="top">const int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1">code</a> (void) const</td></tr>
+<tr class="memdesc:aa34f052cb61f915550c92b17621b58b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Result Code.  <a href="class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1">More...</a><br /></td></tr>
+<tr class="separator:aa34f052cb61f915550c92b17621b58b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Specific subclass of <code>std::runtime_error</code> to distinguish exceptions coming from the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a>. </p>
+
+<p class="definition">Definition at line <a class="el" href="_local_exception_8h_source.html#l00013">13</a> of file <a class="el" href="_local_exception_8h_source.html">LocalException.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="aa2e20db284b3c4825824d421dfc3694f" name="aa2e20db284b3c4825824d421dfc3694f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa2e20db284b3c4825824d421dfc3694f">&#9670;&nbsp;</a></span>Exception() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">MQTT::Exception::Exception </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>message</em> = <code>&quot;&quot;</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>code</em> = <code>0</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor building an expection from a message and result code. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Message to use for exeption description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">code</td><td>result code to store. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_local_exception_8cpp_source.html#l00005">5</a> of file <a class="el" href="_local_exception_8cpp_source.html">LocalException.cpp</a>.</p>
+
+</div>
+</div>
+<a id="acc088fa326f26d0ea21aa7bf250eeeae" name="acc088fa326f26d0ea21aa7bf250eeeae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acc088fa326f26d0ea21aa7bf250eeeae">&#9670;&nbsp;</a></span>Exception() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">MQTT::Exception::Exception </td>
+          <td>(</td>
+          <td class="paramtype">const std::exception &amp;&#160;</td>
+          <td class="paramname"><em>exc</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor to rethrow an exception that has occured from some other error within the context of the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a>. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">exc</td><td>Expcetion to replicate </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_local_exception_8cpp_source.html#l00009">9</a> of file <a class="el" href="_local_exception_8cpp_source.html">LocalException.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ae4bb6d8901509f35649da27f9e681202" name="ae4bb6d8901509f35649da27f9e681202"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4bb6d8901509f35649da27f9e681202">&#9670;&nbsp;</a></span>~Exception()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">MQTT::Exception::~Exception </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard destructor for the class </p>
+
+<p class="definition">Definition at line <a class="el" href="_local_exception_8cpp_source.html#l00014">14</a> of file <a class="el" href="_local_exception_8cpp_source.html">LocalException.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="aa34f052cb61f915550c92b17621b58b1" name="aa34f052cb61f915550c92b17621b58b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa34f052cb61f915550c92b17621b58b1">&#9670;&nbsp;</a></span>code()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">const int MQTT::Exception::code </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Get the result code that is stored internally in the exception. </p><dl class="section return"><dt>Returns</dt><dd>result code. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_local_exception_8h_source.html#l00055">55</a> of file <a class="el" href="_local_exception_8h_source.html">LocalException.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/MQTT/<a class="el" href="_local_exception_8h_source.html">LocalException.h</a></li>
+<li>src/MQTT/<a class="el" href="_local_exception_8cpp_source.html">LocalException.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_m_q_t_t.html">MQTT</a></li><li class="navelem"><a class="el" href="class_m_q_t_t_1_1_exception.html">Exception</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_m_q_t_t_1_1_exception.js b/doc/html/class_m_q_t_t_1_1_exception.js
new file mode 100644
index 0000000000000000000000000000000000000000..8fc4a705b30db25d03adee827c17c7aa1438b514
--- /dev/null
+++ b/doc/html/class_m_q_t_t_1_1_exception.js
@@ -0,0 +1,7 @@
+var class_m_q_t_t_1_1_exception =
+[
+    [ "Exception", "class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f", null ],
+    [ "Exception", "class_m_q_t_t_1_1_exception.html#acc088fa326f26d0ea21aa7bf250eeeae", null ],
+    [ "~Exception", "class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202", null ],
+    [ "code", "class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_m_q_t_t_1_1_exception.png b/doc/html/class_m_q_t_t_1_1_exception.png
new file mode 100644
index 0000000000000000000000000000000000000000..2f8350227bba9eca2516f52f8f08ef2c24593ad2
Binary files /dev/null and b/doc/html/class_m_q_t_t_1_1_exception.png differ
diff --git a/doc/html/class_m_q_t_t_1_1_publisher-members.html b/doc/html/class_m_q_t_t_1_1_publisher-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..76546d7723e9602011326c030ae8c8058e3ba4e6
--- /dev/null
+++ b/doc/html/class_m_q_t_t_1_1_publisher-members.html
@@ -0,0 +1,114 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_m_q_t_t_1_1_publisher.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MQTT::Publisher Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15">configure</a>(MQTT::Configuration configuration)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93">connect</a>(MQTT::Configuration configuration)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0">connect</a>()</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e">disconnect</a>(unsigned int timeout=10000)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d">is_connected</a>(void)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd">min_delay_ms</a>(void)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe">publish</a>(std::string topic, std::string message, int qos, bool retain)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a6096485cddc28d316dd37cd32de809a7">publish</a>(std::vector&lt; std::string &gt; topics, std::vector&lt; std::string &gt; messages, int qos, bool retain)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac">Publisher</a>(std::string id, unsigned int buffer=1024)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08">reconnect</a>(void)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d">set_buffer</a>(unsigned int buffer)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801">set_root_topic</a>(std::string root_topic)</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205">~Publisher</a>()</td><td class="entry"><a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_m_q_t_t_1_1_publisher.html b/doc/html/class_m_q_t_t_1_1_publisher.html
new file mode 100644
index 0000000000000000000000000000000000000000..26072cd40858eecf61c1149636850dd45a92bfc5
--- /dev/null
+++ b/doc/html/class_m_q_t_t_1_1_publisher.html
@@ -0,0 +1,548 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: MQTT::Publisher Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_m_q_t_t_1_1_publisher.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_m_q_t_t_1_1_publisher-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">MQTT::Publisher Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a>.  
+ <a href="class_m_q_t_t_1_1_publisher.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_publisher_8h_source.html">Publisher.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a9cf2cb13cc906810ce3f403c4ce646ac"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac">Publisher</a> (std::string id, unsigned int buffer=1024)</td></tr>
+<tr class="memdesc:a9cf2cb13cc906810ce3f403c4ce646ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac">More...</a><br /></td></tr>
+<tr class="separator:a9cf2cb13cc906810ce3f403c4ce646ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60b4c5ff7ca2bfee4b13ac00d954c205"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205">~Publisher</a> ()</td></tr>
+<tr class="memdesc:a60b4c5ff7ca2bfee4b13ac00d954c205"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205">More...</a><br /></td></tr>
+<tr class="separator:a60b4c5ff7ca2bfee4b13ac00d954c205"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45246cdc54d4972c4639018549605bbe"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe">publish</a> (std::string topic, std::string message, int qos, bool retain)</td></tr>
+<tr class="memdesc:a45246cdc54d4972c4639018549605bbe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Publish an <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message.  <a href="class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe">More...</a><br /></td></tr>
+<tr class="separator:a45246cdc54d4972c4639018549605bbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6096485cddc28d316dd37cd32de809a7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a6096485cddc28d316dd37cd32de809a7">publish</a> (std::vector&lt; std::string &gt; topics, std::vector&lt; std::string &gt; messages, int qos, bool retain)</td></tr>
+<tr class="memdesc:a6096485cddc28d316dd37cd32de809a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Publish multiple <a class="el" href="namespace_m_q_t_t.html">MQTT</a> messages.  <a href="class_m_q_t_t_1_1_publisher.html#a6096485cddc28d316dd37cd32de809a7">More...</a><br /></td></tr>
+<tr class="separator:a6096485cddc28d316dd37cd32de809a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb20d6b57d5a4e5285f35aa19e42ba93"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93">connect</a> (<a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a> configuration)</td></tr>
+<tr class="memdesc:acb20d6b57d5a4e5285f35aa19e42ba93"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connect to broker.  <a href="class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93">More...</a><br /></td></tr>
+<tr class="separator:acb20d6b57d5a4e5285f35aa19e42ba93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a027fef266eed826037e4188766f165f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0">connect</a> ()</td></tr>
+<tr class="memdesc:a027fef266eed826037e4188766f165f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connect to broker.  <a href="class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0">More...</a><br /></td></tr>
+<tr class="separator:a027fef266eed826037e4188766f165f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10e8765c67285d1b9a969c531d091e08"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08">reconnect</a> (void)</td></tr>
+<tr class="memdesc:a10e8765c67285d1b9a969c531d091e08"><td class="mdescLeft">&#160;</td><td class="mdescRight">Direct Reconnect.  <a href="class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08">More...</a><br /></td></tr>
+<tr class="separator:a10e8765c67285d1b9a969c531d091e08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3a08d98f8387d2859c500c982bb243e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e">disconnect</a> (unsigned int timeout=10000)</td></tr>
+<tr class="memdesc:ac3a08d98f8387d2859c500c982bb243e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Diconnect from the broker.  <a href="class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e">More...</a><br /></td></tr>
+<tr class="separator:ac3a08d98f8387d2859c500c982bb243e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4af13f0d9c7dd02c7eb707122d551801"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801">set_root_topic</a> (std::string root_topic)</td></tr>
+<tr class="memdesc:a4af13f0d9c7dd02c7eb707122d551801"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set new root topic.  <a href="class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801">More...</a><br /></td></tr>
+<tr class="separator:a4af13f0d9c7dd02c7eb707122d551801"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a1dfbd4bc21455ac307e73c4aefda3d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d">set_buffer</a> (unsigned int buffer)</td></tr>
+<tr class="memdesc:a6a1dfbd4bc21455ac307e73c4aefda3d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set message queue size.  <a href="class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d">More...</a><br /></td></tr>
+<tr class="separator:a6a1dfbd4bc21455ac307e73c4aefda3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a725aac90d42d1b9e09e25d3e3347575d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d">is_connected</a> (void)</td></tr>
+<tr class="memdesc:a725aac90d42d1b9e09e25d3e3347575d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is connected?  <a href="class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d">More...</a><br /></td></tr>
+<tr class="separator:a725aac90d42d1b9e09e25d3e3347575d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a23f69f0d29a0f7e98d0ed2c0a74c47bd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd">min_delay_ms</a> (void)</td></tr>
+<tr class="memdesc:a23f69f0d29a0f7e98d0ed2c0a74c47bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Minimum delay between to messages in milliseconds.  <a href="class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd">More...</a><br /></td></tr>
+<tr class="separator:a23f69f0d29a0f7e98d0ed2c0a74c47bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2904eace56884e6d996113707a729a15"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15">configure</a> (<a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a> configuration)</td></tr>
+<tr class="memdesc:a2904eace56884e6d996113707a729a15"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register new configuration.  <a href="class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15">More...</a><br /></td></tr>
+<tr class="separator:a2904eace56884e6d996113707a729a15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >This class abstracts the process of publishing <a class="el" href="namespace_m_q_t_t.html">MQTT</a> messages to an <a class="el" href="namespace_m_q_t_t.html">MQTT</a> broker. Currently, the underlying implementation is realized using Paho-MQTT. Upon connection, it spans an own worker thread that continously publishes messages put into a message queue such that the calling thread does not get blocked with the communication process. The purpose of this class is pure publishing, so there is no subscribing functionality implemented.</p>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>Implement support for authenticating with client certificates. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8h_source.html#l00035">35</a> of file <a class="el" href="_publisher_8h_source.html">Publisher.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a9cf2cb13cc906810ce3f403c4ce646ac" name="a9cf2cb13cc906810ce3f403c4ce646ac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9cf2cb13cc906810ce3f403c4ce646ac">&#9670;&nbsp;</a></span>Publisher()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">MQTT::Publisher::Publisher </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>id</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned int&#160;</td>
+          <td class="paramname"><em>buffer</em> = <code>1024</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor for <a class="el" href="namespace_m_q_t_t.html">MQTT</a> publisher that should be called from user's code </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>Unique identifier that is presented to the broker. Be careful if you reuse code across applications that some broker show an unexpected behaviour when using the same id more than once. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">buffer</td><td>Size of the message queue before messages with QoS=0 are discarded. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00066">66</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a60b4c5ff7ca2bfee4b13ac00d954c205" name="a60b4c5ff7ca2bfee4b13ac00d954c205"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a60b4c5ff7ca2bfee4b13ac00d954c205">&#9670;&nbsp;</a></span>~Publisher()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">MQTT::Publisher::~Publisher </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default destructor </p>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00082">82</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a2904eace56884e6d996113707a729a15" name="a2904eace56884e6d996113707a729a15"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2904eace56884e6d996113707a729a15">&#9670;&nbsp;</a></span>configure()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void MQTT::Publisher::configure </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a>&#160;</td>
+          <td class="paramname"><em>configuration</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Register a new configuration, without connecting. Changes will only take place after (re-)connecting to the broker. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">configuration</td><td>New configuration object. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00196">196</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a027fef266eed826037e4188766f165f0" name="a027fef266eed826037e4188766f165f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a027fef266eed826037e4188766f165f0">&#9670;&nbsp;</a></span>connect() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void MQTT::Publisher::connect </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Connect to the broker using the configuration object internally stored. </p>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00132">132</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="acb20d6b57d5a4e5285f35aa19e42ba93" name="acb20d6b57d5a4e5285f35aa19e42ba93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb20d6b57d5a4e5285f35aa19e42ba93">&#9670;&nbsp;</a></span>connect() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void MQTT::Publisher::connect </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a>&#160;</td>
+          <td class="paramname"><em>configuration</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Connect to the broker using the provided configuration object. The internal configuration object will be overridden.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">configuration</td><td><a class="el" href="class_m_q_t_t_1_1_configuration.html" title="MQTT publishing configuration.">Configuration</a> to apply. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00093">93</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ac3a08d98f8387d2859c500c982bb243e" name="ac3a08d98f8387d2859c500c982bb243e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3a08d98f8387d2859c500c982bb243e">&#9670;&nbsp;</a></span>disconnect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void MQTT::Publisher::disconnect </td>
+          <td>(</td>
+          <td class="paramtype">unsigned int&#160;</td>
+          <td class="paramname"><em>timeout</em> = <code>10000</code></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Disconnect from the broker and internally stop the worker thread. This is a blocking call.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout for the blocking operation in milliseconds. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00157">157</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a725aac90d42d1b9e09e25d3e3347575d" name="a725aac90d42d1b9e09e25d3e3347575d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a725aac90d42d1b9e09e25d3e3347575d">&#9670;&nbsp;</a></span>is_connected()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool MQTT::Publisher::is_connected </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Checks whether the publisher is currently connected to a broker. Directly calls the underlying implementation of the library if possible.</p>
+<dl class="section return"><dt>Returns</dt><dd>True if connected, else false. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00184">184</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a23f69f0d29a0f7e98d0ed2c0a74c47bd" name="a23f69f0d29a0f7e98d0ed2c0a74c47bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a23f69f0d29a0f7e98d0ed2c0a74c47bd">&#9670;&nbsp;</a></span>min_delay_ms()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">int MQTT::Publisher::min_delay_ms </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >A minimum delay which should be kept between sending two messages, provided in milliseconds. Defaults to <code>0</code> . </p><dl class="section post"><dt>Postcondition</dt><dd>This is not enforced in the client, but should be called as property of the publishing by the using code. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Current delay set. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8h_source.html#l00261">261</a> of file <a class="el" href="_publisher_8h_source.html">Publisher.h</a>.</p>
+
+</div>
+</div>
+<a id="a45246cdc54d4972c4639018549605bbe" name="a45246cdc54d4972c4639018549605bbe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45246cdc54d4972c4639018549605bbe">&#9670;&nbsp;</a></span>publish() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool MQTT::Publisher::publish </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>topic</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>qos</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>retain</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >This is the core function to publish an <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message. It deposits a message into the queue. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">topic</td><td>Topic to which the message shall be sent. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Primary content of the messsage to send. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">qos</td><td><a class="el" href="namespace_m_q_t_t.html">MQTT</a> Quality of service level to choose for the message. Check the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> specifications for the exact behaviours of 0, 1, and 2 in conjuncation with message retention. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">retain</td><td>Flag whether to retain the message on the broker after disconnection. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>True or false depending whether the message was accepted in the message queue (cf. buffer size). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00207">207</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a6096485cddc28d316dd37cd32de809a7" name="a6096485cddc28d316dd37cd32de809a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6096485cddc28d316dd37cd32de809a7">&#9670;&nbsp;</a></span>publish() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool MQTT::Publisher::publish </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::string &gt;&#160;</td>
+          <td class="paramname"><em>topics</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::vector&lt; std::string &gt;&#160;</td>
+          <td class="paramname"><em>messages</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>qos</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>retain</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >This is the multi-message version of the publish function, which deposits all messages at once into the message queue and gains performance by reducing the number of lock operations. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">topic</td><td>List of topics to which the messages shall be sent. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>List of messages, in the correpsonding order of the list of topics. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">qos</td><td><a class="el" href="namespace_m_q_t_t.html">MQTT</a> Quality of service level to choose for the message. Check the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> specifications for the exact behaviours of 0, 1, and 2 in conjuncation with message retention. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">retain</td><td>Flag whether to retain the message on the broker after disconnection. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>True or false depending whether the message was accepted in the message queue (cf. buffer size). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00224">224</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a10e8765c67285d1b9a969c531d091e08" name="a10e8765c67285d1b9a969c531d091e08"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10e8765c67285d1b9a969c531d091e08">&#9670;&nbsp;</a></span>reconnect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void MQTT::Publisher::reconnect </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Direct call of the internal reconnect function. No reconfiguration takes place, </p>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00138">138</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a6a1dfbd4bc21455ac307e73c4aefda3d" name="a6a1dfbd4bc21455ac307e73c4aefda3d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6a1dfbd4bc21455ac307e73c4aefda3d">&#9670;&nbsp;</a></span>set_buffer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void MQTT::Publisher::set_buffer </td>
+          <td>(</td>
+          <td class="paramtype">unsigned int&#160;</td>
+          <td class="paramname"><em>buffer</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Set a new size for the internal message queue.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">buffer</td><td>New size </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00179">179</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a4af13f0d9c7dd02c7eb707122d551801" name="a4af13f0d9c7dd02c7eb707122d551801"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4af13f0d9c7dd02c7eb707122d551801">&#9670;&nbsp;</a></span>set_root_topic()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void MQTT::Publisher::set_root_topic </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>root_topic</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Override the root topic. This can be done while connected as it only affects preprocessing of messages. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">root_topic</td><td>New root topic. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_publisher_8cpp_source.html#l00169">169</a> of file <a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/MQTT/<a class="el" href="_publisher_8h_source.html">Publisher.h</a></li>
+<li>src/MQTT/<a class="el" href="_publisher_8cpp_source.html">Publisher.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_m_q_t_t.html">MQTT</a></li><li class="navelem"><a class="el" href="class_m_q_t_t_1_1_publisher.html">Publisher</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_m_q_t_t_1_1_publisher.js b/doc/html/class_m_q_t_t_1_1_publisher.js
new file mode 100644
index 0000000000000000000000000000000000000000..74bb20f40cd983ed36bf9585280057e1370d3253
--- /dev/null
+++ b/doc/html/class_m_q_t_t_1_1_publisher.js
@@ -0,0 +1,16 @@
+var class_m_q_t_t_1_1_publisher =
+[
+    [ "Publisher", "class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac", null ],
+    [ "~Publisher", "class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205", null ],
+    [ "configure", "class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15", null ],
+    [ "connect", "class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0", null ],
+    [ "connect", "class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93", null ],
+    [ "disconnect", "class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e", null ],
+    [ "is_connected", "class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d", null ],
+    [ "min_delay_ms", "class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd", null ],
+    [ "publish", "class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe", null ],
+    [ "publish", "class_m_q_t_t_1_1_publisher.html#a6096485cddc28d316dd37cd32de809a7", null ],
+    [ "reconnect", "class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08", null ],
+    [ "set_buffer", "class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d", null ],
+    [ "set_root_topic", "class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_i_g_n_1_1_hasher-members.html b/doc/html/class_s_i_g_n_1_1_hasher-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..63303af53db9fd37ec95e0abef6d1ac9ac96d66a
--- /dev/null
+++ b/doc/html/class_s_i_g_n_1_1_hasher-members.html
@@ -0,0 +1,109 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_i_g_n_1_1_hasher.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SIGN::Hasher Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960">hash</a>()</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b">Hasher</a>()</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a5bd6f0f8915dab9870ca8eb8a4d39a10">print</a>(std::vector&lt; unsigned char &gt; bytes, bool uppercase=true)</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f">push_back</a>(T x)</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3">reset</a>()</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044">sha256</a>(const unsigned char *data, size_t length)</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d">size</a>(void)</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3">~Hasher</a>()</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_hasher.html">SIGN::Hasher</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_i_g_n_1_1_hasher.html b/doc/html/class_s_i_g_n_1_1_hasher.html
new file mode 100644
index 0000000000000000000000000000000000000000..8e4647685222487d9e8ca4f9f3f3a9dd46a654fb
--- /dev/null
+++ b/doc/html/class_s_i_g_n_1_1_hasher.html
@@ -0,0 +1,390 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SIGN::Hasher Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_i_g_n_1_1_hasher.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="class_s_i_g_n_1_1_hasher-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SIGN::Hasher Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>SHA256 <a class="el" href="class_s_i_g_n_1_1_hasher.html" title="SHA256 Hasher.">Hasher</a>.  
+ <a href="class_s_i_g_n_1_1_hasher.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_hasher_8h_source.html">Hasher.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a8c2a89d646c15f8da4c091ae843ae06b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b">Hasher</a> ()</td></tr>
+<tr class="memdesc:a8c2a89d646c15f8da4c091ae843ae06b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b">More...</a><br /></td></tr>
+<tr class="separator:a8c2a89d646c15f8da4c091ae843ae06b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a582f222aea5015de7faceba2bab99bc3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3">~Hasher</a> ()</td></tr>
+<tr class="memdesc:a582f222aea5015de7faceba2bab99bc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3">More...</a><br /></td></tr>
+<tr class="separator:a582f222aea5015de7faceba2bab99bc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5deae136de825a30bf627ec80a967a3f"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a5deae136de825a30bf627ec80a967a3f"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f">push_back</a> (T x)</td></tr>
+<tr class="memdesc:a5deae136de825a30bf627ec80a967a3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add data.  <a href="class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f">More...</a><br /></td></tr>
+<tr class="separator:a5deae136de825a30bf627ec80a967a3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00cfd65d186d606a4fc1572812315960"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960">hash</a> ()</td></tr>
+<tr class="memdesc:a00cfd65d186d606a4fc1572812315960"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hash the data buffer.  <a href="class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960">More...</a><br /></td></tr>
+<tr class="separator:a00cfd65d186d606a4fc1572812315960"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1a37929a88ca5eab2bba5d39105bdf3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3">reset</a> ()</td></tr>
+<tr class="memdesc:ac1a37929a88ca5eab2bba5d39105bdf3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset data buffer.  <a href="class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3">More...</a><br /></td></tr>
+<tr class="separator:ac1a37929a88ca5eab2bba5d39105bdf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f80bf765513cdff089a634599cc534d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d">size</a> (void)</td></tr>
+<tr class="memdesc:a4f80bf765513cdff089a634599cc534d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Digest size.  <a href="class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d">More...</a><br /></td></tr>
+<tr class="separator:a4f80bf765513cdff089a634599cc534d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a5bd6f0f8915dab9870ca8eb8a4d39a10"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a5bd6f0f8915dab9870ca8eb8a4d39a10">print</a> (std::vector&lt; unsigned char &gt; bytes, bool uppercase=true)</td></tr>
+<tr class="memdesc:a5bd6f0f8915dab9870ca8eb8a4d39a10"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print Bytestring.  <a href="class_s_i_g_n_1_1_hasher.html#a5bd6f0f8915dab9870ca8eb8a4d39a10">More...</a><br /></td></tr>
+<tr class="separator:a5bd6f0f8915dab9870ca8eb8a4d39a10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1478050616af6fac27055b9a5190a044"><td class="memItemLeft" align="right" valign="top">static std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044">sha256</a> (const unsigned char *data, size_t length)</td></tr>
+<tr class="memdesc:a1478050616af6fac27055b9a5190a044"><td class="mdescLeft">&#160;</td><td class="mdescRight">SHA256 hash.  <a href="class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044">More...</a><br /></td></tr>
+<tr class="separator:a1478050616af6fac27055b9a5190a044"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Class which provides an convenient interface for calculating SHA256 hashes. The underlying methods are taken from OpenSSL. </p>
+
+<p class="definition">Definition at line <a class="el" href="_hasher_8h_source.html#l00014">14</a> of file <a class="el" href="_hasher_8h_source.html">Hasher.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a8c2a89d646c15f8da4c091ae843ae06b" name="a8c2a89d646c15f8da4c091ae843ae06b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c2a89d646c15f8da4c091ae843ae06b">&#9670;&nbsp;</a></span>Hasher()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SIGN::Hasher::Hasher </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default constructor, no special effort here. </p>
+
+<p class="definition">Definition at line <a class="el" href="_hasher_8cpp_source.html#l00019">19</a> of file <a class="el" href="_hasher_8cpp_source.html">Hasher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a582f222aea5015de7faceba2bab99bc3" name="a582f222aea5015de7faceba2bab99bc3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a582f222aea5015de7faceba2bab99bc3">&#9670;&nbsp;</a></span>~Hasher()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SIGN::Hasher::~Hasher </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default destructor, no special effort here. </p>
+
+<p class="definition">Definition at line <a class="el" href="_hasher_8cpp_source.html#l00024">24</a> of file <a class="el" href="_hasher_8cpp_source.html">Hasher.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a00cfd65d186d606a4fc1572812315960" name="a00cfd65d186d606a4fc1572812315960"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a00cfd65d186d606a4fc1572812315960">&#9670;&nbsp;</a></span>hash()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; SIGN::Hasher::hash </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Calculate the SHA256 hash of the current data buffer and return it as standard vector of bytes. Internally calls the static SHA256 function </p><dl class="section post"><dt>Postcondition</dt><dd>The output of this function can be used in the signer. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>Hash result as sequenxe of bytes. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_hasher_8cpp_source.html#l00028">28</a> of file <a class="el" href="_hasher_8cpp_source.html">Hasher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a5bd6f0f8915dab9870ca8eb8a4d39a10" name="a5bd6f0f8915dab9870ca8eb8a4d39a10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5bd6f0f8915dab9870ca8eb8a4d39a10">&#9670;&nbsp;</a></span>print()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SIGN::Hasher::print </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; unsigned char &gt;&#160;</td>
+          <td class="paramname"><em>bytes</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>uppercase</em> = <code>true</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Convenience function to pretty-print bytestrings in HEX format.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">bytes</td><td>Data to print </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uppercase</td><td>Boolean flag whether to print uppercase </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>String with print result. <br  />
+ </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_hasher_8cpp_source.html#l00043">43</a> of file <a class="el" href="_hasher_8cpp_source.html">Hasher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a5deae136de825a30bf627ec80a967a3f" name="a5deae136de825a30bf627ec80a967a3f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5deae136de825a30bf627ec80a967a3f">&#9670;&nbsp;</a></span>push_back()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SIGN::Hasher::push_back </td>
+          <td>(</td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>x</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Push back data to the internal buffer which eventually gets hashed. This function is implemented using templates, underneath it copies the raw bytes after casting.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Original type of the item to add to the buffer </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">x</td><td>Item to add to the buffer </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_hasher_8h_source.html#l00099">99</a> of file <a class="el" href="_hasher_8h_source.html">Hasher.h</a>.</p>
+
+</div>
+</div>
+<a id="ac1a37929a88ca5eab2bba5d39105bdf3" name="ac1a37929a88ca5eab2bba5d39105bdf3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1a37929a88ca5eab2bba5d39105bdf3">&#9670;&nbsp;</a></span>reset()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SIGN::Hasher::reset </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Clear the internal data buffer (i.e. to start with new data) </p>
+
+<p class="definition">Definition at line <a class="el" href="_hasher_8cpp_source.html#l00033">33</a> of file <a class="el" href="_hasher_8cpp_source.html">Hasher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a1478050616af6fac27055b9a5190a044" name="a1478050616af6fac27055b9a5190a044"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1478050616af6fac27055b9a5190a044">&#9670;&nbsp;</a></span>sha256()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; SIGN::Hasher::sha256 </td>
+          <td>(</td>
+          <td class="paramtype">const unsigned char *&#160;</td>
+          <td class="paramname"><em>data</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>length</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Calculate the SHA256 hash of the given input data. Be careful to no pass invalid pointers here, there is a risk of memory leaks.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">data</td><td>[in] Pointer to the memory block to read from </td></tr>
+    <tr><td class="paramname">length</td><td>[in] Length of the data to consume </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>SHA256 hash as vector of bytes </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_hasher_8cpp_source.html#l00008">8</a> of file <a class="el" href="_hasher_8cpp_source.html">Hasher.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a4f80bf765513cdff089a634599cc534d" name="a4f80bf765513cdff089a634599cc534d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4f80bf765513cdff089a634599cc534d">&#9670;&nbsp;</a></span>size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">size_t SIGN::Hasher::size </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Convenience function to get the digest size, which is often needed when handling raw bytes. </p><dl class="section return"><dt>Returns</dt><dd>SHA256 digest length </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_hasher_8cpp_source.html#l00038">38</a> of file <a class="el" href="_hasher_8cpp_source.html">Hasher.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SIGN/<a class="el" href="_hasher_8h_source.html">Hasher.h</a></li>
+<li>src/SIGN/<a class="el" href="_hasher_8cpp_source.html">Hasher.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_i_g_n.html">SIGN</a></li><li class="navelem"><a class="el" href="class_s_i_g_n_1_1_hasher.html">Hasher</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_i_g_n_1_1_hasher.js b/doc/html/class_s_i_g_n_1_1_hasher.js
new file mode 100644
index 0000000000000000000000000000000000000000..bfff6515c3fa070828a2f809711da65a3946cfe4
--- /dev/null
+++ b/doc/html/class_s_i_g_n_1_1_hasher.js
@@ -0,0 +1,9 @@
+var class_s_i_g_n_1_1_hasher =
+[
+    [ "Hasher", "class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b", null ],
+    [ "~Hasher", "class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3", null ],
+    [ "hash", "class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960", null ],
+    [ "push_back", "class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f", null ],
+    [ "reset", "class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3", null ],
+    [ "size", "class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_i_g_n_1_1_signer-members.html b/doc/html/class_s_i_g_n_1_1_signer-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..db49b235d19c5209d79f2822162d20eaa4f6be0e
--- /dev/null
+++ b/doc/html/class_s_i_g_n_1_1_signer-members.html
@@ -0,0 +1,106 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_i_g_n_1_1_signer.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SIGN::Signer Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925">name</a>() const</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4">openssl_version</a>(void) const</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f">sign</a>(std::vector&lt; unsigned char &gt; digest)</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794">Signer</a>(std::string filename)</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d">~Signer</a>()</td><td class="entry"><a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_i_g_n_1_1_signer.html b/doc/html/class_s_i_g_n_1_1_signer.html
new file mode 100644
index 0000000000000000000000000000000000000000..5399bd90422d138230cc0d375378dbe3b1f87987
--- /dev/null
+++ b/doc/html/class_s_i_g_n_1_1_signer.html
@@ -0,0 +1,261 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SIGN::Signer Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_i_g_n_1_1_signer.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_s_i_g_n_1_1_signer-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SIGN::Signer Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">Signer</a>.  
+ <a href="class_s_i_g_n_1_1_signer.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_signer_8h_source.html">Signer.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aeb36266abd34f99a53482713be5b7794"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794">Signer</a> (std::string filename)</td></tr>
+<tr class="memdesc:aeb36266abd34f99a53482713be5b7794"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794">More...</a><br /></td></tr>
+<tr class="separator:aeb36266abd34f99a53482713be5b7794"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae312cab4c8479a9a4a56f90257ab8e7d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d">~Signer</a> ()</td></tr>
+<tr class="memdesc:ae312cab4c8479a9a4a56f90257ab8e7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d">More...</a><br /></td></tr>
+<tr class="separator:ae312cab4c8479a9a4a56f90257ab8e7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0315eec3c80b3238ee64e26115de9f0f"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f">sign</a> (std::vector&lt; unsigned char &gt; digest)</td></tr>
+<tr class="memdesc:a0315eec3c80b3238ee64e26115de9f0f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sign bytes.  <a href="class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f">More...</a><br /></td></tr>
+<tr class="separator:a0315eec3c80b3238ee64e26115de9f0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8fbad2b5e76a6333dfa7fd537a5600e4"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4">openssl_version</a> (void) const</td></tr>
+<tr class="memdesc:a8fbad2b5e76a6333dfa7fd537a5600e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">OpenSSL Version.  <a href="class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4">More...</a><br /></td></tr>
+<tr class="separator:a8fbad2b5e76a6333dfa7fd537a5600e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b83d99b55d005f7ae32a3e18a9d5925"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925">name</a> () const</td></tr>
+<tr class="memdesc:a6b83d99b55d005f7ae32a3e18a9d5925"><td class="mdescLeft">&#160;</td><td class="mdescRight">Filename.  <a href="class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925">More...</a><br /></td></tr>
+<tr class="separator:a6b83d99b55d005f7ae32a3e18a9d5925"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Class to provide a convenient interface to sign bytestrings using a private key. Internally based on OpenSSL. </p>
+
+<p class="definition">Definition at line <a class="el" href="_signer_8h_source.html#l00018">18</a> of file <a class="el" href="_signer_8h_source.html">Signer.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="aeb36266abd34f99a53482713be5b7794" name="aeb36266abd34f99a53482713be5b7794"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb36266abd34f99a53482713be5b7794">&#9670;&nbsp;</a></span>Signer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SIGN::Signer::Signer </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>filename</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default constructor loading the private key in PEM-format and initializing necessary methods. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">filename</td><td>Path to the private key in PEM-format. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_signer_8cpp_source.html#l00011">11</a> of file <a class="el" href="_signer_8cpp_source.html">Signer.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ae312cab4c8479a9a4a56f90257ab8e7d" name="ae312cab4c8479a9a4a56f90257ab8e7d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae312cab4c8479a9a4a56f90257ab8e7d">&#9670;&nbsp;</a></span>~Signer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SIGN::Signer::~Signer </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Destructor, internally calls EVP_PKEY_free. </p>
+
+<p class="definition">Definition at line <a class="el" href="_signer_8cpp_source.html#l00036">36</a> of file <a class="el" href="_signer_8cpp_source.html">Signer.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a6b83d99b55d005f7ae32a3e18a9d5925" name="a6b83d99b55d005f7ae32a3e18a9d5925"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6b83d99b55d005f7ae32a3e18a9d5925">&#9670;&nbsp;</a></span>name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SIGN::Signer::name </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Function to retrieve the filename of the private key.</p>
+<dl class="section return"><dt>Returns</dt><dd>Filename of the private key. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_signer_8h_source.html#l00086">86</a> of file <a class="el" href="_signer_8h_source.html">Signer.h</a>.</p>
+
+</div>
+</div>
+<a id="a8fbad2b5e76a6333dfa7fd537a5600e4" name="a8fbad2b5e76a6333dfa7fd537a5600e4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8fbad2b5e76a6333dfa7fd537a5600e4">&#9670;&nbsp;</a></span>openssl_version()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SIGN::Signer::openssl_version </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Retreive the OpenSSL Version string. This is helpful to check whether the correct OpenSSL library has been loaded as by experience on windows there are many OpenSSL versions. Using a too old version of OpenSSL leads to very bad performance.</p>
+<dl class="section return"><dt>Returns</dt><dd>OpenSSL Version String </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_signer_8cpp_source.html#l00061">61</a> of file <a class="el" href="_signer_8cpp_source.html">Signer.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a0315eec3c80b3238ee64e26115de9f0f" name="a0315eec3c80b3238ee64e26115de9f0f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0315eec3c80b3238ee64e26115de9f0f">&#9670;&nbsp;</a></span>sign()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; SIGN::Signer::sign </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; unsigned char &gt;&#160;</td>
+          <td class="paramname"><em>digest</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Sign the bytestring provided to this function and returns the signature bytestring. </p><dl class="section pre"><dt>Precondition</dt><dd>It is assumed that the actual conteht to be signed has already been hashed, e.g. using SHA256 and the <a class="el" href="class_s_i_g_n_1_1_hasher.html" title="SHA256 Hasher.">Hasher</a> class.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">digest</td><td>Bytes to sign, typically a digest from a previous hashing function </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Signature as vector of bytes </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_signer_8cpp_source.html#l00041">41</a> of file <a class="el" href="_signer_8cpp_source.html">Signer.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SIGN/<a class="el" href="_signer_8h_source.html">Signer.h</a></li>
+<li>src/SIGN/<a class="el" href="_signer_8cpp_source.html">Signer.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_i_g_n.html">SIGN</a></li><li class="navelem"><a class="el" href="class_s_i_g_n_1_1_signer.html">Signer</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_i_g_n_1_1_signer.js b/doc/html/class_s_i_g_n_1_1_signer.js
new file mode 100644
index 0000000000000000000000000000000000000000..15d165df3f4f2017a68914159fc3226805c1d4d7
--- /dev/null
+++ b/doc/html/class_s_i_g_n_1_1_signer.js
@@ -0,0 +1,8 @@
+var class_s_i_g_n_1_1_signer =
+[
+    [ "Signer", "class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794", null ],
+    [ "~Signer", "class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d", null ],
+    [ "name", "class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925", null ],
+    [ "openssl_version", "class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4", null ],
+    [ "sign", "class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_common-members.html b/doc/html/class_s_o_i_l_1_1_common-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..02f2d2d5a4545685e8c9054675275c46beeb9b46
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_common-members.html
@@ -0,0 +1,138 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>C++ Unified Device Interface: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">C++ Unified Device Interface
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_common.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Common Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ac7df33cfbe428cd4c79395c308615ee6">allowed_origins</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a>(Response &amp;response)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a9446ecdea53d425a63319b86583c1d64">cast</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a2d406d3472c05cb61d036b1b986bde1b">children</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a85a34be28d23fa90318d4cb5cf9b1c51">Common</a>(std::shared_ptr&lt; Common &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3bf1d95deab16a7257d34f5fa1242802">content_type</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a211c95b7bfc2b881a2d12d1eb32e5f1f">description</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a505c8ff74e106ae15ab0180ae2e2bdda">fqid</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#ad0f4af418063b9a8622dcf8eddc54150">handle</a>(HTTP::Request request, std::wsmatch match=std::wsmatch())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a6b760edc7ceb0ba41f50f456d2083e21">handle_delete</a>(Request message, std::wsmatch match=std::wsmatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a0784cb7b82ddb9467ce162d36773d0db">handle_exception</a>(Request message, std::exception &amp;exception, std::wsmatch match=std::wsmatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3bae83cb1c279b3656bb8a005623e6c6">handle_get</a>(Request message, std::wsmatch match=std::wsmatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a135713b49a21b7734809bf681b9ced07">handle_head</a>(Request message, std::wsmatch match=std::wsmatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ab7506658489af2f08c12b3720923aa54">handle_options</a>(Request message, std::wsmatch match=std::wsmatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ac4670d1050ed0d7ab7dbab65df589118">handle_patch</a>(Request message, std::wsmatch match=std::wsmatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3b9befc5acda4cc5812a63e739edead5">handle_post</a>(Request message, std::wsmatch match=std::wsmatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a80da52bf5931af70e3e4414315a4aa04">handle_put</a>(Request message, std::wsmatch match=std::wsmatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a71981861d9e5f20261f72aa33b30c3b4">insert</a>(std::string uuid, std::shared_ptr&lt; Common &gt; &amp;child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#afa913b229e43d4fed32d84d9c198c5a3">insert</a>(std::string uuid, Common *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a1d2fa45352c9c57ac862affd77968e80">is_function</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a83526db570e5078d423a6a4062083db0">is_object</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a2b9581a2ef74dd13c3149c2915f9dfb0">is_parameter</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#ac410b97b6d664cbbf4eeab6e67c8e0f2">is_variable</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a0ccae4fa407e509cdf30b42a8b9ddfd2">json</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a78bd4d6de047b952c79442ed65c95633">mutex</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a86cd3ed075bbc5c62610ee0e300d9447">name</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#ae178d857f810e80bd0de56428f3b6768">ontology</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#aa657357aad0eaf9cb2b4af133b8fe7d9">operator[]</a>(std::string fqid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#ab50512b3c0c3a4b07e101ae3a5a938ec">parent</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a8ba5a9faf59fe4562fc884be43ccd672">remove</a>(std::string uuid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ac05579ab583f4c881243cab40a83ad52">request_info</a>(Request message, std::wsmatch match=std::wsmatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#ad67552d816e56cf3cf88e1554d421448">self</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">uuid</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#a37f413fe3f1dc983d7284db6db08cfff">wjson</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html#ac90c21a4e8b8cd77769594a20495a5a5">~Common</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_common.html b/doc/html/class_s_o_i_l_1_1_common.html
new file mode 100644
index 0000000000000000000000000000000000000000..21358eea92446b36a7714fc3d40e4c97054b2a96
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_common.html
@@ -0,0 +1,771 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>C++ Unified Device Interface: SOIL::Common Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">C++ Unified Device Interface
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_common.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="class_s_o_i_l_1_1_common-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Common Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_common_8h_source.html">Common.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for SOIL::Common:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_s_o_i_l_1_1_common.png" usemap="#SOIL::Common_map" alt=""/>
+  <map id="SOIL::Common_map" name="SOIL::Common_map">
+<area href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class." alt="HTTP::Resource" shape="rect" coords="352,0,518,24"/>
+<area href="class_s_o_i_l_1_1_figure.html" alt="SOIL::Figure&lt; T, -1, -1 &gt;" shape="rect" coords="88,112,254,136"/>
+<area href="class_s_o_i_l_1_1_figure.html" alt="SOIL::Figure&lt; T, x, y &gt;" shape="rect" coords="264,112,430,136"/>
+<area href="class_s_o_i_l_1_1_function.html" alt="SOIL::Function" shape="rect" coords="440,112,606,136"/>
+<area href="class_s_o_i_l_1_1_object.html" alt="SOIL::Object" shape="rect" coords="616,112,782,136"/>
+<area href="class_s_o_i_l_1_1_parameter.html" alt="SOIL::Parameter&lt; T, x, y &gt;" shape="rect" coords="0,168,166,192"/>
+<area href="class_s_o_i_l_1_1_variable.html" alt="SOIL::Variable&lt; T, x, y &gt;" shape="rect" coords="176,168,342,192"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a85a34be28d23fa90318d4cb5cf9b1c51"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a85a34be28d23fa90318d4cb5cf9b1c51">Common</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_common.html">Common</a> &gt; <a class="el" href="class_s_o_i_l_1_1_common.html#ab50512b3c0c3a4b07e101ae3a5a938ec">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_common.html#a86cd3ed075bbc5c62610ee0e300d9447">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_common.html#a211c95b7bfc2b881a2d12d1eb32e5f1f">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_common.html#ae178d857f810e80bd0de56428f3b6768">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="separator:a85a34be28d23fa90318d4cb5cf9b1c51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac90c21a4e8b8cd77769594a20495a5a5"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#ac90c21a4e8b8cd77769594a20495a5a5">~Common</a> ()</td></tr>
+<tr class="separator:ac90c21a4e8b8cd77769594a20495a5a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a505c8ff74e106ae15ab0180ae2e2bdda"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a505c8ff74e106ae15ab0180ae2e2bdda">fqid</a> (void)</td></tr>
+<tr class="separator:a505c8ff74e106ae15ab0180ae2e2bdda"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa657357aad0eaf9cb2b4af133b8fe7d9"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_common.html">Common</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#aa657357aad0eaf9cb2b4af133b8fe7d9">operator[]</a> (std::string <a class="el" href="class_s_o_i_l_1_1_common.html#a505c8ff74e106ae15ab0180ae2e2bdda">fqid</a>)</td></tr>
+<tr class="separator:aa657357aad0eaf9cb2b4af133b8fe7d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71981861d9e5f20261f72aa33b30c3b4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a71981861d9e5f20261f72aa33b30c3b4">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_common.html">Common</a> &gt; &amp;child)</td></tr>
+<tr class="separator:a71981861d9e5f20261f72aa33b30c3b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa913b229e43d4fed32d84d9c198c5a3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#afa913b229e43d4fed32d84d9c198c5a3">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_common.html">Common</a> *child)</td></tr>
+<tr class="separator:afa913b229e43d4fed32d84d9c198c5a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ba5a9faf59fe4562fc884be43ccd672"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a8ba5a9faf59fe4562fc884be43ccd672">remove</a> (std::string <a class="el" href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">uuid</a>)</td></tr>
+<tr class="separator:a8ba5a9faf59fe4562fc884be43ccd672"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9446ecdea53d425a63319b86583c1d64"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a9446ecdea53d425a63319b86583c1d64"><td class="memTemplItemLeft" align="right" valign="top">T *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a9446ecdea53d425a63319b86583c1d64">cast</a> (void)</td></tr>
+<tr class="separator:a9446ecdea53d425a63319b86583c1d64"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83526db570e5078d423a6a4062083db0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a83526db570e5078d423a6a4062083db0">is_object</a> (void) const</td></tr>
+<tr class="separator:a83526db570e5078d423a6a4062083db0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac410b97b6d664cbbf4eeab6e67c8e0f2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#ac410b97b6d664cbbf4eeab6e67c8e0f2">is_variable</a> (void) const</td></tr>
+<tr class="separator:ac410b97b6d664cbbf4eeab6e67c8e0f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d2fa45352c9c57ac862affd77968e80"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a1d2fa45352c9c57ac862affd77968e80">is_function</a> (void) const</td></tr>
+<tr class="separator:a1d2fa45352c9c57ac862affd77968e80"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b9581a2ef74dd13c3149c2915f9dfb0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a2b9581a2ef74dd13c3149c2915f9dfb0">is_parameter</a> (void) const</td></tr>
+<tr class="separator:a2b9581a2ef74dd13c3149c2915f9dfb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37f413fe3f1dc983d7284db6db08cfff"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a37f413fe3f1dc983d7284db6db08cfff">wjson</a> (void)</td></tr>
+<tr class="separator:a37f413fe3f1dc983d7284db6db08cfff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ccae4fa407e509cdf30b42a8b9ddfd2"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a0ccae4fa407e509cdf30b42a8b9ddfd2">json</a> (void)</td></tr>
+<tr class="separator:a0ccae4fa407e509cdf30b42a8b9ddfd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0f4af418063b9a8622dcf8eddc54150"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#ad0f4af418063b9a8622dcf8eddc54150">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:ad0f4af418063b9a8622dcf8eddc54150"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_s_o_i_l_1_1_common.html#ad0f4af418063b9a8622dcf8eddc54150">More...</a><br /></td></tr>
+<tr class="separator:ad0f4af418063b9a8622dcf8eddc54150"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a> ()</td></tr>
+<tr class="memdesc:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">More...</a><br /></td></tr>
+<tr class="separator:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a> ()</td></tr>
+<tr class="memdesc:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Destructor.  <a href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">More...</a><br /></td></tr>
+<tr class="separator:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8c878c9916739079909f40a388efceb inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa8c878c9916739079909f40a388efceb">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:aa8c878c9916739079909f40a388efceb inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_h_t_t_p_1_1_resource.html#aa8c878c9916739079909f40a388efceb">More...</a><br /></td></tr>
+<tr class="separator:aa8c878c9916739079909f40a388efceb inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3bae83cb1c279b3656bb8a005623e6c6 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3bae83cb1c279b3656bb8a005623e6c6">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:a3bae83cb1c279b3656bb8a005623e6c6 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_h_t_t_p_1_1_resource.html#a3bae83cb1c279b3656bb8a005623e6c6">More...</a><br /></td></tr>
+<tr class="separator:a3bae83cb1c279b3656bb8a005623e6c6 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80da52bf5931af70e3e4414315a4aa04 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a80da52bf5931af70e3e4414315a4aa04">handle_put</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:a80da52bf5931af70e3e4414315a4aa04 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PUT Handler.  <a href="class_h_t_t_p_1_1_resource.html#a80da52bf5931af70e3e4414315a4aa04">More...</a><br /></td></tr>
+<tr class="separator:a80da52bf5931af70e3e4414315a4aa04 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b9befc5acda4cc5812a63e739edead5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3b9befc5acda4cc5812a63e739edead5">handle_post</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:a3b9befc5acda4cc5812a63e739edead5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST Handler.  <a href="class_h_t_t_p_1_1_resource.html#a3b9befc5acda4cc5812a63e739edead5">More...</a><br /></td></tr>
+<tr class="separator:a3b9befc5acda4cc5812a63e739edead5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b760edc7ceb0ba41f50f456d2083e21 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a6b760edc7ceb0ba41f50f456d2083e21">handle_delete</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:a6b760edc7ceb0ba41f50f456d2083e21 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> DELETE Handler.  <a href="class_h_t_t_p_1_1_resource.html#a6b760edc7ceb0ba41f50f456d2083e21">More...</a><br /></td></tr>
+<tr class="separator:a6b760edc7ceb0ba41f50f456d2083e21 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4670d1050ed0d7ab7dbab65df589118 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ac4670d1050ed0d7ab7dbab65df589118">handle_patch</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:ac4670d1050ed0d7ab7dbab65df589118 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PATCH Handler.  <a href="class_h_t_t_p_1_1_resource.html#ac4670d1050ed0d7ab7dbab65df589118">More...</a><br /></td></tr>
+<tr class="separator:ac4670d1050ed0d7ab7dbab65df589118 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7506658489af2f08c12b3720923aa54 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ab7506658489af2f08c12b3720923aa54">handle_options</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:ab7506658489af2f08c12b3720923aa54 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> OPTIONS Handler.  <a href="class_h_t_t_p_1_1_resource.html#ab7506658489af2f08c12b3720923aa54">More...</a><br /></td></tr>
+<tr class="separator:ab7506658489af2f08c12b3720923aa54 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a135713b49a21b7734809bf681b9ced07 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a135713b49a21b7734809bf681b9ced07">handle_head</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:a135713b49a21b7734809bf681b9ced07 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> HEAD Handler.  <a href="class_h_t_t_p_1_1_resource.html#a135713b49a21b7734809bf681b9ced07">More...</a><br /></td></tr>
+<tr class="separator:a135713b49a21b7734809bf681b9ced07 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0784cb7b82ddb9467ce162d36773d0db inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a0784cb7b82ddb9467ce162d36773d0db">handle_exception</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::exception &amp;exception, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:a0784cb7b82ddb9467ce162d36773d0db inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Exception handler.  <a href="class_h_t_t_p_1_1_resource.html#a0784cb7b82ddb9467ce162d36773d0db">More...</a><br /></td></tr>
+<tr class="separator:a0784cb7b82ddb9467ce162d36773d0db inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a2d406d3472c05cb61d036b1b986bde1b"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_common.html">Common</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a2d406d3472c05cb61d036b1b986bde1b">children</a></td></tr>
+<tr class="separator:a2d406d3472c05cb61d036b1b986bde1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab50512b3c0c3a4b07e101ae3a5a938ec"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_common.html">Common</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#ab50512b3c0c3a4b07e101ae3a5a938ec">parent</a></td></tr>
+<tr class="separator:ab50512b3c0c3a4b07e101ae3a5a938ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad67552d816e56cf3cf88e1554d421448"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_common.html">Common</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#ad67552d816e56cf3cf88e1554d421448">self</a></td></tr>
+<tr class="separator:ad67552d816e56cf3cf88e1554d421448"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecb1a862246f2b5167735941ab48769b"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b">uuid</a></td></tr>
+<tr class="separator:aecb1a862246f2b5167735941ab48769b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86cd3ed075bbc5c62610ee0e300d9447"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a86cd3ed075bbc5c62610ee0e300d9447">name</a></td></tr>
+<tr class="separator:a86cd3ed075bbc5c62610ee0e300d9447"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a211c95b7bfc2b881a2d12d1eb32e5f1f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a211c95b7bfc2b881a2d12d1eb32e5f1f">description</a></td></tr>
+<tr class="separator:a211c95b7bfc2b881a2d12d1eb32e5f1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae178d857f810e80bd0de56428f3b6768"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#ae178d857f810e80bd0de56428f3b6768">ontology</a></td></tr>
+<tr class="separator:ae178d857f810e80bd0de56428f3b6768"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78bd4d6de047b952c79442ed65c95633"><td class="memItemLeft" align="right" valign="top">std::recursive_mutex&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_common.html#a78bd4d6de047b952c79442ed65c95633">mutex</a></td></tr>
+<tr class="separator:a78bd4d6de047b952c79442ed65c95633"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_static_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:ac05579ab583f4c881243cab40a83ad52 inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">static web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ac05579ab583f4c881243cab40a83ad52">request_info</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::wsmatch match=std::wsmatch())</td></tr>
+<tr class="memdesc:ac05579ab583f4c881243cab40a83ad52 inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request Info.  <a href="class_h_t_t_p_1_1_resource.html#ac05579ab583f4c881243cab40a83ad52">More...</a><br /></td></tr>
+<tr class="separator:ac05579ab583f4c881243cab40a83ad52 inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a> (<a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> &amp;response)</td></tr>
+<tr class="memdesc:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply headers.  <a href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">More...</a><br /></td></tr>
+<tr class="separator:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::vector&lt; web::http::method &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td></tr>
+<tr class="memdesc:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed methods.  <a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">More...</a><br /></td></tr>
+<tr class="separator:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3bf1d95deab16a7257d34f5fa1242802 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::wstring&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3bf1d95deab16a7257d34f5fa1242802">content_type</a></td></tr>
+<tr class="memdesc:a3bf1d95deab16a7257d34f5fa1242802 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Content type.  <a href="class_h_t_t_p_1_1_resource.html#a3bf1d95deab16a7257d34f5fa1242802">More...</a><br /></td></tr>
+<tr class="separator:a3bf1d95deab16a7257d34f5fa1242802 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7df33cfbe428cd4c79395c308615ee6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::wstring&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ac7df33cfbe428cd4c79395c308615ee6">allowed_origins</a></td></tr>
+<tr class="memdesc:ac7df33cfbe428cd4c79395c308615ee6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed Origins.  <a href="class_h_t_t_p_1_1_resource.html#ac7df33cfbe428cd4c79395c308615ee6">More...</a><br /></td></tr>
+<tr class="separator:ac7df33cfbe428cd4c79395c308615ee6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="_common_8h_source.html#l00014">14</a> of file <a class="el" href="_common_8h_source.html">Common.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a85a34be28d23fa90318d4cb5cf9b1c51" name="a85a34be28d23fa90318d4cb5cf9b1c51"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85a34be28d23fa90318d4cb5cf9b1c51">&#9670;&nbsp;</a></span>Common()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Common::Common </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_common.html">Common</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00005">5</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ac90c21a4e8b8cd77769594a20495a5a5" name="ac90c21a4e8b8cd77769594a20495a5a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac90c21a4e8b8cd77769594a20495a5a5">&#9670;&nbsp;</a></span>~Common()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Common::~Common </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00019">19</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a9446ecdea53d425a63319b86583c1d64" name="a9446ecdea53d425a63319b86583c1d64"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9446ecdea53d425a63319b86583c1d64">&#9670;&nbsp;</a></span>cast()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">T * SOIL::Common::cast </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8h_source.html#l00049">49</a> of file <a class="el" href="_common_8h_source.html">Common.h</a>.</p>
+
+</div>
+</div>
+<a id="a505c8ff74e106ae15ab0180ae2e2bdda" name="a505c8ff74e106ae15ab0180ae2e2bdda"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a505c8ff74e106ae15ab0180ae2e2bdda">&#9670;&nbsp;</a></span>fqid()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; std::string &gt; SOIL::Common::fqid </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00026">26</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ad0f4af418063b9a8622dcf8eddc54150" name="ad0f4af418063b9a8622dcf8eddc54150"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad0f4af418063b9a8622dcf8eddc54150">&#9670;&nbsp;</a></span>handle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> SOIL::Common::handle </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::wsmatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::wsmatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests. By default, this function redirects to the more specifc ones based on the respective <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Verb. In case an exception occurs, it calls the exception handler.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#aa8c878c9916739079909f40a388efceb">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00143">143</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="afa913b229e43d4fed32d84d9c198c5a3" name="afa913b229e43d4fed32d84d9c198c5a3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa913b229e43d4fed32d84d9c198c5a3">&#9670;&nbsp;</a></span>insert() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Common::insert </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_common.html">Common</a> *&#160;</td>
+          <td class="paramname"><em>child</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00086">86</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a71981861d9e5f20261f72aa33b30c3b4" name="a71981861d9e5f20261f72aa33b30c3b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71981861d9e5f20261f72aa33b30c3b4">&#9670;&nbsp;</a></span>insert() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Common::insert </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_common.html">Common</a> &gt; &amp;&#160;</td>
+          <td class="paramname"><em>child</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00079">79</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a1d2fa45352c9c57ac862affd77968e80" name="a1d2fa45352c9c57ac862affd77968e80"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d2fa45352c9c57ac862affd77968e80">&#9670;&nbsp;</a></span>is_function()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Common::is_function </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00108">108</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a83526db570e5078d423a6a4062083db0" name="a83526db570e5078d423a6a4062083db0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a83526db570e5078d423a6a4062083db0">&#9670;&nbsp;</a></span>is_object()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Common::is_object </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00098">98</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a2b9581a2ef74dd13c3149c2915f9dfb0" name="a2b9581a2ef74dd13c3149c2915f9dfb0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b9581a2ef74dd13c3149c2915f9dfb0">&#9670;&nbsp;</a></span>is_parameter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Common::is_parameter </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00113">113</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ac410b97b6d664cbbf4eeab6e67c8e0f2" name="ac410b97b6d664cbbf4eeab6e67c8e0f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac410b97b6d664cbbf4eeab6e67c8e0f2">&#9670;&nbsp;</a></span>is_variable()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Common::is_variable </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00103">103</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a0ccae4fa407e509cdf30b42a8b9ddfd2" name="a0ccae4fa407e509cdf30b42a8b9ddfd2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ccae4fa407e509cdf30b42a8b9ddfd2">&#9670;&nbsp;</a></span>json()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Common::json </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00136">136</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa657357aad0eaf9cb2b4af133b8fe7d9" name="aa657357aad0eaf9cb2b4af133b8fe7d9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa657357aad0eaf9cb2b4af133b8fe7d9">&#9670;&nbsp;</a></span>operator[]()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_common.html">SOIL::Common</a> &gt; SOIL::Common::operator[] </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>fqid</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00038">38</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a8ba5a9faf59fe4562fc884be43ccd672" name="a8ba5a9faf59fe4562fc884be43ccd672"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ba5a9faf59fe4562fc884be43ccd672">&#9670;&nbsp;</a></span>remove()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Common::remove </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00091">91</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a37f413fe3f1dc983d7284db6db08cfff" name="a37f413fe3f1dc983d7284db6db08cfff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37f413fe3f1dc983d7284db6db08cfff">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> SOIL::Common::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Reimplemented in <a class="el" href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">SOIL::Function</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">SOIL::Parameter&lt; T, x, y &gt;</a>, and <a class="el" href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">SOIL::Variable&lt; T, x, y &gt;</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_common_8cpp_source.html#l00118">118</a> of file <a class="el" href="_common_8cpp_source.html">Common.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a2d406d3472c05cb61d036b1b986bde1b" name="a2d406d3472c05cb61d036b1b986bde1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d406d3472c05cb61d036b1b986bde1b">&#9670;&nbsp;</a></span>children</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;std::string, std::shared_ptr&lt;<a class="el" href="class_s_o_i_l_1_1_common.html">Common</a>&gt; &gt; SOIL::Common::children</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8h_source.html#l00018">18</a> of file <a class="el" href="_common_8h_source.html">Common.h</a>.</p>
+
+</div>
+</div>
+<a id="a211c95b7bfc2b881a2d12d1eb32e5f1f" name="a211c95b7bfc2b881a2d12d1eb32e5f1f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a211c95b7bfc2b881a2d12d1eb32e5f1f">&#9670;&nbsp;</a></span>description</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Common::description</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8h_source.html#l00023">23</a> of file <a class="el" href="_common_8h_source.html">Common.h</a>.</p>
+
+</div>
+</div>
+<a id="a78bd4d6de047b952c79442ed65c95633" name="a78bd4d6de047b952c79442ed65c95633"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a78bd4d6de047b952c79442ed65c95633">&#9670;&nbsp;</a></span>mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::recursive_mutex SOIL::Common::mutex</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8h_source.html#l00026">26</a> of file <a class="el" href="_common_8h_source.html">Common.h</a>.</p>
+
+</div>
+</div>
+<a id="a86cd3ed075bbc5c62610ee0e300d9447" name="a86cd3ed075bbc5c62610ee0e300d9447"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a86cd3ed075bbc5c62610ee0e300d9447">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Common::name</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8h_source.html#l00022">22</a> of file <a class="el" href="_common_8h_source.html">Common.h</a>.</p>
+
+</div>
+</div>
+<a id="ae178d857f810e80bd0de56428f3b6768" name="ae178d857f810e80bd0de56428f3b6768"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae178d857f810e80bd0de56428f3b6768">&#9670;&nbsp;</a></span>ontology</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Common::ontology</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8h_source.html#l00024">24</a> of file <a class="el" href="_common_8h_source.html">Common.h</a>.</p>
+
+</div>
+</div>
+<a id="ab50512b3c0c3a4b07e101ae3a5a938ec" name="ab50512b3c0c3a4b07e101ae3a5a938ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab50512b3c0c3a4b07e101ae3a5a938ec">&#9670;&nbsp;</a></span>parent</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;<a class="el" href="class_s_o_i_l_1_1_common.html">Common</a>&gt; SOIL::Common::parent</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8h_source.html#l00019">19</a> of file <a class="el" href="_common_8h_source.html">Common.h</a>.</p>
+
+</div>
+</div>
+<a id="ad67552d816e56cf3cf88e1554d421448" name="ad67552d816e56cf3cf88e1554d421448"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad67552d816e56cf3cf88e1554d421448">&#9670;&nbsp;</a></span>self</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;<a class="el" href="class_s_o_i_l_1_1_common.html">Common</a>&gt; SOIL::Common::self</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8h_source.html#l00020">20</a> of file <a class="el" href="_common_8h_source.html">Common.h</a>.</p>
+
+</div>
+</div>
+<a id="aecb1a862246f2b5167735941ab48769b" name="aecb1a862246f2b5167735941ab48769b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aecb1a862246f2b5167735941ab48769b">&#9670;&nbsp;</a></span>uuid</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Common::uuid</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_common_8h_source.html#l00021">21</a> of file <a class="el" href="_common_8h_source.html">Common.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SOIL/<a class="el" href="_common_8h_source.html">Common.h</a></li>
+<li>src/SOIL/<a class="el" href="_common_8cpp_source.html">Common.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_common.html">Common</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_common.js b/doc/html/class_s_o_i_l_1_1_common.js
new file mode 100644
index 0000000000000000000000000000000000000000..5456b115eb7954338c6eb396ae7e22eab24ff210
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_common.js
@@ -0,0 +1,26 @@
+var class_s_o_i_l_1_1_common =
+[
+    [ "Common", "class_s_o_i_l_1_1_common.html#a85a34be28d23fa90318d4cb5cf9b1c51", null ],
+    [ "~Common", "class_s_o_i_l_1_1_common.html#ac90c21a4e8b8cd77769594a20495a5a5", null ],
+    [ "cast", "class_s_o_i_l_1_1_common.html#a9446ecdea53d425a63319b86583c1d64", null ],
+    [ "fqid", "class_s_o_i_l_1_1_common.html#a505c8ff74e106ae15ab0180ae2e2bdda", null ],
+    [ "handle", "class_s_o_i_l_1_1_common.html#ad0f4af418063b9a8622dcf8eddc54150", null ],
+    [ "insert", "class_s_o_i_l_1_1_common.html#afa913b229e43d4fed32d84d9c198c5a3", null ],
+    [ "insert", "class_s_o_i_l_1_1_common.html#a71981861d9e5f20261f72aa33b30c3b4", null ],
+    [ "is_function", "class_s_o_i_l_1_1_common.html#a1d2fa45352c9c57ac862affd77968e80", null ],
+    [ "is_object", "class_s_o_i_l_1_1_common.html#a83526db570e5078d423a6a4062083db0", null ],
+    [ "is_parameter", "class_s_o_i_l_1_1_common.html#a2b9581a2ef74dd13c3149c2915f9dfb0", null ],
+    [ "is_variable", "class_s_o_i_l_1_1_common.html#ac410b97b6d664cbbf4eeab6e67c8e0f2", null ],
+    [ "json", "class_s_o_i_l_1_1_common.html#a0ccae4fa407e509cdf30b42a8b9ddfd2", null ],
+    [ "operator[]", "class_s_o_i_l_1_1_common.html#aa657357aad0eaf9cb2b4af133b8fe7d9", null ],
+    [ "remove", "class_s_o_i_l_1_1_common.html#a8ba5a9faf59fe4562fc884be43ccd672", null ],
+    [ "wjson", "class_s_o_i_l_1_1_common.html#a37f413fe3f1dc983d7284db6db08cfff", null ],
+    [ "children", "class_s_o_i_l_1_1_common.html#a2d406d3472c05cb61d036b1b986bde1b", null ],
+    [ "description", "class_s_o_i_l_1_1_common.html#a211c95b7bfc2b881a2d12d1eb32e5f1f", null ],
+    [ "mutex", "class_s_o_i_l_1_1_common.html#a78bd4d6de047b952c79442ed65c95633", null ],
+    [ "name", "class_s_o_i_l_1_1_common.html#a86cd3ed075bbc5c62610ee0e300d9447", null ],
+    [ "ontology", "class_s_o_i_l_1_1_common.html#ae178d857f810e80bd0de56428f3b6768", null ],
+    [ "parent", "class_s_o_i_l_1_1_common.html#ab50512b3c0c3a4b07e101ae3a5a938ec", null ],
+    [ "self", "class_s_o_i_l_1_1_common.html#ad67552d816e56cf3cf88e1554d421448", null ],
+    [ "uuid", "class_s_o_i_l_1_1_common.html#aecb1a862246f2b5167735941ab48769b", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_common.png b/doc/html/class_s_o_i_l_1_1_common.png
new file mode 100644
index 0000000000000000000000000000000000000000..c5161e5d22259701a4223fe91dc59d8801aa6b66
Binary files /dev/null and b/doc/html/class_s_o_i_l_1_1_common.png differ
diff --git a/doc/html/class_s_o_i_l_1_1_container-members.html b/doc/html/class_s_o_i_l_1_1_container-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..47e67ce04e1ecd5ac8ce11a214ef5a77b40a27f7
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_container-members.html
@@ -0,0 +1,112 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_container.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Container&lt; T, x, y &gt; Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">at</a>(int i, int j)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">check_range</a>(Range&lt; T &gt; range) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce">Container</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f">Container</a>(const std::vector&lt; std::vector&lt; T &gt; &gt; &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b">Container</a>(HTTP::Json json)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310">is_null</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030">operator*</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a">serialize_dimensions</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">serialize_value</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39">set_null</a>(bool _null=true)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">wjson</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_container.html b/doc/html/class_s_o_i_l_1_1_container.html
new file mode 100644
index 0000000000000000000000000000000000000000..4ccadae0a947d3172eab653901d2e4f4e9281874
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_container.html
@@ -0,0 +1,472 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Container&lt; T, x, y &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_container.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_s_o_i_l_1_1_container-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Container&lt; T, x, y &gt; Class Template Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Data <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a>.  
+ <a href="class_s_o_i_l_1_1_container.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_container_8h_source.html">Container.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac329fc28b401a84de21b5f298e9236ce"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce">Container</a> ()</td></tr>
+<tr class="memdesc:ac329fc28b401a84de21b5f298e9236ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty constructor.  <a href="class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce">More...</a><br /></td></tr>
+<tr class="separator:ac329fc28b401a84de21b5f298e9236ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c515f73d9000e53db8478a8836c1d1f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f">Container</a> (const std::vector&lt; std::vector&lt; T &gt; &gt; &amp;value)</td></tr>
+<tr class="memdesc:a8c515f73d9000e53db8478a8836c1d1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data copy constructor.  <a href="class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f">More...</a><br /></td></tr>
+<tr class="separator:a8c515f73d9000e53db8478a8836c1d1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00d0e2ac641857eac06d5d833c28229b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b">Container</a> (<a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="memdesc:a00d0e2ac641857eac06d5d833c28229b"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON Constructor.  <a href="class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b">More...</a><br /></td></tr>
+<tr class="separator:a00d0e2ac641857eac06d5d833c28229b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6483504f2c37393c0fdde77e39f5a030"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector&lt; T &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030">operator*</a> (void) const</td></tr>
+<tr class="memdesc:a6483504f2c37393c0fdde77e39f5a030"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deferencing operator.  <a href="class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030">More...</a><br /></td></tr>
+<tr class="separator:a6483504f2c37393c0fdde77e39f5a030"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ae9246ee94ebe4a82f7dad7e02ff310"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310">is_null</a> (void) const</td></tr>
+<tr class="memdesc:a8ae9246ee94ebe4a82f7dad7e02ff310"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is Null?  <a href="class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310">More...</a><br /></td></tr>
+<tr class="separator:a8ae9246ee94ebe4a82f7dad7e02ff310"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a386c1992526628067cad3295763e6e39"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39">set_null</a> (bool _null=true)</td></tr>
+<tr class="memdesc:a386c1992526628067cad3295763e6e39"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set null.  <a href="class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39">More...</a><br /></td></tr>
+<tr class="separator:a386c1992526628067cad3295763e6e39"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a197355701a388b65d7ea327ddd45024a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">wjson</a> (void)</td></tr>
+<tr class="memdesc:a197355701a388b65d7ea327ddd45024a"><td class="mdescLeft">&#160;</td><td class="mdescRight">WJSON representation.  <a href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">More...</a><br /></td></tr>
+<tr class="separator:a197355701a388b65d7ea327ddd45024a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1574e37bb9696fdee3986964e77f050"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">check_range</a> (<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; range) const</td></tr>
+<tr class="memdesc:ad1574e37bb9696fdee3986964e77f050"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check range.  <a href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">More...</a><br /></td></tr>
+<tr class="separator:ad1574e37bb9696fdee3986964e77f050"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a893d008aed36e88dac38fbb0c5497ac2"><td class="memItemLeft" align="right" valign="top">T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">at</a> (int i, int j)</td></tr>
+<tr class="memdesc:a893d008aed36e88dac38fbb0c5497ac2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data Accessor.  <a href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">More...</a><br /></td></tr>
+<tr class="separator:a893d008aed36e88dac38fbb0c5497ac2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5bb5198238af5ed6058e2f77ddb15f38"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">serialize_value</a> (void) const</td></tr>
+<tr class="memdesc:a5bb5198238af5ed6058e2f77ddb15f38"><td class="mdescLeft">&#160;</td><td class="mdescRight">Serialize value.  <a href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">More...</a><br /></td></tr>
+<tr class="separator:a5bb5198238af5ed6058e2f77ddb15f38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc3f75677472910832a714f472c00d5a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a">serialize_dimensions</a> (void) const</td></tr>
+<tr class="memdesc:adc3f75677472910832a714f472c00d5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Serialize dimensions.  <a href="class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a">More...</a><br /></td></tr>
+<tr class="separator:adc3f75677472910832a714f472c00d5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><div class="compoundTemplParams">template&lt;typename T, int x = -1, int y = -1&gt;<br />
+class SOIL::Container&lt; T, x, y &gt;</div><p ><a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> class to manage multidmensional data of (nearly) arbitrary type. The data can be scalar, 1D or 2D while the size of dimensions is a priori unknown. This class then provides an abstratcion layer to the other elements of <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> to allow for consistent implementation. Therefor it makes heavy use of templates, which are specialized for certain cases where <code>x</code> and/or <code>y</code> are -1 and for special types.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data. </td></tr>
+    <tr><td class="paramname">x</td><td>First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if <code>y</code> is not -1. </td></tr>
+    <tr><td class="paramname">y</td><td>Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for <code>x</code> to be -1. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00021">21</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ac329fc28b401a84de21b5f298e9236ce" name="ac329fc28b401a84de21b5f298e9236ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac329fc28b401a84de21b5f298e9236ce">&#9670;&nbsp;</a></span>Container() <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T &gt;::Container</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructs an empty container. _null will be set to true as no data has been added. </p><dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::runtime_error</td><td>An exception is thrown if an invalid combination of template parameters is used. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00196">196</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="a8c515f73d9000e53db8478a8836c1d1f" name="a8c515f73d9000e53db8478a8836c1d1f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c515f73d9000e53db8478a8836c1d1f">&#9670;&nbsp;</a></span>Container() <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, y &gt;::Container </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; std::vector&lt; T &gt; &gt; &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor that initializes the data with the given value. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Data for initialization, wich must match in type and dimension </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00210">210</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="a00d0e2ac641857eac06d5d833c28229b" name="a00d0e2ac641857eac06d5d833c28229b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a00d0e2ac641857eac06d5d833c28229b">&#9670;&nbsp;</a></span>Container() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T &gt;::Container </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor that takes dimension and value from an JSON representation adhering to the <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> nomenclature. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">json</td><td>JSON object to parse </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00231">231</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a893d008aed36e88dac38fbb0c5497ac2" name="a893d008aed36e88dac38fbb0c5497ac2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a893d008aed36e88dac38fbb0c5497ac2">&#9670;&nbsp;</a></span>at()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">T &amp; <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T &gt;::at </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>i</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>j</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >STL-style data accesor retrieving a a single element from multidimensional-data. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">i</td><td>Index position along first dimension </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">j</td><td>Index position along second dimension </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Data value of type T </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00313">313</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="ad1574e37bb9696fdee3986964e77f050" name="ad1574e37bb9696fdee3986964e77f050"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad1574e37bb9696fdee3986964e77f050">&#9670;&nbsp;</a></span>check_range()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T &gt;::check_range </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Check whether the data of the container lies within the specified range. In the case of multidimensional data, this check is carried out on all elememts and only returns true if it is applicable to all. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td><a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> for which to check </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Check result as boolean </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00293">293</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="a8ae9246ee94ebe4a82f7dad7e02ff310" name="a8ae9246ee94ebe4a82f7dad7e02ff310"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ae9246ee94ebe4a82f7dad7e02ff310">&#9670;&nbsp;</a></span>is_null()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, y &gt;::is_null </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p ><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> that returns true if the current data is set to null and false else.</p>
+<dl class="section return"><dt>Returns</dt><dd>Null flag </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00079">79</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="a6483504f2c37393c0fdde77e39f5a030" name="a6483504f2c37393c0fdde77e39f5a030"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6483504f2c37393c0fdde77e39f5a030">&#9670;&nbsp;</a></span>operator*()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">T <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T &gt;::operator* </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Return a copy of the raw data, similar to other uses of * in the standard library. </p><dl class="section return"><dt>Returns</dt><dd>Copy of underlying data. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00263">263</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="adc3f75677472910832a714f472c00d5a" name="adc3f75677472910832a714f472c00d5a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc3f75677472910832a714f472c00d5a">&#9670;&nbsp;</a></span>serialize_dimensions()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T &gt;::serialize_dimensions </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Serialize the dimensions to a bytestring for hashing purposes </p><dl class="section return"><dt>Returns</dt><dd>Bytestring of serialization </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00350">350</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="a5bb5198238af5ed6058e2f77ddb15f38" name="a5bb5198238af5ed6058e2f77ddb15f38"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5bb5198238af5ed6058e2f77ddb15f38">&#9670;&nbsp;</a></span>serialize_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T &gt;::serialize_value </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Serialize the value to a bytestring for hashing purposes </p><dl class="section return"><dt>Returns</dt><dd>Bytestring of serialization </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00323">323</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="a386c1992526628067cad3295763e6e39" name="a386c1992526628067cad3295763e6e39"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a386c1992526628067cad3295763e6e39">&#9670;&nbsp;</a></span>set_null()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, y &gt;::set_null </td>
+          <td>(</td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>_null</em> = <code>true</code></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p ><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> to set the null status of the data container </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">_null</td><td>Boolean state flag </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00087">87</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="a197355701a388b65d7ea327ddd45024a" name="a197355701a388b65d7ea327ddd45024a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a197355701a388b65d7ea327ddd45024a">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T &gt;::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Get a JSON object respresentation of the container's current data. The naming <code><a class="el" href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a" title="WJSON representation.">wjson()</a></code> is chosen as it is consistently used through the library when using wide-string JSON as introduced by cpprestsdk.</p>
+<dl class="section return"><dt>Returns</dt><dd>JSON object. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00269">269</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>src/SOIL/<a class="el" href="_container_8h_source.html">Container.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_container.js b/doc/html/class_s_o_i_l_1_1_container.js
new file mode 100644
index 0000000000000000000000000000000000000000..20fccfd9f51c6f18da5d5bb82f3a620b9a34e37f
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_container.js
@@ -0,0 +1,14 @@
+var class_s_o_i_l_1_1_container =
+[
+    [ "Container", "class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce", null ],
+    [ "Container", "class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f", null ],
+    [ "Container", "class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b", null ],
+    [ "at", "class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2", null ],
+    [ "check_range", "class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050", null ],
+    [ "is_null", "class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310", null ],
+    [ "operator*", "class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030", null ],
+    [ "serialize_dimensions", "class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a", null ],
+    [ "serialize_value", "class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38", null ],
+    [ "set_null", "class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39", null ],
+    [ "wjson", "class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4-members.html b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..2155e766c80f78f8fd15a6185a794c8bb52e7633
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4-members.html
@@ -0,0 +1,112 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Container&lt; T, -1, -1 &gt; Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675">at</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750">check_range</a>(Range&lt; T &gt; range) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04">Container</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa274a79ce54cb7ce0e384790332c6dfa">Container</a>(const T &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a55089fd352f89f4248ea546a365aecc7">Container</a>(HTTP::Json json)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e">is_null</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b">operator*</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74">serialize_dimensions</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509">serialize_value</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be">set_null</a>(bool _null=true)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338">wjson</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html
new file mode 100644
index 0000000000000000000000000000000000000000..c468a909c13d80eec2215ea8490969fc7832bd11
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html
@@ -0,0 +1,387 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Container&lt; T, -1, -1 &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Container&lt; T, -1, -1 &gt; Class Template Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Template specialization for Scalars.  
+ <a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_container_8h_source.html">Container.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a621f4d118ab910a12f01986158db4b04"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04">Container</a> ()</td></tr>
+<tr class="separator:a621f4d118ab910a12f01986158db4b04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa274a79ce54cb7ce0e384790332c6dfa"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa274a79ce54cb7ce0e384790332c6dfa">Container</a> (const T &amp;value)</td></tr>
+<tr class="separator:aa274a79ce54cb7ce0e384790332c6dfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55089fd352f89f4248ea546a365aecc7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a55089fd352f89f4248ea546a365aecc7">Container</a> (<a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:a55089fd352f89f4248ea546a365aecc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aead4f92e330d6791b664af81b3f1942b"><td class="memItemLeft" align="right" valign="top">T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b">operator*</a> (void) const</td></tr>
+<tr class="separator:aead4f92e330d6791b664af81b3f1942b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5184ac1f1d1292b4cb72c28b3b3442e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e">is_null</a> (void) const</td></tr>
+<tr class="separator:ae5184ac1f1d1292b4cb72c28b3b3442e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2430a1362863511e7766b1e552c74be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be">set_null</a> (bool _null=true)</td></tr>
+<tr class="separator:ac2430a1362863511e7766b1e552c74be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abab8884727d8470a1d6a151f11800338"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338">wjson</a> (void)</td></tr>
+<tr class="separator:abab8884727d8470a1d6a151f11800338"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa74985ed06251ca010f9250d05fa9750"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750">check_range</a> (<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; range) const</td></tr>
+<tr class="separator:aa74985ed06251ca010f9250d05fa9750"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6644e2d6aa2ecc1027ce821a384e675"><td class="memItemLeft" align="right" valign="top">T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675">at</a> (void)</td></tr>
+<tr class="separator:ab6644e2d6aa2ecc1027ce821a384e675"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae43038fa9aa3b9fbe4dd37e782008509"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509">serialize_value</a> (void) const</td></tr>
+<tr class="separator:ae43038fa9aa3b9fbe4dd37e782008509"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab568a07a3075826eb277cc7392510f74"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74">serialize_dimensions</a> (void) const</td></tr>
+<tr class="separator:ab568a07a3075826eb277cc7392510f74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><div class="compoundTemplParams">template&lt;typename T&gt;<br />
+class SOIL::Container&lt; T, -1, -1 &gt;</div><p >This is the specialization of the templated class for scalar data. For the documentation of methods, please refer to the unpecialized class. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00174">174</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a621f4d118ab910a12f01986158db4b04" name="a621f4d118ab910a12f01986158db4b04"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a621f4d118ab910a12f01986158db4b04">&#9670;&nbsp;</a></span>Container() <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::Container </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aa274a79ce54cb7ce0e384790332c6dfa" name="aa274a79ce54cb7ce0e384790332c6dfa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa274a79ce54cb7ce0e384790332c6dfa">&#9670;&nbsp;</a></span>Container() <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::Container </td>
+          <td>(</td>
+          <td class="paramtype">const T &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a55089fd352f89f4248ea546a365aecc7" name="a55089fd352f89f4248ea546a365aecc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55089fd352f89f4248ea546a365aecc7">&#9670;&nbsp;</a></span>Container() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::Container </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ab6644e2d6aa2ecc1027ce821a384e675" name="ab6644e2d6aa2ecc1027ce821a384e675"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab6644e2d6aa2ecc1027ce821a384e675">&#9670;&nbsp;</a></span>at()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">T &amp; <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::at </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aa74985ed06251ca010f9250d05fa9750" name="aa74985ed06251ca010f9250d05fa9750"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa74985ed06251ca010f9250d05fa9750">&#9670;&nbsp;</a></span>check_range()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::check_range </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae5184ac1f1d1292b4cb72c28b3b3442e" name="ae5184ac1f1d1292b4cb72c28b3b3442e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5184ac1f1d1292b4cb72c28b3b3442e">&#9670;&nbsp;</a></span>is_null()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::is_null </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00184">184</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="aead4f92e330d6791b664af81b3f1942b" name="aead4f92e330d6791b664af81b3f1942b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aead4f92e330d6791b664af81b3f1942b">&#9670;&nbsp;</a></span>operator*()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">T <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::operator* </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ab568a07a3075826eb277cc7392510f74" name="ab568a07a3075826eb277cc7392510f74"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab568a07a3075826eb277cc7392510f74">&#9670;&nbsp;</a></span>serialize_dimensions()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::serialize_dimensions </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae43038fa9aa3b9fbe4dd37e782008509" name="ae43038fa9aa3b9fbe4dd37e782008509"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae43038fa9aa3b9fbe4dd37e782008509">&#9670;&nbsp;</a></span>serialize_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::serialize_value </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ac2430a1362863511e7766b1e552c74be" name="ac2430a1362863511e7766b1e552c74be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac2430a1362863511e7766b1e552c74be">&#9670;&nbsp;</a></span>set_null()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::set_null </td>
+          <td>(</td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>_null</em> = <code>true</code></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00185">185</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="abab8884727d8470a1d6a151f11800338" name="abab8884727d8470a1d6a151f11800338"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abab8884727d8470a1d6a151f11800338">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, -1, -1 &gt;::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>src/SOIL/<a class="el" href="_container_8h_source.html">Container.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">Container&lt; T, -1, -1 &gt;</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.js b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..c399ca4adaec4a0b622264b4f6571e9949db82f8
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.js
@@ -0,0 +1,14 @@
+var class_s_o_i_l_1_1_container_3_01_t_00_01_1_00_01_1_01_4 =
+[
+    [ "Container", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04", null ],
+    [ "Container", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa274a79ce54cb7ce0e384790332c6dfa", null ],
+    [ "Container", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a55089fd352f89f4248ea546a365aecc7", null ],
+    [ "at", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675", null ],
+    [ "check_range", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750", null ],
+    [ "is_null", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e", null ],
+    [ "operator*", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b", null ],
+    [ "serialize_dimensions", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74", null ],
+    [ "serialize_value", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509", null ],
+    [ "set_null", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be", null ],
+    [ "wjson", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4-members.html b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..75b18eccbcaea39f42baeb276831cabc1c8b0599
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4-members.html
@@ -0,0 +1,112 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Container&lt; T, x, -1 &gt; Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d">at</a>(int i)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e">check_range</a>(Range&lt; T &gt; range) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8">Container</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ad9bd44996d34de087f4d8e52e3d087bd">Container</a>(const std::vector&lt; T &gt; &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aeeba9a7d45fc949532443d3f6184cb29">Container</a>(HTTP::Json json)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1">is_null</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647">operator*</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34">serialize_dimensions</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724">serialize_value</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b">set_null</a>(bool _null=true)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480">wjson</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html
new file mode 100644
index 0000000000000000000000000000000000000000..bdda7781a79991af0d6080e5e383a00afb842340
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html
@@ -0,0 +1,388 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Container&lt; T, x, -1 &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Container&lt; T, x, -1 &gt; Class Template Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Template specialization for 1D-Arrays/Vectors.  
+ <a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_container_8h_source.html">Container.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a0cf0460b6035095a9fb4ac40fc0d56c8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8">Container</a> ()</td></tr>
+<tr class="separator:a0cf0460b6035095a9fb4ac40fc0d56c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9bd44996d34de087f4d8e52e3d087bd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ad9bd44996d34de087f4d8e52e3d087bd">Container</a> (const std::vector&lt; T &gt; &amp;value)</td></tr>
+<tr class="separator:ad9bd44996d34de087f4d8e52e3d087bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeeba9a7d45fc949532443d3f6184cb29"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aeeba9a7d45fc949532443d3f6184cb29">Container</a> (<a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:aeeba9a7d45fc949532443d3f6184cb29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0d511ffb0f1398cbb9b88a9974ca647"><td class="memItemLeft" align="right" valign="top">std::vector&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647">operator*</a> (void) const</td></tr>
+<tr class="separator:ac0d511ffb0f1398cbb9b88a9974ca647"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44119ac58622a2aa98cf92018826def1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1">is_null</a> (void) const</td></tr>
+<tr class="separator:a44119ac58622a2aa98cf92018826def1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae25249aadcd39ed98369b62f69d9cf9b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b">set_null</a> (bool _null=true)</td></tr>
+<tr class="separator:ae25249aadcd39ed98369b62f69d9cf9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a795ada1b50ab3659a27fe96e40745480"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480">wjson</a> (void)</td></tr>
+<tr class="separator:a795ada1b50ab3659a27fe96e40745480"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4afd624980020d58d536fecd24a3a64e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e">check_range</a> (<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; range) const</td></tr>
+<tr class="separator:a4afd624980020d58d536fecd24a3a64e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03f102c86faf01d5caef3972ff54463d"><td class="memItemLeft" align="right" valign="top">T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d">at</a> (int i)</td></tr>
+<tr class="separator:a03f102c86faf01d5caef3972ff54463d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaeb96652a1ee684921d9ff91be93b724"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724">serialize_value</a> (void) const</td></tr>
+<tr class="separator:aaeb96652a1ee684921d9ff91be93b724"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae65685172c0bcfc9d437accc2b194d34"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34">serialize_dimensions</a> (void) const</td></tr>
+<tr class="separator:ae65685172c0bcfc9d437accc2b194d34"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><div class="compoundTemplParams">template&lt;typename T, int x&gt;<br />
+class SOIL::Container&lt; T, x, -1 &gt;</div><p >This is the specialization of the templated class for data that expands along one dimension. For the documentation of methods, please refer to the unpecialized class. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data </td></tr>
+    <tr><td class="paramname">x</td><td>First dimension of the data </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00146">146</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a0cf0460b6035095a9fb4ac40fc0d56c8" name="a0cf0460b6035095a9fb4ac40fc0d56c8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0cf0460b6035095a9fb4ac40fc0d56c8">&#9670;&nbsp;</a></span>Container() <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::Container </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ad9bd44996d34de087f4d8e52e3d087bd" name="ad9bd44996d34de087f4d8e52e3d087bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad9bd44996d34de087f4d8e52e3d087bd">&#9670;&nbsp;</a></span>Container() <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::Container </td>
+          <td>(</td>
+          <td class="paramtype">const std::vector&lt; T &gt; &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aeeba9a7d45fc949532443d3f6184cb29" name="aeeba9a7d45fc949532443d3f6184cb29"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeeba9a7d45fc949532443d3f6184cb29">&#9670;&nbsp;</a></span>Container() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::Container </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a03f102c86faf01d5caef3972ff54463d" name="a03f102c86faf01d5caef3972ff54463d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a03f102c86faf01d5caef3972ff54463d">&#9670;&nbsp;</a></span>at()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">T &amp; <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::at </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>i</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a4afd624980020d58d536fecd24a3a64e" name="a4afd624980020d58d536fecd24a3a64e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4afd624980020d58d536fecd24a3a64e">&#9670;&nbsp;</a></span>check_range()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::check_range </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a44119ac58622a2aa98cf92018826def1" name="a44119ac58622a2aa98cf92018826def1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44119ac58622a2aa98cf92018826def1">&#9670;&nbsp;</a></span>is_null()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::is_null </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00156">156</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="ac0d511ffb0f1398cbb9b88a9974ca647" name="ac0d511ffb0f1398cbb9b88a9974ca647"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac0d511ffb0f1398cbb9b88a9974ca647">&#9670;&nbsp;</a></span>operator*()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::operator* </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae65685172c0bcfc9d437accc2b194d34" name="ae65685172c0bcfc9d437accc2b194d34"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae65685172c0bcfc9d437accc2b194d34">&#9670;&nbsp;</a></span>serialize_dimensions()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::serialize_dimensions </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aaeb96652a1ee684921d9ff91be93b724" name="aaeb96652a1ee684921d9ff91be93b724"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaeb96652a1ee684921d9ff91be93b724">&#9670;&nbsp;</a></span>serialize_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::serialize_value </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae25249aadcd39ed98369b62f69d9cf9b" name="ae25249aadcd39ed98369b62f69d9cf9b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae25249aadcd39ed98369b62f69d9cf9b">&#9670;&nbsp;</a></span>set_null()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::set_null </td>
+          <td>(</td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>_null</em> = <code>true</code></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_container_8h_source.html#l00157">157</a> of file <a class="el" href="_container_8h_source.html">Container.h</a>.</p>
+
+</div>
+</div>
+<a id="a795ada1b50ab3659a27fe96e40745480" name="a795ada1b50ab3659a27fe96e40745480"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a795ada1b50ab3659a27fe96e40745480">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, -1 &gt;::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>src/SOIL/<a class="el" href="_container_8h_source.html">Container.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">Container&lt; T, x, -1 &gt;</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.js b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..d30cc6c4452e4aa8890e1925c471fd69787d00de
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.js
@@ -0,0 +1,14 @@
+var class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01_1_01_4 =
+[
+    [ "Container", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8", null ],
+    [ "Container", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ad9bd44996d34de087f4d8e52e3d087bd", null ],
+    [ "Container", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aeeba9a7d45fc949532443d3f6184cb29", null ],
+    [ "at", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d", null ],
+    [ "check_range", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e", null ],
+    [ "is_null", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1", null ],
+    [ "operator*", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647", null ],
+    [ "serialize_dimensions", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34", null ],
+    [ "serialize_value", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724", null ],
+    [ "set_null", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b", null ],
+    [ "wjson", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_element-members.html b/doc/html/class_s_o_i_l_1_1_element-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..b03eaf183aa4902aff0799ca682831b4779ee220
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_element-members.html
@@ -0,0 +1,141 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_element.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Element Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a>(Response &amp;response)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">cast</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a>(HTTP::Request request, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a>(Request message, std::exception &amp;exception, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">handle_get</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a>(std::string fqid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a>(std::string uuid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">wjson</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_element.html b/doc/html/class_s_o_i_l_1_1_element.html
new file mode 100644
index 0000000000000000000000000000000000000000..a7732e2953a2b795994194b6d5b14d2ccfc1ff89
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_element.html
@@ -0,0 +1,953 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Element Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_element.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="class_s_o_i_l_1_1_element-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Element Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Base <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  
+ <a href="class_s_o_i_l_1_1_element.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_element_8h_source.html">Element.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for SOIL::Element:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_s_o_i_l_1_1_element.png" usemap="#SOIL::Element_map" alt=""/>
+  <map id="SOIL::Element_map" name="SOIL::Element_map">
+<area href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class." alt="HTTP::Resource" shape="rect" coords="352,0,518,24"/>
+<area href="class_s_o_i_l_1_1_figure.html" alt="SOIL::Figure&lt; T, -1, -1 &gt;" shape="rect" coords="88,112,254,136"/>
+<area href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element." alt="SOIL::Figure&lt; T, x, y &gt;" shape="rect" coords="264,112,430,136"/>
+<area href="class_s_o_i_l_1_1_function.html" title="Function Class." alt="SOIL::Function" shape="rect" coords="440,112,606,136"/>
+<area href="class_s_o_i_l_1_1_object.html" title="Object Class." alt="SOIL::Object" shape="rect" coords="616,112,782,136"/>
+<area href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class." alt="SOIL::Parameter&lt; T, x, y &gt;" shape="rect" coords="0,168,166,192"/>
+<area href="class_s_o_i_l_1_1_variable.html" title="Variable Class." alt="SOIL::Variable&lt; T, x, y &gt;" shape="rect" coords="176,168,342,192"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ae31b32fb944a138ac955e07a5be9d652"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:ae31b32fb944a138ac955e07a5be9d652"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">More...</a><br /></td></tr>
+<tr class="separator:ae31b32fb944a138ac955e07a5be9d652"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4acd9dc20ed4e0926da2ba7e4a5af7ab"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a> ()</td></tr>
+<tr class="memdesc:a4acd9dc20ed4e0926da2ba7e4a5af7ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">More...</a><br /></td></tr>
+<tr class="separator:a4acd9dc20ed4e0926da2ba7e4a5af7ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0dff9864321178e13df316f1b317bcb"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a> (void)</td></tr>
+<tr class="memdesc:ad0dff9864321178e13df316f1b317bcb"><td class="mdescLeft">&#160;</td><td class="mdescRight">FQID.  <a href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">More...</a><br /></td></tr>
+<tr class="separator:ad0dff9864321178e13df316f1b317bcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4704591e187b8bf5344979d095703239"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>)</td></tr>
+<tr class="memdesc:a4704591e187b8bf5344979d095703239"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access Operator.  <a href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">More...</a><br /></td></tr>
+<tr class="separator:a4704591e187b8bf5344979d095703239"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a682f8e3123f99f13545db06e15a896bb"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a682f8e3123f99f13545db06e15a896bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">More...</a><br /></td></tr>
+<tr class="separator:a682f8e3123f99f13545db06e15a896bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90aba7aaad7c5e9695b239480e95cea3"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:a90aba7aaad7c5e9695b239480e95cea3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">More...</a><br /></td></tr>
+<tr class="separator:a90aba7aaad7c5e9695b239480e95cea3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06d51f457b4412d64c3980a377fbc9f0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a06d51f457b4412d64c3980a377fbc9f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">More...</a><br /></td></tr>
+<tr class="separator:a06d51f457b4412d64c3980a377fbc9f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0d80de0520ce5366067512e07068e1e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:ad0d80de0520ce5366067512e07068e1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">More...</a><br /></td></tr>
+<tr class="separator:ad0d80de0520ce5366067512e07068e1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae32f6b04a96ff98acfe29f884177f22f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>)</td></tr>
+<tr class="memdesc:ae32f6b04a96ff98acfe29f884177f22f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove Child element.  <a href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">More...</a><br /></td></tr>
+<tr class="separator:ae32f6b04a96ff98acfe29f884177f22f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d"><td class="memTemplItemLeft" align="right" valign="top">T *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">cast</a> (void)</td></tr>
+<tr class="memdesc:a6ef3653a14ca3245c529684e939b122d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dynamically casted pointer.  <a href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">More...</a><br /></td></tr>
+<tr class="separator:a6ef3653a14ca3245c529684e939b122d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bd2f333fbe5c1b51218512c3ef8c9b3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a> (void) const</td></tr>
+<tr class="memdesc:a8bd2f333fbe5c1b51218512c3ef8c9b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a>?  <a href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">More...</a><br /></td></tr>
+<tr class="separator:a8bd2f333fbe5c1b51218512c3ef8c9b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa035b89c623428f7d93b8b1da0ce1e49"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a> (void) const</td></tr>
+<tr class="memdesc:aa035b89c623428f7d93b8b1da0ce1e49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a>?  <a href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">More...</a><br /></td></tr>
+<tr class="separator:aa035b89c623428f7d93b8b1da0ce1e49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa82810e11265c4a890246f633fe4fc7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a> (void) const</td></tr>
+<tr class="memdesc:aaa82810e11265c4a890246f633fe4fc7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a>?  <a href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">More...</a><br /></td></tr>
+<tr class="separator:aaa82810e11265c4a890246f633fe4fc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c20dd71ee68dd4823e32aa3868f337b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a> (void) const</td></tr>
+<tr class="memdesc:a4c20dd71ee68dd4823e32aa3868f337b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>?  <a href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">More...</a><br /></td></tr>
+<tr class="separator:a4c20dd71ee68dd4823e32aa3868f337b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dd8b98ea77291d638408b123e68536a"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">wjson</a> (void)</td></tr>
+<tr class="memdesc:a9dd8b98ea77291d638408b123e68536a"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">More...</a><br /></td></tr>
+<tr class="separator:a9dd8b98ea77291d638408b123e68536a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad55fc11662301ce186e593852a9425ce"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a> (void)</td></tr>
+<tr class="memdesc:ad55fc11662301ce186e593852a9425ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON string.  <a href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">More...</a><br /></td></tr>
+<tr class="separator:ad55fc11662301ce186e593852a9425ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f046d3e28928e07013a07b7e5b8e5a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a0f046d3e28928e07013a07b7e5b8e5a2"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">More...</a><br /></td></tr>
+<tr class="separator:a0f046d3e28928e07013a07b7e5b8e5a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a> ()</td></tr>
+<tr class="memdesc:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">More...</a><br /></td></tr>
+<tr class="separator:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a> ()</td></tr>
+<tr class="memdesc:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Destructor.  <a href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">More...</a><br /></td></tr>
+<tr class="separator:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">More...</a><br /></td></tr>
+<tr class="separator:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">More...</a><br /></td></tr>
+<tr class="separator:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PUT Handler.  <a href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">More...</a><br /></td></tr>
+<tr class="separator:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST Handler.  <a href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">More...</a><br /></td></tr>
+<tr class="separator:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> DELETE Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">More...</a><br /></td></tr>
+<tr class="separator:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PATCH Handler.  <a href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">More...</a><br /></td></tr>
+<tr class="separator:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> OPTIONS Handler.  <a href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">More...</a><br /></td></tr>
+<tr class="separator:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> HEAD Handler.  <a href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">More...</a><br /></td></tr>
+<tr class="separator:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::exception &amp;exception, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Exception handler.  <a href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">More...</a><br /></td></tr>
+<tr class="separator:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a4fa228a217778ee48c592fe0272aaacf"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td></tr>
+<tr class="memdesc:a4fa228a217778ee48c592fe0272aaacf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Children Map.  <a href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">More...</a><br /></td></tr>
+<tr class="separator:a4fa228a217778ee48c592fe0272aaacf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1992c267233cec3b17bc70038d1d84b"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td></tr>
+<tr class="memdesc:af1992c267233cec3b17bc70038d1d84b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parent Pointer.  <a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">More...</a><br /></td></tr>
+<tr class="separator:af1992c267233cec3b17bc70038d1d84b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcdcd6ceb94c7d14b0fce99461bb5e30"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td></tr>
+<tr class="memdesc:afcdcd6ceb94c7d14b0fce99461bb5e30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self Pointer.  <a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">More...</a><br /></td></tr>
+<tr class="separator:afcdcd6ceb94c7d14b0fce99461bb5e30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8676609fe497118147e31b25958d5104"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td></tr>
+<tr class="memdesc:a8676609fe497118147e31b25958d5104"><td class="mdescLeft">&#160;</td><td class="mdescRight">Local UUID.  <a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">More...</a><br /></td></tr>
+<tr class="separator:a8676609fe497118147e31b25958d5104"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae80d2c6c5f2577aa5a8489f2c0c352e8"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td></tr>
+<tr class="memdesc:ae80d2c6c5f2577aa5a8489f2c0c352e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name.  <a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">More...</a><br /></td></tr>
+<tr class="separator:ae80d2c6c5f2577aa5a8489f2c0c352e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaef3cdce55ced857a81ba285afc92ed9"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td></tr>
+<tr class="memdesc:aaef3cdce55ced857a81ba285afc92ed9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Description.  <a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">More...</a><br /></td></tr>
+<tr class="separator:aaef3cdce55ced857a81ba285afc92ed9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad89fecb69de794e7b918767d5f21027d"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td></tr>
+<tr class="memdesc:ad89fecb69de794e7b918767d5f21027d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ontology identifier.  <a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">More...</a><br /></td></tr>
+<tr class="separator:ad89fecb69de794e7b918767d5f21027d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc29676fd98e4c6b7ab004514c175b7c"><td class="memItemLeft" align="right" valign="top">std::recursive_mutex&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td></tr>
+<tr class="memdesc:afc29676fd98e4c6b7ab004514c175b7c"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> Mutex.  <a href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">More...</a><br /></td></tr>
+<tr class="separator:afc29676fd98e4c6b7ab004514c175b7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_static_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">static web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request Info.  <a href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">More...</a><br /></td></tr>
+<tr class="separator:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a> (<a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> &amp;response)</td></tr>
+<tr class="memdesc:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply headers.  <a href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">More...</a><br /></td></tr>
+<tr class="separator:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::vector&lt; web::http::method &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td></tr>
+<tr class="memdesc:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed methods.  <a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">More...</a><br /></td></tr>
+<tr class="separator:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td></tr>
+<tr class="memdesc:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Content type.  <a href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">More...</a><br /></td></tr>
+<tr class="separator:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td></tr>
+<tr class="memdesc:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed Origins.  <a href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">More...</a><br /></td></tr>
+<tr class="separator:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p ><a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> is the base class of <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a>, <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> and <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a>. It is the first class that inherits from <a class="el" href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class.">HTTP::Resource</a>. It contains the main implementation of the business logic for building the <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> tree, i.e. managing child items and resolving absolute and relative parths. It also provides common base class which can be used for generic pointer in C++. </p>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00023">23</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ae31b32fb944a138ac955e07a5be9d652" name="ae31b32fb944a138ac955e07a5be9d652"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae31b32fb944a138ac955e07a5be9d652">&#9670;&nbsp;</a></span>Element()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Element::Element </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default constructor for <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> elements, to be called from derived classes. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>Shared pointer to parent object. Can be set to NULL for the creation of a root object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00005">5</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a4acd9dc20ed4e0926da2ba7e4a5af7ab" name="a4acd9dc20ed4e0926da2ba7e4a5af7ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4acd9dc20ed4e0926da2ba7e4a5af7ab">&#9670;&nbsp;</a></span>~Element()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Element::~Element </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Destructor for <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>, which is declared virtual such that <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> pointers can be used to delete instances of derived types. When an <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> is deleted in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a>, all references to the child objects are cleared. </p><dl class="section post"><dt>Postcondition</dt><dd>If the parent element was the last instance to contain shared pointers to the child elements, their lifecycle will end with this operation. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00019">19</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a90aba7aaad7c5e9695b239480e95cea3" name="a90aba7aaad7c5e9695b239480e95cea3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a90aba7aaad7c5e9695b239480e95cea3">&#9670;&nbsp;</a></span>add() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a> &gt; SOIL::Element::add </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *&#160;</td>
+          <td class="paramname"><em>child</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Inserts a child to this element. Children are always managed as shared pointers, i.e. no object is copied. This version takes a raw pointer (as e.g. returned by <code>new</code>) and internally makes a shared pointer. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>UUID to assign to the child, which also acts as internal identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">child</td><td>Pointer to the element </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Shared pointer to child element </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00086">86</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a682f8e3123f99f13545db06e15a896bb" name="a682f8e3123f99f13545db06e15a896bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a682f8e3123f99f13545db06e15a896bb">&#9670;&nbsp;</a></span>add() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a> &gt; SOIL::Element::add </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>child</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Inserts a child to this element. Children are always managed as shared pointers, i.e. no object is copied. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>UUID to assign to the child, which also acts as internal identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">child</td><td>Shared pointer to the element </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Shared pointer to child element </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00079">79</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a6ef3653a14ca3245c529684e939b122d" name="a6ef3653a14ca3245c529684e939b122d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ef3653a14ca3245c529684e939b122d">&#9670;&nbsp;</a></span>cast()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">T * SOIL::Element::cast </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Dynamically casts the stored element reference to a given type. This useful for casting pointers to derived classes of which the type is known.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Dervied type to cast to. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Raw pointer </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00264">264</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+
+</div>
+</div>
+<a id="ad0dff9864321178e13df316f1b317bcb" name="ad0dff9864321178e13df316f1b317bcb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad0dff9864321178e13df316f1b317bcb">&#9670;&nbsp;</a></span>fqid()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; std::string &gt; SOIL::Element::fqid </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructs the FQID of the element by concatenating the UUIDs of the parent elements </p><dl class="section return"><dt>Returns</dt><dd>FQID string separated by / </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00026">26</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a0f046d3e28928e07013a07b7e5b8e5a2" name="a0f046d3e28928e07013a07b7e5b8e5a2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0f046d3e28928e07013a07b7e5b8e5a2">&#9670;&nbsp;</a></span>handle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> SOIL::Element::handle </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>request</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handles an incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as resource. It determines the correct child item (or the itdem itself) and than calls the handler of the <a class="el" href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class.">HTTP::Resource</a> base clase. The arguments are directly passed on to the latter. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00155">155</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ad0d80de0520ce5366067512e07068e1e" name="ad0d80de0520ce5366067512e07068e1e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad0d80de0520ce5366067512e07068e1e">&#9670;&nbsp;</a></span>insert() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Element::insert </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *&#160;</td>
+          <td class="paramname"><em>child</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Alias to add provide compatibilty to prior versions. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000004">Todo:</a></b></dt><dd>Remove in future versions. This version takes a raw pointer (as e.g. returned by <code>new</code>) and internally makes a shared pointer. </dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>UUID to assign to the child, which also acts as internal identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">child</td><td>Pointer to the element </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>True if the element previously already existed. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00098">98</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a06d51f457b4412d64c3980a377fbc9f0" name="a06d51f457b4412d64c3980a377fbc9f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a06d51f457b4412d64c3980a377fbc9f0">&#9670;&nbsp;</a></span>insert() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Element::insert </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>child</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Alias to add provide compatibilty to prior versions. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>Remove in future versions. </dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>UUID to assign to the child, which also acts as internal identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">child</td><td>Shared pointer to the element </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>True if the element previously already existed. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00091">91</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aaa82810e11265c4a890246f633fe4fc7" name="aaa82810e11265c4a890246f633fe4fc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa82810e11265c4a890246f633fe4fc7">&#9670;&nbsp;</a></span>is_function()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Element::is_function </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Determines whether the element actually is a function. Internally, the prefix FUN- of the UUID is checked for this purpose. This function is typically used before dynamic casts. </p><dl class="section return"><dt>Returns</dt><dd>Boolean response whether the element is a function. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00120">120</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a8bd2f333fbe5c1b51218512c3ef8c9b3" name="a8bd2f333fbe5c1b51218512c3ef8c9b3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8bd2f333fbe5c1b51218512c3ef8c9b3">&#9670;&nbsp;</a></span>is_object()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Element::is_object </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Determines whether the element actually is an object. Internally, the prefix OBJ- of the UUID is checked for this purpose. This function is typically used before dynamic casts. </p><dl class="section return"><dt>Returns</dt><dd>Boolean response whether the element is an object. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00110">110</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a4c20dd71ee68dd4823e32aa3868f337b" name="a4c20dd71ee68dd4823e32aa3868f337b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c20dd71ee68dd4823e32aa3868f337b">&#9670;&nbsp;</a></span>is_parameter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Element::is_parameter </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Determines whether the element actually is a parameter. Internally, the prefix PAR- of the UUID is checked for this purpose. This function is typically used before dynamic casts. </p><dl class="section return"><dt>Returns</dt><dd>Boolean response whether the element is a parameter. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00125">125</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa035b89c623428f7d93b8b1da0ce1e49" name="aa035b89c623428f7d93b8b1da0ce1e49"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa035b89c623428f7d93b8b1da0ce1e49">&#9670;&nbsp;</a></span>is_variable()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Element::is_variable </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Determines whether the element actually is a variable. Internally, the prefix VAR- of the UUID is checked for this purpose. This function is typically used before dynamic casts. </p><dl class="section return"><dt>Returns</dt><dd>Boolean response whether the element is at. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00115">115</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ad55fc11662301ce186e593852a9425ce" name="ad55fc11662301ce186e593852a9425ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad55fc11662301ce186e593852a9425ce">&#9670;&nbsp;</a></span>json()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Element::json </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Get a JSON string corresponding to the current state of the element. This function internally useses <a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a" title="HTTP JSON.">wjson()</a> such that there is no need to override both methods in derived classes. </p><dl class="section return"><dt>Returns</dt><dd>JSON string </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00148">148</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a4704591e187b8bf5344979d095703239" name="a4704591e187b8bf5344979d095703239"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4704591e187b8bf5344979d095703239">&#9670;&nbsp;</a></span>operator[]()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a> &gt; SOIL::Element::operator[] </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>fqid</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Returns the child matching the relative FQID of the element. If the empty string is passed, the element itself is resturned.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::runtime_error</td><td>If no matching child is found, a runtime_error is thrown.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">fqid</td><td>Relative FQID of the element to retrieve </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Share pointer to the requested element </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00038">38</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ae32f6b04a96ff98acfe29f884177f22f" name="ae32f6b04a96ff98acfe29f884177f22f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae32f6b04a96ff98acfe29f884177f22f">&#9670;&nbsp;</a></span>remove()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Element::remove </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Removes an element from the children of this element. If the internal shared pointer is the last reference to this element, it will go out of scope. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>UUID to identify the element to remove </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>True if the element existed prior to deletion. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00103">103</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a9dd8b98ea77291d638408b123e68536a" name="a9dd8b98ea77291d638408b123e68536a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9dd8b98ea77291d638408b123e68536a">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> SOIL::Element::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Get a <a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON object corresponding to the current state of the element. This function is virtual as normally it should be specialized by <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> and <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a>. </p><dl class="section return"><dt>Returns</dt><dd>JSON object </dd></dl>
+
+<p>Reimplemented in <a class="el" href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">SOIL::Function</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">SOIL::Parameter&lt; T, x, y &gt;</a>, and <a class="el" href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">SOIL::Variable&lt; T, x, y &gt;</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_element_8cpp_source.html#l00130">130</a> of file <a class="el" href="_element_8cpp_source.html">Element.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a4fa228a217778ee48c592fe0272aaacf" name="a4fa228a217778ee48c592fe0272aaacf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4fa228a217778ee48c592fe0272aaacf">&#9670;&nbsp;</a></span>children</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;std::string, std::shared_ptr&lt;<a class="el" href="class_s_o_i_l_1_1_element.html">Element</a>&gt; &gt; SOIL::Element::children</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Map of child elements, which are referenced by means of shared pointers and identified by their local UUID in string form. </p>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00032">32</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+
+</div>
+</div>
+<a id="aaef3cdce55ced857a81ba285afc92ed9" name="aaef3cdce55ced857a81ba285afc92ed9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaef3cdce55ced857a81ba285afc92ed9">&#9670;&nbsp;</a></span>description</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Element::description</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Human-readable description of the element in string format. </p>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00067">67</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+
+</div>
+</div>
+<a id="afc29676fd98e4c6b7ab004514c175b7c" name="afc29676fd98e4c6b7ab004514c175b7c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc29676fd98e4c6b7ab004514c175b7c">&#9670;&nbsp;</a></span>mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::recursive_mutex SOIL::Element::mutex</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Recursive Mutex to provide thread safe access to <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> elements. </p>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00083">83</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+
+</div>
+</div>
+<a id="ae80d2c6c5f2577aa5a8489f2c0c352e8" name="ae80d2c6c5f2577aa5a8489f2c0c352e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae80d2c6c5f2577aa5a8489f2c0c352e8">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Element::name</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Human-readable name of the element in string format. </p>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00060">60</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+
+</div>
+</div>
+<a id="ad89fecb69de794e7b918767d5f21027d" name="ad89fecb69de794e7b918767d5f21027d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad89fecb69de794e7b918767d5f21027d">&#9670;&nbsp;</a></span>ontology</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Element::ontology</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Ontology identifier, can be set to null if no ontology is followed</p>
+<dl class="section pre"><dt>Precondition</dt><dd>Referencing to an ontology prerequisites that an ontology in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> format has been declared elsewhere. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00076">76</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+
+</div>
+</div>
+<a id="af1992c267233cec3b17bc70038d1d84b" name="af1992c267233cec3b17bc70038d1d84b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af1992c267233cec3b17bc70038d1d84b">&#9670;&nbsp;</a></span>parent</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;<a class="el" href="class_s_o_i_l_1_1_element.html">Element</a>&gt; SOIL::Element::parent</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Shared pointer reference to the parent element. </p>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00039">39</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+
+</div>
+</div>
+<a id="afcdcd6ceb94c7d14b0fce99461bb5e30" name="afcdcd6ceb94c7d14b0fce99461bb5e30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afcdcd6ceb94c7d14b0fce99461bb5e30">&#9670;&nbsp;</a></span>self</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt;<a class="el" href="class_s_o_i_l_1_1_element.html">Element</a>&gt; SOIL::Element::self</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Shared pointer reference to the element itself. </p>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00046">46</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+
+</div>
+</div>
+<a id="a8676609fe497118147e31b25958d5104" name="a8676609fe497118147e31b25958d5104"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8676609fe497118147e31b25958d5104">&#9670;&nbsp;</a></span>uuid</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Element::uuid</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Locally unique identifier of the object, which must start with OBJ-, FUN-, PAR-, or VAR- depending on the type. </p>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00053">53</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SOIL/<a class="el" href="_element_8h_source.html">Element.h</a></li>
+<li>src/SOIL/<a class="el" href="_element_8cpp_source.html">Element.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_element.html">Element</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_element.js b/doc/html/class_s_o_i_l_1_1_element.js
new file mode 100644
index 0000000000000000000000000000000000000000..51a1bc63a55678e96536ac84d8cc888c0d2666a1
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_element.js
@@ -0,0 +1,28 @@
+var class_s_o_i_l_1_1_element =
+[
+    [ "Element", "class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652", null ],
+    [ "~Element", "class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab", null ],
+    [ "add", "class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3", null ],
+    [ "add", "class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb", null ],
+    [ "cast", "class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d", null ],
+    [ "fqid", "class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb", null ],
+    [ "handle", "class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2", null ],
+    [ "insert", "class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e", null ],
+    [ "insert", "class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0", null ],
+    [ "is_function", "class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7", null ],
+    [ "is_object", "class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3", null ],
+    [ "is_parameter", "class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b", null ],
+    [ "is_variable", "class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49", null ],
+    [ "json", "class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce", null ],
+    [ "operator[]", "class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239", null ],
+    [ "remove", "class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f", null ],
+    [ "wjson", "class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a", null ],
+    [ "children", "class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf", null ],
+    [ "description", "class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9", null ],
+    [ "mutex", "class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c", null ],
+    [ "name", "class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8", null ],
+    [ "ontology", "class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d", null ],
+    [ "parent", "class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b", null ],
+    [ "self", "class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30", null ],
+    [ "uuid", "class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_element.png b/doc/html/class_s_o_i_l_1_1_element.png
new file mode 100644
index 0000000000000000000000000000000000000000..7dd5bebbe9e5b659f60f606fa0713946ff56bfd7
Binary files /dev/null and b/doc/html/class_s_o_i_l_1_1_element.png differ
diff --git a/doc/html/class_s_o_i_l_1_1_enum-members.html b/doc/html/class_s_o_i_l_1_1_enum-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..945c6661c026ad43288e9d39cf741a727eedcd22
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_enum-members.html
@@ -0,0 +1,111 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_enum.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Enum Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a">choices</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1">Enum</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html#a30718fd8e647815e78b1a0b63d878fd8">Enum</a>(std::string value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html#a8bb7c616cb01a03df35a73a4dd5edd34">Enum</a>(std::string value, std::vector&lt; std::string &gt; choices)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0">index</a>() const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html#a2809b4d4200d001b62a5d3bd5d1aa04c">index</a>(std::string value) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">selected</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41">set</a>(int value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html#a18e004d4a882a61c94a902a3330014e2">set</a>(std::string value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867">~Enum</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_enum.html b/doc/html/class_s_o_i_l_1_1_enum.html
new file mode 100644
index 0000000000000000000000000000000000000000..6be21c3e45aa80fa7db8cfc0171d048c5de60136
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_enum.html
@@ -0,0 +1,419 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Enum Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_enum.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_s_o_i_l_1_1_enum-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Enum Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> Datatype.  
+ <a href="class_s_o_i_l_1_1_enum.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_enum_8h_source.html">Enum.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a21bc467860d215a091d9f0d09b7223a1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1">Enum</a> ()</td></tr>
+<tr class="memdesc:a21bc467860d215a091d9f0d09b7223a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1">More...</a><br /></td></tr>
+<tr class="separator:a21bc467860d215a091d9f0d09b7223a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30718fd8e647815e78b1a0b63d878fd8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html#a30718fd8e647815e78b1a0b63d878fd8">Enum</a> (std::string value)</td></tr>
+<tr class="memdesc:a30718fd8e647815e78b1a0b63d878fd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor intialized with value.  <a href="class_s_o_i_l_1_1_enum.html#a30718fd8e647815e78b1a0b63d878fd8">More...</a><br /></td></tr>
+<tr class="separator:a30718fd8e647815e78b1a0b63d878fd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bb7c616cb01a03df35a73a4dd5edd34"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html#a8bb7c616cb01a03df35a73a4dd5edd34">Enum</a> (std::string value, std::vector&lt; std::string &gt; <a class="el" href="class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a">choices</a>)</td></tr>
+<tr class="memdesc:a8bb7c616cb01a03df35a73a4dd5edd34"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializing <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a>.  <a href="class_s_o_i_l_1_1_enum.html#a8bb7c616cb01a03df35a73a4dd5edd34">More...</a><br /></td></tr>
+<tr class="separator:a8bb7c616cb01a03df35a73a4dd5edd34"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac25e85a1e15c6d2eb25565d6a362d867"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867">~Enum</a> ()</td></tr>
+<tr class="memdesc:ac25e85a1e15c6d2eb25565d6a362d867"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867">More...</a><br /></td></tr>
+<tr class="separator:ac25e85a1e15c6d2eb25565d6a362d867"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa02862d7713c094d7ae5819eab23765f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">selected</a> (void) const</td></tr>
+<tr class="memdesc:aa02862d7713c094d7ae5819eab23765f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get selected value.  <a href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">More...</a><br /></td></tr>
+<tr class="separator:aa02862d7713c094d7ae5819eab23765f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad670fac86700dfca33f3fe79cc27602a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a">choices</a> (void)</td></tr>
+<tr class="memdesc:ad670fac86700dfca33f3fe79cc27602a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Choices.  <a href="class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a">More...</a><br /></td></tr>
+<tr class="separator:ad670fac86700dfca33f3fe79cc27602a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac84d64e172ea5cbecf0e441c787872e0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0">index</a> () const</td></tr>
+<tr class="memdesc:ac84d64e172ea5cbecf0e441c787872e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get index of selected element.  <a href="class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0">More...</a><br /></td></tr>
+<tr class="separator:ac84d64e172ea5cbecf0e441c787872e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2809b4d4200d001b62a5d3bd5d1aa04c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html#a2809b4d4200d001b62a5d3bd5d1aa04c">index</a> (std::string value) const</td></tr>
+<tr class="memdesc:a2809b4d4200d001b62a5d3bd5d1aa04c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine index of value.  <a href="class_s_o_i_l_1_1_enum.html#a2809b4d4200d001b62a5d3bd5d1aa04c">More...</a><br /></td></tr>
+<tr class="separator:a2809b4d4200d001b62a5d3bd5d1aa04c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20887b8fedec14630adfda595d117a41"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41">set</a> (int value)</td></tr>
+<tr class="memdesc:a20887b8fedec14630adfda595d117a41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set selected item (index)  <a href="class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41">More...</a><br /></td></tr>
+<tr class="separator:a20887b8fedec14630adfda595d117a41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18e004d4a882a61c94a902a3330014e2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html#a18e004d4a882a61c94a902a3330014e2">set</a> (std::string value)</td></tr>
+<tr class="memdesc:a18e004d4a882a61c94a902a3330014e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set selected item (value)  <a href="class_s_o_i_l_1_1_enum.html#a18e004d4a882a61c94a902a3330014e2">More...</a><br /></td></tr>
+<tr class="separator:a18e004d4a882a61c94a902a3330014e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >C++ class to represent the <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> datatype. Internally it is based on strings. </p>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8h_source.html#l00015">15</a> of file <a class="el" href="_enum_8h_source.html">Enum.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a21bc467860d215a091d9f0d09b7223a1" name="a21bc467860d215a091d9f0d09b7223a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a21bc467860d215a091d9f0d09b7223a1">&#9670;&nbsp;</a></span>Enum() <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Enum::Enum </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard constructor which leaves everything uninitialized. </p>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00004">4</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a30718fd8e647815e78b1a0b63d878fd8" name="a30718fd8e647815e78b1a0b63d878fd8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a30718fd8e647815e78b1a0b63d878fd8">&#9670;&nbsp;</a></span>Enum() <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Enum::Enum </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor that initializes the enumeration with a selected value.</p>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000005">Todo:</a></b></dt><dd>Check whether this constructor is still meaningful in future releases. Usage is not recommended. </dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value for initialization </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00008">8</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a8bb7c616cb01a03df35a73a4dd5edd34" name="a8bb7c616cb01a03df35a73a4dd5edd34"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8bb7c616cb01a03df35a73a4dd5edd34">&#9670;&nbsp;</a></span>Enum() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Enum::Enum </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>value</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::vector&lt; std::string &gt;&#160;</td>
+          <td class="paramname"><em>choices</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor that initializes the enumeration with choices and a value.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value for initialization </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">choices</td><td>Applicable set of choices for the enumeration </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00012">12</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ac25e85a1e15c6d2eb25565d6a362d867" name="ac25e85a1e15c6d2eb25565d6a362d867"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac25e85a1e15c6d2eb25565d6a362d867">&#9670;&nbsp;</a></span>~Enum()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Enum::~Enum </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard destructor without special efforts. </p>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00017">17</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ad670fac86700dfca33f3fe79cc27602a" name="ad670fac86700dfca33f3fe79cc27602a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad670fac86700dfca33f3fe79cc27602a">&#9670;&nbsp;</a></span>choices()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; std::string &gt; SOIL::Enum::choices </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Get the choices that are available for this enumeration. </p><dl class="section return"><dt>Returns</dt><dd>Available choices as vector of strings </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00026">26</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ac84d64e172ea5cbecf0e441c787872e0" name="ac84d64e172ea5cbecf0e441c787872e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac84d64e172ea5cbecf0e441c787872e0">&#9670;&nbsp;</a></span>index() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int SOIL::Enum::index </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Traversed the vector of choices and return the index of the current element. </p><dl class="section return"><dt>Returns</dt><dd>Index of the selected element </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00031">31</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a2809b4d4200d001b62a5d3bd5d1aa04c" name="a2809b4d4200d001b62a5d3bd5d1aa04c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2809b4d4200d001b62a5d3bd5d1aa04c">&#9670;&nbsp;</a></span>index() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int SOIL::Enum::index </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Converts a string value to its integer value. This function is useful when interacting with C++ ENUMs consisting of integers.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::logic_error</td><td>If the value is not found, an exception is thrown.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to search </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Index of the searched value </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00043">43</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa02862d7713c094d7ae5819eab23765f" name="aa02862d7713c094d7ae5819eab23765f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa02862d7713c094d7ae5819eab23765f">&#9670;&nbsp;</a></span>selected()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Enum::selected </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Get the value that the enum currently holds as selected. </p><dl class="section return"><dt>Returns</dt><dd>Current value </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00021">21</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a20887b8fedec14630adfda595d117a41" name="a20887b8fedec14630adfda595d117a41"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20887b8fedec14630adfda595d117a41">&#9670;&nbsp;</a></span>set() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SOIL::Enum::set </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Set the currently selected item the enumeration holds based on its integer index.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::logic_error</td><td>If the index exceeds the number of choices, an exception is thrown.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Index of the value to set </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00055">55</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a18e004d4a882a61c94a902a3330014e2" name="a18e004d4a882a61c94a902a3330014e2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18e004d4a882a61c94a902a3330014e2">&#9670;&nbsp;</a></span>set() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SOIL::Enum::set </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Set the currently selected item the enumeration holds based on a string value.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::logic_error</td><td>If the value is not among the choices, an exception is thrown.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to set </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_enum_8cpp_source.html#l00067">67</a> of file <a class="el" href="_enum_8cpp_source.html">Enum.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SOIL/<a class="el" href="_enum_8h_source.html">Enum.h</a></li>
+<li>src/SOIL/<a class="el" href="_enum_8cpp_source.html">Enum.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_enum.html">Enum</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_enum.js b/doc/html/class_s_o_i_l_1_1_enum.js
new file mode 100644
index 0000000000000000000000000000000000000000..9818a5438e977c2441b5a2862b2fc9c24214f94c
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_enum.js
@@ -0,0 +1,13 @@
+var class_s_o_i_l_1_1_enum =
+[
+    [ "Enum", "class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1", null ],
+    [ "Enum", "class_s_o_i_l_1_1_enum.html#a30718fd8e647815e78b1a0b63d878fd8", null ],
+    [ "Enum", "class_s_o_i_l_1_1_enum.html#a8bb7c616cb01a03df35a73a4dd5edd34", null ],
+    [ "~Enum", "class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867", null ],
+    [ "choices", "class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a", null ],
+    [ "index", "class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0", null ],
+    [ "index", "class_s_o_i_l_1_1_enum.html#a2809b4d4200d001b62a5d3bd5d1aa04c", null ],
+    [ "selected", "class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f", null ],
+    [ "set", "class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41", null ],
+    [ "set", "class_s_o_i_l_1_1_enum.html#a18e004d4a882a61c94a902a3330014e2", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_figure-members.html b/doc/html/class_s_o_i_l_1_1_figure-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..5edd07e7f51ab179765b652735ea9bd813b498e4
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_figure-members.html
@@ -0,0 +1,157 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_figure.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Figure&lt; T, x, y &gt; Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a>(Response &amp;response)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">cast</a>(T value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">SOIL::Element::cast</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">check_range</a>(const Container&lt; T, x, y &gt; &amp;value) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">Figure</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a>(HTTP::Request request, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a>(Request message, std::exception &amp;exception, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">handle_get</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">operator*</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">operator=</a>(const Container&lt; T, x, y &gt; &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a>(std::string fqid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">read</a>(void)=0</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a>(std::string uuid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">set_range</a>(Range&lt; T &gt; range)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">set_time</a>(TIME time)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">set_value</a>(const Container&lt; T, x, y &gt; &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">update</a>(const Container&lt; T, x, y &gt; &amp;value, TIME time)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">wjson</a>(void) override</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">write</a>(void)=0</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">~Figure</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_figure.html b/doc/html/class_s_o_i_l_1_1_figure.html
new file mode 100644
index 0000000000000000000000000000000000000000..57245bb4f005504430ef2a2945b44edc09466ee2
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_figure.html
@@ -0,0 +1,894 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Figure&lt; T, x, y &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_figure.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="class_s_o_i_l_1_1_figure-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Figure&lt; T, x, y &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Intermediate class for <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> that derives from <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  
+ <a href="class_s_o_i_l_1_1_figure.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_figure_8h_source.html">Figure.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for SOIL::Figure&lt; T, x, y &gt;:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_s_o_i_l_1_1_figure.png" usemap="#SOIL::Figure_3C_20T_2C_20x_2C_20y_20_3E_map" alt=""/>
+  <map id="SOIL::Figure_3C_20T_2C_20x_2C_20y_20_3E_map" name="SOIL::Figure_3C_20T_2C_20x_2C_20y_20_3E_map">
+<area href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element." alt="SOIL::Element" shape="rect" coords="0,56,145,80"/>
+<area href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class." alt="HTTP::Resource" shape="rect" coords="0,0,145,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a8da920bd367b9a6ee8b70fcfa1f709ac"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">Figure</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;, <a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>=<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;(), <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>=<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>())</td></tr>
+<tr class="memdesc:a8da920bd367b9a6ee8b70fcfa1f709ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">More...</a><br /></td></tr>
+<tr class="separator:a8da920bd367b9a6ee8b70fcfa1f709ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f20334aa82abbb7d0e9d2322e5683d0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">~Figure</a> ()</td></tr>
+<tr class="memdesc:a1f20334aa82abbb7d0e9d2322e5683d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">More...</a><br /></td></tr>
+<tr class="separator:a1f20334aa82abbb7d0e9d2322e5683d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e4d6c93a559d5e18178de9a79b472ec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_figure.html">Figure</a>&lt; T, x, y &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">operator=</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a4e4d6c93a559d5e18178de9a79b472ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator.  <a href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">More...</a><br /></td></tr>
+<tr class="separator:a4e4d6c93a559d5e18178de9a79b472ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb3fe4e331a9a5f2f53b011309d6c937"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">operator*</a> (void)</td></tr>
+<tr class="memdesc:abb3fe4e331a9a5f2f53b011309d6c937"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access Operator.  <a href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">More...</a><br /></td></tr>
+<tr class="separator:abb3fe4e331a9a5f2f53b011309d6c937"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf9b99da1c712f54d758c492830a7566"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">check_range</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>) const</td></tr>
+<tr class="memdesc:aaf9b99da1c712f54d758c492830a7566"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check range.  <a href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">More...</a><br /></td></tr>
+<tr class="separator:aaf9b99da1c712f54d758c492830a7566"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af096fd3a66cdc35d18a1cbbf637dddf9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">set_range</a> (<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>)</td></tr>
+<tr class="memdesc:af096fd3a66cdc35d18a1cbbf637dddf9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a>.  <a href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">More...</a><br /></td></tr>
+<tr class="separator:af096fd3a66cdc35d18a1cbbf637dddf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab47f2268fb3f31960ab7bc8473974b3e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">set_time</a> (<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>)</td></tr>
+<tr class="memdesc:ab47f2268fb3f31960ab7bc8473974b3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a>.  <a href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">More...</a><br /></td></tr>
+<tr class="separator:ab47f2268fb3f31960ab7bc8473974b3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a358a1060f3f04ea4aa1cb0b7705af4d9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">set_value</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a358a1060f3f04ea4aa1cb0b7705af4d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Value.  <a href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">More...</a><br /></td></tr>
+<tr class="separator:a358a1060f3f04ea4aa1cb0b7705af4d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca02467b79b6d4a9590553b612876b20"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">wjson</a> (void) override</td></tr>
+<tr class="memdesc:aca02467b79b6d4a9590553b612876b20"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">More...</a><br /></td></tr>
+<tr class="separator:aca02467b79b6d4a9590553b612876b20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cebd6af4116112bb244b1444aa3a1da"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">cast</a> (T <a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a6cebd6af4116112bb244b1444aa3a1da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cast to container.  <a href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">More...</a><br /></td></tr>
+<tr class="separator:a6cebd6af4116112bb244b1444aa3a1da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65998054544cd71fdb47c0b1b956e883"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">update</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>, <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>)</td></tr>
+<tr class="memdesc:a65998054544cd71fdb47c0b1b956e883"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update.  <a href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">More...</a><br /></td></tr>
+<tr class="separator:a65998054544cd71fdb47c0b1b956e883"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_s_o_i_l_1_1_element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_s_o_i_l_1_1_element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memitem:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">More...</a><br /></td></tr>
+<tr class="separator:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a> ()</td></tr>
+<tr class="memdesc:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">More...</a><br /></td></tr>
+<tr class="separator:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a> (void)</td></tr>
+<tr class="memdesc:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">FQID.  <a href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">More...</a><br /></td></tr>
+<tr class="separator:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>)</td></tr>
+<tr class="memdesc:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access Operator.  <a href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">More...</a><br /></td></tr>
+<tr class="separator:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">More...</a><br /></td></tr>
+<tr class="separator:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">More...</a><br /></td></tr>
+<tr class="separator:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">More...</a><br /></td></tr>
+<tr class="separator:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">More...</a><br /></td></tr>
+<tr class="separator:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>)</td></tr>
+<tr class="memdesc:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove Child element.  <a href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">More...</a><br /></td></tr>
+<tr class="separator:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memTemplItemLeft" align="right" valign="top">T *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">cast</a> (void)</td></tr>
+<tr class="memdesc:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dynamically casted pointer.  <a href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">More...</a><br /></td></tr>
+<tr class="separator:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a> (void) const</td></tr>
+<tr class="memdesc:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a>?  <a href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">More...</a><br /></td></tr>
+<tr class="separator:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a> (void) const</td></tr>
+<tr class="memdesc:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a>?  <a href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">More...</a><br /></td></tr>
+<tr class="separator:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a> (void) const</td></tr>
+<tr class="memdesc:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a>?  <a href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">More...</a><br /></td></tr>
+<tr class="separator:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a> (void) const</td></tr>
+<tr class="memdesc:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>?  <a href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">More...</a><br /></td></tr>
+<tr class="separator:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">wjson</a> (void)</td></tr>
+<tr class="memdesc:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">More...</a><br /></td></tr>
+<tr class="separator:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a> (void)</td></tr>
+<tr class="memdesc:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON string.  <a href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">More...</a><br /></td></tr>
+<tr class="separator:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">More...</a><br /></td></tr>
+<tr class="separator:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a> ()</td></tr>
+<tr class="memdesc:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">More...</a><br /></td></tr>
+<tr class="separator:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a> ()</td></tr>
+<tr class="memdesc:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Destructor.  <a href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">More...</a><br /></td></tr>
+<tr class="separator:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">More...</a><br /></td></tr>
+<tr class="separator:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">More...</a><br /></td></tr>
+<tr class="separator:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PUT Handler.  <a href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">More...</a><br /></td></tr>
+<tr class="separator:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST Handler.  <a href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">More...</a><br /></td></tr>
+<tr class="separator:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> DELETE Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">More...</a><br /></td></tr>
+<tr class="separator:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PATCH Handler.  <a href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">More...</a><br /></td></tr>
+<tr class="separator:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> OPTIONS Handler.  <a href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">More...</a><br /></td></tr>
+<tr class="separator:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> HEAD Handler.  <a href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">More...</a><br /></td></tr>
+<tr class="separator:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::exception &amp;exception, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Exception handler.  <a href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">More...</a><br /></td></tr>
+<tr class="separator:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a6dc0dda3c135fb3512486192a52e0f8b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">read</a> (void)=0</td></tr>
+<tr class="memdesc:a6dc0dda3c135fb3512486192a52e0f8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read callback.  <a href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">More...</a><br /></td></tr>
+<tr class="separator:a6dc0dda3c135fb3512486192a52e0f8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af07e6f343402f0f9280ede65d4b26fa0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">write</a> (void)=0</td></tr>
+<tr class="memdesc:af07e6f343402f0f9280ede65d4b26fa0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write callback.  <a href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">More...</a><br /></td></tr>
+<tr class="separator:af07e6f343402f0f9280ede65d4b26fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a> (<a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> &amp;response)</td></tr>
+<tr class="memdesc:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply headers.  <a href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">More...</a><br /></td></tr>
+<tr class="separator:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a8f320356ea837f06e439b74c2a22e81c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a></td></tr>
+<tr class="memdesc:a8f320356ea837f06e439b74c2a22e81c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data Timestamp.  <a href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">More...</a><br /></td></tr>
+<tr class="separator:a8f320356ea837f06e439b74c2a22e81c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a627d9d3386a719a6612ec3068812ea67"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a></td></tr>
+<tr class="memdesc:a627d9d3386a719a6612ec3068812ea67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unit.  <a href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">More...</a><br /></td></tr>
+<tr class="separator:a627d9d3386a719a6612ec3068812ea67"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97c7e2488708c155d366e2cdc1934c3b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a></td></tr>
+<tr class="memdesc:a97c7e2488708c155d366e2cdc1934c3b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Value.  <a href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">More...</a><br /></td></tr>
+<tr class="separator:a97c7e2488708c155d366e2cdc1934c3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab431dcf967cbfb8591b9128257595712"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a></td></tr>
+<tr class="memdesc:ab431dcf967cbfb8591b9128257595712"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a>.  <a href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">More...</a><br /></td></tr>
+<tr class="separator:ab431dcf967cbfb8591b9128257595712"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::vector&lt; web::http::method &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td></tr>
+<tr class="memdesc:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed methods.  <a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">More...</a><br /></td></tr>
+<tr class="separator:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td></tr>
+<tr class="memdesc:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Content type.  <a href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">More...</a><br /></td></tr>
+<tr class="separator:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td></tr>
+<tr class="memdesc:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed Origins.  <a href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">More...</a><br /></td></tr>
+<tr class="separator:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_static_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">static web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request Info.  <a href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">More...</a><br /></td></tr>
+<tr class="separator:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_attribs_class_s_o_i_l_1_1_element"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_class_s_o_i_l_1_1_element')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memitem:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td></tr>
+<tr class="memdesc:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Children Map.  <a href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">More...</a><br /></td></tr>
+<tr class="separator:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td></tr>
+<tr class="memdesc:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parent Pointer.  <a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">More...</a><br /></td></tr>
+<tr class="separator:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td></tr>
+<tr class="memdesc:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self Pointer.  <a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">More...</a><br /></td></tr>
+<tr class="separator:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td></tr>
+<tr class="memdesc:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Local UUID.  <a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">More...</a><br /></td></tr>
+<tr class="separator:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td></tr>
+<tr class="memdesc:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name.  <a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">More...</a><br /></td></tr>
+<tr class="separator:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td></tr>
+<tr class="memdesc:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Description.  <a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">More...</a><br /></td></tr>
+<tr class="separator:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td></tr>
+<tr class="memdesc:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ontology identifier.  <a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">More...</a><br /></td></tr>
+<tr class="separator:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::recursive_mutex&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td></tr>
+<tr class="memdesc:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> Mutex.  <a href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">More...</a><br /></td></tr>
+<tr class="separator:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><div class="compoundTemplParams">template&lt;typename T, int x = -1, int y = -1&gt;<br />
+class SOIL::Figure&lt; T, x, y &gt;</div><p >Intermediate class for <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> that derives from <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> as both share many properties. This class should not be instantianted directly and is abstract. The underlying data management completely relies on the templated <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> class, henace many templates are passed on.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data. </td></tr>
+    <tr><td class="paramname">x</td><td>First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if <code>y</code> is not -1. </td></tr>
+    <tr><td class="paramname">y</td><td>Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for <code>x</code> to be -1. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00048">48</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a8da920bd367b9a6ee8b70fcfa1f709ac" name="a8da920bd367b9a6ee8b70fcfa1f709ac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8da920bd367b9a6ee8b70fcfa1f709ac">&#9670;&nbsp;</a></span>Figure()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::Figure </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>unit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em> = <code><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt;T&gt;()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a>&#160;</td>
+          <td class="paramname"><em>time</em> = <code><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard constructor intialiazing the values which should be called from the constructor of deriving classes. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>Shared pointer to parent object. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">unit</td><td>UNECE unit code, e.g. MTR </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed </td></tr>
+    <tr><td class="paramdir"></td><td class="paramname">range</td><td>[in] Allowed range for the variable values, defaults to an empty object, i.e. allowing all values </td></tr>
+    <tr><td class="paramdir"></td><td class="paramname">time</td><td>[in] Timestamp for the initial value, defaults to unset </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00218">218</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="a1f20334aa82abbb7d0e9d2322e5683d0" name="a1f20334aa82abbb7d0e9d2322e5683d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1f20334aa82abbb7d0e9d2322e5683d0">&#9670;&nbsp;</a></span>~Figure()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::~<a class="el" href="class_s_o_i_l_1_1_figure.html">Figure</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default destructor, without custom effort. </p>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00223">223</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a6cebd6af4116112bb244b1444aa3a1da" name="a6cebd6af4116112bb244b1444aa3a1da"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6cebd6af4116112bb244b1444aa3a1da">&#9670;&nbsp;</a></span>cast()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, y &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::cast </td>
+          <td>(</td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Takes a value and returns the corresponding container </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to containerize </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> version</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000006">Todo:</a></b></dt><dd>This function seems error prone in the multidimensional case. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00248">248</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="aaf9b99da1c712f54d758c492830a7566" name="aaf9b99da1c712f54d758c492830a7566"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaf9b99da1c712f54d758c492830a7566">&#9670;&nbsp;</a></span>check_range()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::check_range </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Check if value expressed as container object matches the range specified for this <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a>. This may be useful prior to assignment to avoid exceptions. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to check </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>True if the value(s) is (are) in range, false else. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00278">278</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="abb3fe4e331a9a5f2f53b011309d6c937" name="abb3fe4e331a9a5f2f53b011309d6c937"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb3fe4e331a9a5f2f53b011309d6c937">&#9670;&nbsp;</a></span>operator*()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">SOIL::Container</a>&lt; T, x, y &gt; &amp; <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::operator* </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Access Operator returning the container of the value. </p><dl class="section return"><dt>Returns</dt><dd>Value container. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00271">271</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="a4e4d6c93a559d5e18178de9a79b472ec" name="a4e4d6c93a559d5e18178de9a79b472ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4e4d6c93a559d5e18178de9a79b472ec">&#9670;&nbsp;</a></span>operator=()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt; &amp; <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::operator= </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Assigns the value provided as container on the right hand side to the figure.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::range_error</td><td>Throws an exception if the value to assign is outside the allowed range.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to assign </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the current <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00259">259</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="a6dc0dda3c135fb3512486192a52e0f8b" name="a6dc0dda3c135fb3512486192a52e0f8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6dc0dda3c135fb3512486192a52e0f8b">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::read </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage. Declared virtual to make sure the derived method is called first. </p>
+
+<p>Implemented in <a class="el" href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d">SOIL::Parameter&lt; T, x, y &gt;</a>, and <a class="el" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7">SOIL::Variable&lt; T, x, y &gt;</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00254">254</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="af096fd3a66cdc35d18a1cbbf637dddf9" name="af096fd3a66cdc35d18a1cbbf637dddf9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af096fd3a66cdc35d18a1cbbf637dddf9">&#9670;&nbsp;</a></span>set_range()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::set_range </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Set the range property of this figure. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td><a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> to set </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00284">284</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="ab47f2268fb3f31960ab7bc8473974b3e" name="ab47f2268fb3f31960ab7bc8473974b3e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab47f2268fb3f31960ab7bc8473974b3e">&#9670;&nbsp;</a></span>set_time()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::set_time </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>&#160;</td>
+          <td class="paramname"><em>time</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Set the time property of this figure. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td><a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> to set </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00291">291</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="a358a1060f3f04ea4aa1cb0b7705af4d9" name="a358a1060f3f04ea4aa1cb0b7705af4d9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a358a1060f3f04ea4aa1cb0b7705af4d9">&#9670;&nbsp;</a></span>set_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::set_value </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Assigns the value provided as container. This is currently equivalent to the assignment operator.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::range_error</td><td>Throws an exception if the value to assign is outside the allowed range.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to assign </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00298">298</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="a65998054544cd71fdb47c0b1b956e883" name="a65998054544cd71fdb47c0b1b956e883"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65998054544cd71fdb47c0b1b956e883">&#9670;&nbsp;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::update </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td>
+          <td class="paramname"><em>value</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>&#160;</td>
+          <td class="paramname"><em>time</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Update the figure setting a new value and timestamp. This is common scenario when dealing with measurement data.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to set </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>Timestamp to assign </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00308">308</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="aca02467b79b6d4a9590553b612876b20" name="aca02467b79b6d4a9590553b612876b20"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca02467b79b6d4a9590553b612876b20">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Get a <a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON object corresponding to the current state of the <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a>. This function provides a partial representation of the SOIL-conformant JSON representation of <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> and may be called from their <code><a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20" title="HTTP JSON.">wjson()</a></code> methods. </p><dl class="section return"><dt>Returns</dt><dd>JSON object </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00229">229</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="af07e6f343402f0f9280ede65d4b26fa0" name="af07e6f343402f0f9280ede65d4b26fa0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af07e6f343402f0f9280ede65d4b26fa0">&#9670;&nbsp;</a></span>write()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::write </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Write callback that can be implemented by deriving classes to perform custom build logic on write actions, e.g.set a value to an external system. Declared virtual to make sure the derived method is called first. </p>
+
+<p>Implemented in <a class="el" href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c">SOIL::Parameter&lt; T, x, y &gt;</a>, and <a class="el" href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb">SOIL::Variable&lt; T, x, y &gt;</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="ab431dcf967cbfb8591b9128257595712" name="ab431dcf967cbfb8591b9128257595712"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab431dcf967cbfb8591b9128257595712">&#9670;&nbsp;</a></span>range</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt;T&gt; <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::range</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Allowed range for the figure, expressed using the therefore designed <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> class. </p>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00077">77</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="a8f320356ea837f06e439b74c2a22e81c" name="a8f320356ea837f06e439b74c2a22e81c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8f320356ea837f06e439b74c2a22e81c">&#9670;&nbsp;</a></span>time</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::time</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Timestamp of the data, i.e. the time which should be considered as physically related to the value. </p>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00056">56</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="a627d9d3386a719a6612ec3068812ea67" name="a627d9d3386a719a6612ec3068812ea67"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a627d9d3386a719a6612ec3068812ea67">&#9670;&nbsp;</a></span>unit</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::unit</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Unit of the stored value, expressed as UNECE code (e.g. MTR). </p>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00063">63</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<a id="a97c7e2488708c155d366e2cdc1934c3b" name="a97c7e2488708c155d366e2cdc1934c3b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97c7e2488708c155d366e2cdc1934c3b">&#9670;&nbsp;</a></span>value</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt;T, x, y&gt; <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure</a>&lt; T, x, y &gt;::value</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Actual value that is currently held by the figure, which is represented as conatiner. </p>
+
+<p class="definition">Definition at line <a class="el" href="_figure_8h_source.html#l00070">70</a> of file <a class="el" href="_figure_8h_source.html">Figure.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>src/SOIL/<a class="el" href="_figure_8h_source.html">Figure.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_figure.html">Figure</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_figure.js b/doc/html/class_s_o_i_l_1_1_figure.js
new file mode 100644
index 0000000000000000000000000000000000000000..14cb3f950ba37b42d4da406b88611b493d1e6308
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_figure.js
@@ -0,0 +1,20 @@
+var class_s_o_i_l_1_1_figure =
+[
+    [ "Figure", "class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac", null ],
+    [ "~Figure", "class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0", null ],
+    [ "cast", "class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da", null ],
+    [ "check_range", "class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566", null ],
+    [ "operator*", "class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937", null ],
+    [ "operator=", "class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec", null ],
+    [ "read", "class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b", null ],
+    [ "set_range", "class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9", null ],
+    [ "set_time", "class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e", null ],
+    [ "set_value", "class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9", null ],
+    [ "update", "class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883", null ],
+    [ "wjson", "class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20", null ],
+    [ "write", "class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0", null ],
+    [ "range", "class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712", null ],
+    [ "time", "class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c", null ],
+    [ "unit", "class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67", null ],
+    [ "value", "class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_figure.png b/doc/html/class_s_o_i_l_1_1_figure.png
new file mode 100644
index 0000000000000000000000000000000000000000..bd13809c9bead9a875a580954776ebb3ddab7564
Binary files /dev/null and b/doc/html/class_s_o_i_l_1_1_figure.png differ
diff --git a/doc/html/class_s_o_i_l_1_1_function-members.html b/doc/html/class_s_o_i_l_1_1_function-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..a13afaa414edbba73dadc5eaf87529525e88955c
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_function-members.html
@@ -0,0 +1,151 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_function.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Function Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">add_argument</a>(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range&lt; T &gt; range=SOIL::Range&lt; T &gt;(), std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#a6e6b923ef2cd3c534e831719ac6bbdb0">add_argument</a>(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range&lt; T &gt; range, const Container&lt; T, x, y &gt; &amp;default_value, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680">add_return</a>(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range&lt; T &gt; range=SOIL::Range&lt; T &gt;(), std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a>(Response &amp;response)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">cast</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6">create</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1">Function</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a>(HTTP::Request request, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a>(Request message, std::exception &amp;exception, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">handle_get</a>(HTTP::Request request, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">handle_post</a>(HTTP::Request request, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b">invoke</a>(std::map&lt; std::string, HTTP::Json &gt; arguments)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b">make_argument</a>(std::string uuid, HTTP::Json external_json)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46">make_return</a>(std::string uuid, Container&lt; T, x, y &gt; value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a>(std::string fqid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260">ptr</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a>(std::string uuid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">wjson</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec">~Function</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_function.html b/doc/html/class_s_o_i_l_1_1_function.html
new file mode 100644
index 0000000000000000000000000000000000000000..401121ed91e42bfad8fb919aa228d2f0f84230a0
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_function.html
@@ -0,0 +1,989 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Function Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_function.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="class_s_o_i_l_1_1_function-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Function Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> Class.  
+ <a href="class_s_o_i_l_1_1_function.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_function_8h_source.html">Function.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for SOIL::Function:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_s_o_i_l_1_1_function.png" usemap="#SOIL::Function_map" alt=""/>
+  <map id="SOIL::Function_map" name="SOIL::Function_map">
+<area href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element." alt="SOIL::Element" shape="rect" coords="0,56,103,80"/>
+<area href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class." alt="HTTP::Resource" shape="rect" coords="0,0,103,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:add2a16248e512d8efe813f2a27df73b1"><td class="memItemLeft" align="right" valign="top">DLL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1">Function</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:add2a16248e512d8efe813f2a27df73b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1">More...</a><br /></td></tr>
+<tr class="separator:add2a16248e512d8efe813f2a27df73b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8082d73f3dcb5567775dc2db5c291aec"><td class="memItemLeft" align="right" valign="top">DLL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec">~Function</a> ()</td></tr>
+<tr class="memdesc:a8082d73f3dcb5567775dc2db5c291aec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec">More...</a><br /></td></tr>
+<tr class="separator:a8082d73f3dcb5567775dc2db5c291aec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7705b93afa26a8a3d3012d88a9fea04d"><td class="memTemplParams" colspan="2">template&lt;typename T , int x = -1, int y = -1&gt; </td></tr>
+<tr class="memitem:a7705b93afa26a8a3d3012d88a9fea04d"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">add_argument</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string unit, <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt; range=<a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;(), std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:a7705b93afa26a8a3d3012d88a9fea04d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add argument.  <a href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">More...</a><br /></td></tr>
+<tr class="separator:a7705b93afa26a8a3d3012d88a9fea04d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e6b923ef2cd3c534e831719ac6bbdb0"><td class="memTemplParams" colspan="2">template&lt;typename T , int x = -1, int y = -1&gt; </td></tr>
+<tr class="memitem:a6e6b923ef2cd3c534e831719ac6bbdb0"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#a6e6b923ef2cd3c534e831719ac6bbdb0">add_argument</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string unit, <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt; range, const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;default_value, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:a6e6b923ef2cd3c534e831719ac6bbdb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add argument with default value.  <a href="class_s_o_i_l_1_1_function.html#a6e6b923ef2cd3c534e831719ac6bbdb0">More...</a><br /></td></tr>
+<tr class="separator:a6e6b923ef2cd3c534e831719ac6bbdb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3753d06d5d191ed95e63df56f51f680"><td class="memTemplParams" colspan="2">template&lt;typename T , int x = -1, int y = -1&gt; </td></tr>
+<tr class="memitem:ac3753d06d5d191ed95e63df56f51f680"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680">add_return</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string unit, <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt; range=<a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;(), std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:ac3753d06d5d191ed95e63df56f51f680"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add return value.  <a href="class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680">More...</a><br /></td></tr>
+<tr class="separator:ac3753d06d5d191ed95e63df56f51f680"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4cdaaf26db414f721aa0c79aaa38cd46"><td class="memTemplParams" colspan="2">template&lt;typename T , int x = -1, int y = -1&gt; </td></tr>
+<tr class="memitem:a4cdaaf26db414f721aa0c79aaa38cd46"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46">make_return</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; value)</td></tr>
+<tr class="memdesc:a4cdaaf26db414f721aa0c79aaa38cd46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make JSON Return.  <a href="class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46">More...</a><br /></td></tr>
+<tr class="separator:a4cdaaf26db414f721aa0c79aaa38cd46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a542306cc71842ef1fe4b13597a5b7d1b"><td class="memTemplParams" colspan="2">template&lt;typename T , int x = -1, int y = -1&gt; </td></tr>
+<tr class="memitem:a542306cc71842ef1fe4b13597a5b7d1b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b">make_argument</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> external_json)</td></tr>
+<tr class="memdesc:a542306cc71842ef1fe4b13597a5b7d1b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make Argument from JSON.  <a href="class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b">More...</a><br /></td></tr>
+<tr class="separator:a542306cc71842ef1fe4b13597a5b7d1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add97197a51b3c44f9eb873a23329983e"><td class="memItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">wjson</a> (void)</td></tr>
+<tr class="memdesc:add97197a51b3c44f9eb873a23329983e"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">More...</a><br /></td></tr>
+<tr class="separator:add97197a51b3c44f9eb873a23329983e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a636a905c115a1686caef9815c5b1aac9"><td class="memItemLeft" align="right" valign="top">virtual DLL <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a636a905c115a1686caef9815c5b1aac9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handle <a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET request.  <a href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">More...</a><br /></td></tr>
+<tr class="separator:a636a905c115a1686caef9815c5b1aac9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d0ba47fb669127afcbea1a3d192fe88"><td class="memItemLeft" align="right" valign="top">virtual DLL <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">handle_post</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a5d0ba47fb669127afcbea1a3d192fe88"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handle <a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST request.  <a href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">More...</a><br /></td></tr>
+<tr class="separator:a5d0ba47fb669127afcbea1a3d192fe88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4d8391f2f588a467502f0bf9c8c7c7b"><td class="memItemLeft" align="right" valign="top">virtual DLL std::map&lt; std::string, <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b">invoke</a> (std::map&lt; std::string, <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> &gt; arguments)</td></tr>
+<tr class="memdesc:ac4d8391f2f588a467502f0bf9c8c7c7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Core Invocation.  <a href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b">More...</a><br /></td></tr>
+<tr class="separator:ac4d8391f2f588a467502f0bf9c8c7c7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fb541cbb68722263ff8d7ab9628a260"><td class="memItemLeft" align="right" valign="top">DLL std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_function.html">Function</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260">ptr</a> (void)</td></tr>
+<tr class="memdesc:a3fb541cbb68722263ff8d7ab9628a260"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Pointer.  <a href="class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260">More...</a><br /></td></tr>
+<tr class="separator:a3fb541cbb68722263ff8d7ab9628a260"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_s_o_i_l_1_1_element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_s_o_i_l_1_1_element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memitem:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">More...</a><br /></td></tr>
+<tr class="separator:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a> ()</td></tr>
+<tr class="memdesc:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">More...</a><br /></td></tr>
+<tr class="separator:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a> (void)</td></tr>
+<tr class="memdesc:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">FQID.  <a href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">More...</a><br /></td></tr>
+<tr class="separator:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>)</td></tr>
+<tr class="memdesc:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access Operator.  <a href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">More...</a><br /></td></tr>
+<tr class="separator:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">More...</a><br /></td></tr>
+<tr class="separator:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">More...</a><br /></td></tr>
+<tr class="separator:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">More...</a><br /></td></tr>
+<tr class="separator:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">More...</a><br /></td></tr>
+<tr class="separator:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>)</td></tr>
+<tr class="memdesc:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove Child element.  <a href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">More...</a><br /></td></tr>
+<tr class="separator:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memTemplItemLeft" align="right" valign="top">T *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">cast</a> (void)</td></tr>
+<tr class="memdesc:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dynamically casted pointer.  <a href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">More...</a><br /></td></tr>
+<tr class="separator:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a> (void) const</td></tr>
+<tr class="memdesc:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a>?  <a href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">More...</a><br /></td></tr>
+<tr class="separator:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a> (void) const</td></tr>
+<tr class="memdesc:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a>?  <a href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">More...</a><br /></td></tr>
+<tr class="separator:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a> (void) const</td></tr>
+<tr class="memdesc:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a>?  <a href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">More...</a><br /></td></tr>
+<tr class="separator:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a> (void) const</td></tr>
+<tr class="memdesc:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>?  <a href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">More...</a><br /></td></tr>
+<tr class="separator:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">wjson</a> (void)</td></tr>
+<tr class="memdesc:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">More...</a><br /></td></tr>
+<tr class="separator:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a> (void)</td></tr>
+<tr class="memdesc:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON string.  <a href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">More...</a><br /></td></tr>
+<tr class="separator:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">More...</a><br /></td></tr>
+<tr class="separator:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a> ()</td></tr>
+<tr class="memdesc:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">More...</a><br /></td></tr>
+<tr class="separator:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a> ()</td></tr>
+<tr class="memdesc:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Destructor.  <a href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">More...</a><br /></td></tr>
+<tr class="separator:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">More...</a><br /></td></tr>
+<tr class="separator:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">More...</a><br /></td></tr>
+<tr class="separator:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PUT Handler.  <a href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">More...</a><br /></td></tr>
+<tr class="separator:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST Handler.  <a href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">More...</a><br /></td></tr>
+<tr class="separator:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> DELETE Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">More...</a><br /></td></tr>
+<tr class="separator:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PATCH Handler.  <a href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">More...</a><br /></td></tr>
+<tr class="separator:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> OPTIONS Handler.  <a href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">More...</a><br /></td></tr>
+<tr class="separator:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> HEAD Handler.  <a href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">More...</a><br /></td></tr>
+<tr class="separator:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::exception &amp;exception, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Exception handler.  <a href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">More...</a><br /></td></tr>
+<tr class="separator:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a50cf5e875bee2f192e04271642175bf6"><td class="memItemLeft" align="right" valign="top">static std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_function.html">Function</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6">create</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:a50cf5e875bee2f192e04271642175bf6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a>.  <a href="class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6">More...</a><br /></td></tr>
+<tr class="separator:a50cf5e875bee2f192e04271642175bf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_static_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">static web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request Info.  <a href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">More...</a><br /></td></tr>
+<tr class="separator:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_attribs_class_s_o_i_l_1_1_element"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_class_s_o_i_l_1_1_element')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memitem:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td></tr>
+<tr class="memdesc:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Children Map.  <a href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">More...</a><br /></td></tr>
+<tr class="separator:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td></tr>
+<tr class="memdesc:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parent Pointer.  <a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">More...</a><br /></td></tr>
+<tr class="separator:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td></tr>
+<tr class="memdesc:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self Pointer.  <a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">More...</a><br /></td></tr>
+<tr class="separator:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td></tr>
+<tr class="memdesc:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Local UUID.  <a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">More...</a><br /></td></tr>
+<tr class="separator:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td></tr>
+<tr class="memdesc:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name.  <a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">More...</a><br /></td></tr>
+<tr class="separator:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td></tr>
+<tr class="memdesc:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Description.  <a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">More...</a><br /></td></tr>
+<tr class="separator:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td></tr>
+<tr class="memdesc:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ontology identifier.  <a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">More...</a><br /></td></tr>
+<tr class="separator:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::recursive_mutex&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td></tr>
+<tr class="memdesc:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> Mutex.  <a href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">More...</a><br /></td></tr>
+<tr class="separator:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a> (<a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> &amp;response)</td></tr>
+<tr class="memdesc:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply headers.  <a href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">More...</a><br /></td></tr>
+<tr class="separator:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::vector&lt; web::http::method &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td></tr>
+<tr class="memdesc:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed methods.  <a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">More...</a><br /></td></tr>
+<tr class="separator:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td></tr>
+<tr class="memdesc:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Content type.  <a href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">More...</a><br /></td></tr>
+<tr class="separator:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td></tr>
+<tr class="memdesc:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed Origins.  <a href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">More...</a><br /></td></tr>
+<tr class="separator:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Class encapsulating a function represented in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a>. The class directly inherits from <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>. The recommended development pattern is to subclass this class and instantitate a use-case specific version. In this case, the <code><a class="el" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b" title="Core Invocation.">invoke()</a></code> method should be overriden to implement the function's business logic.</p>
+<p >Arguments are represented using the <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> class. A <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> supports the <a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET (to introspect the signature) and <a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST (to execute the function) verbs. </p>
+
+<p class="definition">Definition at line <a class="el" href="_function_8h_source.html#l00021">21</a> of file <a class="el" href="_function_8h_source.html">Function.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="add2a16248e512d8efe813f2a27df73b1" name="add2a16248e512d8efe813f2a27df73b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add2a16248e512d8efe813f2a27df73b1">&#9670;&nbsp;</a></span>Function()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Function::Function </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor that shall be used to instantiate a <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a>. If the class is subclassed, it shoule be called from the respective constructor. Most parameters are passed on to the constructor of <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>Shared pointer to parent object. Can be set to NULL for the creation of a root object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_function_8cpp_source.html#l00004">4</a> of file <a class="el" href="_function_8cpp_source.html">Function.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a8082d73f3dcb5567775dc2db5c291aec" name="a8082d73f3dcb5567775dc2db5c291aec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8082d73f3dcb5567775dc2db5c291aec">&#9670;&nbsp;</a></span>~Function()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Function::~Function </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard dsestructor </p>
+
+<p class="definition">Definition at line <a class="el" href="_function_8cpp_source.html#l00014">14</a> of file <a class="el" href="_function_8cpp_source.html">Function.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a6e6b923ef2cd3c534e831719ac6bbdb0" name="a6e6b923ef2cd3c534e831719ac6bbdb0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e6b923ef2cd3c534e831719ac6bbdb0">&#9670;&nbsp;</a></span>add_argument() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void SOIL::Function::add_argument </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>unit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td>
+          <td class="paramname"><em>default_value</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Add an argument when building the function with a default value. This method shoukd typically be called fron the subclass constructor. It uses the same templating system than <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> does to handle multidimensional data. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data. </td></tr>
+    <tr><td class="paramname">x</td><td>First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if <code>y</code> is not -1. </td></tr>
+    <tr><td class="paramname">y</td><td>Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for <code>x</code> to be -1. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">unit</td><td>UNECE unit code, e.g. MTR </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td>Allowed range for this argument, which is checked prior to execution. Defaults to no range restriction. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">default</td><td>Default value provided as <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed (default) </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_function_8h_source.html#l00234">234</a> of file <a class="el" href="_function_8h_source.html">Function.h</a>.</p>
+
+</div>
+</div>
+<a id="a7705b93afa26a8a3d3012d88a9fea04d" name="a7705b93afa26a8a3d3012d88a9fea04d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7705b93afa26a8a3d3012d88a9fea04d">&#9670;&nbsp;</a></span>add_argument() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void SOIL::Function::add_argument </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>unit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em> = <code><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt;T&gt;()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Add an argument when building the function. This method shoukd typically be called fron the subclass constructor. It uses the same templating system than <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> does to handle multidimensional data. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data. </td></tr>
+    <tr><td class="paramname">x</td><td>First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if <code>y</code> is not -1. </td></tr>
+    <tr><td class="paramname">y</td><td>Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for <code>x</code> to be -1. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">unit</td><td>UNECE unit code, e.g. MTR </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td>Allowed range for this argument, which is checked prior to execution. Defaults to no range restriction. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed (default) </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_function_8h_source.html#l00229">229</a> of file <a class="el" href="_function_8h_source.html">Function.h</a>.</p>
+
+</div>
+</div>
+<a id="ac3753d06d5d191ed95e63df56f51f680" name="ac3753d06d5d191ed95e63df56f51f680"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3753d06d5d191ed95e63df56f51f680">&#9670;&nbsp;</a></span>add_return()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">void SOIL::Function::add_return </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>unit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em> = <code><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt;T&gt;()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Add areturn value when building the function. This method shoukd typically be called fron the subclass constructor. It uses the same templating system than <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> does to handle multidimensional data. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data. </td></tr>
+    <tr><td class="paramname">x</td><td>First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if <code>y</code> is not -1. </td></tr>
+    <tr><td class="paramname">y</td><td>Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for <code>x</code> to be -1. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">unit</td><td>UNECE unit code, e.g. MTR </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td>Allowed range for this argument. Defaults to no range restriction. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed (default) </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_function_8h_source.html#l00243">243</a> of file <a class="el" href="_function_8h_source.html">Function.h</a>.</p>
+
+</div>
+</div>
+<a id="a50cf5e875bee2f192e04271642175bf6" name="a50cf5e875bee2f192e04271642175bf6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a50cf5e875bee2f192e04271642175bf6">&#9670;&nbsp;</a></span>create()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_function.html">SOIL::Function</a> &gt; SOIL::Function::create </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Create a new <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> using the default constructor and return a shared pointer reference. This is the preferred method for manual creation with consistent lifecycle handling.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>Shared pointer to parent object. Can be set to NULL for the creation of a root object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_function_8cpp_source.html#l00018">18</a> of file <a class="el" href="_function_8cpp_source.html">Function.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a636a905c115a1686caef9815c5b1aac9" name="a636a905c115a1686caef9815c5b1aac9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a636a905c115a1686caef9815c5b1aac9">&#9670;&nbsp;</a></span>handle_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> SOIL::Function::handle_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>request</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >On <a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET, the function returns information about itself and its signature. It is not invoked and this call should not lead to side effects. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">request</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_function_8cpp_source.html#l00046">46</a> of file <a class="el" href="_function_8cpp_source.html">Function.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a5d0ba47fb669127afcbea1a3d192fe88" name="a5d0ba47fb669127afcbea1a3d192fe88"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d0ba47fb669127afcbea1a3d192fe88">&#9670;&nbsp;</a></span>handle_post()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> SOIL::Function::handle_post </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>request</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >On <a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST, the function is invoked. With the POST request, a list of arguments must be passed in the request's body as list under the keyword "arguments". This method calls <code><a class="el" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b" title="Core Invocation.">invoke()</a></code>. If you do not implement this function, nothing will happen.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">request</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_function_8cpp_source.html#l00054">54</a> of file <a class="el" href="_function_8cpp_source.html">Function.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ac4d8391f2f588a467502f0bf9c8c7c7b" name="ac4d8391f2f588a467502f0bf9c8c7c7b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac4d8391f2f588a467502f0bf9c8c7c7b">&#9670;&nbsp;</a></span>invoke()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt; std::string, <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> &gt; SOIL::Function::invoke </td>
+          <td>(</td>
+          <td class="paramtype">std::map&lt; std::string, <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> &gt;&#160;</td>
+          <td class="paramname"><em>arguments</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >This is the main function that <b>MUST</b> be implemented in a derived class to meaningful act as a function. The arguments are passed as raw <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11" title="HTTP JSON.">HTTP::Json</a> objects mapped to their UUIDs. A map of <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11" title="HTTP JSON.">HTTP::Json</a> objects is expected as returns. It is recommend to use <code>make_arguments</code> and <code>make_returns</code> in this function. Arguments and returns are not further decomposed to Containers to support multi-typed values.</p>
+<dl class="section post"><dt>Postcondition</dt><dd>This function will be called from the <a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST handler. Any exception thrown will be caught there again and lead to an <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Internal Error (500) return code.</dd></dl>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::logic_error</td><td>If not implemented in the derived class, the implementation here throws an exception.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">arguments</td><td>Map of arguments as <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Json objects indexrd by their UUID </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Map of return values as <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Json objects indexrd by their UUID </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_function_8cpp_source.html#l00095">95</a> of file <a class="el" href="_function_8cpp_source.html">Function.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a542306cc71842ef1fe4b13597a5b7d1b" name="a542306cc71842ef1fe4b13597a5b7d1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a542306cc71842ef1fe4b13597a5b7d1b">&#9670;&nbsp;</a></span>make_argument()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; SOIL::Function::make_argument </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td>
+          <td class="paramname"><em>external_json</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Helper function that converts a <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Json object to a container of the passed value This function is usually useful in the custom implementation of <code><a class="el" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b" title="Core Invocation.">invoke()</a></code>.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data. </td></tr>
+    <tr><td class="paramname">x</td><td>First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if <code>y</code> is not -1. </td></tr>
+    <tr><td class="paramname">y</td><td>Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for <code>x</code> to be -1. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier of return value </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">external_json</td><td>JSON object from which to convert </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Value as <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_function_8h_source.html#l00256">256</a> of file <a class="el" href="_function_8h_source.html">Function.h</a>.</p>
+
+</div>
+</div>
+<a id="a4cdaaf26db414f721aa0c79aaa38cd46" name="a4cdaaf26db414f721aa0c79aaa38cd46"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4cdaaf26db414f721aa0c79aaa38cd46">&#9670;&nbsp;</a></span>make_return()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> SOIL::Function::make_return </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt;&#160;</td>
+          <td class="paramname"><em>value</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Helper function that converts a return value provided as <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> to a correpsonding JSON object. This function is usually useful in the custom implementation of <code><a class="el" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b" title="Core Invocation.">invoke()</a></code>.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data. </td></tr>
+    <tr><td class="paramname">x</td><td>First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if <code>y</code> is not -1. </td></tr>
+    <tr><td class="paramname">y</td><td>Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for <code>x</code> to be -1. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier of return value </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value of the return value </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>JSON object corresponding to <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> representation </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_function_8h_source.html#l00248">248</a> of file <a class="el" href="_function_8h_source.html">Function.h</a>.</p>
+
+</div>
+</div>
+<a id="a3fb541cbb68722263ff8d7ab9628a260" name="a3fb541cbb68722263ff8d7ab9628a260"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fb541cbb68722263ff8d7ab9628a260">&#9670;&nbsp;</a></span>ptr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_function.html">Function</a> &gt; SOIL::Function::ptr </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Return a shared pointer casted to the <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> type to element itself. </p><dl class="section return"><dt>Returns</dt><dd>Casted pointer </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_function_8h_source.html#l00223">223</a> of file <a class="el" href="_function_8h_source.html">Function.h</a>.</p>
+
+</div>
+</div>
+<a id="add97197a51b3c44f9eb873a23329983e" name="add97197a51b3c44f9eb873a23329983e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add97197a51b3c44f9eb873a23329983e">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> SOIL::Function::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Get a <a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON object corresponding to the function including arguments and returns </p><dl class="section return"><dt>Returns</dt><dd>JSON object </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_function_8cpp_source.html#l00024">24</a> of file <a class="el" href="_function_8cpp_source.html">Function.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SOIL/<a class="el" href="_function_8h_source.html">Function.h</a></li>
+<li>src/SOIL/<a class="el" href="_function_8cpp_source.html">Function.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_function.html">Function</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_function.js b/doc/html/class_s_o_i_l_1_1_function.js
new file mode 100644
index 0000000000000000000000000000000000000000..4b6b4e61ca57b65030ffd089b624fc3617307f07
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_function.js
@@ -0,0 +1,15 @@
+var class_s_o_i_l_1_1_function =
+[
+    [ "Function", "class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1", null ],
+    [ "~Function", "class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec", null ],
+    [ "add_argument", "class_s_o_i_l_1_1_function.html#a6e6b923ef2cd3c534e831719ac6bbdb0", null ],
+    [ "add_argument", "class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d", null ],
+    [ "add_return", "class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680", null ],
+    [ "handle_get", "class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9", null ],
+    [ "handle_post", "class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88", null ],
+    [ "invoke", "class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b", null ],
+    [ "make_argument", "class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b", null ],
+    [ "make_return", "class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46", null ],
+    [ "ptr", "class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260", null ],
+    [ "wjson", "class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_function.png b/doc/html/class_s_o_i_l_1_1_function.png
new file mode 100644
index 0000000000000000000000000000000000000000..9ae90ee2894d40217c134fd76f70d02f9c4f30ed
Binary files /dev/null and b/doc/html/class_s_o_i_l_1_1_function.png differ
diff --git a/doc/html/class_s_o_i_l_1_1_object-members.html b/doc/html/class_s_o_i_l_1_1_object-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..a498b6a151eafedab173458b6de4ca1112f36d53
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_object-members.html
@@ -0,0 +1,148 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_object.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Object Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a>(Response &amp;response)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">cast</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">create</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a>(HTTP::Request request, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7">handle_delete</a>(HTTP::Request message, std::smatch match=std::smatch()) override</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a>(Request message, std::exception &amp;exception, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225">handle_get</a>(HTTP::Request message, std::smatch match=std::smatch()) override</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978">handle_put</a>(HTTP::Request message, std::smatch match=std::smatch()) override</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f">insert</a>(HTTP::Json body)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">SOIL::Element::insert</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">SOIL::Element::insert</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd">Object</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a>(std::string fqid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e">ptr</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde">read</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108">remove</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">SOIL::Element::remove</a>(std::string uuid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3">wjson</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57">~Object</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_object.html b/doc/html/class_s_o_i_l_1_1_object.html
new file mode 100644
index 0000000000000000000000000000000000000000..530975ecbc83378679d81a2ec441786c79d1e587
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_object.html
@@ -0,0 +1,756 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Object Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_object.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="class_s_o_i_l_1_1_object-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Object Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> Class.  
+ <a href="class_s_o_i_l_1_1_object.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_object_8h_source.html">Object.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for SOIL::Object:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_s_o_i_l_1_1_object.png" usemap="#SOIL::Object_map" alt=""/>
+  <map id="SOIL::Object_map" name="SOIL::Object_map">
+<area href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element." alt="SOIL::Element" shape="rect" coords="0,56,103,80"/>
+<area href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class." alt="HTTP::Resource" shape="rect" coords="0,0,103,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac821d8158a2c4214b15cb1d9be8954dd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd">Object</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:ac821d8158a2c4214b15cb1d9be8954dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd">More...</a><br /></td></tr>
+<tr class="separator:ac821d8158a2c4214b15cb1d9be8954dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0d8fb2cb9e32c16ea631ed93e7a5d57"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57">~Object</a> ()</td></tr>
+<tr class="memdesc:ab0d8fb2cb9e32c16ea631ed93e7a5d57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57">More...</a><br /></td></tr>
+<tr class="separator:ab0d8fb2cb9e32c16ea631ed93e7a5d57"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebb0f522c4ced342fbd33cb377eeb4b3"><td class="memItemLeft" align="right" valign="top">web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3">wjson</a> (void)</td></tr>
+<tr class="memdesc:aebb0f522c4ced342fbd33cb377eeb4b3"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3">More...</a><br /></td></tr>
+<tr class="separator:aebb0f522c4ced342fbd33cb377eeb4b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d2c97d0d9a71ec307211897d596bbde"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde">read</a> (void)</td></tr>
+<tr class="memdesc:a0d2c97d0d9a71ec307211897d596bbde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read callback.  <a href="class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde">More...</a><br /></td></tr>
+<tr class="separator:a0d2c97d0d9a71ec307211897d596bbde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5dabf727c8256928d1f019520a34be1f"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f">insert</a> (<a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> body)</td></tr>
+<tr class="memdesc:a5dabf727c8256928d1f019520a34be1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Insert callback.  <a href="class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f">More...</a><br /></td></tr>
+<tr class="separator:a5dabf727c8256928d1f019520a34be1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5480dbba0b410666dd030006e86b1108"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108">remove</a> (void)</td></tr>
+<tr class="memdesc:a5480dbba0b410666dd030006e86b1108"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove callback.  <a href="class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108">More...</a><br /></td></tr>
+<tr class="separator:a5480dbba0b410666dd030006e86b1108"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24b2c5323d9f5f0651d48d3d319eb225"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match=std::smatch()) override</td></tr>
+<tr class="memdesc:a24b2c5323d9f5f0651d48d3d319eb225"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225">More...</a><br /></td></tr>
+<tr class="separator:a24b2c5323d9f5f0651d48d3d319eb225"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6614134cf7d4c7caaaae13fac999978"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978">handle_put</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match=std::smatch()) override</td></tr>
+<tr class="memdesc:ac6614134cf7d4c7caaaae13fac999978"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PUT Handler.  <a href="class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978">More...</a><br /></td></tr>
+<tr class="separator:ac6614134cf7d4c7caaaae13fac999978"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e237fb0358f5adaea25f2ac95b8b5e7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7">handle_delete</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match=std::smatch()) override</td></tr>
+<tr class="memdesc:a4e237fb0358f5adaea25f2ac95b8b5e7"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> DELETE Handler.  <a href="class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7">More...</a><br /></td></tr>
+<tr class="separator:a4e237fb0358f5adaea25f2ac95b8b5e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98e9761c2be5e2acdfe673f48259172e"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_object.html">Object</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e">ptr</a> (void)</td></tr>
+<tr class="memdesc:a98e9761c2be5e2acdfe673f48259172e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Pointer.  <a href="class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e">More...</a><br /></td></tr>
+<tr class="separator:a98e9761c2be5e2acdfe673f48259172e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_s_o_i_l_1_1_element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_s_o_i_l_1_1_element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memitem:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">More...</a><br /></td></tr>
+<tr class="separator:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a> ()</td></tr>
+<tr class="memdesc:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">More...</a><br /></td></tr>
+<tr class="separator:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a> (void)</td></tr>
+<tr class="memdesc:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">FQID.  <a href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">More...</a><br /></td></tr>
+<tr class="separator:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>)</td></tr>
+<tr class="memdesc:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access Operator.  <a href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">More...</a><br /></td></tr>
+<tr class="separator:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">More...</a><br /></td></tr>
+<tr class="separator:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">More...</a><br /></td></tr>
+<tr class="separator:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">More...</a><br /></td></tr>
+<tr class="separator:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">More...</a><br /></td></tr>
+<tr class="separator:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>)</td></tr>
+<tr class="memdesc:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove Child element.  <a href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">More...</a><br /></td></tr>
+<tr class="separator:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memTemplItemLeft" align="right" valign="top">T *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">cast</a> (void)</td></tr>
+<tr class="memdesc:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dynamically casted pointer.  <a href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">More...</a><br /></td></tr>
+<tr class="separator:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a> (void) const</td></tr>
+<tr class="memdesc:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a>?  <a href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">More...</a><br /></td></tr>
+<tr class="separator:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a> (void) const</td></tr>
+<tr class="memdesc:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a>?  <a href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">More...</a><br /></td></tr>
+<tr class="separator:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a> (void) const</td></tr>
+<tr class="memdesc:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a>?  <a href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">More...</a><br /></td></tr>
+<tr class="separator:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a> (void) const</td></tr>
+<tr class="memdesc:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>?  <a href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">More...</a><br /></td></tr>
+<tr class="separator:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">wjson</a> (void)</td></tr>
+<tr class="memdesc:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">More...</a><br /></td></tr>
+<tr class="separator:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a> (void)</td></tr>
+<tr class="memdesc:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON string.  <a href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">More...</a><br /></td></tr>
+<tr class="separator:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">More...</a><br /></td></tr>
+<tr class="separator:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a> ()</td></tr>
+<tr class="memdesc:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">More...</a><br /></td></tr>
+<tr class="separator:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a> ()</td></tr>
+<tr class="memdesc:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Destructor.  <a href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">More...</a><br /></td></tr>
+<tr class="separator:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">More...</a><br /></td></tr>
+<tr class="separator:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">More...</a><br /></td></tr>
+<tr class="separator:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PUT Handler.  <a href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">More...</a><br /></td></tr>
+<tr class="separator:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST Handler.  <a href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">More...</a><br /></td></tr>
+<tr class="separator:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> DELETE Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">More...</a><br /></td></tr>
+<tr class="separator:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PATCH Handler.  <a href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">More...</a><br /></td></tr>
+<tr class="separator:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> OPTIONS Handler.  <a href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">More...</a><br /></td></tr>
+<tr class="separator:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> HEAD Handler.  <a href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">More...</a><br /></td></tr>
+<tr class="separator:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::exception &amp;exception, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Exception handler.  <a href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">More...</a><br /></td></tr>
+<tr class="separator:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a4ce4f8d21682f894c34f447d2a62cd30"><td class="memItemLeft" align="right" valign="top">static std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_object.html">Object</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">create</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:a4ce4f8d21682f894c34f447d2a62cd30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a>.  <a href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">More...</a><br /></td></tr>
+<tr class="separator:a4ce4f8d21682f894c34f447d2a62cd30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_static_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">static web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request Info.  <a href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">More...</a><br /></td></tr>
+<tr class="separator:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_attribs_class_s_o_i_l_1_1_element"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_class_s_o_i_l_1_1_element')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memitem:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td></tr>
+<tr class="memdesc:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Children Map.  <a href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">More...</a><br /></td></tr>
+<tr class="separator:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td></tr>
+<tr class="memdesc:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parent Pointer.  <a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">More...</a><br /></td></tr>
+<tr class="separator:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td></tr>
+<tr class="memdesc:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self Pointer.  <a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">More...</a><br /></td></tr>
+<tr class="separator:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td></tr>
+<tr class="memdesc:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Local UUID.  <a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">More...</a><br /></td></tr>
+<tr class="separator:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td></tr>
+<tr class="memdesc:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name.  <a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">More...</a><br /></td></tr>
+<tr class="separator:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td></tr>
+<tr class="memdesc:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Description.  <a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">More...</a><br /></td></tr>
+<tr class="separator:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td></tr>
+<tr class="memdesc:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ontology identifier.  <a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">More...</a><br /></td></tr>
+<tr class="separator:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::recursive_mutex&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td></tr>
+<tr class="memdesc:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> Mutex.  <a href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">More...</a><br /></td></tr>
+<tr class="separator:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a> (<a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> &amp;response)</td></tr>
+<tr class="memdesc:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply headers.  <a href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">More...</a><br /></td></tr>
+<tr class="separator:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::vector&lt; web::http::method &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td></tr>
+<tr class="memdesc:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed methods.  <a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">More...</a><br /></td></tr>
+<tr class="separator:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td></tr>
+<tr class="memdesc:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Content type.  <a href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">More...</a><br /></td></tr>
+<tr class="separator:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td></tr>
+<tr class="memdesc:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed Origins.  <a href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">More...</a><br /></td></tr>
+<tr class="separator:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Class implementing the <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> type. The purpose of Objects is mainly to organize the overall system. Only Objects can have child items, which can be added or removed during runtime. Objects support <a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET (read), PUT (add child) and DELETE (remove child) verbs. This class directly inherits from Elememt.</p>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000007">Todo:</a></b></dt><dd>The <a class="el" href="namespace_h_t_t_p.html">HTTP</a> handlers may be moved to protected if <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">HTTP::Server</a> is declared as friend class. Currently this is not done to alllow for greater flexibility. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_object_8h_source.html#l00018">18</a> of file <a class="el" href="_object_8h_source.html">Object.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ac821d8158a2c4214b15cb1d9be8954dd" name="ac821d8158a2c4214b15cb1d9be8954dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac821d8158a2c4214b15cb1d9be8954dd">&#9670;&nbsp;</a></span>Object()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Object::Object </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default constructor for <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> elements, to be called from derived classes. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>Shared pointer to parent object. Can be set to NULL for the creation of a root object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section pre"><dt>Precondition</dt><dd>The ontology referred to must be defined elsewhere and is decoupled from the code. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_object_8cpp_source.html#l00004">4</a> of file <a class="el" href="_object_8cpp_source.html">Object.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab0d8fb2cb9e32c16ea631ed93e7a5d57" name="ab0d8fb2cb9e32c16ea631ed93e7a5d57"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab0d8fb2cb9e32c16ea631ed93e7a5d57">&#9670;&nbsp;</a></span>~Object()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Object::~Object </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard destructor. The main destruction occurs in the destructor of <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>, i.e. the references to the child elements are deleted, e.g. they go out of scope is this was the last shared pointer. </p>
+
+<p class="definition">Definition at line <a class="el" href="_object_8cpp_source.html#l00014">14</a> of file <a class="el" href="_object_8cpp_source.html">Object.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a4ce4f8d21682f894c34f447d2a62cd30" name="a4ce4f8d21682f894c34f447d2a62cd30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ce4f8d21682f894c34f447d2a62cd30">&#9670;&nbsp;</a></span>create()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a> &gt; SOIL::Object::create </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Create a new <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> using the default constructor and return a shared pointer reference. This is the preferred method for manual creation with consistent lifecycle handling. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>Shared pointer to parent object. Can be set to NULL for the creation of a root object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section pre"><dt>Precondition</dt><dd>The ontology referred to must be defined elsewhere and is decoupled from the code. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_object_8cpp_source.html#l00018">18</a> of file <a class="el" href="_object_8cpp_source.html">Object.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a4e237fb0358f5adaea25f2ac95b8b5e7" name="a4e237fb0358f5adaea25f2ac95b8b5e7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4e237fb0358f5adaea25f2ac95b8b5e7">&#9670;&nbsp;</a></span>handle_delete()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> SOIL::Object::handle_delete </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a DELETE method. This function deletes an element. It should not be overridden directly in subclasses, instead the <code><a class="el" href="class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108" title="Remove callback.">remove()</a></code> function should be overriden. It is mandatory to implement a custom logic in the aforementioned function to allow PUT to properly work. If manual deletaion is not foreseen, you may consider overriding <code>allowed_methods</code> without DELETE.</p>
+<p >If no exception is thrown, an empty response with result code OK is returned, otherwise an Internal Error will be provided.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_object_8cpp_source.html#l00075">75</a> of file <a class="el" href="_object_8cpp_source.html">Object.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a24b2c5323d9f5f0651d48d3d319eb225" name="a24b2c5323d9f5f0651d48d3d319eb225"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a24b2c5323d9f5f0651d48d3d319eb225">&#9670;&nbsp;</a></span>handle_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> SOIL::Object::handle_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a GET method. This function returns a representation of the <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> to the requesting party. It should not be overridden directly in subclasses, instead the <code><a class="el" href="class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde" title="Read callback.">read()</a></code> function should be overriden.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_object_8cpp_source.html#l00054">54</a> of file <a class="el" href="_object_8cpp_source.html">Object.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ac6614134cf7d4c7caaaae13fac999978" name="ac6614134cf7d4c7caaaae13fac999978"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac6614134cf7d4c7caaaae13fac999978">&#9670;&nbsp;</a></span>handle_put()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> SOIL::Object::handle_put </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a PUT method. This function inserts an element to the objects children. It should not be overridden directly in subclasses, instead the <code><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11" title="HTTP JSON.">HTTP::Json</a> <a class="el" href="class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f" title="Insert callback.">insert(HTTP::Json body)</a></code> function should be overriden. It is mandatory to implement a custom logic in the aforementioned function to allow PUT to properly work. If manual insertion is not foreseen, you may consider overriding <code>allowed_methods</code> without PUT. The minimum requirement to the body is that it contains an valid UUID key with value, the templates and further logic may be implemented by server.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_object_8cpp_source.html#l00063">63</a> of file <a class="el" href="_object_8cpp_source.html">Object.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a5dabf727c8256928d1f019520a34be1f" name="a5dabf727c8256928d1f019520a34be1f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5dabf727c8256928d1f019520a34be1f">&#9670;&nbsp;</a></span>insert()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> SOIL::Object::insert </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td>
+          <td class="paramname"><em>body</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p ><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> that is called when a new child object is insterted via <a class="el" href="namespace_h_t_t_p.html">HTTP</a> PUT. This function muss be implemented by the deriving class.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::logic_error</td><td>If the derived class does not contain an implementation, an exception is thrown here. The exception will be caught in the <a class="el" href="namespace_h_t_t_p.html">HTTP</a> handler of the server and returns with an <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Internal Error (500) code.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">body</td><td><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON body passed to PUT </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON object corresponding to the created <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a>, as required per good <a class="el" href="namespace_h_t_t_p.html">HTTP</a> practice. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_object_8cpp_source.html#l00044">44</a> of file <a class="el" href="_object_8cpp_source.html">Object.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a98e9761c2be5e2acdfe673f48259172e" name="a98e9761c2be5e2acdfe673f48259172e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a98e9761c2be5e2acdfe673f48259172e">&#9670;&nbsp;</a></span>ptr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_object.html">Object</a> &gt; SOIL::Object::ptr </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Return a shared pointer casted to the <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> type to element itself. </p><dl class="section return"><dt>Returns</dt><dd>Casted pointer </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_object_8h_source.html#l00149">149</a> of file <a class="el" href="_object_8h_source.html">Object.h</a>.</p>
+
+</div>
+</div>
+<a id="a0d2c97d0d9a71ec307211897d596bbde" name="a0d2c97d0d9a71ec307211897d596bbde"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0d2c97d0d9a71ec307211897d596bbde">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SOIL::Object::read </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage. Declared virtual to make sure the derived method is called first. Any exception that may be occurring will be caught in the <a class="el" href="namespace_h_t_t_p.html">HTTP</a> handler. </p>
+
+<p class="definition">Definition at line <a class="el" href="_object_8cpp_source.html#l00040">40</a> of file <a class="el" href="_object_8cpp_source.html">Object.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a5480dbba0b410666dd030006e86b1108" name="a5480dbba0b410666dd030006e86b1108"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5480dbba0b410666dd030006e86b1108">&#9670;&nbsp;</a></span>remove()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SOIL::Object::remove </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Callback hook for subclasses to add custom business logic to the <a class="el" href="namespace_h_t_t_p.html">HTTP</a> DELETE operation, e.g. to act on external resoruces. Otherwise the object will just be deleted. </p>
+
+<p class="definition">Definition at line <a class="el" href="_object_8cpp_source.html#l00049">49</a> of file <a class="el" href="_object_8cpp_source.html">Object.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aebb0f522c4ced342fbd33cb377eeb4b3" name="aebb0f522c4ced342fbd33cb377eeb4b3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebb0f522c4ced342fbd33cb377eeb4b3">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> SOIL::Object::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Get a <a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON object corresponding to the function including arguments and returns </p><dl class="section return"><dt>Returns</dt><dd>JSON object </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_object_8cpp_source.html#l00024">24</a> of file <a class="el" href="_object_8cpp_source.html">Object.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SOIL/<a class="el" href="_object_8h_source.html">Object.h</a></li>
+<li>src/SOIL/<a class="el" href="_object_8cpp_source.html">Object.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_object.html">Object</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_object.js b/doc/html/class_s_o_i_l_1_1_object.js
new file mode 100644
index 0000000000000000000000000000000000000000..7b0c9c79ed0319346f8ba2e0fe39c9db88f8b126
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_object.js
@@ -0,0 +1,13 @@
+var class_s_o_i_l_1_1_object =
+[
+    [ "Object", "class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd", null ],
+    [ "~Object", "class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57", null ],
+    [ "handle_delete", "class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7", null ],
+    [ "handle_get", "class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225", null ],
+    [ "handle_put", "class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978", null ],
+    [ "insert", "class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f", null ],
+    [ "ptr", "class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e", null ],
+    [ "read", "class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde", null ],
+    [ "remove", "class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108", null ],
+    [ "wjson", "class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_object.png b/doc/html/class_s_o_i_l_1_1_object.png
new file mode 100644
index 0000000000000000000000000000000000000000..780f11a054512e9ba5c10dc29cf94eb6e5899b82
Binary files /dev/null and b/doc/html/class_s_o_i_l_1_1_object.png differ
diff --git a/doc/html/class_s_o_i_l_1_1_parameter-members.html b/doc/html/class_s_o_i_l_1_1_parameter-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..cb1db51f6051884956f1e7124b4508c3604aca82
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_parameter-members.html
@@ -0,0 +1,163 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_parameter.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Parameter&lt; T, x, y &gt; Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a>(Response &amp;response)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">cast</a>(T value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">SOIL::Element::cast</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">check_range</a>(const Container&lt; T, x, y &gt; &amp;value) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">constant</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad">create</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant=false, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">Figure</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a>(HTTP::Request request, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a>(Request message, std::exception &amp;exception, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad">handle_get</a>(HTTP::Request message, std::smatch match=std::smatch()) override</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad">handle_patch</a>(HTTP::Request message, std::smatch match=std::smatch()) override</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9">mqtt</a>(std::shared_ptr&lt; MQTT::Publisher &gt; publisher, int qos=0, bool retain=false)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">operator*</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf">operator=</a>(const Container&lt; T, x, y &gt; &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a>(std::string fqid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4">Parameter</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant=false, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08">ptr</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d">read</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a>(std::string uuid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">set_range</a>(Range&lt; T &gt; range)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">set_time</a>(TIME time)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">set_value</a>(const Container&lt; T, x, y &gt; &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">update</a>(const Container&lt; T, x, y &gt; &amp;value, TIME time)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">wjson</a>(void) override</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c">write</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">~Figure</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5">~Parameter</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_parameter.html b/doc/html/class_s_o_i_l_1_1_parameter.html
new file mode 100644
index 0000000000000000000000000000000000000000..e64ccb89c0ec73b27850a5b294dce6015c23e36f
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_parameter.html
@@ -0,0 +1,945 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Parameter&lt; T, x, y &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_parameter.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="class_s_o_i_l_1_1_parameter-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Parameter&lt; T, x, y &gt; Class Template Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> Class.  
+ <a href="class_s_o_i_l_1_1_parameter.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_parameter_8h_source.html">Parameter.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for SOIL::Parameter&lt; T, x, y &gt;:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_s_o_i_l_1_1_parameter.png" usemap="#SOIL::Parameter_3C_20T_2C_20x_2C_20y_20_3E_map" alt=""/>
+  <map id="SOIL::Parameter_3C_20T_2C_20x_2C_20y_20_3E_map" name="SOIL::Parameter_3C_20T_2C_20x_2C_20y_20_3E_map">
+<area href="class_s_o_i_l_1_1_figure.html" alt="SOIL::Figure&lt; T, -1, -1 &gt;" shape="rect" coords="0,112,166,136"/>
+<area href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element." alt="SOIL::Element" shape="rect" coords="0,56,166,80"/>
+<area href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class." alt="HTTP::Resource" shape="rect" coords="0,0,166,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a698d4320aa3e34bf080f9e416fb12ce4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4">Parameter</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, bool <a class="el" href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">constant</a>=false, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;, <a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>=<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;(), <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>=<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>())</td></tr>
+<tr class="memdesc:a698d4320aa3e34bf080f9e416fb12ce4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4">More...</a><br /></td></tr>
+<tr class="separator:a698d4320aa3e34bf080f9e416fb12ce4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c7401cb8d13756cc70d1df4e16db2e5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5">~Parameter</a> ()</td></tr>
+<tr class="memdesc:a3c7401cb8d13756cc70d1df4e16db2e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5">More...</a><br /></td></tr>
+<tr class="separator:a3c7401cb8d13756cc70d1df4e16db2e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a905eb12cd0e50cf245f2003643602acf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_parameter.html">Parameter</a>&lt; T, x, y &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf">operator=</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a905eb12cd0e50cf245f2003643602acf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator.  <a href="class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf">More...</a><br /></td></tr>
+<tr class="separator:a905eb12cd0e50cf245f2003643602acf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec2434faa57778dbc8783ec77a86d627"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">wjson</a> (void) override</td></tr>
+<tr class="memdesc:aec2434faa57778dbc8783ec77a86d627"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">More...</a><br /></td></tr>
+<tr class="separator:aec2434faa57778dbc8783ec77a86d627"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37602b6b8f95595a78b70a9b0eb865ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match=std::smatch()) override</td></tr>
+<tr class="memdesc:a37602b6b8f95595a78b70a9b0eb865ad"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad">More...</a><br /></td></tr>
+<tr class="separator:a37602b6b8f95595a78b70a9b0eb865ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac58916de16e381e40123bf9633a151ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad">handle_patch</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match=std::smatch()) override</td></tr>
+<tr class="memdesc:ac58916de16e381e40123bf9633a151ad"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PATCH Handler.  <a href="class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad">More...</a><br /></td></tr>
+<tr class="separator:ac58916de16e381e40123bf9633a151ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ee4708c79c724f7905eecb9e2b2cc08"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_parameter.html">Parameter</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08">ptr</a> (void)</td></tr>
+<tr class="memdesc:a3ee4708c79c724f7905eecb9e2b2cc08"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Pointer.  <a href="class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08">More...</a><br /></td></tr>
+<tr class="separator:a3ee4708c79c724f7905eecb9e2b2cc08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadc9c63027042e0e834b183698e964b9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9">mqtt</a> (std::shared_ptr&lt; <a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a> &gt; publisher, int qos=0, bool retain=false)</td></tr>
+<tr class="memdesc:aadc9c63027042e0e834b183698e964b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Publish to <a class="el" href="namespace_m_q_t_t.html">MQTT</a>.  <a href="class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9">More...</a><br /></td></tr>
+<tr class="separator:aadc9c63027042e0e834b183698e964b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_s_o_i_l_1_1_figure"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_s_o_i_l_1_1_figure')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td></tr>
+<tr class="memitem:a8da920bd367b9a6ee8b70fcfa1f709ac inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">Figure</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;, <a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>=<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;(), <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>=<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>())</td></tr>
+<tr class="memdesc:a8da920bd367b9a6ee8b70fcfa1f709ac inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">More...</a><br /></td></tr>
+<tr class="separator:a8da920bd367b9a6ee8b70fcfa1f709ac inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f20334aa82abbb7d0e9d2322e5683d0 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">~Figure</a> ()</td></tr>
+<tr class="memdesc:a1f20334aa82abbb7d0e9d2322e5683d0 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">More...</a><br /></td></tr>
+<tr class="separator:a1f20334aa82abbb7d0e9d2322e5683d0 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e4d6c93a559d5e18178de9a79b472ec inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_figure.html">Figure</a>&lt; T, x, y &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">operator=</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a4e4d6c93a559d5e18178de9a79b472ec inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator.  <a href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">More...</a><br /></td></tr>
+<tr class="separator:a4e4d6c93a559d5e18178de9a79b472ec inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb3fe4e331a9a5f2f53b011309d6c937 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">operator*</a> (void)</td></tr>
+<tr class="memdesc:abb3fe4e331a9a5f2f53b011309d6c937 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access Operator.  <a href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">More...</a><br /></td></tr>
+<tr class="separator:abb3fe4e331a9a5f2f53b011309d6c937 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf9b99da1c712f54d758c492830a7566 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">check_range</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>) const</td></tr>
+<tr class="memdesc:aaf9b99da1c712f54d758c492830a7566 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check range.  <a href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">More...</a><br /></td></tr>
+<tr class="separator:aaf9b99da1c712f54d758c492830a7566 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af096fd3a66cdc35d18a1cbbf637dddf9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">set_range</a> (<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>)</td></tr>
+<tr class="memdesc:af096fd3a66cdc35d18a1cbbf637dddf9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Range.  <a href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">More...</a><br /></td></tr>
+<tr class="separator:af096fd3a66cdc35d18a1cbbf637dddf9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab47f2268fb3f31960ab7bc8473974b3e inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">set_time</a> (<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>)</td></tr>
+<tr class="memdesc:ab47f2268fb3f31960ab7bc8473974b3e inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Time.  <a href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">More...</a><br /></td></tr>
+<tr class="separator:ab47f2268fb3f31960ab7bc8473974b3e inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a358a1060f3f04ea4aa1cb0b7705af4d9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">set_value</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a358a1060f3f04ea4aa1cb0b7705af4d9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Value.  <a href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">More...</a><br /></td></tr>
+<tr class="separator:a358a1060f3f04ea4aa1cb0b7705af4d9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca02467b79b6d4a9590553b612876b20 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">wjson</a> (void) override</td></tr>
+<tr class="memdesc:aca02467b79b6d4a9590553b612876b20 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">More...</a><br /></td></tr>
+<tr class="separator:aca02467b79b6d4a9590553b612876b20 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cebd6af4116112bb244b1444aa3a1da inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">cast</a> (T <a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a6cebd6af4116112bb244b1444aa3a1da inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cast to container.  <a href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">More...</a><br /></td></tr>
+<tr class="separator:a6cebd6af4116112bb244b1444aa3a1da inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65998054544cd71fdb47c0b1b956e883 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">update</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>, <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>)</td></tr>
+<tr class="memdesc:a65998054544cd71fdb47c0b1b956e883 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update.  <a href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">More...</a><br /></td></tr>
+<tr class="separator:a65998054544cd71fdb47c0b1b956e883 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_s_o_i_l_1_1_element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_s_o_i_l_1_1_element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memitem:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">More...</a><br /></td></tr>
+<tr class="separator:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a> ()</td></tr>
+<tr class="memdesc:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">More...</a><br /></td></tr>
+<tr class="separator:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a> (void)</td></tr>
+<tr class="memdesc:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">FQID.  <a href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">More...</a><br /></td></tr>
+<tr class="separator:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>)</td></tr>
+<tr class="memdesc:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access Operator.  <a href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">More...</a><br /></td></tr>
+<tr class="separator:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">More...</a><br /></td></tr>
+<tr class="separator:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">More...</a><br /></td></tr>
+<tr class="separator:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">More...</a><br /></td></tr>
+<tr class="separator:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">More...</a><br /></td></tr>
+<tr class="separator:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>)</td></tr>
+<tr class="memdesc:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove Child element.  <a href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">More...</a><br /></td></tr>
+<tr class="separator:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memTemplItemLeft" align="right" valign="top">T *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">cast</a> (void)</td></tr>
+<tr class="memdesc:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dynamically casted pointer.  <a href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">More...</a><br /></td></tr>
+<tr class="separator:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a> (void) const</td></tr>
+<tr class="memdesc:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a>?  <a href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">More...</a><br /></td></tr>
+<tr class="separator:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a> (void) const</td></tr>
+<tr class="memdesc:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a>?  <a href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">More...</a><br /></td></tr>
+<tr class="separator:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a> (void) const</td></tr>
+<tr class="memdesc:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a>?  <a href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">More...</a><br /></td></tr>
+<tr class="separator:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a> (void) const</td></tr>
+<tr class="memdesc:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>?  <a href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">More...</a><br /></td></tr>
+<tr class="separator:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">wjson</a> (void)</td></tr>
+<tr class="memdesc:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">More...</a><br /></td></tr>
+<tr class="separator:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a> (void)</td></tr>
+<tr class="memdesc:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON string.  <a href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">More...</a><br /></td></tr>
+<tr class="separator:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">More...</a><br /></td></tr>
+<tr class="separator:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a> ()</td></tr>
+<tr class="memdesc:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">More...</a><br /></td></tr>
+<tr class="separator:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a> ()</td></tr>
+<tr class="memdesc:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Destructor.  <a href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">More...</a><br /></td></tr>
+<tr class="separator:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">More...</a><br /></td></tr>
+<tr class="separator:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">More...</a><br /></td></tr>
+<tr class="separator:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PUT Handler.  <a href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">More...</a><br /></td></tr>
+<tr class="separator:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST Handler.  <a href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">More...</a><br /></td></tr>
+<tr class="separator:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> DELETE Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">More...</a><br /></td></tr>
+<tr class="separator:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PATCH Handler.  <a href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">More...</a><br /></td></tr>
+<tr class="separator:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> OPTIONS Handler.  <a href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">More...</a><br /></td></tr>
+<tr class="separator:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> HEAD Handler.  <a href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">More...</a><br /></td></tr>
+<tr class="separator:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::exception &amp;exception, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Exception handler.  <a href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">More...</a><br /></td></tr>
+<tr class="separator:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:ae6326c41af3bca1b02f8d8dcca05ecad"><td class="memItemLeft" align="right" valign="top">static std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_parameter.html">Parameter</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad">create</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, bool <a class="el" href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">constant</a>=false, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;, <a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>=<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;(), <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>=<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>())</td></tr>
+<tr class="memdesc:ae6326c41af3bca1b02f8d8dcca05ecad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>.  <a href="class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad">More...</a><br /></td></tr>
+<tr class="separator:ae6326c41af3bca1b02f8d8dcca05ecad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_static_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">static web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request Info.  <a href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">More...</a><br /></td></tr>
+<tr class="separator:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a57567b4cfe6b370e9af7c3ef6f10be6d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d">read</a> (void)</td></tr>
+<tr class="memdesc:a57567b4cfe6b370e9af7c3ef6f10be6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read callback.  <a href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d">More...</a><br /></td></tr>
+<tr class="separator:a57567b4cfe6b370e9af7c3ef6f10be6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af378abd9212084ebb270383d3cd4300c"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c">write</a> (void)</td></tr>
+<tr class="memdesc:af378abd9212084ebb270383d3cd4300c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write callback.  <a href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c">More...</a><br /></td></tr>
+<tr class="separator:af378abd9212084ebb270383d3cd4300c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6dc0dda3c135fb3512486192a52e0f8b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">read</a> (void)=0</td></tr>
+<tr class="memdesc:a6dc0dda3c135fb3512486192a52e0f8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read callback.  <a href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">More...</a><br /></td></tr>
+<tr class="separator:a6dc0dda3c135fb3512486192a52e0f8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af07e6f343402f0f9280ede65d4b26fa0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">write</a> (void)=0</td></tr>
+<tr class="memdesc:af07e6f343402f0f9280ede65d4b26fa0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write callback.  <a href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">More...</a><br /></td></tr>
+<tr class="separator:af07e6f343402f0f9280ede65d4b26fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a> (<a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> &amp;response)</td></tr>
+<tr class="memdesc:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply headers.  <a href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">More...</a><br /></td></tr>
+<tr class="separator:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:aed57214457012af12a859669e182e841"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">constant</a></td></tr>
+<tr class="memdesc:aed57214457012af12a859669e182e841"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constant flag.  <a href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">More...</a><br /></td></tr>
+<tr class="separator:aed57214457012af12a859669e182e841"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_s_o_i_l_1_1_figure"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_s_o_i_l_1_1_figure')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td></tr>
+<tr class="memitem:a8f320356ea837f06e439b74c2a22e81c inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a></td></tr>
+<tr class="memdesc:a8f320356ea837f06e439b74c2a22e81c inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data Timestamp.  <a href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">More...</a><br /></td></tr>
+<tr class="separator:a8f320356ea837f06e439b74c2a22e81c inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a627d9d3386a719a6612ec3068812ea67 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a></td></tr>
+<tr class="memdesc:a627d9d3386a719a6612ec3068812ea67 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unit.  <a href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">More...</a><br /></td></tr>
+<tr class="separator:a627d9d3386a719a6612ec3068812ea67 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97c7e2488708c155d366e2cdc1934c3b inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a></td></tr>
+<tr class="memdesc:a97c7e2488708c155d366e2cdc1934c3b inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Value.  <a href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">More...</a><br /></td></tr>
+<tr class="separator:a97c7e2488708c155d366e2cdc1934c3b inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab431dcf967cbfb8591b9128257595712 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a></td></tr>
+<tr class="memdesc:ab431dcf967cbfb8591b9128257595712 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Range.  <a href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">More...</a><br /></td></tr>
+<tr class="separator:ab431dcf967cbfb8591b9128257595712 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::vector&lt; web::http::method &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td></tr>
+<tr class="memdesc:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed methods.  <a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">More...</a><br /></td></tr>
+<tr class="separator:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td></tr>
+<tr class="memdesc:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Content type.  <a href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">More...</a><br /></td></tr>
+<tr class="separator:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td></tr>
+<tr class="memdesc:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed Origins.  <a href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">More...</a><br /></td></tr>
+<tr class="separator:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_attribs_class_s_o_i_l_1_1_element"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_class_s_o_i_l_1_1_element')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memitem:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td></tr>
+<tr class="memdesc:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Children Map.  <a href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">More...</a><br /></td></tr>
+<tr class="separator:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td></tr>
+<tr class="memdesc:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parent Pointer.  <a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">More...</a><br /></td></tr>
+<tr class="separator:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td></tr>
+<tr class="memdesc:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self Pointer.  <a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">More...</a><br /></td></tr>
+<tr class="separator:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td></tr>
+<tr class="memdesc:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Local UUID.  <a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">More...</a><br /></td></tr>
+<tr class="separator:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td></tr>
+<tr class="memdesc:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name.  <a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">More...</a><br /></td></tr>
+<tr class="separator:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td></tr>
+<tr class="memdesc:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Description.  <a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">More...</a><br /></td></tr>
+<tr class="separator:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td></tr>
+<tr class="memdesc:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ontology identifier.  <a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">More...</a><br /></td></tr>
+<tr class="separator:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::recursive_mutex&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td></tr>
+<tr class="memdesc:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> Mutex.  <a href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">More...</a><br /></td></tr>
+<tr class="separator:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><div class="compoundTemplParams">template&lt;typename T, int x = -1, int y = -1&gt;<br />
+class SOIL::Parameter&lt; T, x, y &gt;</div><p >This class represents a <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>. <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> and <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> share many common properties and therefore both inherit from <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a>, such that methods there should be considered in any case. Parameters are primarily intended for values that do not represent any measurement or physical phenomenon outside the immediate control of device. In contrast to variables, they can be set externally to control the device and do not posses a measurement uncertainty. Parametery may be constant. In lightweight scenarios, this class may be instantiated directly, for more specific scenarios, it shouls be subclassed and override the implementations of <code><a class="el" href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d" title="Read callback.">read()</a></code> and <code><a class="el" href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c" title="Write callback.">write()</a></code>.</p>
+<p >A parameter supports <a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET (read) and <a class="el" href="namespace_h_t_t_p.html">HTTP</a> PATCH (set) verbs.</p>
+<p >The data management of <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a> and hence <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> relies on <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a>, such that the same templating logic is used.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data. </td></tr>
+    <tr><td class="paramname">x</td><td>First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if <code>y</code> is not -1. </td></tr>
+    <tr><td class="paramname">y</td><td>Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for <code>x</code> to be -1.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000008">Todo:</a></b></dt><dd>The <a class="el" href="namespace_h_t_t_p.html">HTTP</a> handlers may be moved to protected if <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">HTTP::Server</a> is declared as friend class. Currently this is not done to alllow for greater flexibility. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00034">34</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a698d4320aa3e34bf080f9e416fb12ce4" name="a698d4320aa3e34bf080f9e416fb12ce4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a698d4320aa3e34bf080f9e416fb12ce4">&#9670;&nbsp;</a></span>Parameter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::Parameter </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>unit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>constant</em> = <code>false</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em> = <code><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt;T&gt;()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>&#160;</td>
+          <td class="paramname"><em>time</em> = <code><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard constructor intialiazing the values. If subclassed, it should be called from the subclass constructor. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>Shared pointer to parent object. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">unit</td><td>UNECE unit code, e.g. MTR </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">constant</td><td>Boolean flag whether this value is cosnstant </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td>Allowed range for the variable values, defaults to an empty object, i.e. allowing all values </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>Timestamp for the initial value, defaults to unset </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00202">202</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<a id="a3c7401cb8d13756cc70d1df4e16db2e5" name="a3c7401cb8d13756cc70d1df4e16db2e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c7401cb8d13756cc70d1df4e16db2e5">&#9670;&nbsp;</a></span>~Parameter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::~<a class="el" href="class_s_o_i_l_1_1_parameter.html">Parameter</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default destructor, without custom effort. </p>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00213">213</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ae6326c41af3bca1b02f8d8dcca05ecad" name="ae6326c41af3bca1b02f8d8dcca05ecad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6326c41af3bca1b02f8d8dcca05ecad">&#9670;&nbsp;</a></span>create()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt; &gt; <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::create </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>unit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>constant</em> = <code>false</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em> = <code><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt;T&gt;()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>&#160;</td>
+          <td class="paramname"><em>time</em> = <code><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Create a new <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> using the default constructor and return a shared pointer reference. This is the preferred method for manual creation with consistent lifecycle handling. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>Shared pointer to parent object. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">unit</td><td>UNECE unit code, e.g. MTR </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">constant</td><td>Boolean flag whether this value is cosnstant </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td>Allowed range for the variable values, defaults to an empty object, i.e. allowing all values </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>Timestamp for the initial value, defaults to unset </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00218">218</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<a id="a37602b6b8f95595a78b70a9b0eb865ad" name="a37602b6b8f95595a78b70a9b0eb865ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37602b6b8f95595a78b70a9b0eb865ad">&#9670;&nbsp;</a></span>handle_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::handle_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a GET method. This function returns a representation of the <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> and its current value to the requesting party. It should not be overridden directly in subclasses, instead the <code><a class="el" href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d" title="Read callback.">read()</a></code> function should be overriden.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00254">254</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<a id="ac58916de16e381e40123bf9633a151ad" name="ac58916de16e381e40123bf9633a151ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac58916de16e381e40123bf9633a151ad">&#9670;&nbsp;</a></span>handle_patch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::handle_patch </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a PATCH method. This function updates the value of a parameter. The request must at least contain a It should not be overridden directly in subclasses, instead the <code><a class="el" href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c" title="Write callback.">write()</a></code> function should be overriden.</p>
+<p >If an update is not not foreseen, you may consider overriding <code>allowed_methods</code> without PATCH. This is not enforced by default through the <code>constant</code> flag. The minimum requirement to the body is that it contains a value to assign. If a timestamp is provided, it will be set, otherwise the current server time is taken.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00268">268</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<a id="aadc9c63027042e0e834b183698e964b9" name="aadc9c63027042e0e834b183698e964b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadc9c63027042e0e834b183698e964b9">&#9670;&nbsp;</a></span>mqtt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::mqtt </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a> &gt;&#160;</td>
+          <td class="paramname"><em>publisher</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>qos</em> = <code>0</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>retain</em> = <code>false</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Publish the current JSON representation under the FQID as topic using a given <a class="el" href="namespace_m_q_t_t.html">MQTT</a> publisher. This function must be explicitly called from the user's code as otherwise the update cycle would depend on the publisher and the user will be left without control to call other methods before publishing.</p>
+<p >A good pattern is to have a reference to an <a class="el" href="namespace_m_q_t_t.html">MQTT</a> publisher in a sublcassing implementation and implement a complete update cycle there.</p>
+<dl class="section pre"><dt>Precondition</dt><dd>An <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">MQTT::Publisher</a> must be instantiated elsewhere and have a valid lifecycle.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">publisher</td><td>Reference to the publisher to use </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">qos</td><td>Quality of service to choose for <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">retain</td><td>Flag whether to retain the message on the server. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Boolean flag whether the message was accepted in the message queue.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000009">Todo:</a></b></dt><dd>Currently the implementation of this function is redundant in <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>. It is deliberately not moved to <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a> as different implementations may occur in the future, but would be a valid option. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00300">300</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<a id="a905eb12cd0e50cf245f2003643602acf" name="a905eb12cd0e50cf245f2003643602acf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a905eb12cd0e50cf245f2003643602acf">&#9670;&nbsp;</a></span>operator=()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt; &amp; <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::operator= </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Assigns the value provided as container on the right hand side to the parameter. Immediately resorts to the implementation in <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a> internally.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::range_error</td><td>Throws an exception if the value to assign is outside the allowed range.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to assign </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the current <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00225">225</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<a id="a3ee4708c79c724f7905eecb9e2b2cc08" name="a3ee4708c79c724f7905eecb9e2b2cc08"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ee4708c79c724f7905eecb9e2b2cc08">&#9670;&nbsp;</a></span>ptr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_parameter.html">Parameter</a> &gt; <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::ptr </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Return a shared pointer casted to the <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> type to element itself. </p><dl class="section return"><dt>Returns</dt><dd>Casted pointer </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00166">166</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<a id="a57567b4cfe6b370e9af7c3ef6f10be6d" name="a57567b4cfe6b370e9af7c3ef6f10be6d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57567b4cfe6b370e9af7c3ef6f10be6d">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::read </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage. Declared virtual to make sure the derived method is called first. Does nothing be default. </p>
+
+<p>Implements <a class="el" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">SOIL::Figure&lt; T, -1, -1 &gt;</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00243">243</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<a id="aec2434faa57778dbc8783ec77a86d627" name="aec2434faa57778dbc8783ec77a86d627"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec2434faa57778dbc8783ec77a86d627">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Get a <a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON object corresponding to the current state of the <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>. This function provides a SOIL-conformant JSON representation the parameter. It internally extends the method of <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a>.</p>
+<dl class="section return"><dt>Returns</dt><dd>JSON object </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00233">233</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<a id="af378abd9212084ebb270383d3cd4300c" name="af378abd9212084ebb270383d3cd4300c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af378abd9212084ebb270383d3cd4300c">&#9670;&nbsp;</a></span>write()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::write </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Write callback that can be implemented by deriving classes to perform custom build logic on write actions, e.g.set a value to an external system. Declared virtual to make sure the derived method is called first. Does nothing be default. </p>
+
+<p>Implements <a class="el" href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">SOIL::Figure&lt; T, -1, -1 &gt;</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00248">248</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="aed57214457012af12a859669e182e841" name="aed57214457012af12a859669e182e841"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aed57214457012af12a859669e182e841">&#9670;&nbsp;</a></span>constant</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter</a>&lt; T, x, y &gt;::constant</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Boolean flag whether this parameter should be considered as constant. </p>
+
+<p class="definition">Definition at line <a class="el" href="_parameter_8h_source.html#l00046">46</a> of file <a class="el" href="_parameter_8h_source.html">Parameter.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>src/SOIL/<a class="el" href="_parameter_8h_source.html">Parameter.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_parameter.html">Parameter</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_parameter.js b/doc/html/class_s_o_i_l_1_1_parameter.js
new file mode 100644
index 0000000000000000000000000000000000000000..bdb6e983cd665f67086f26c8d0981da92bdf42d7
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_parameter.js
@@ -0,0 +1,14 @@
+var class_s_o_i_l_1_1_parameter =
+[
+    [ "Parameter", "class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4", null ],
+    [ "~Parameter", "class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5", null ],
+    [ "handle_get", "class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad", null ],
+    [ "handle_patch", "class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad", null ],
+    [ "mqtt", "class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9", null ],
+    [ "operator=", "class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf", null ],
+    [ "ptr", "class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08", null ],
+    [ "read", "class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d", null ],
+    [ "wjson", "class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627", null ],
+    [ "write", "class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c", null ],
+    [ "constant", "class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_parameter.png b/doc/html/class_s_o_i_l_1_1_parameter.png
new file mode 100644
index 0000000000000000000000000000000000000000..fbb7c9805a9023b4834ee113e291108398eee22c
Binary files /dev/null and b/doc/html/class_s_o_i_l_1_1_parameter.png differ
diff --git a/doc/html/class_s_o_i_l_1_1_range-members.html b/doc/html/class_s_o_i_l_1_1_range-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..627c715322f19d87232fc22b74158acb37608dcb
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_range-members.html
@@ -0,0 +1,107 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_range.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Range&lt; T &gt; Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt; T &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">check</a>(const T &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">Range</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html#a97c8857f5b22eb87ca35c1c21a1bd814">Range</a>(T low, T high)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html#a7f49766e22783da9259eee242663581b">Range</a>(std::vector&lt; T &gt; limits)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">wjson</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">~Range</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range&lt; T &gt;</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_range.html b/doc/html/class_s_o_i_l_1_1_range.html
new file mode 100644
index 0000000000000000000000000000000000000000..48656f4b0f5f2344754ff0aae4f5b6b382f50846
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_range.html
@@ -0,0 +1,307 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Range&lt; T &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_range.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_s_o_i_l_1_1_range-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Range&lt; T &gt; Class Template Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> Helper Class.  
+ <a href="class_s_o_i_l_1_1_range.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_range_8h_source.html">Range.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a958a4969a97f2eb69c9732c66dc3393e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">Range</a> ()</td></tr>
+<tr class="memdesc:a958a4969a97f2eb69c9732c66dc3393e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Constructor.  <a href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">More...</a><br /></td></tr>
+<tr class="separator:a958a4969a97f2eb69c9732c66dc3393e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97c8857f5b22eb87ca35c1c21a1bd814"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range.html#a97c8857f5b22eb87ca35c1c21a1bd814">Range</a> (T low, T high)</td></tr>
+<tr class="memdesc:a97c8857f5b22eb87ca35c1c21a1bd814"><td class="mdescLeft">&#160;</td><td class="mdescRight">Argument constructor.  <a href="class_s_o_i_l_1_1_range.html#a97c8857f5b22eb87ca35c1c21a1bd814">More...</a><br /></td></tr>
+<tr class="separator:a97c8857f5b22eb87ca35c1c21a1bd814"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f49766e22783da9259eee242663581b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range.html#a7f49766e22783da9259eee242663581b">Range</a> (std::vector&lt; T &gt; limits)</td></tr>
+<tr class="memdesc:a7f49766e22783da9259eee242663581b"><td class="mdescLeft">&#160;</td><td class="mdescRight">List constructor.  <a href="class_s_o_i_l_1_1_range.html#a7f49766e22783da9259eee242663581b">More...</a><br /></td></tr>
+<tr class="separator:a7f49766e22783da9259eee242663581b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae371a8bd8d3c27d3e77b4e563084b19b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">~Range</a> ()</td></tr>
+<tr class="memdesc:ae371a8bd8d3c27d3e77b4e563084b19b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">More...</a><br /></td></tr>
+<tr class="separator:ae371a8bd8d3c27d3e77b4e563084b19b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65b2542daa4ce48d6738533e6e417ade"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">wjson</a> (void)</td></tr>
+<tr class="memdesc:a65b2542daa4ce48d6738533e6e417ade"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">More...</a><br /></td></tr>
+<tr class="separator:a65b2542daa4ce48d6738533e6e417ade"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98473208bab6e8563fef085b9c71cd53"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">check</a> (const T &amp;value)</td></tr>
+<tr class="memdesc:a98473208bab6e8563fef085b9c71cd53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check.  <a href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">More...</a><br /></td></tr>
+<tr class="separator:a98473208bab6e8563fef085b9c71cd53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><div class="compoundTemplParams">template&lt;typename T&gt;<br />
+class SOIL::Range&lt; T &gt;</div><p >Class to represent the acceptable range of a figure. This class is templated to be applicable to all types. For numerical values, the range indicates a lower and upper limit which may be validly assigned. The limit values are included. The same holds for times. For strings, it indicates the minimum and maximum length. For enumerations, this is a list of applicable choices. For these types, the template is explicitly implemented differently. The range can be explicitly unset to provide an easy default member implementation.</p>
+<p >There is no set function, if the range changes, a new instance of this lightweight class should be created.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Datatype for which the range is defined </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_range_8h_source.html#l00024">24</a> of file <a class="el" href="_range_8h_source.html">Range.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a958a4969a97f2eb69c9732c66dc3393e" name="a958a4969a97f2eb69c9732c66dc3393e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a958a4969a97f2eb69c9732c66dc3393e">&#9670;&nbsp;</a></span>Range() <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;::Range</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default Constructor, sets no limits and initializes <code>set</code> to false. </p>
+
+<p class="definition">Definition at line <a class="el" href="_range_8cpp_source.html#l00058">58</a> of file <a class="el" href="_range_8cpp_source.html">Range.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a97c8857f5b22eb87ca35c1c21a1bd814" name="a97c8857f5b22eb87ca35c1c21a1bd814"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97c8857f5b22eb87ca35c1c21a1bd814">&#9670;&nbsp;</a></span>Range() <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;::Range </td>
+          <td>(</td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>low</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>high</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructs the range and initialized lower and upper limit with the provided values.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">low</td><td>Lower limit </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">high</td><td>Upper limit </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_range_8h_source.html#l00151">151</a> of file <a class="el" href="_range_8h_source.html">Range.h</a>.</p>
+
+</div>
+</div>
+<a id="a7f49766e22783da9259eee242663581b" name="a7f49766e22783da9259eee242663581b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f49766e22783da9259eee242663581b">&#9670;&nbsp;</a></span>Range() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;::Range </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>limits</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructs the range and initialized lower and upper limit with the provided vector. This is constructor can be conveniently initialized with the list notation {low, high}.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">limits</td><td>Vector of length 2 for initialization </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_range_8h_source.html#l00156">156</a> of file <a class="el" href="_range_8h_source.html">Range.h</a>.</p>
+
+</div>
+</div>
+<a id="ae371a8bd8d3c27d3e77b4e563084b19b" name="ae371a8bd8d3c27d3e77b4e563084b19b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae371a8bd8d3c27d3e77b4e563084b19b">&#9670;&nbsp;</a></span>~Range()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;::~<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard desctructor, no custom implementation. </p>
+
+<p class="definition">Definition at line <a class="el" href="_range_8cpp_source.html#l00068">68</a> of file <a class="el" href="_range_8cpp_source.html">Range.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a98473208bab6e8563fef085b9c71cd53" name="a98473208bab6e8563fef085b9c71cd53"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a98473208bab6e8563fef085b9c71cd53">&#9670;&nbsp;</a></span>check()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;::check </td>
+          <td>(</td>
+          <td class="paramtype">const T &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Check whether a given value is inside the prescribed range or not. If <code>set</code> is false, it always returns to true. The limits are included in the valid range, i.e. it is checked with <code>&lt;=</code> and <code>&gt;=</code>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to check </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Check result als boolean, i.e. true if in range </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_range_8cpp_source.html#l00085">85</a> of file <a class="el" href="_range_8cpp_source.html">Range.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a65b2542daa4ce48d6738533e6e417ade" name="a65b2542daa4ce48d6738533e6e417ade"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65b2542daa4ce48d6738533e6e417ade">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; T &gt;::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Returns the <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> conformant partial representation of the range of <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a>, i.e. <em>null</em> if not set. </p><dl class="section return"><dt>Returns</dt><dd>JSON <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_range_8cpp_source.html#l00072">72</a> of file <a class="el" href="_range_8cpp_source.html">Range.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SOIL/<a class="el" href="_range_8h_source.html">Range.h</a></li>
+<li>src/SOIL/<a class="el" href="_range_8cpp_source.html">Range.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_range.js b/doc/html/class_s_o_i_l_1_1_range.js
new file mode 100644
index 0000000000000000000000000000000000000000..81ca8bc6afdbccb00963af98c82486a051912f06
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_range.js
@@ -0,0 +1,9 @@
+var class_s_o_i_l_1_1_range =
+[
+    [ "Range", "class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e", null ],
+    [ "Range", "class_s_o_i_l_1_1_range.html#a97c8857f5b22eb87ca35c1c21a1bd814", null ],
+    [ "Range", "class_s_o_i_l_1_1_range.html#a7f49766e22783da9259eee242663581b", null ],
+    [ "~Range", "class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b", null ],
+    [ "check", "class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53", null ],
+    [ "wjson", "class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4-members.html b/doc/html/class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..42723ba3d962f27ccfcc37745124490a30907646
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4-members.html
@@ -0,0 +1,107 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Range&lt; ENUM &gt; Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">SOIL::Range&lt; ENUM &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b">check</a>(const std::string &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">SOIL::Range&lt; ENUM &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#afd07b4bbc51b9b69f1ad8798fcc77fa6">check</a>(const SOIL::ENUM &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">SOIL::Range&lt; ENUM &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38">Range</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">SOIL::Range&lt; ENUM &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#abd3d86c944aa61089231909a8d24e7f8">Range</a>(std::vector&lt; std::string &gt; choices)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">SOIL::Range&lt; ENUM &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3">wjson</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">SOIL::Range&lt; ENUM &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c">~Range</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">SOIL::Range&lt; ENUM &gt;</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html b/doc/html/class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html
new file mode 100644
index 0000000000000000000000000000000000000000..9a1351056821becbfa5e72cb3d92457264f1d37d
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html
@@ -0,0 +1,238 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Range&lt; ENUM &gt; Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Range&lt; ENUM &gt; Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a>.  
+ <a href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_range_8h_source.html">Range.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ab17c214a8c1af57e06e292b19ce1ae38"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38">Range</a> ()</td></tr>
+<tr class="separator:ab17c214a8c1af57e06e292b19ce1ae38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd3d86c944aa61089231909a8d24e7f8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#abd3d86c944aa61089231909a8d24e7f8">Range</a> (std::vector&lt; std::string &gt; choices)</td></tr>
+<tr class="separator:abd3d86c944aa61089231909a8d24e7f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac783001a590c29c1b9f128d3ad293c2c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c">~Range</a> ()</td></tr>
+<tr class="separator:ac783001a590c29c1b9f128d3ad293c2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb0783d3e05740740715a4fb8948a2d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3">wjson</a> (void)</td></tr>
+<tr class="separator:acb0783d3e05740740715a4fb8948a2d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4099d35a82c3b57745d3c4d0165f590b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b">check</a> (const std::string &amp;value)</td></tr>
+<tr class="separator:a4099d35a82c3b57745d3c4d0165f590b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd07b4bbc51b9b69f1ad8798fcc77fa6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#afd07b4bbc51b9b69f1ad8798fcc77fa6">check</a> (const <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &amp;value)</td></tr>
+<tr class="separator:afd07b4bbc51b9b69f1ad8798fcc77fa6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Specialization of <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> for enumerations, where the limit is a set of applicable choices. </p>
+
+<p class="definition">Definition at line <a class="el" href="_range_8h_source.html#l00131">131</a> of file <a class="el" href="_range_8h_source.html">Range.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ab17c214a8c1af57e06e292b19ce1ae38" name="ab17c214a8c1af57e06e292b19ce1ae38"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab17c214a8c1af57e06e292b19ce1ae38">&#9670;&nbsp;</a></span>Range() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">ENUM</a> &gt;::Range </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="abd3d86c944aa61089231909a8d24e7f8" name="abd3d86c944aa61089231909a8d24e7f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd3d86c944aa61089231909a8d24e7f8">&#9670;&nbsp;</a></span>Range() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">ENUM</a> &gt;::Range </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::string &gt;&#160;</td>
+          <td class="paramname"><em>choices</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ac783001a590c29c1b9f128d3ad293c2c" name="ac783001a590c29c1b9f128d3ad293c2c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac783001a590c29c1b9f128d3ad293c2c">&#9670;&nbsp;</a></span>~Range()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">ENUM</a> &gt;::~<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a> </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="afd07b4bbc51b9b69f1ad8798fcc77fa6" name="afd07b4bbc51b9b69f1ad8798fcc77fa6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afd07b4bbc51b9b69f1ad8798fcc77fa6">&#9670;&nbsp;</a></span>check() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">ENUM</a> &gt;::check </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a4099d35a82c3b57745d3c4d0165f590b" name="a4099d35a82c3b57745d3c4d0165f590b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4099d35a82c3b57745d3c4d0165f590b">&#9670;&nbsp;</a></span>check() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">ENUM</a> &gt;::check </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="acb0783d3e05740740715a4fb8948a2d3" name="acb0783d3e05740740715a4fb8948a2d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb0783d3e05740740715a4fb8948a2d3">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">ENUM</a> &gt;::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>src/SOIL/<a class="el" href="_range_8h_source.html">Range.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">Range&lt; ENUM &gt;</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.js b/doc/html/class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..2740bfdd8dba60cfc3e86d49e084e33bfbfa0027
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.js
@@ -0,0 +1,9 @@
+var class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4 =
+[
+    [ "Range", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38", null ],
+    [ "Range", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#abd3d86c944aa61089231909a8d24e7f8", null ],
+    [ "~Range", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c", null ],
+    [ "check", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#afd07b4bbc51b9b69f1ad8798fcc77fa6", null ],
+    [ "check", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b", null ],
+    [ "wjson", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_range_3_01std_1_1string_01_4-members.html b/doc/html/class_s_o_i_l_1_1_range_3_01std_1_1string_01_4-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..4c95c4dda09480a257ba95ee9ab94c1ab3ed2dac
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_range_3_01std_1_1string_01_4-members.html
@@ -0,0 +1,107 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Range&lt; std::string &gt; Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">SOIL::Range&lt; std::string &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a030f2f9b3f2e56f0e832956e069226d2">check</a>(const std::string &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">SOIL::Range&lt; std::string &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a635b0935b69730c81232c9f26267e5ec">Range</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">SOIL::Range&lt; std::string &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a940f37a4449075b3d335deb546644df1">Range</a>(size_t low, size_t high)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">SOIL::Range&lt; std::string &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ae8c03e56fc933a95c0fec0d69b81da55">Range</a>(std::vector&lt; size_t &gt; limits)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">SOIL::Range&lt; std::string &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ad5847bdeceb2dcf632de0e7c0c3bc73f">wjson</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">SOIL::Range&lt; std::string &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a280aacb2fb5b4ad22c866a83671967c5">~Range</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">SOIL::Range&lt; std::string &gt;</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html b/doc/html/class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html
new file mode 100644
index 0000000000000000000000000000000000000000..ff68f11287bf9b3f2e6781213baf70b6c2504ee2
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html
@@ -0,0 +1,261 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Range&lt; std::string &gt; Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Range&lt; std::string &gt; Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>String <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a>.  
+ <a href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_range_8h_source.html">Range.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a635b0935b69730c81232c9f26267e5ec"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a635b0935b69730c81232c9f26267e5ec">Range</a> ()</td></tr>
+<tr class="separator:a635b0935b69730c81232c9f26267e5ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a940f37a4449075b3d335deb546644df1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a940f37a4449075b3d335deb546644df1">Range</a> (size_t low, size_t high)</td></tr>
+<tr class="separator:a940f37a4449075b3d335deb546644df1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8c03e56fc933a95c0fec0d69b81da55"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ae8c03e56fc933a95c0fec0d69b81da55">Range</a> (std::vector&lt; size_t &gt; limits)</td></tr>
+<tr class="separator:ae8c03e56fc933a95c0fec0d69b81da55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a280aacb2fb5b4ad22c866a83671967c5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a280aacb2fb5b4ad22c866a83671967c5">~Range</a> ()</td></tr>
+<tr class="separator:a280aacb2fb5b4ad22c866a83671967c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5847bdeceb2dcf632de0e7c0c3bc73f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ad5847bdeceb2dcf632de0e7c0c3bc73f">wjson</a> (void)</td></tr>
+<tr class="separator:ad5847bdeceb2dcf632de0e7c0c3bc73f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a030f2f9b3f2e56f0e832956e069226d2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a030f2f9b3f2e56f0e832956e069226d2">check</a> (const std::string &amp;value)</td></tr>
+<tr class="separator:a030f2f9b3f2e56f0e832956e069226d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Specialization of <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> for strings, where the limits correspond to minimal and maximum length. </p>
+
+<p class="definition">Definition at line <a class="el" href="_range_8h_source.html#l00110">110</a> of file <a class="el" href="_range_8h_source.html">Range.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a635b0935b69730c81232c9f26267e5ec" name="a635b0935b69730c81232c9f26267e5ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a635b0935b69730c81232c9f26267e5ec">&#9670;&nbsp;</a></span>Range() <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; std::string &gt;::Range </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_range_8cpp_source.html#l00003">3</a> of file <a class="el" href="_range_8cpp_source.html">Range.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a940f37a4449075b3d335deb546644df1" name="a940f37a4449075b3d335deb546644df1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a940f37a4449075b3d335deb546644df1">&#9670;&nbsp;</a></span>Range() <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; std::string &gt;::Range </td>
+          <td>(</td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>low</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>high</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_range_8cpp_source.html#l00007">7</a> of file <a class="el" href="_range_8cpp_source.html">Range.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ae8c03e56fc933a95c0fec0d69b81da55" name="ae8c03e56fc933a95c0fec0d69b81da55"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8c03e56fc933a95c0fec0d69b81da55">&#9670;&nbsp;</a></span>Range() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; std::string &gt;::Range </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; size_t &gt;&#160;</td>
+          <td class="paramname"><em>limits</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_range_8cpp_source.html#l00011">11</a> of file <a class="el" href="_range_8cpp_source.html">Range.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a280aacb2fb5b4ad22c866a83671967c5" name="a280aacb2fb5b4ad22c866a83671967c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a280aacb2fb5b4ad22c866a83671967c5">&#9670;&nbsp;</a></span>~Range()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; std::string &gt;::~<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a> </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_range_8cpp_source.html#l00029">29</a> of file <a class="el" href="_range_8cpp_source.html">Range.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a030f2f9b3f2e56f0e832956e069226d2" name="a030f2f9b3f2e56f0e832956e069226d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a030f2f9b3f2e56f0e832956e069226d2">&#9670;&nbsp;</a></span>check()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; std::string &gt;::check </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_range_8cpp_source.html#l00044">44</a> of file <a class="el" href="_range_8cpp_source.html">Range.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ad5847bdeceb2dcf632de0e7c0c3bc73f" name="ad5847bdeceb2dcf632de0e7c0c3bc73f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad5847bdeceb2dcf632de0e7c0c3bc73f">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">web::json::value <a class="el" href="class_s_o_i_l_1_1_range.html">SOIL::Range</a>&lt; std::string &gt;::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_range_8cpp_source.html#l00033">33</a> of file <a class="el" href="_range_8cpp_source.html">Range.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SOIL/<a class="el" href="_range_8h_source.html">Range.h</a></li>
+<li>src/SOIL/<a class="el" href="_range_8cpp_source.html">Range.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">Range&lt; std::string &gt;</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.js b/doc/html/class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..a7d781e3aca74b59293b13537dfe49ee861621fa
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.js
@@ -0,0 +1,9 @@
+var class_s_o_i_l_1_1_range_3_01std_1_1string_01_4 =
+[
+    [ "Range", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a635b0935b69730c81232c9f26267e5ec", null ],
+    [ "Range", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a940f37a4449075b3d335deb546644df1", null ],
+    [ "Range", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ae8c03e56fc933a95c0fec0d69b81da55", null ],
+    [ "~Range", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a280aacb2fb5b4ad22c866a83671967c5", null ],
+    [ "check", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a030f2f9b3f2e56f0e832956e069226d2", null ],
+    [ "wjson", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ad5847bdeceb2dcf632de0e7c0c3bc73f", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_time-members.html b/doc/html/class_s_o_i_l_1_1_time-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..b375769393a89caaea74bdcdfd26bddf0bbbbbc5
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_time-members.html
@@ -0,0 +1,112 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_time.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Time Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">is_null</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda">operator&lt;=</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa">operator&gt;=</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">rfc3339</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993">serialize</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f">set_null</a>(bool _null=true)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">Time</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#a7e51f091b04752599a4086ea3b0856f4">Time</a>(std::string value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#ac84bbf33a7816b4502795d68a5e62486">Time</a>(boost::posix_time::ptime value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">utc_now</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16">~Time</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_time.html b/doc/html/class_s_o_i_l_1_1_time.html
new file mode 100644
index 0000000000000000000000000000000000000000..d3bf141e2d2ad494d0ec2faac46b2c8a36eda9c5
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_time.html
@@ -0,0 +1,501 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Time Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_time.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="class_s_o_i_l_1_1_time-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Time Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a>.  
+ <a href="class_s_o_i_l_1_1_time.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_time_8h_source.html">Time.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a8b1d27ee800ce3dddeb38356c5edb86d"><td class="memItemLeft" align="right" valign="top">DLL std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">rfc3339</a> (void) const</td></tr>
+<tr class="memdesc:a8b1d27ee800ce3dddeb38356c5edb86d"><td class="mdescLeft">&#160;</td><td class="mdescRight">RFC3339 representation.  <a href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">More...</a><br /></td></tr>
+<tr class="separator:a8b1d27ee800ce3dddeb38356c5edb86d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60eb480cb5dca0fbcd090b2e85e7ebaf"><td class="memItemLeft" align="right" valign="top">DLL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">Time</a> ()</td></tr>
+<tr class="memdesc:a60eb480cb5dca0fbcd090b2e85e7ebaf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Uninitialized Constructor.  <a href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">More...</a><br /></td></tr>
+<tr class="separator:a60eb480cb5dca0fbcd090b2e85e7ebaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e51f091b04752599a4086ea3b0856f4"><td class="memItemLeft" align="right" valign="top">DLL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#a7e51f091b04752599a4086ea3b0856f4">Time</a> (std::string value)</td></tr>
+<tr class="memdesc:a7e51f091b04752599a4086ea3b0856f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">String Constructor.  <a href="class_s_o_i_l_1_1_time.html#a7e51f091b04752599a4086ea3b0856f4">More...</a><br /></td></tr>
+<tr class="separator:a7e51f091b04752599a4086ea3b0856f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac84bbf33a7816b4502795d68a5e62486"><td class="memItemLeft" align="right" valign="top">DLL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#ac84bbf33a7816b4502795d68a5e62486">Time</a> (boost::posix_time::ptime value)</td></tr>
+<tr class="memdesc:ac84bbf33a7816b4502795d68a5e62486"><td class="mdescLeft">&#160;</td><td class="mdescRight">Posix <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> Construtor.  <a href="class_s_o_i_l_1_1_time.html#ac84bbf33a7816b4502795d68a5e62486">More...</a><br /></td></tr>
+<tr class="separator:ac84bbf33a7816b4502795d68a5e62486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fe6292ab3b05d9107c6884dfbb5da16"><td class="memItemLeft" align="right" valign="top">DLL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16">~Time</a> ()</td></tr>
+<tr class="memdesc:a5fe6292ab3b05d9107c6884dfbb5da16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16">More...</a><br /></td></tr>
+<tr class="separator:a5fe6292ab3b05d9107c6884dfbb5da16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5248a0ed5db231883fd8d1ee34ab2325"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">is_null</a> (void) const</td></tr>
+<tr class="memdesc:a5248a0ed5db231883fd8d1ee34ab2325"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is Null?  <a href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">More...</a><br /></td></tr>
+<tr class="separator:a5248a0ed5db231883fd8d1ee34ab2325"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78fdd7cac3e6ce1141080c35efd5f95f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f">set_null</a> (bool _null=true)</td></tr>
+<tr class="memdesc:a78fdd7cac3e6ce1141080c35efd5f95f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set null.  <a href="class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f">More...</a><br /></td></tr>
+<tr class="separator:a78fdd7cac3e6ce1141080c35efd5f95f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf817530c975ea5bfce48be781a55993"><td class="memItemLeft" align="right" valign="top">DLL std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993">serialize</a> (void) const</td></tr>
+<tr class="memdesc:abf817530c975ea5bfce48be781a55993"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bytewise serialization.  <a href="class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993">More...</a><br /></td></tr>
+<tr class="separator:abf817530c975ea5bfce48be781a55993"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:ae06629b296dcd9b01b6019101a020208"><td class="memItemLeft" align="right" valign="top">static DLL boost::posix_time::ptime&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">utc_now</a> (void)</td></tr>
+<tr class="memdesc:ae06629b296dcd9b01b6019101a020208"><td class="mdescLeft">&#160;</td><td class="mdescRight">Current <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a>.  <a href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">More...</a><br /></td></tr>
+<tr class="separator:ae06629b296dcd9b01b6019101a020208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:abe58e5fa4fc2cb986785a751fa6807aa"><td class="memItemLeft" align="right" valign="top">DLL bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa">operator&gt;=</a> (const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;t1, const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;t2)</td></tr>
+<tr class="memdesc:abe58e5fa4fc2cb986785a751fa6807aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Friend Operator &gt;=.  <a href="class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa">More...</a><br /></td></tr>
+<tr class="separator:abe58e5fa4fc2cb986785a751fa6807aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a155e5f5e05694a584161bcc064d57eda"><td class="memItemLeft" align="right" valign="top">DLL bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda">operator&lt;=</a> (const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;t1, const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;t2)</td></tr>
+<tr class="memdesc:a155e5f5e05694a584161bcc064d57eda"><td class="mdescLeft">&#160;</td><td class="mdescRight">Friend Operator &lt;=.  <a href="class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda">More...</a><br /></td></tr>
+<tr class="separator:a155e5f5e05694a584161bcc064d57eda"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Speial <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> class for <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> to implement the necessary functionality. </p>
+
+<p class="definition">Definition at line <a class="el" href="_time_8h_source.html#l00012">12</a> of file <a class="el" href="_time_8h_source.html">Time.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a60eb480cb5dca0fbcd090b2e85e7ebaf" name="a60eb480cb5dca0fbcd090b2e85e7ebaf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a60eb480cb5dca0fbcd090b2e85e7ebaf">&#9670;&nbsp;</a></span>Time() <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Time::Time </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Construct an uninitialized <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> instance, where the <code>_null</code> flag is set to true. </p>
+
+<p class="definition">Definition at line <a class="el" href="_time_8cpp_source.html#l00027">27</a> of file <a class="el" href="_time_8cpp_source.html">Time.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a7e51f091b04752599a4086ea3b0856f4" name="a7e51f091b04752599a4086ea3b0856f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7e51f091b04752599a4086ea3b0856f4">&#9670;&nbsp;</a></span>Time() <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Time::Time </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructs a <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> object from an RFC3339 string. If an empty string is passed, the <code>_null</code> flag is set to true.</p>
+<p >The exceptions from the underlying boost implementation are passed through.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>RFC3339 string of the time to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_time_8cpp_source.html#l00031">31</a> of file <a class="el" href="_time_8cpp_source.html">Time.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ac84bbf33a7816b4502795d68a5e62486" name="ac84bbf33a7816b4502795d68a5e62486"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac84bbf33a7816b4502795d68a5e62486">&#9670;&nbsp;</a></span>Time() <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Time::Time </td>
+          <td>(</td>
+          <td class="paramtype">boost::posix_time::ptime&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructs a <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> object from a <code>boost::posix_time::ptime</code>. This is useful in conjuction with <code>now()</code>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td><a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> to set. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_time_8cpp_source.html#l00046">46</a> of file <a class="el" href="_time_8cpp_source.html">Time.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a5fe6292ab3b05d9107c6884dfbb5da16" name="a5fe6292ab3b05d9107c6884dfbb5da16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5fe6292ab3b05d9107c6884dfbb5da16">&#9670;&nbsp;</a></span>~Time()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">SOIL::Time::~Time </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default Destructor, there is no unexpected behaviour. </p>
+
+<p class="definition">Definition at line <a class="el" href="_time_8cpp_source.html#l00053">53</a> of file <a class="el" href="_time_8cpp_source.html">Time.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a5248a0ed5db231883fd8d1ee34ab2325" name="a5248a0ed5db231883fd8d1ee34ab2325"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5248a0ed5db231883fd8d1ee34ab2325">&#9670;&nbsp;</a></span>is_null()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::Time::is_null </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Returns whether the time is set to null.</p>
+<dl class="section return"><dt>Returns</dt><dd></dd></dl>
+<p>Is Null?</p>
+<p ><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> that returns true if the current data is set to null and false else.</p>
+<dl class="section return"><dt>Returns</dt><dd>Null flag </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_time_8h_source.html#l00092">92</a> of file <a class="el" href="_time_8h_source.html">Time.h</a>.</p>
+
+</div>
+</div>
+<a id="a8b1d27ee800ce3dddeb38356c5edb86d" name="a8b1d27ee800ce3dddeb38356c5edb86d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8b1d27ee800ce3dddeb38356c5edb86d">&#9670;&nbsp;</a></span>rfc3339()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string SOIL::Time::rfc3339 </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Return a RFC3339 conformant representation of the time, e.g. 2021-06-07T22:01:23.078162Z as string. This is the main time representation used in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a>.</p>
+<dl class="section return"><dt>Returns</dt><dd>RFC3339 string </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_time_8cpp_source.html#l00006">6</a> of file <a class="el" href="_time_8cpp_source.html">Time.cpp</a>.</p>
+
+</div>
+</div>
+<a id="abf817530c975ea5bfce48be781a55993" name="abf817530c975ea5bfce48be781a55993"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abf817530c975ea5bfce48be781a55993">&#9670;&nbsp;</a></span>serialize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; SOIL::Time::serialize </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Bytewise serialization of the time for hashing purpose. The components are serialized in the following order:</p><ul>
+<li>uint16_t of the year</li>
+<li>uint8_t of the month</li>
+<li>uint8_t of the day</li>
+<li>uint8_t of the hour</li>
+<li>uint8_t of the minute</li>
+<li>unit8_t of the seconds</li>
+<li>uint32_t of the nanoseconds</li>
+</ul>
+<dl class="section return"><dt>Returns</dt><dd>Serialized Bytestring </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_time_8cpp_source.html#l00062">62</a> of file <a class="el" href="_time_8cpp_source.html">Time.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a78fdd7cac3e6ce1141080c35efd5f95f" name="a78fdd7cac3e6ce1141080c35efd5f95f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a78fdd7cac3e6ce1141080c35efd5f95f">&#9670;&nbsp;</a></span>set_null()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SOIL::Time::set_null </td>
+          <td>(</td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>_null</em> = <code>true</code></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p ><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> to set the null status of the data container </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">_null</td><td>Boolean state flag </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_time_8h_source.html#l00100">100</a> of file <a class="el" href="_time_8h_source.html">Time.h</a>.</p>
+
+</div>
+</div>
+<a id="ae06629b296dcd9b01b6019101a020208" name="ae06629b296dcd9b01b6019101a020208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae06629b296dcd9b01b6019101a020208">&#9670;&nbsp;</a></span>utc_now()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">boost::posix_time::ptime SOIL::Time::utc_now </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Returns the current UTC time as <code>boost::posix_time::ptime</code> to allow for quick access in implementations using this library. Thanks to the corresponding constructor, this function can also be used in assignments.</p>
+<dl class="section return"><dt>Returns</dt><dd>Current UTC time </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_time_8cpp_source.html#l00057">57</a> of file <a class="el" href="_time_8cpp_source.html">Time.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a id="a155e5f5e05694a584161bcc064d57eda" name="a155e5f5e05694a584161bcc064d57eda"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a155e5f5e05694a584161bcc064d57eda">&#9670;&nbsp;</a></span>operator&lt;=</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL bool operator&lt;= </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;&#160;</td>
+          <td class="paramname"><em>t1</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;&#160;</td>
+          <td class="paramname"><em>t2</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Friend declaration of the &lt;= operator, needed for correcet implementation.</p>
+<p >Lower or equal operation for two <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> objects, which is needed for the correct implementation of the <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> class.</p>
+<p >Returns true if <code>t1</code> &lt;= <code>t2</code>, otherwise false. If one of the <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> objects is set to null, the operation returns false.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">t1</td><td>Left hand side time </td></tr>
+    <tr><td class="paramname">t2</td><td>Right hand side time </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Comparison result as boolean </dd></dl>
+
+</div>
+</div>
+<a id="abe58e5fa4fc2cb986785a751fa6807aa" name="abe58e5fa4fc2cb986785a751fa6807aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe58e5fa4fc2cb986785a751fa6807aa">&#9670;&nbsp;</a></span>operator&gt;=</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL bool operator&gt;= </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;&#160;</td>
+          <td class="paramname"><em>t1</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;&#160;</td>
+          <td class="paramname"><em>t2</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Friend declaration of the &gt;= operator, needed for correcet implementation.</p>
+<p >Greater or equal operation for two <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> objects, which is needed for the correct implementation of the <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> class.</p>
+<p >Returns true if <code>t1</code> &gt;= <code>t2</code>, otherwise false. If one of the <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> objects is set to null, the operation returns false.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">t1</td><td>Left hand side time </td></tr>
+    <tr><td class="paramname">t2</td><td>Right hand side time </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Comparison result as boolean </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/SOIL/<a class="el" href="_time_8h_source.html">Time.h</a></li>
+<li>src/SOIL/<a class="el" href="_time_8cpp_source.html">Time.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_time.html">Time</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_time.js b/doc/html/class_s_o_i_l_1_1_time.js
new file mode 100644
index 0000000000000000000000000000000000000000..95a531cbb0a338dd0fb71d0ffec782f38a2fed15
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_time.js
@@ -0,0 +1,13 @@
+var class_s_o_i_l_1_1_time =
+[
+    [ "Time", "class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf", null ],
+    [ "Time", "class_s_o_i_l_1_1_time.html#a7e51f091b04752599a4086ea3b0856f4", null ],
+    [ "Time", "class_s_o_i_l_1_1_time.html#ac84bbf33a7816b4502795d68a5e62486", null ],
+    [ "~Time", "class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16", null ],
+    [ "is_null", "class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325", null ],
+    [ "rfc3339", "class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d", null ],
+    [ "serialize", "class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993", null ],
+    [ "set_null", "class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f", null ],
+    [ "operator<=", "class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda", null ],
+    [ "operator>=", "class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_variable-members.html b/doc/html/class_s_o_i_l_1_1_variable-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..9689886daa4d7500292bf4e0cc4533ff443cc191
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_variable-members.html
@@ -0,0 +1,171 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_variable.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL::Variable&lt; T, x, y &gt; Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a>(Response &amp;response)</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a">bytes</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">cast</a>(T value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">SOIL::Element::cast</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">check_range</a>(const Container&lt; T, x, y &gt; &amp;value) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639">covariance</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">create</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME(), std::string nonce=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">Figure</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7">fingerprint</a>(std::shared_ptr&lt; SIGN::Signer &gt; signer)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a>(HTTP::Request request, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a>(Request message, std::exception &amp;exception, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe">handle_get</a>(HTTP::Request message, std::smatch match=std::smatch()) override</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72">handle_options</a>(HTTP::Request message, std::smatch match=std::smatch()) override</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9">hash</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a>(std::string uuid, std::shared_ptr&lt; Element &gt; child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a>(std::string uuid, Element *child)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a>(void) const</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f">mqtt</a>(std::shared_ptr&lt; MQTT::Publisher &gt; publisher, int qos=0, bool retain=false)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">nonce</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">operator*</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d">operator=</a>(const Container&lt; T, x, y &gt; &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a>(std::string fqid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06">ptr</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7">read</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a>(std::string uuid)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a>(Request message, std::smatch match=std::smatch())</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4">set_covariance</a>(Container&lt; T, x, x &gt; covariance)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">set_range</a>(Range&lt; T &gt; range)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">set_time</a>(TIME time)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">set_value</a>(const Container&lt; T, x, y &gt; &amp;value)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e">sha256</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247">sign</a>(std::shared_ptr&lt; SIGN::Signer &gt; signer=NULL)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e">update</a>(const Container&lt; T, x, y &gt; &amp;value, TIME time, std::string nonce=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">Figure&lt; T, -1, -1 &gt;::update</a>(const Container&lt; T, x, y &gt; &amp;value, TIME time)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a></td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05">Variable</a>(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME(), std::string nonce=&quot;&quot;)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">wjson</a>(void) override</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb">write</a>(void)</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">~Figure</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a>()</td><td class="entry"><a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa">~Variable</a>()</td><td class="entry"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_variable.html b/doc/html/class_s_o_i_l_1_1_variable.html
new file mode 100644
index 0000000000000000000000000000000000000000..2048a228d04f3223c6092d19b37f33dd1743e8b7
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_variable.html
@@ -0,0 +1,1278 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL::Variable&lt; T, x, y &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_s_o_i_l_1_1_variable.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> &#124;
+<a href="class_s_o_i_l_1_1_variable-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">SOIL::Variable&lt; T, x, y &gt; Class Template Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> Class.  
+ <a href="class_s_o_i_l_1_1_variable.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_variable_8h_source.html">Variable.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for SOIL::Variable&lt; T, x, y &gt;:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_s_o_i_l_1_1_variable.png" usemap="#SOIL::Variable_3C_20T_2C_20x_2C_20y_20_3E_map" alt=""/>
+  <map id="SOIL::Variable_3C_20T_2C_20x_2C_20y_20_3E_map" name="SOIL::Variable_3C_20T_2C_20x_2C_20y_20_3E_map">
+<area href="class_s_o_i_l_1_1_figure.html" alt="SOIL::Figure&lt; T, -1, -1 &gt;" shape="rect" coords="0,112,160,136"/>
+<area href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element." alt="SOIL::Element" shape="rect" coords="0,56,160,80"/>
+<area href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class." alt="HTTP::Resource" shape="rect" coords="0,0,160,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a42d3242d0f2619bbedbe54473e5bde05"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05">Variable</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;, <a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>=<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;(), <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>=<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>(), std::string <a class="el" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">nonce</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:a42d3242d0f2619bbedbe54473e5bde05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05">More...</a><br /></td></tr>
+<tr class="separator:a42d3242d0f2619bbedbe54473e5bde05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb8683a103f7eed6be691c6057312baa"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa">~Variable</a> ()</td></tr>
+<tr class="memdesc:abb8683a103f7eed6be691c6057312baa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa">More...</a><br /></td></tr>
+<tr class="separator:abb8683a103f7eed6be691c6057312baa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85828d5d8162aff4c496c782a432b55d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_variable.html">Variable</a>&lt; T, x, y &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d">operator=</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a85828d5d8162aff4c496c782a432b55d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator.  <a href="class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d">More...</a><br /></td></tr>
+<tr class="separator:a85828d5d8162aff4c496c782a432b55d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37198446b18018989419984f3ec82c68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">wjson</a> (void) override</td></tr>
+<tr class="memdesc:a37198446b18018989419984f3ec82c68"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">More...</a><br /></td></tr>
+<tr class="separator:a37198446b18018989419984f3ec82c68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10c29b035a567af07850dd1f27e218fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match=std::smatch()) override</td></tr>
+<tr class="memdesc:a10c29b035a567af07850dd1f27e218fe"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe">More...</a><br /></td></tr>
+<tr class="separator:a10c29b035a567af07850dd1f27e218fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62d80e5cd14d377d3bea90e6332b0b72"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72">handle_options</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> message, std::smatch match=std::smatch()) override</td></tr>
+<tr class="memdesc:a62d80e5cd14d377d3bea90e6332b0b72"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> OPTIONS Handler.  <a href="class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72">More...</a><br /></td></tr>
+<tr class="separator:a62d80e5cd14d377d3bea90e6332b0b72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1c36ffeef15739332ebd39c3c63184e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e">update</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>, <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>, std::string <a class="el" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">nonce</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:ab1c36ffeef15739332ebd39c3c63184e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update value.  <a href="class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e">More...</a><br /></td></tr>
+<tr class="separator:ab1c36ffeef15739332ebd39c3c63184e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2bdfc0ecf346e6544ba897f86a5fa1e4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4">set_covariance</a> (<a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, x &gt; <a class="el" href="class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639">covariance</a>)</td></tr>
+<tr class="memdesc:a2bdfc0ecf346e6544ba897f86a5fa1e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Covariance.  <a href="class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4">More...</a><br /></td></tr>
+<tr class="separator:a2bdfc0ecf346e6544ba897f86a5fa1e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7eac644327edcff9e211b45e1905d2a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a">bytes</a> (void)</td></tr>
+<tr class="memdesc:ab7eac644327edcff9e211b45e1905d2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get bytewise representation.  <a href="class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a">More...</a><br /></td></tr>
+<tr class="separator:ab7eac644327edcff9e211b45e1905d2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04574823a93f387d4d1aaa4a7087f22e"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e">sha256</a> (void)</td></tr>
+<tr class="memdesc:a04574823a93f387d4d1aaa4a7087f22e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate SHA256.  <a href="class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e">More...</a><br /></td></tr>
+<tr class="separator:a04574823a93f387d4d1aaa4a7087f22e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf66dfb35361158c8c05cc5ed81bd247"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247">sign</a> (std::shared_ptr&lt; <a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a> &gt; signer=NULL)</td></tr>
+<tr class="memdesc:adf66dfb35361158c8c05cc5ed81bd247"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sign the variable data.  <a href="class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247">More...</a><br /></td></tr>
+<tr class="separator:adf66dfb35361158c8c05cc5ed81bd247"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaeba9a89d6c0b950246fff61ac221fa7"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7">fingerprint</a> (std::shared_ptr&lt; <a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a> &gt; signer)</td></tr>
+<tr class="memdesc:aaeba9a89d6c0b950246fff61ac221fa7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate RSA fingerprint.  <a href="class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7">More...</a><br /></td></tr>
+<tr class="separator:aaeba9a89d6c0b950246fff61ac221fa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a22c13c0c69fca4f40a3b25285e746e06"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_variable.html">Variable</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06">ptr</a> (void)</td></tr>
+<tr class="memdesc:a22c13c0c69fca4f40a3b25285e746e06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Pointer.  <a href="class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06">More...</a><br /></td></tr>
+<tr class="separator:a22c13c0c69fca4f40a3b25285e746e06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ef20bb80d404cba203ebe64a9c3296f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f">mqtt</a> (std::shared_ptr&lt; <a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a> &gt; publisher, int qos=0, bool retain=false)</td></tr>
+<tr class="memdesc:a8ef20bb80d404cba203ebe64a9c3296f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Publish to <a class="el" href="namespace_m_q_t_t.html">MQTT</a>.  <a href="class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f">More...</a><br /></td></tr>
+<tr class="separator:a8ef20bb80d404cba203ebe64a9c3296f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_s_o_i_l_1_1_figure"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_s_o_i_l_1_1_figure')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td></tr>
+<tr class="memitem:a8da920bd367b9a6ee8b70fcfa1f709ac inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">Figure</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;, <a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>=<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;(), <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>=<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>())</td></tr>
+<tr class="memdesc:a8da920bd367b9a6ee8b70fcfa1f709ac inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">More...</a><br /></td></tr>
+<tr class="separator:a8da920bd367b9a6ee8b70fcfa1f709ac inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f20334aa82abbb7d0e9d2322e5683d0 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">~Figure</a> ()</td></tr>
+<tr class="memdesc:a1f20334aa82abbb7d0e9d2322e5683d0 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">More...</a><br /></td></tr>
+<tr class="separator:a1f20334aa82abbb7d0e9d2322e5683d0 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e4d6c93a559d5e18178de9a79b472ec inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_figure.html">Figure</a>&lt; T, x, y &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">operator=</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a4e4d6c93a559d5e18178de9a79b472ec inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator.  <a href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">More...</a><br /></td></tr>
+<tr class="separator:a4e4d6c93a559d5e18178de9a79b472ec inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb3fe4e331a9a5f2f53b011309d6c937 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">operator*</a> (void)</td></tr>
+<tr class="memdesc:abb3fe4e331a9a5f2f53b011309d6c937 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access Operator.  <a href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">More...</a><br /></td></tr>
+<tr class="separator:abb3fe4e331a9a5f2f53b011309d6c937 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf9b99da1c712f54d758c492830a7566 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">check_range</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>) const</td></tr>
+<tr class="memdesc:aaf9b99da1c712f54d758c492830a7566 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check range.  <a href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">More...</a><br /></td></tr>
+<tr class="separator:aaf9b99da1c712f54d758c492830a7566 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af096fd3a66cdc35d18a1cbbf637dddf9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">set_range</a> (<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>)</td></tr>
+<tr class="memdesc:af096fd3a66cdc35d18a1cbbf637dddf9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Range.  <a href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">More...</a><br /></td></tr>
+<tr class="separator:af096fd3a66cdc35d18a1cbbf637dddf9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab47f2268fb3f31960ab7bc8473974b3e inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">set_time</a> (<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>)</td></tr>
+<tr class="memdesc:ab47f2268fb3f31960ab7bc8473974b3e inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Time.  <a href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">More...</a><br /></td></tr>
+<tr class="separator:ab47f2268fb3f31960ab7bc8473974b3e inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a358a1060f3f04ea4aa1cb0b7705af4d9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">set_value</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a358a1060f3f04ea4aa1cb0b7705af4d9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Value.  <a href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">More...</a><br /></td></tr>
+<tr class="separator:a358a1060f3f04ea4aa1cb0b7705af4d9 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca02467b79b6d4a9590553b612876b20 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">wjson</a> (void) override</td></tr>
+<tr class="memdesc:aca02467b79b6d4a9590553b612876b20 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">More...</a><br /></td></tr>
+<tr class="separator:aca02467b79b6d4a9590553b612876b20 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cebd6af4116112bb244b1444aa3a1da inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">cast</a> (T <a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>)</td></tr>
+<tr class="memdesc:a6cebd6af4116112bb244b1444aa3a1da inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cast to container.  <a href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">More...</a><br /></td></tr>
+<tr class="separator:a6cebd6af4116112bb244b1444aa3a1da inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65998054544cd71fdb47c0b1b956e883 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">update</a> (const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a>, <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>)</td></tr>
+<tr class="memdesc:a65998054544cd71fdb47c0b1b956e883 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update.  <a href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">More...</a><br /></td></tr>
+<tr class="separator:a65998054544cd71fdb47c0b1b956e883 inherit pub_methods_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_s_o_i_l_1_1_element"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_s_o_i_l_1_1_element')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memitem:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">Element</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">More...</a><br /></td></tr>
+<tr class="separator:ae31b32fb944a138ac955e07a5be9d652 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">~Element</a> ()</td></tr>
+<tr class="memdesc:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">More...</a><br /></td></tr>
+<tr class="separator:a4acd9dc20ed4e0926da2ba7e4a5af7ab inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a> (void)</td></tr>
+<tr class="memdesc:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">FQID.  <a href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">More...</a><br /></td></tr>
+<tr class="separator:ad0dff9864321178e13df316f1b317bcb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">operator[]</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">fqid</a>)</td></tr>
+<tr class="memdesc:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access Operator.  <a href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">More...</a><br /></td></tr>
+<tr class="separator:a4704591e187b8bf5344979d095703239 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">More...</a><br /></td></tr>
+<tr class="separator:a682f8e3123f99f13545db06e15a896bb inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">add</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3">More...</a><br /></td></tr>
+<tr class="separator:a90aba7aaad7c5e9695b239480e95cea3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; child)</td></tr>
+<tr class="memdesc:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">More...</a><br /></td></tr>
+<tr class="separator:a06d51f457b4412d64c3980a377fbc9f0 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">insert</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> *child)</td></tr>
+<tr class="memdesc:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add Child <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">More...</a><br /></td></tr>
+<tr class="separator:ad0d80de0520ce5366067512e07068e1e inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">remove</a> (std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>)</td></tr>
+<tr class="memdesc:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove Child element.  <a href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">More...</a><br /></td></tr>
+<tr class="separator:ae32f6b04a96ff98acfe29f884177f22f inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memTemplItemLeft" align="right" valign="top">T *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">cast</a> (void)</td></tr>
+<tr class="memdesc:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get dynamically casted pointer.  <a href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">More...</a><br /></td></tr>
+<tr class="separator:a6ef3653a14ca3245c529684e939b122d inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">is_object</a> (void) const</td></tr>
+<tr class="memdesc:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a>?  <a href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">More...</a><br /></td></tr>
+<tr class="separator:a8bd2f333fbe5c1b51218512c3ef8c9b3 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">is_variable</a> (void) const</td></tr>
+<tr class="memdesc:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a>?  <a href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">More...</a><br /></td></tr>
+<tr class="separator:aa035b89c623428f7d93b8b1da0ce1e49 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">is_function</a> (void) const</td></tr>
+<tr class="memdesc:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a>?  <a href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">More...</a><br /></td></tr>
+<tr class="separator:aaa82810e11265c4a890246f633fe4fc7 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">is_parameter</a> (void) const</td></tr>
+<tr class="memdesc:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>?  <a href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">More...</a><br /></td></tr>
+<tr class="separator:a4c20dd71ee68dd4823e32aa3868f337b inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">wjson</a> (void)</td></tr>
+<tr class="memdesc:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">More...</a><br /></td></tr>
+<tr class="separator:a9dd8b98ea77291d638408b123e68536a inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">json</a> (void)</td></tr>
+<tr class="memdesc:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON string.  <a href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">More...</a><br /></td></tr>
+<tr class="separator:ad55fc11662301ce186e593852a9425ce inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a> request, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">More...</a><br /></td></tr>
+<tr class="separator:a0f046d3e28928e07013a07b7e5b8e5a2 inherit pub_methods_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">Resource</a> ()</td></tr>
+<tr class="memdesc:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">More...</a><br /></td></tr>
+<tr class="separator:a5d1c2122fd6f7ea51c03c3b5cb45f2fc inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">~Resource</a> ()</td></tr>
+<tr class="memdesc:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Destructor.  <a href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">More...</a><br /></td></tr>
+<tr class="separator:a188f4a9d639f416317a9f5a6992e6ec5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">handle</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Handler.  <a href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">More...</a><br /></td></tr>
+<tr class="separator:a742c093a9caba778c16592c424c4a169 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">handle_get</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">More...</a><br /></td></tr>
+<tr class="separator:ae6913253b8e38f0f4eed9903058ae589 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">handle_put</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PUT Handler.  <a href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">More...</a><br /></td></tr>
+<tr class="separator:a21b1e78bdca84f9fd04fd026a0c3ea9c inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">handle_post</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> POST Handler.  <a href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">More...</a><br /></td></tr>
+<tr class="separator:a3af3a05ec6058b8a8e058ceebe1d7ddf inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">handle_delete</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> DELETE Handler.  <a href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">More...</a><br /></td></tr>
+<tr class="separator:ae0d3b5ab1757e069f38c55e2d5ecc3af inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">handle_patch</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> PATCH Handler.  <a href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">More...</a><br /></td></tr>
+<tr class="separator:aec711995a2b463d35443e66e4eb70533 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">handle_options</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> OPTIONS Handler.  <a href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">More...</a><br /></td></tr>
+<tr class="separator:abc5c8dc34053d3b02eae489f5c1afda4 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">handle_head</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> HEAD Handler.  <a href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">More...</a><br /></td></tr>
+<tr class="separator:a812b69953a8704e2528165c7d79012a5 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">handle_exception</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::exception &amp;exception, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Exception handler.  <a href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">More...</a><br /></td></tr>
+<tr class="separator:aad145d8d9ff6e9b1d0044b7e26678800 inherit pub_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a421f6aeaee92e362e455edcbe6b58231"><td class="memItemLeft" align="right" valign="top">static std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_variable.html">Variable</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">create</a> (std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; <a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a>, std::string <a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a>, std::string <a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a>=&quot;&quot;, <a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt; <a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a>=<a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;(), <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a> <a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a>=<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>(), std::string <a class="el" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">nonce</a>=&quot;&quot;)</td></tr>
+<tr class="memdesc:a421f6aeaee92e362e455edcbe6b58231"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create new <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a>.  <a href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">More...</a><br /></td></tr>
+<tr class="separator:a421f6aeaee92e362e455edcbe6b58231"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_static_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">static web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">request_info</a> (<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a> message, std::smatch match=std::smatch())</td></tr>
+<tr class="memdesc:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request Info.  <a href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">More...</a><br /></td></tr>
+<tr class="separator:a4d76365792fb2684cc05a36ee2573dad inherit pub_static_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a95274da091367dba743e0cf0052b4dd7"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7">read</a> (void)</td></tr>
+<tr class="memdesc:a95274da091367dba743e0cf0052b4dd7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read callback.  <a href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7">More...</a><br /></td></tr>
+<tr class="separator:a95274da091367dba743e0cf0052b4dd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b112a792be9ae8647bc58fd4e28c5bb"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb">write</a> (void)</td></tr>
+<tr class="memdesc:a9b112a792be9ae8647bc58fd4e28c5bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write callback.  <a href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb">More...</a><br /></td></tr>
+<tr class="separator:a9b112a792be9ae8647bc58fd4e28c5bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6dc0dda3c135fb3512486192a52e0f8b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">read</a> (void)=0</td></tr>
+<tr class="memdesc:a6dc0dda3c135fb3512486192a52e0f8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read callback.  <a href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">More...</a><br /></td></tr>
+<tr class="separator:a6dc0dda3c135fb3512486192a52e0f8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af07e6f343402f0f9280ede65d4b26fa0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">write</a> (void)=0</td></tr>
+<tr class="memdesc:af07e6f343402f0f9280ede65d4b26fa0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write callback.  <a href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">More...</a><br /></td></tr>
+<tr class="separator:af07e6f343402f0f9280ede65d4b26fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_methods_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">apply_headers</a> (<a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a> &amp;response)</td></tr>
+<tr class="memdesc:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply headers.  <a href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">More...</a><br /></td></tr>
+<tr class="separator:aa65b75aa0006d4dc26b92dc6ae8017eb inherit pro_methods_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a159b3f2994697e91aeaef8649376aee3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">nonce</a></td></tr>
+<tr class="memdesc:a159b3f2994697e91aeaef8649376aee3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Nonce.  <a href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">More...</a><br /></td></tr>
+<tr class="separator:a159b3f2994697e91aeaef8649376aee3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5349b85d820a6204f44af04b528f6a9"><td class="memItemLeft" align="right" valign="top">std::vector&lt; unsigned char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9">hash</a></td></tr>
+<tr class="memdesc:ae5349b85d820a6204f44af04b528f6a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checking Hash.  <a href="class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9">More...</a><br /></td></tr>
+<tr class="separator:ae5349b85d820a6204f44af04b528f6a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abaafa5ebe21c155fc27800d22275d639"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, x &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639">covariance</a></td></tr>
+<tr class="memdesc:abaafa5ebe21c155fc27800d22275d639"><td class="mdescLeft">&#160;</td><td class="mdescRight">Covariance of the value.  <a href="class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639">More...</a><br /></td></tr>
+<tr class="separator:abaafa5ebe21c155fc27800d22275d639"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_s_o_i_l_1_1_figure"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_s_o_i_l_1_1_figure')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_s_o_i_l_1_1_figure.html">SOIL::Figure&lt; T, -1, -1 &gt;</a></td></tr>
+<tr class="memitem:a8f320356ea837f06e439b74c2a22e81c inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">time</a></td></tr>
+<tr class="memdesc:a8f320356ea837f06e439b74c2a22e81c inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data Timestamp.  <a href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">More...</a><br /></td></tr>
+<tr class="separator:a8f320356ea837f06e439b74c2a22e81c inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a627d9d3386a719a6612ec3068812ea67 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">unit</a></td></tr>
+<tr class="memdesc:a627d9d3386a719a6612ec3068812ea67 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unit.  <a href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">More...</a><br /></td></tr>
+<tr class="separator:a627d9d3386a719a6612ec3068812ea67 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97c7e2488708c155d366e2cdc1934c3b inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">value</a></td></tr>
+<tr class="memdesc:a97c7e2488708c155d366e2cdc1934c3b inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Value.  <a href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">More...</a><br /></td></tr>
+<tr class="separator:a97c7e2488708c155d366e2cdc1934c3b inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab431dcf967cbfb8591b9128257595712 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">range</a></td></tr>
+<tr class="memdesc:ab431dcf967cbfb8591b9128257595712 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="mdescLeft">&#160;</td><td class="mdescRight">Range.  <a href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">More...</a><br /></td></tr>
+<tr class="separator:ab431dcf967cbfb8591b9128257595712 inherit pro_attribs_class_s_o_i_l_1_1_figure"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pro_attribs_class_h_t_t_p_1_1_resource"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_h_t_t_p_1_1_resource')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_h_t_t_p_1_1_resource.html">HTTP::Resource</a></td></tr>
+<tr class="memitem:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::vector&lt; web::http::method &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">allowed_methods</a></td></tr>
+<tr class="memdesc:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed methods.  <a href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">More...</a><br /></td></tr>
+<tr class="separator:a4a78094cb756c0886c787f93462621c0 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">content_type</a></td></tr>
+<tr class="memdesc:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Content type.  <a href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">More...</a><br /></td></tr>
+<tr class="separator:a9d14fee20d1db0e8bd76e6f151e606e6 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">allowed_origins</a></td></tr>
+<tr class="memdesc:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allowed Origins.  <a href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">More...</a><br /></td></tr>
+<tr class="separator:a8cb354f4fa7e6d76bdd748f50728b752 inherit pro_attribs_class_h_t_t_p_1_1_resource"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_attribs_class_s_o_i_l_1_1_element"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_class_s_o_i_l_1_1_element')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a></td></tr>
+<tr class="memitem:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">children</a></td></tr>
+<tr class="memdesc:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Children Map.  <a href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">More...</a><br /></td></tr>
+<tr class="separator:a4fa228a217778ee48c592fe0272aaacf inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">parent</a></td></tr>
+<tr class="memdesc:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parent Pointer.  <a href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">More...</a><br /></td></tr>
+<tr class="separator:af1992c267233cec3b17bc70038d1d84b inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">self</a></td></tr>
+<tr class="memdesc:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Self Pointer.  <a href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">More...</a><br /></td></tr>
+<tr class="separator:afcdcd6ceb94c7d14b0fce99461bb5e30 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">uuid</a></td></tr>
+<tr class="memdesc:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Local UUID.  <a href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">More...</a><br /></td></tr>
+<tr class="separator:a8676609fe497118147e31b25958d5104 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">name</a></td></tr>
+<tr class="memdesc:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name.  <a href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">More...</a><br /></td></tr>
+<tr class="separator:ae80d2c6c5f2577aa5a8489f2c0c352e8 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">description</a></td></tr>
+<tr class="memdesc:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Description.  <a href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">More...</a><br /></td></tr>
+<tr class="separator:aaef3cdce55ced857a81ba285afc92ed9 inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">ontology</a></td></tr>
+<tr class="memdesc:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ontology identifier.  <a href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">More...</a><br /></td></tr>
+<tr class="separator:ad89fecb69de794e7b918767d5f21027d inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memItemLeft" align="right" valign="top">std::recursive_mutex&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">mutex</a></td></tr>
+<tr class="memdesc:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> Mutex.  <a href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">More...</a><br /></td></tr>
+<tr class="separator:afc29676fd98e4c6b7ab004514c175b7c inherit pub_attribs_class_s_o_i_l_1_1_element"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><div class="compoundTemplParams">template&lt;typename T, int x = -1, int y = -1&gt;<br />
+class SOIL::Variable&lt; T, x, y &gt;</div><p >This class represents a <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a>. <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> and <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> share many common properties and therefore both inherit from <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a>, such that methods there should be considered in any case. Variables are primarily intended for values that represent any measurement or physical phenomenon outside the immediate control of device. In contrast to parameter, they cannot be set externally and may not be constant. In addition, they contain a custom message (nonce), a hash (for traceability purposes) and a covariance property. The covariance should represent uncertainty as multivariate normal distribution with coverage factor of 1.</p>
+<p >Covariance is currently not supported for 2-dimensional data (i.e. which would lead to a 4-dimensional covariance expression)</p>
+<p >In lightweight scenarios, this class may be instantiated directly, for more specific scenarios, it shouls be subclassed and override the implementation of <code><a class="el" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7" title="Read callback.">read()</a></code>.</p>
+<p >A parameter supports <a class="el" href="namespace_h_t_t_p.html">HTTP</a> GET (read) and <a class="el" href="namespace_h_t_t_p.html">HTTP</a> OPTIONS (read without updating value) verbs.</p>
+<p >The data management of <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a> and hence <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> relies on <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a>, such that the same templating logic is used.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Type of the data. </td></tr>
+    <tr><td class="paramname">x</td><td>First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if <code>y</code> is not -1. </td></tr>
+    <tr><td class="paramname">y</td><td>Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for <code>x</code> to be -1.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000011">Todo:</a></b></dt><dd>The <a class="el" href="namespace_h_t_t_p.html">HTTP</a> handlers may be moved to protected if <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">HTTP::Server</a> is declared as friend class. Currently this is not done to alllow for greater flexibility. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00041">41</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a42d3242d0f2619bbedbe54473e5bde05" name="a42d3242d0f2619bbedbe54473e5bde05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42d3242d0f2619bbedbe54473e5bde05">&#9670;&nbsp;</a></span>Variable()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::Variable </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>unit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em> = <code><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt;T&gt;()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>&#160;</td>
+          <td class="paramname"><em>time</em> = <code><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>nonce</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Standard constructor intialiazing the values. If subclassed, it should be called from the subclass constructor. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>Shared pointer to parent object. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">unit</td><td>UNECE unit code, e.g. MTR </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td>Allowed range for the variable values, defaults to an empty object, i.e. allowing all values </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>Timestamp for the initial value, defaults to unset </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">nonce</td><td>Custom message to add to the variable, defaults to unset </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00312">312</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="abb8683a103f7eed6be691c6057312baa" name="abb8683a103f7eed6be691c6057312baa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb8683a103f7eed6be691c6057312baa">&#9670;&nbsp;</a></span>~Variable()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::~<a class="el" href="class_s_o_i_l_1_1_variable.html">Variable</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default destructor, without custom effort. </p>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00323">323</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ab7eac644327edcff9e211b45e1905d2a" name="ab7eac644327edcff9e211b45e1905d2a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7eac644327edcff9e211b45e1905d2a">&#9670;&nbsp;</a></span>bytes()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::bytes </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Get a bytewise representation of the variable. This is constructed in the following order:</p><ul>
+<li>Dimensions in declared order</li>
+<li>Value in row-major order</li>
+<li>Covariane in row-major-order (cannot be null!)</li>
+<li>Unit directly taken from UTF-8 chars</li>
+<li>Timestamp (cf. explanation there)</li>
+<li>Nonce as UTF-8 string</li>
+</ul>
+<p >This function is mainly used for hashing and signing purposes. It does not write to an internal attribute.</p>
+<dl class="section return"><dt>Returns</dt><dd>Constructucted bytestring </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00387">387</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a421f6aeaee92e362e455edcbe6b58231" name="a421f6aeaee92e362e455edcbe6b58231"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a421f6aeaee92e362e455edcbe6b58231">&#9670;&nbsp;</a></span>create()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt; &gt; <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::create </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> &gt;&#160;</td>
+          <td class="paramname"><em>parent</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>uuid</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>description</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>unit</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ontology</em> = <code>&quot;&quot;</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt; T &gt;&#160;</td>
+          <td class="paramname"><em>range</em> = <code><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a>&lt;T&gt;()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>&#160;</td>
+          <td class="paramname"><em>time</em> = <code><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>()</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>nonce</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Create a new <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> using the default constructor and return a shared pointer reference. This is the preferred method for manual creation with consistent lifecycle handling. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">parent</td><td>Shared pointer to parent object. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">uuid</td><td>Locally Unique identifier </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>Human-readable name </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">description</td><td>Human-readable description </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">unit</td><td>UNECE unit code, e.g. MTR </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">ontology</td><td>Ontology reference, is set to null if an empty string is passed </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">range</td><td>Allowed range for the variable values, defaults to an empty object, i.e. allowing all values </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>Timestamp for the initial value, defaults to unset </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">nonce</td><td>Custom message to add to the variable, defaults to unset </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00328">328</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="aaeba9a89d6c0b950246fff61ac221fa7" name="aaeba9a89d6c0b950246fff61ac221fa7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaeba9a89d6c0b950246fff61ac221fa7">&#9670;&nbsp;</a></span>fingerprint()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::fingerprint </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a> &gt;&#160;</td>
+          <td class="paramname"><em>signer</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Signs the sha256 hash with the private key managed by the passed instance of <a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">SIGN::Signer</a>. Does not write to an internal attribute.</p>
+<dl class="section pre"><dt>Precondition</dt><dd>The <a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">SIGN::Signer</a> instance must be instialized elsewhere and have an apropriate lifecycle.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">signer</td><td>Reference to a <a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">SIGN::Signer</a> object holding the private key to use </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Signature bytestring </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00424">424</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a10c29b035a567af07850dd1f27e218fe" name="a10c29b035a567af07850dd1f27e218fe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10c29b035a567af07850dd1f27e218fe">&#9670;&nbsp;</a></span>handle_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::handle_get </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a GET method. This function returns a representation of the <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and its current value to the requesting party. It should not be overridden directly in subclasses, instead the <code><a class="el" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7" title="Read callback.">read()</a></code> function should be overriden. It is an expected behaviour that <code><a class="el" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7" title="Read callback.">read()</a></code> calls an external method to update the value and may take some time to return. Please note that the default timeout in cpprestsdk is 120s, which is already very long. Consider an asynchronous update model if your devices takes longer to measure.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00452">452</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a62d80e5cd14d377d3bea90e6332b0b72" name="a62d80e5cd14d377d3bea90e6332b0b72"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a62d80e5cd14d377d3bea90e6332b0b72">&#9670;&nbsp;</a></span>handle_options()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a> <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::handle_options </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a>&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::smatch&#160;</td>
+          <td class="paramname"><em>match</em> = <code>std::smatch()</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Handler that is called by the server on <a class="el" href="namespace_h_t_t_p.html">HTTP</a> requests on a OPTIONS method. This function returns a representation of the <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and its current stored value to the requesting party. In contrast to GET, the <code><a class="el" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7" title="Read callback.">read()</a></code> function is not called such that there are no side effects if a requesting party just wants to obtain informtion about the variable's metadata in the first place.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Incoming <a class="el" href="namespace_h_t_t_p.html">HTTP</a> request as preprocessed by cpprestsdk </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">match</td><td>Match result of the request path that led to this resource </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Outgoing <a class="el" href="namespace_h_t_t_p.html">HTTP</a> response to be processed by cpprestdsk </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">HTTP::Resource</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00464">464</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a8ef20bb80d404cba203ebe64a9c3296f" name="a8ef20bb80d404cba203ebe64a9c3296f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ef20bb80d404cba203ebe64a9c3296f">&#9670;&nbsp;</a></span>mqtt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::mqtt </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a> &gt;&#160;</td>
+          <td class="paramname"><em>publisher</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>qos</em> = <code>0</code>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>retain</em> = <code>false</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Publish the current JSON representation under the FQID as topic using a given <a class="el" href="namespace_m_q_t_t.html">MQTT</a> publisher. This function must be explicitly called from the user's code as otherwise the update cycle would depend on the publisher and the user will be left without control to call other methods before publishing.</p>
+<p >A good pattern is to have a reference to an <a class="el" href="namespace_m_q_t_t.html">MQTT</a> publisher in a sublcassing implementation and implement a complete update cycle there.</p>
+<dl class="section pre"><dt>Precondition</dt><dd>An <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">MQTT::Publisher</a> must be instantiated elsewhere and have a valid lifecycle.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">publisher</td><td>Reference to the publisher to use </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">qos</td><td>Quality of service to choose for <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">retain</td><td>Flag whether to retain the message on the server. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Boolean flag whether the message was accepted in the message queue.</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000013">Todo:</a></b></dt><dd>Currently the implementation of this function is redundant in <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>. It is deliberately not moved to <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a> as different implementations may occur in the future, but would be a valid option. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00444">444</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a85828d5d8162aff4c496c782a432b55d" name="a85828d5d8162aff4c496c782a432b55d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85828d5d8162aff4c496c782a432b55d">&#9670;&nbsp;</a></span>operator=()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt; &amp; <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::operator= </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Assigns the value provided as container on the right hand side to the variable. Immediately resorts to the implementation in <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a> internally.</p>
+<dl class="exception"><dt>Exceptions</dt><dd>
+  <table class="exception">
+    <tr><td class="paramname">std::range_error</td><td>Throws an exception if the value to assign is outside the allowed range.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to assign </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Reference to the current <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00335">335</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a22c13c0c69fca4f40a3b25285e746e06" name="a22c13c0c69fca4f40a3b25285e746e06"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a22c13c0c69fca4f40a3b25285e746e06">&#9670;&nbsp;</a></span>ptr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::shared_ptr&lt; <a class="el" href="class_s_o_i_l_1_1_variable.html">Variable</a> &gt; <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::ptr </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Return a shared pointer casted to the <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> type to element itself. </p><dl class="section return"><dt>Returns</dt><dd>Casted pointer </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00277">277</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a95274da091367dba743e0cf0052b4dd7" name="a95274da091367dba743e0cf0052b4dd7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95274da091367dba743e0cf0052b4dd7">&#9670;&nbsp;</a></span>read()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::read </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage. Be careful when including long-running queries as they will block the <a class="el" href="namespace_h_t_t_p.html">HTTP</a> call. Declared virtual to make sure the derived method is called first. Does nothing be default. </p>
+
+<p>Implements <a class="el" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">SOIL::Figure&lt; T, -1, -1 &gt;</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00370">370</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a2bdfc0ecf346e6544ba897f86a5fa1e4" name="a2bdfc0ecf346e6544ba897f86a5fa1e4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2bdfc0ecf346e6544ba897f86a5fa1e4">&#9670;&nbsp;</a></span>set_covariance()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::set_covariance </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, x &gt;&#160;</td>
+          <td class="paramname"><em>covariance</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Set the covariance corresponding to the value. This is a separate call as the following three scenarios are foreseen:</p><ul>
+<li>The covariance is set in the user defined update cycle, so this call can directly follow <code><a class="el" href="class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e" title="Update value.">update()</a></code>.</li>
+<li>The covariance is estimated constant for all measurements, so there is no need for updating it</li>
+<li>The covariance is not available, thus set to null.</li>
+</ul>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">covariance</td><td>Covariance provided as container object </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00380">380</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a04574823a93f387d4d1aaa4a7087f22e" name="a04574823a93f387d4d1aaa4a7087f22e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a04574823a93f387d4d1aaa4a7087f22e">&#9670;&nbsp;</a></span>sha256()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::sha256 </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Calculates the sha256 hash of the bytestring representation. Internally calls <code><a class="el" href="class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a" title="Get bytewise representation.">bytes()</a></code>, but does not write to any value.</p>
+<dl class="section return"><dt>Returns</dt><dd>SHA256 hash as bytestring </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00417">417</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="adf66dfb35361158c8c05cc5ed81bd247" name="adf66dfb35361158c8c05cc5ed81bd247"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf66dfb35361158c8c05cc5ed81bd247">&#9670;&nbsp;</a></span>sign()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt; unsigned char &gt; <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::sign </td>
+          <td>(</td>
+          <td class="paramtype">std::shared_ptr&lt; <a class="el" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a> &gt;&#160;</td>
+          <td class="paramname"><em>signer</em> = <code>NULL</code></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Sign the measurement data. If an pointer to an instance of <a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">SIGN::Signer</a> is passed, the <code><a class="el" href="class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7" title="Calculate RSA fingerprint.">fingerprint()</a></code> function is used to sign the sha256 hash with the managed private key. Otherwise, the <code><a class="el" href="class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e" title="Calculate SHA256.">sha256()</a></code> function is used.</p>
+<p >In both cases, the resulting bytestring is stored to the internal <code>hash</code> attribute and returned.</p>
+<dl class="section pre"><dt>Precondition</dt><dd>The <a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">SIGN::Signer</a> instance must be instialized elsewhere and have an apropriate lifecycle. </dd></dl>
+<dl class="section post"><dt>Postcondition</dt><dd>The <code>hash</code> attribute is automatically updated by this call.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">signer</td><td>Reference to a <a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">SIGN::Signer</a> object holding the private key to use </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Signature bytestring </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00430">430</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="ab1c36ffeef15739332ebd39c3c63184e" name="ab1c36ffeef15739332ebd39c3c63184e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab1c36ffeef15739332ebd39c3c63184e">&#9670;&nbsp;</a></span>update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::update </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt; T, x, y &gt; &amp;&#160;</td>
+          <td class="paramname"><em>value</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a>&#160;</td>
+          <td class="paramname"><em>time</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>nonce</em> = <code>&quot;&quot;</code>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Update the value of the variable. As value, time and nonce are expected to change with each value update, the three components are passed at the same time.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to set </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>Timestamp to set as corresponidng to the value </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">nonce</td><td>Nonce to set as corresponding to the value </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00474">474</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a37198446b18018989419984f3ec82c68" name="a37198446b18018989419984f3ec82c68"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37198446b18018989419984f3ec82c68">&#9670;&nbsp;</a></span>wjson()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::wjson </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Get a <a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON object corresponding to the current state of the <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>. This function provides a SOIL-conformant JSON representation the parameter. It internally extends the method of <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a>.</p>
+<dl class="section return"><dt>Returns</dt><dd>JSON object </dd></dl>
+
+<p>Reimplemented from <a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00343">343</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a9b112a792be9ae8647bc58fd4e28c5bb" name="a9b112a792be9ae8647bc58fd4e28c5bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9b112a792be9ae8647bc58fd4e28c5bb">&#9670;&nbsp;</a></span>write()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x, int y&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::write </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >This is an empty implementation of the <code><a class="el" href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb" title="Write callback.">write()</a></code> function which is needed to avoid that <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> becomes abstract. It is never called. </p>
+
+<p>Implements <a class="el" href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">SOIL::Figure&lt; T, -1, -1 &gt;</a>.</p>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00375">375</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="abaafa5ebe21c155fc27800d22275d639" name="abaafa5ebe21c155fc27800d22275d639"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abaafa5ebe21c155fc27800d22275d639">&#9670;&nbsp;</a></span>covariance</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a>&lt;T, x, x&gt; <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::covariance</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Covariance of the value expressed as multidimensional normal distribution with coverage factor 1. The dimensionality depends on the dimensionality of the value:</p><ul>
+<li>For scalar data, the covariance is a scalar corresponding to the variance.</li>
+<li>For data expanding along one dimension with length <em>n</em> the covariance is a matrix with dimension <em></em>(n,n)</li>
+<li>For data expanding along two dimensions, covariance is currently not supported.</li>
+</ul>
+<p >Note that the second template argument of the <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> is <code>x</code> in this case. </p>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00074">74</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="ae5349b85d820a6204f44af04b528f6a9" name="ae5349b85d820a6204f44af04b528f6a9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5349b85d820a6204f44af04b528f6a9">&#9670;&nbsp;</a></span>hash</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::vector&lt;unsigned char&gt; <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::hash</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Hash that is calculated from a defined binary representation of the variable and may be signed with private_key such that the integrity of the data can be verified. Is null if not explicitly set.</p>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000012">Todo:</a></b></dt><dd>This is still error prone across different languages and platforms as endianess and memory layout need to be considered. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00061">61</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<a id="a159b3f2994697e91aeaef8649376aee3" name="a159b3f2994697e91aeaef8649376aee3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a159b3f2994697e91aeaef8649376aee3">&#9670;&nbsp;</a></span>nonce</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T , int x = -1, int y = -1&gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable</a>&lt; T, x, y &gt;::nonce</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Nonce with is considered as arbitrary message that the user may add to the measurement. This could be JOB-IDs or similar. </p>
+
+<p class="definition">Definition at line <a class="el" href="_variable_8h_source.html#l00051">51</a> of file <a class="el" href="_variable_8h_source.html">Variable.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>src/SOIL/<a class="el" href="_variable_8h_source.html">Variable.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li><li class="navelem"><a class="el" href="class_s_o_i_l_1_1_variable.html">Variable</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_s_o_i_l_1_1_variable.js b/doc/html/class_s_o_i_l_1_1_variable.js
new file mode 100644
index 0000000000000000000000000000000000000000..f043b935fc27f5abf8b5a82b6b8979bda225fa35
--- /dev/null
+++ b/doc/html/class_s_o_i_l_1_1_variable.js
@@ -0,0 +1,22 @@
+var class_s_o_i_l_1_1_variable =
+[
+    [ "Variable", "class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05", null ],
+    [ "~Variable", "class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa", null ],
+    [ "bytes", "class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a", null ],
+    [ "fingerprint", "class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7", null ],
+    [ "handle_get", "class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe", null ],
+    [ "handle_options", "class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72", null ],
+    [ "mqtt", "class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f", null ],
+    [ "operator=", "class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d", null ],
+    [ "ptr", "class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06", null ],
+    [ "read", "class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7", null ],
+    [ "set_covariance", "class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4", null ],
+    [ "sha256", "class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e", null ],
+    [ "sign", "class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247", null ],
+    [ "update", "class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e", null ],
+    [ "wjson", "class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68", null ],
+    [ "write", "class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb", null ],
+    [ "covariance", "class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639", null ],
+    [ "hash", "class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9", null ],
+    [ "nonce", "class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_s_o_i_l_1_1_variable.png b/doc/html/class_s_o_i_l_1_1_variable.png
new file mode 100644
index 0000000000000000000000000000000000000000..c335840e1667b310da18a401a041762916849862
Binary files /dev/null and b/doc/html/class_s_o_i_l_1_1_variable.png differ
diff --git a/doc/html/class_u_d_p_1_1_broadcast-members.html b/doc/html/class_u_d_p_1_1_broadcast-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..30303b35208956f79dfc87ed7468896856f482c4
--- /dev/null
+++ b/doc/html/class_u_d_p_1_1_broadcast-members.html
@@ -0,0 +1,109 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_u_d_p_1_1_broadcast.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">UDP::Broadcast Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b">add_client</a>(std::string ip, unsigned int port)</td><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7">Broadcast</a>(int n_threads=1)</td><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1">configure</a>(UDP::Configuration config)</td><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92">remove_client</a>(std::string ip)</td><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">send</a>(std::string message)</td><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html#a43e3f6b55707430a2eb698c41d181f6d">send</a>(std::vector&lt; std::string &gt; messages)</td><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de">use_count</a>(void)</td><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f">~Broadcast</a>()</td><td class="entry"><a class="el" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_u_d_p_1_1_broadcast.html b/doc/html/class_u_d_p_1_1_broadcast.html
new file mode 100644
index 0000000000000000000000000000000000000000..e681ab2665ffa73e37606f1c9b5e4e0f90b0168c
--- /dev/null
+++ b/doc/html/class_u_d_p_1_1_broadcast.html
@@ -0,0 +1,366 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: UDP::Broadcast Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_u_d_p_1_1_broadcast.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_u_d_p_1_1_broadcast-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">UDP::Broadcast Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a>.  
+ <a href="class_u_d_p_1_1_broadcast.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_broadcast_8h_source.html">Broadcast.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a1b28acbf05f00ee1a23e5f148c952ac7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7">Broadcast</a> (int n_threads=1)</td></tr>
+<tr class="memdesc:a1b28acbf05f00ee1a23e5f148c952ac7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7">More...</a><br /></td></tr>
+<tr class="separator:a1b28acbf05f00ee1a23e5f148c952ac7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7e94761b0526d1fc1dac158b841377f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f">~Broadcast</a> ()</td></tr>
+<tr class="memdesc:aa7e94761b0526d1fc1dac158b841377f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f">More...</a><br /></td></tr>
+<tr class="separator:aa7e94761b0526d1fc1dac158b841377f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4a1b3beb24edbadae5701c0d3c66c3b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b">add_client</a> (std::string ip, unsigned int port)</td></tr>
+<tr class="memdesc:ab4a1b3beb24edbadae5701c0d3c66c3b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add <a class="el" href="namespace_u_d_p.html">UDP</a> client.  <a href="class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b">More...</a><br /></td></tr>
+<tr class="separator:ab4a1b3beb24edbadae5701c0d3c66c3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a093abc49c309116a4674e2264b352c92"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92">remove_client</a> (std::string ip)</td></tr>
+<tr class="memdesc:a093abc49c309116a4674e2264b352c92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove <a class="el" href="namespace_u_d_p.html">UDP</a> client.  <a href="class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92">More...</a><br /></td></tr>
+<tr class="separator:a093abc49c309116a4674e2264b352c92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c923c64d3e48d85c3e91db348ffaa45"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">send</a> (std::string message)</td></tr>
+<tr class="memdesc:a9c923c64d3e48d85c3e91db348ffaa45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send Message.  <a href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">More...</a><br /></td></tr>
+<tr class="separator:a9c923c64d3e48d85c3e91db348ffaa45"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43e3f6b55707430a2eb698c41d181f6d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_broadcast.html#a43e3f6b55707430a2eb698c41d181f6d">send</a> (std::vector&lt; std::string &gt; messages)</td></tr>
+<tr class="memdesc:a43e3f6b55707430a2eb698c41d181f6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send Multiple Message.  <a href="class_u_d_p_1_1_broadcast.html#a43e3f6b55707430a2eb698c41d181f6d">More...</a><br /></td></tr>
+<tr class="separator:a43e3f6b55707430a2eb698c41d181f6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a909590437de40c1fdff2b8a2c3c934de"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de">use_count</a> (void)</td></tr>
+<tr class="memdesc:a909590437de40c1fdff2b8a2c3c934de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of Clients.  <a href="class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de">More...</a><br /></td></tr>
+<tr class="separator:a909590437de40c1fdff2b8a2c3c934de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4083638acba927342d411db85d6fe9a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1">configure</a> (<a class="el" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a> config)</td></tr>
+<tr class="memdesc:a4083638acba927342d411db85d6fe9a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configure <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a>.  <a href="class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1">More...</a><br /></td></tr>
+<tr class="separator:a4083638acba927342d411db85d6fe9a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Simple <a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> implemented on top of boost asio. This is currently a conveience member of the C++ <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> library as its not part of the specification. It may be omitted in the future. </p>
+
+<p class="definition">Definition at line <a class="el" href="_broadcast_8h_source.html#l00022">22</a> of file <a class="el" href="_broadcast_8h_source.html">Broadcast.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a1b28acbf05f00ee1a23e5f148c952ac7" name="a1b28acbf05f00ee1a23e5f148c952ac7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b28acbf05f00ee1a23e5f148c952ac7">&#9670;&nbsp;</a></span>Broadcast()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">UDP::Broadcast::Broadcast </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>n_threads</em> = <code>1</code></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor instantiating an <a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a>. The socket is immediately opened upon successful construction.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">n_threads</td><td>Number of threads to assign to the thread group. Only for very large loads a number of threads greater than 1 should be needed. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_broadcast_8cpp_source.html#l00005">5</a> of file <a class="el" href="_broadcast_8cpp_source.html">Broadcast.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa7e94761b0526d1fc1dac158b841377f" name="aa7e94761b0526d1fc1dac158b841377f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa7e94761b0526d1fc1dac158b841377f">&#9670;&nbsp;</a></span>~Broadcast()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">UDP::Broadcast::~Broadcast </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Destructor which closes the socket and stops all threads if not previously done. </p>
+
+<p class="definition">Definition at line <a class="el" href="_broadcast_8cpp_source.html#l00023">23</a> of file <a class="el" href="_broadcast_8cpp_source.html">Broadcast.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ab4a1b3beb24edbadae5701c0d3c66c3b" name="ab4a1b3beb24edbadae5701c0d3c66c3b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4a1b3beb24edbadae5701c0d3c66c3b">&#9670;&nbsp;</a></span>add_client()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void UDP::Broadcast::add_client </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ip</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">unsigned int&#160;</td>
+          <td class="paramname"><em>port</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Add a client to list of recipients of the <a class="el" href="namespace_u_d_p.html">UDP</a> broadcast. One can only send to one port per IP address, the IPv4 address acts as unique identifier.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">ip</td><td>IPv4 address to send to </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">port</td><td>Port to send to </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_broadcast_8cpp_source.html#l00040">40</a> of file <a class="el" href="_broadcast_8cpp_source.html">Broadcast.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a4083638acba927342d411db85d6fe9a1" name="a4083638acba927342d411db85d6fe9a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4083638acba927342d411db85d6fe9a1">&#9670;&nbsp;</a></span>configure()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void UDP::Broadcast::configure </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a>&#160;</td>
+          <td class="paramname"><em>config</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Configure the broadcast with a configuration object, i.e. a list of endpoints. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">config</td><td><a class="el" href="class_u_d_p_1_1_configuration.html" title="UDP Broadcast Configuration.">Configuration</a> object </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_broadcast_8cpp_source.html#l00132">132</a> of file <a class="el" href="_broadcast_8cpp_source.html">Broadcast.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a093abc49c309116a4674e2264b352c92" name="a093abc49c309116a4674e2264b352c92"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a093abc49c309116a4674e2264b352c92">&#9670;&nbsp;</a></span>remove_client()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void UDP::Broadcast::remove_client </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>ip</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Remove a client to list of recipients of the <a class="el" href="namespace_u_d_p.html">UDP</a> broadcast which is identified through its IPv4 address. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">ip</td><td>IPv4 adress of the client to remove </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_broadcast_8cpp_source.html#l00063">63</a> of file <a class="el" href="_broadcast_8cpp_source.html">Broadcast.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a9c923c64d3e48d85c3e91db348ffaa45" name="a9c923c64d3e48d85c3e91db348ffaa45"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9c923c64d3e48d85c3e91db348ffaa45">&#9670;&nbsp;</a></span>send() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void UDP::Broadcast::send </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>message</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Send an individual message over the <a class="el" href="namespace_u_d_p.html">UDP</a> Broadcast.It will be terminated by a newline (<code>\r</code> <br  />
+). </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Message to send </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_broadcast_8cpp_source.html#l00109">109</a> of file <a class="el" href="_broadcast_8cpp_source.html">Broadcast.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a43e3f6b55707430a2eb698c41d181f6d" name="a43e3f6b55707430a2eb698c41d181f6d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a43e3f6b55707430a2eb698c41d181f6d">&#9670;&nbsp;</a></span>send() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void UDP::Broadcast::send </td>
+          <td>(</td>
+          <td class="paramtype">std::vector&lt; std::string &gt;&#160;</td>
+          <td class="paramname"><em>messages</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Send a set of messages over the <a class="el" href="namespace_u_d_p.html">UDP</a> Broadcast.They will be separated and terminated by a newlines (<code>\r</code> <br  />
+). </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">messages</td><td>Messages to send </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_broadcast_8cpp_source.html#l00114">114</a> of file <a class="el" href="_broadcast_8cpp_source.html">Broadcast.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a909590437de40c1fdff2b8a2c3c934de" name="a909590437de40c1fdff2b8a2c3c934de"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a909590437de40c1fdff2b8a2c3c934de">&#9670;&nbsp;</a></span>use_count()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">int UDP::Broadcast::use_count </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >Get the number of registered <a class="el" href="namespace_u_d_p.html">UDP</a> clients.</p>
+<dl class="section return"><dt>Returns</dt><dd>Number of registered <a class="el" href="namespace_u_d_p.html">UDP</a> clients. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_broadcast_8h_source.html#l00139">139</a> of file <a class="el" href="_broadcast_8h_source.html">Broadcast.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/UDP/<a class="el" href="_broadcast_8h_source.html">Broadcast.h</a></li>
+<li>src/UDP/<a class="el" href="_broadcast_8cpp_source.html">Broadcast.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_u_d_p.html">UDP</a></li><li class="navelem"><a class="el" href="class_u_d_p_1_1_broadcast.html">Broadcast</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_u_d_p_1_1_broadcast.js b/doc/html/class_u_d_p_1_1_broadcast.js
new file mode 100644
index 0000000000000000000000000000000000000000..bafe1429740e99287e7ffd67f468088d4565ca1a
--- /dev/null
+++ b/doc/html/class_u_d_p_1_1_broadcast.js
@@ -0,0 +1,11 @@
+var class_u_d_p_1_1_broadcast =
+[
+    [ "Broadcast", "class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7", null ],
+    [ "~Broadcast", "class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f", null ],
+    [ "add_client", "class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b", null ],
+    [ "configure", "class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1", null ],
+    [ "remove_client", "class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92", null ],
+    [ "send", "class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45", null ],
+    [ "send", "class_u_d_p_1_1_broadcast.html#a43e3f6b55707430a2eb698c41d181f6d", null ],
+    [ "use_count", "class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_u_d_p_1_1_configuration-members.html b/doc/html/class_u_d_p_1_1_configuration-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..a6191ed2ca5d56a535657ca05439b398bae2aba0
--- /dev/null
+++ b/doc/html/class_u_d_p_1_1_configuration-members.html
@@ -0,0 +1,106 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_u_d_p_1_1_configuration.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">UDP::Configuration Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">clients</a></td><td class="entry"><a class="el" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed">Configuration</a>()</td><td class="entry"><a class="el" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_u_d_p_1_1_configuration.html#a16a012d0744f694e3f9f9865ce89c624">Configuration</a>(std::string filename)</td><td class="entry"><a class="el" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">iterator</a> typedef</td><td class="entry"><a class="el" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada">~Configuration</a>()</td><td class="entry"><a class="el" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_u_d_p_1_1_configuration.html b/doc/html/class_u_d_p_1_1_configuration.html
new file mode 100644
index 0000000000000000000000000000000000000000..ebb990ef1868b19a01edb0e30620a885649d2d76
--- /dev/null
+++ b/doc/html/class_u_d_p_1_1_configuration.html
@@ -0,0 +1,245 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: UDP::Configuration Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_u_d_p_1_1_configuration.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="class_u_d_p_1_1_configuration-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">UDP::Configuration Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_configuration.html" title="UDP Broadcast Configuration.">Configuration</a>.  
+ <a href="class_u_d_p_1_1_configuration.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_u_d_p_2_configuration_8h_source.html">Configuration.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a2f1e39379df27d5d6f81987dcade6053"><td class="memItemLeft" align="right" valign="top">typedef std::map&lt; std::string, int &gt;::iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">iterator</a></td></tr>
+<tr class="memdesc:a2f1e39379df27d5d6f81987dcade6053"><td class="mdescLeft">&#160;</td><td class="mdescRight">Iterator.  <a href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">More...</a><br /></td></tr>
+<tr class="separator:a2f1e39379df27d5d6f81987dcade6053"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ad8e8aaa5d502e7688ff6b08b50a523ed"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed">Configuration</a> ()</td></tr>
+<tr class="memdesc:ad8e8aaa5d502e7688ff6b08b50a523ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed">More...</a><br /></td></tr>
+<tr class="separator:ad8e8aaa5d502e7688ff6b08b50a523ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16a012d0744f694e3f9f9865ce89c624"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_configuration.html#a16a012d0744f694e3f9f9865ce89c624">Configuration</a> (std::string filename)</td></tr>
+<tr class="memdesc:a16a012d0744f694e3f9f9865ce89c624"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON Constructor.  <a href="class_u_d_p_1_1_configuration.html#a16a012d0744f694e3f9f9865ce89c624">More...</a><br /></td></tr>
+<tr class="separator:a16a012d0744f694e3f9f9865ce89c624"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accb7231b058bddbcde4345ee13cc7ada"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada">~Configuration</a> ()</td></tr>
+<tr class="memdesc:accb7231b058bddbcde4345ee13cc7ada"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada">More...</a><br /></td></tr>
+<tr class="separator:accb7231b058bddbcde4345ee13cc7ada"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:a320ba9474ff76cbc5626d667a4388a55"><td class="memItemLeft" align="right" valign="top">std::map&lt; std::string, int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">clients</a></td></tr>
+<tr class="memdesc:a320ba9474ff76cbc5626d667a4388a55"><td class="mdescLeft">&#160;</td><td class="mdescRight">List of clients.  <a href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">More...</a><br /></td></tr>
+<tr class="separator:a320ba9474ff76cbc5626d667a4388a55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Class to simplify the configuration of <a class="el" href="namespace_u_d_p.html">UDP</a> broadcasts, i.e. by providing a list of client endpoints that can be populated from a JSON file. For simplicity, all members are public. </p>
+
+<p class="definition">Definition at line <a class="el" href="_u_d_p_2_configuration_8h_source.html#l00013">13</a> of file <a class="el" href="_u_d_p_2_configuration_8h_source.html">Configuration.h</a>.</p>
+</div><h2 class="groupheader">Member Typedef Documentation</h2>
+<a id="a2f1e39379df27d5d6f81987dcade6053" name="a2f1e39379df27d5d6f81987dcade6053"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2f1e39379df27d5d6f81987dcade6053">&#9670;&nbsp;</a></span>iterator</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef std::map&lt;std::string,int&gt;::iterator <a class="el" href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">UDP::Configuration::iterator</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Typedefinition to provide an iterator-sytled access </p>
+
+<p class="definition">Definition at line <a class="el" href="_u_d_p_2_configuration_8h_source.html#l00021">21</a> of file <a class="el" href="_u_d_p_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="ad8e8aaa5d502e7688ff6b08b50a523ed" name="ad8e8aaa5d502e7688ff6b08b50a523ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8e8aaa5d502e7688ff6b08b50a523ed">&#9670;&nbsp;</a></span>Configuration() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">UDP::Configuration::Configuration </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default constructor, creates an empty list of clients. </p>
+
+<p class="definition">Definition at line <a class="el" href="_u_d_p_2_configuration_8cpp_source.html#l00007">7</a> of file <a class="el" href="_u_d_p_2_configuration_8cpp_source.html">Configuration.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a16a012d0744f694e3f9f9865ce89c624" name="a16a012d0744f694e3f9f9865ce89c624"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a16a012d0744f694e3f9f9865ce89c624">&#9670;&nbsp;</a></span>Configuration() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">UDP::Configuration::Configuration </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>filename</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor the takes a JSON file as input to populate the list of clients. See the project assets for a sample file. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">filename</td><td>Path to the JSON configuration file </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_u_d_p_2_configuration_8cpp_source.html#l00012">12</a> of file <a class="el" href="_u_d_p_2_configuration_8cpp_source.html">Configuration.cpp</a>.</p>
+
+</div>
+</div>
+<a id="accb7231b058bddbcde4345ee13cc7ada" name="accb7231b058bddbcde4345ee13cc7ada"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#accb7231b058bddbcde4345ee13cc7ada">&#9670;&nbsp;</a></span>~Configuration()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">UDP::Configuration::~Configuration </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default destructor, empties the map. </p>
+
+<p class="definition">Definition at line <a class="el" href="_u_d_p_2_configuration_8cpp_source.html#l00024">24</a> of file <a class="el" href="_u_d_p_2_configuration_8cpp_source.html">Configuration.cpp</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a id="a320ba9474ff76cbc5626d667a4388a55" name="a320ba9474ff76cbc5626d667a4388a55"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a320ba9474ff76cbc5626d667a4388a55">&#9670;&nbsp;</a></span>clients</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::map&lt;std::string, int&gt; UDP::Configuration::clients</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >List of clients, implemented as map where the IPv4 address acts as unique identifier. </p>
+
+<p class="definition">Definition at line <a class="el" href="_u_d_p_2_configuration_8h_source.html#l00028">28</a> of file <a class="el" href="_u_d_p_2_configuration_8h_source.html">Configuration.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/UDP/<a class="el" href="_u_d_p_2_configuration_8h_source.html">Configuration.h</a></li>
+<li>src/UDP/<a class="el" href="_u_d_p_2_configuration_8cpp_source.html">Configuration.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_u_d_p.html">UDP</a></li><li class="navelem"><a class="el" href="class_u_d_p_1_1_configuration.html">Configuration</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_u_d_p_1_1_configuration.js b/doc/html/class_u_d_p_1_1_configuration.js
new file mode 100644
index 0000000000000000000000000000000000000000..a7ccc57f58d160f7f933cf91094c5a910202cdb6
--- /dev/null
+++ b/doc/html/class_u_d_p_1_1_configuration.js
@@ -0,0 +1,8 @@
+var class_u_d_p_1_1_configuration =
+[
+    [ "iterator", "class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053", null ],
+    [ "Configuration", "class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed", null ],
+    [ "Configuration", "class_u_d_p_1_1_configuration.html#a16a012d0744f694e3f9f9865ce89c624", null ],
+    [ "~Configuration", "class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada", null ],
+    [ "clients", "class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_u_d_p_1_1_exception-members.html b/doc/html/class_u_d_p_1_1_exception-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..c637532594c38879299659959009528ae26d63a6
--- /dev/null
+++ b/doc/html/class_u_d_p_1_1_exception-members.html
@@ -0,0 +1,103 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_u_d_p_1_1_exception.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">UDP::Exception Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="class_u_d_p_1_1_exception.html">UDP::Exception</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1">Exception</a>(const char *message=&quot;&quot;)</td><td class="entry"><a class="el" href="class_u_d_p_1_1_exception.html">UDP::Exception</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0">~Exception</a>(void)</td><td class="entry"><a class="el" href="class_u_d_p_1_1_exception.html">UDP::Exception</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_u_d_p_1_1_exception.html b/doc/html/class_u_d_p_1_1_exception.html
new file mode 100644
index 0000000000000000000000000000000000000000..9f354837ab7b1908d609fc6ecd6b601132a37f08
--- /dev/null
+++ b/doc/html/class_u_d_p_1_1_exception.html
@@ -0,0 +1,179 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: UDP::Exception Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('class_u_d_p_1_1_exception.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="class_u_d_p_1_1_exception-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">UDP::Exception Class Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_exception.html" title="UDP Broadcast Exception.">Exception</a>.  
+ <a href="class_u_d_p_1_1_exception.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_exception_8h_source.html">Exception.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for UDP::Exception:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_u_d_p_1_1_exception.png" alt=""/>
+ </div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a303fac04b1c83a4c5f8119344b6d8ec1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1">Exception</a> (const char *message=&quot;&quot;)</td></tr>
+<tr class="memdesc:a303fac04b1c83a4c5f8119344b6d8ec1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1">More...</a><br /></td></tr>
+<tr class="separator:a303fac04b1c83a4c5f8119344b6d8ec1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a825ce3fc0f996f9de64b075bad9bc7e0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0">~Exception</a> (void)</td></tr>
+<tr class="memdesc:a825ce3fc0f996f9de64b075bad9bc7e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0">More...</a><br /></td></tr>
+<tr class="separator:a825ce3fc0f996f9de64b075bad9bc7e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Specific subclass of <code>std::runtime_error</code> to distinguish exceptions coming from the UDO <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a>. </p>
+
+<p class="definition">Definition at line <a class="el" href="_exception_8h_source.html#l00011">11</a> of file <a class="el" href="_exception_8h_source.html">Exception.h</a>.</p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a303fac04b1c83a4c5f8119344b6d8ec1" name="a303fac04b1c83a4c5f8119344b6d8ec1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a303fac04b1c83a4c5f8119344b6d8ec1">&#9670;&nbsp;</a></span>Exception()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">UDP::Exception::Exception </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>message</em> = <code>&quot;&quot;</code></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Constructor taking a message that is passed to <code>std::runtime_error</code>. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>Message to add to the runtime error </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_exception_8cpp_source.html#l00003">3</a> of file <a class="el" href="_exception_8cpp_source.html">Exception.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a825ce3fc0f996f9de64b075bad9bc7e0" name="a825ce3fc0f996f9de64b075bad9bc7e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a825ce3fc0f996f9de64b075bad9bc7e0">&#9670;&nbsp;</a></span>~Exception()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">UDP::Exception::~Exception </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Default destructor, no special effort here. </p>
+
+<p class="definition">Definition at line <a class="el" href="_exception_8cpp_source.html#l00007">7</a> of file <a class="el" href="_exception_8cpp_source.html">Exception.cpp</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>src/UDP/<a class="el" href="_exception_8h_source.html">Exception.h</a></li>
+<li>src/UDP/<a class="el" href="_exception_8cpp_source.html">Exception.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_u_d_p.html">UDP</a></li><li class="navelem"><a class="el" href="class_u_d_p_1_1_exception.html">Exception</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/class_u_d_p_1_1_exception.js b/doc/html/class_u_d_p_1_1_exception.js
new file mode 100644
index 0000000000000000000000000000000000000000..625e4af8901595e4807f8484eb2beffcb082e31b
--- /dev/null
+++ b/doc/html/class_u_d_p_1_1_exception.js
@@ -0,0 +1,5 @@
+var class_u_d_p_1_1_exception =
+[
+    [ "Exception", "class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1", null ],
+    [ "~Exception", "class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0", null ]
+];
\ No newline at end of file
diff --git a/doc/html/class_u_d_p_1_1_exception.png b/doc/html/class_u_d_p_1_1_exception.png
new file mode 100644
index 0000000000000000000000000000000000000000..c47610dc3cb33b5dd29b0838fba0f0e00ba172e2
Binary files /dev/null and b/doc/html/class_u_d_p_1_1_exception.png differ
diff --git a/doc/html/classes.html b/doc/html/classes.html
new file mode 100644
index 0000000000000000000000000000000000000000..9dbd58fa6f8f2f3379c6f9f2726b918483345b68
--- /dev/null
+++ b/doc/html/classes.html
@@ -0,0 +1,137 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Index</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('classes.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Class Index</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="qindex"><a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_H">H</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_O">O</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_V">V</a></div>
+<div class="classindex">
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_B" name="letter_B">B</a></dt>
+<dd><a class="el" href="class_u_d_p_1_1_broadcast.html">Broadcast</a> (<a class="el" href="namespace_u_d_p.html">UDP</a>)</dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_C" name="letter_C">C</a></dt>
+<dd><a class="el" href="class_m_q_t_t_1_1_configuration.html">Configuration</a> (<a class="el" href="namespace_m_q_t_t.html">MQTT</a>)</dd><dd><a class="el" href="class_u_d_p_1_1_configuration.html">Configuration</a> (<a class="el" href="namespace_u_d_p.html">UDP</a>)</dd><dd><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd><dd><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">Container&lt; T, -1, -1 &gt;</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd><dd><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">Container&lt; T, x, -1 &gt;</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_E" name="letter_E">E</a></dt>
+<dd><a class="el" href="class_s_o_i_l_1_1_element.html">Element</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd><dd><a class="el" href="class_s_o_i_l_1_1_enum.html">Enum</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd><dd><a class="el" href="class_m_q_t_t_1_1_exception.html">Exception</a> (<a class="el" href="namespace_m_q_t_t.html">MQTT</a>)</dd><dd><a class="el" href="class_u_d_p_1_1_exception.html">Exception</a> (<a class="el" href="namespace_u_d_p.html">UDP</a>)</dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_F" name="letter_F">F</a></dt>
+<dd><a class="el" href="class_s_o_i_l_1_1_figure.html">Figure</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd><dd><a class="el" href="class_s_o_i_l_1_1_function.html">Function</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_H" name="letter_H">H</a></dt>
+<dd><a class="el" href="class_s_i_g_n_1_1_hasher.html">Hasher</a> (<a class="el" href="namespace_s_i_g_n.html">SIGN</a>)</dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_M" name="letter_M">M</a></dt>
+<dd><a class="el" href="struct_m_q_t_t_1_1_message_container.html">MessageContainer</a> (<a class="el" href="namespace_m_q_t_t.html">MQTT</a>)</dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_O" name="letter_O">O</a></dt>
+<dd><a class="el" href="class_s_o_i_l_1_1_object.html">Object</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_P" name="letter_P">P</a></dt>
+<dd><a class="el" href="class_s_o_i_l_1_1_parameter.html">Parameter</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd><dd><a class="el" href="class_m_q_t_t_1_1_publisher.html">Publisher</a> (<a class="el" href="namespace_m_q_t_t.html">MQTT</a>)</dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_R" name="letter_R">R</a></dt>
+<dd><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd><dd><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">Range&lt; ENUM &gt;</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd><dd><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">Range&lt; std::string &gt;</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd><dd><a class="el" href="class_h_t_t_p_1_1_resource.html">Resource</a> (<a class="el" href="namespace_h_t_t_p.html">HTTP</a>)</dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_S" name="letter_S">S</a></dt>
+<dd><a class="el" href="class_h_t_t_p_1_1_server.html">Server</a> (<a class="el" href="namespace_h_t_t_p.html">HTTP</a>)</dd><dd><a class="el" href="class_s_i_g_n_1_1_signer.html">Signer</a> (<a class="el" href="namespace_s_i_g_n.html">SIGN</a>)</dd></dl>
+<dl class="classindex even">
+<dt class="alphachar"><a id="letter_T" name="letter_T">T</a></dt>
+<dd><a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd></dl>
+<dl class="classindex odd">
+<dt class="alphachar"><a id="letter_V" name="letter_V">V</a></dt>
+<dd><a class="el" href="class_s_o_i_l_1_1_variable.html">Variable</a> (<a class="el" href="namespace_s_o_i_l.html">SOIL</a>)</dd></dl>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/closed.png b/doc/html/closed.png
new file mode 100644
index 0000000000000000000000000000000000000000..98cc2c909da37a6df914fbf67780eebd99c597f5
Binary files /dev/null and b/doc/html/closed.png differ
diff --git a/doc/html/dir_5c48c3ba762084c368f706b319e3221b.html b/doc/html/dir_5c48c3ba762084c368f706b319e3221b.html
new file mode 100644
index 0000000000000000000000000000000000000000..379c18c70d8cc31b8ab5e3bc1ad57f2f2fd8fd93
--- /dev/null
+++ b/doc/html/dir_5c48c3ba762084c368f706b319e3221b.html
@@ -0,0 +1,113 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SIGN Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('dir_5c48c3ba762084c368f706b319e3221b.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SIGN Directory Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_i_g_n_2constants_8h.html">constants.h</a> <a href="_s_i_g_n_2constants_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_hasher_8cpp.html">Hasher.cpp</a> <a href="_hasher_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_hasher_8h.html">Hasher.h</a> <a href="_hasher_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_signer_8cpp.html">Signer.cpp</a> <a href="_signer_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_signer_8h.html">Signer.h</a> <a href="_signer_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_5c48c3ba762084c368f706b319e3221b.js b/doc/html/dir_5c48c3ba762084c368f706b319e3221b.js
new file mode 100644
index 0000000000000000000000000000000000000000..f13e12e7d7ca19589fe2af046c0ef516fe974a75
--- /dev/null
+++ b/doc/html/dir_5c48c3ba762084c368f706b319e3221b.js
@@ -0,0 +1,10 @@
+var dir_5c48c3ba762084c368f706b319e3221b =
+[
+    [ "constants.h", "_s_i_g_n_2constants_8h.html", "_s_i_g_n_2constants_8h" ],
+    [ "Hasher.cpp", "_hasher_8cpp.html", null ],
+    [ "Hasher.h", "_hasher_8h.html", [
+      [ "SIGN::Hasher", "class_s_i_g_n_1_1_hasher.html", "class_s_i_g_n_1_1_hasher" ]
+    ] ],
+    [ "Signer.cpp", "_signer_8cpp.html", null ],
+    [ "Signer.h", "_signer_8h.html", "_signer_8h" ]
+];
\ No newline at end of file
diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html
new file mode 100644
index 0000000000000000000000000000000000000000..c44204efea12bcc57007bb49e579ece92b2eb094
--- /dev/null
+++ b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html
@@ -0,0 +1,115 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('dir_68267d1309a1af8e8297ef4c3efbcdba.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">src Directory Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="subdirs" name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html">SIGN</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_fad39c6a80d5b10502d8b8402de358e3.html">TEST</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js
new file mode 100644
index 0000000000000000000000000000000000000000..8b1e5623bc6e53f5e6587f0ccdb7d248378a53bc
--- /dev/null
+++ b/doc/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js
@@ -0,0 +1,9 @@
+var dir_68267d1309a1af8e8297ef4c3efbcdba =
+[
+    [ "MQTT", "dir_97e9162b5eba51ba7b47a8e5d05863f3.html", "dir_97e9162b5eba51ba7b47a8e5d05863f3" ],
+    [ "REST", "dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html", "dir_fd8c6ed2afcc9d9b88b85c637913cdaa" ],
+    [ "SIGN", "dir_5c48c3ba762084c368f706b319e3221b.html", "dir_5c48c3ba762084c368f706b319e3221b" ],
+    [ "SOIL", "dir_80eb279d1f03cba0b7c8d3c4072fe319.html", "dir_80eb279d1f03cba0b7c8d3c4072fe319" ],
+    [ "TEST", "dir_fad39c6a80d5b10502d8b8402de358e3.html", "dir_fad39c6a80d5b10502d8b8402de358e3" ],
+    [ "UDP", "dir_a41816149b1851ca69b3e9aaedcc5381.html", "dir_a41816149b1851ca69b3e9aaedcc5381" ]
+];
\ No newline at end of file
diff --git a/doc/html/dir_80eb279d1f03cba0b7c8d3c4072fe319.html b/doc/html/dir_80eb279d1f03cba0b7c8d3c4072fe319.html
new file mode 100644
index 0000000000000000000000000000000000000000..6f0a7501766dcabe776f6b50bf177b3a80c43338
--- /dev/null
+++ b/doc/html/dir_80eb279d1f03cba0b7c8d3c4072fe319.html
@@ -0,0 +1,153 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('dir_80eb279d1f03cba0b7c8d3c4072fe319.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">SOIL Directory Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_o_i_l_2constants_8h.html">constants.h</a> <a href="_s_o_i_l_2constants_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_container_8cpp.html">Container.cpp</a> <a href="_container_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_container_8h.html">Container.h</a> <a href="_container_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_element_8cpp.html">Element.cpp</a> <a href="_element_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_element_8h.html">Element.h</a> <a href="_element_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_enum_8cpp.html">Enum.cpp</a> <a href="_enum_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_enum_8h.html">Enum.h</a> <a href="_enum_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_figure_8cpp.html">Figure.cpp</a> <a href="_figure_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_figure_8h.html">Figure.h</a> <a href="_figure_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_function_8cpp.html">Function.cpp</a> <a href="_function_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_function_8h.html">Function.h</a> <a href="_function_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__helpers_8cpp.html">json_helpers.cpp</a> <a href="json__helpers_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__helpers_8h.html">json_helpers.h</a> <a href="json__helpers_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_object_8cpp.html">Object.cpp</a> <a href="_object_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_object_8h.html">Object.h</a> <a href="_object_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_parameter_8cpp.html">Parameter.cpp</a> <a href="_parameter_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_parameter_8h.html">Parameter.h</a> <a href="_parameter_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_range_8cpp.html">Range.cpp</a> <a href="_range_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_range_8h.html">Range.h</a> <a href="_range_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_time_8cpp.html">Time.cpp</a> <a href="_time_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_time_8h.html">Time.h</a> <a href="_time_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_types_8cpp.html">Types.cpp</a> <a href="_types_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_s_o_i_l_2_types_8h.html">Types.h</a> <a href="_s_o_i_l_2_types_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_variable_8cpp.html">Variable.cpp</a> <a href="_variable_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_variable_8h.html">Variable.h</a> <a href="_variable_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_80eb279d1f03cba0b7c8d3c4072fe319.js b/doc/html/dir_80eb279d1f03cba0b7c8d3c4072fe319.js
new file mode 100644
index 0000000000000000000000000000000000000000..0ffecec44b6f06ec04279b94de80f23e9dc62e37
--- /dev/null
+++ b/doc/html/dir_80eb279d1f03cba0b7c8d3c4072fe319.js
@@ -0,0 +1,46 @@
+var dir_80eb279d1f03cba0b7c8d3c4072fe319 =
+[
+    [ "constants.h", "_s_o_i_l_2constants_8h.html", "_s_o_i_l_2constants_8h" ],
+    [ "Container.cpp", "_container_8cpp.html", null ],
+    [ "Container.h", "_container_8h.html", [
+      [ "SOIL::Container< T, x, y >", "class_s_o_i_l_1_1_container.html", "class_s_o_i_l_1_1_container" ],
+      [ "SOIL::Container< T, x, -1 >", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4" ],
+      [ "SOIL::Container< T, -1, -1 >", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4" ]
+    ] ],
+    [ "Element.cpp", "_element_8cpp.html", null ],
+    [ "Element.h", "_element_8h.html", "_element_8h" ],
+    [ "Enum.cpp", "_enum_8cpp.html", null ],
+    [ "Enum.h", "_enum_8h.html", [
+      [ "SOIL::Enum", "class_s_o_i_l_1_1_enum.html", "class_s_o_i_l_1_1_enum" ]
+    ] ],
+    [ "Figure.cpp", "_figure_8cpp.html", "_figure_8cpp" ],
+    [ "Figure.h", "_figure_8h.html", "_figure_8h" ],
+    [ "Function.cpp", "_function_8cpp.html", null ],
+    [ "Function.h", "_function_8h.html", [
+      [ "SOIL::Function", "class_s_o_i_l_1_1_function.html", "class_s_o_i_l_1_1_function" ]
+    ] ],
+    [ "json_helpers.cpp", "json__helpers_8cpp.html", "json__helpers_8cpp" ],
+    [ "json_helpers.h", "json__helpers_8h.html", "json__helpers_8h" ],
+    [ "Object.cpp", "_object_8cpp.html", null ],
+    [ "Object.h", "_object_8h.html", [
+      [ "SOIL::Object", "class_s_o_i_l_1_1_object.html", "class_s_o_i_l_1_1_object" ]
+    ] ],
+    [ "Parameter.cpp", "_parameter_8cpp.html", null ],
+    [ "Parameter.h", "_parameter_8h.html", [
+      [ "SOIL::Parameter< T, x, y >", "class_s_o_i_l_1_1_parameter.html", "class_s_o_i_l_1_1_parameter" ]
+    ] ],
+    [ "Range.cpp", "_range_8cpp.html", null ],
+    [ "Range.h", "_range_8h.html", [
+      [ "SOIL::Range< T >", "class_s_o_i_l_1_1_range.html", "class_s_o_i_l_1_1_range" ],
+      [ "SOIL::Range< std::string >", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4" ],
+      [ "SOIL::Range< ENUM >", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4" ]
+    ] ],
+    [ "Time.cpp", "_time_8cpp.html", null ],
+    [ "Time.h", "_time_8h.html", "_time_8h" ],
+    [ "Types.cpp", "_types_8cpp.html", null ],
+    [ "Types.h", "_s_o_i_l_2_types_8h.html", "_s_o_i_l_2_types_8h" ],
+    [ "Variable.cpp", "_variable_8cpp.html", null ],
+    [ "Variable.h", "_variable_8h.html", [
+      [ "SOIL::Variable< T, x, y >", "class_s_o_i_l_1_1_variable.html", "class_s_o_i_l_1_1_variable" ]
+    ] ]
+];
\ No newline at end of file
diff --git a/doc/html/dir_97e9162b5eba51ba7b47a8e5d05863f3.html b/doc/html/dir_97e9162b5eba51ba7b47a8e5d05863f3.html
new file mode 100644
index 0000000000000000000000000000000000000000..bc1c0db4eebf372c72303730fa3daddecadbd7b1
--- /dev/null
+++ b/doc/html/dir_97e9162b5eba51ba7b47a8e5d05863f3.html
@@ -0,0 +1,119 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/MQTT Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('dir_97e9162b5eba51ba7b47a8e5d05863f3.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MQTT Directory Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_m_q_t_t_2_configuration_8cpp.html">Configuration.cpp</a> <a href="_m_q_t_t_2_configuration_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_m_q_t_t_2_configuration_8h.html">Configuration.h</a> <a href="_m_q_t_t_2_configuration_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_m_q_t_t_2constants_8h.html">constants.h</a> <a href="_m_q_t_t_2constants_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_local_exception_8cpp.html">LocalException.cpp</a> <a href="_local_exception_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_local_exception_8h.html">LocalException.h</a> <a href="_local_exception_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_message_container_8h.html">MessageContainer.h</a> <a href="_message_container_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_publisher_8cpp.html">Publisher.cpp</a> <a href="_publisher_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_publisher_8h.html">Publisher.h</a> <a href="_publisher_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html">MQTT</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_97e9162b5eba51ba7b47a8e5d05863f3.js b/doc/html/dir_97e9162b5eba51ba7b47a8e5d05863f3.js
new file mode 100644
index 0000000000000000000000000000000000000000..40b102a4cfea8a2eb6b31e7f1921795e63cf706e
--- /dev/null
+++ b/doc/html/dir_97e9162b5eba51ba7b47a8e5d05863f3.js
@@ -0,0 +1,19 @@
+var dir_97e9162b5eba51ba7b47a8e5d05863f3 =
+[
+    [ "Configuration.cpp", "_m_q_t_t_2_configuration_8cpp.html", "_m_q_t_t_2_configuration_8cpp" ],
+    [ "Configuration.h", "_m_q_t_t_2_configuration_8h.html", [
+      [ "MQTT::Configuration", "class_m_q_t_t_1_1_configuration.html", "class_m_q_t_t_1_1_configuration" ]
+    ] ],
+    [ "constants.h", "_m_q_t_t_2constants_8h.html", "_m_q_t_t_2constants_8h" ],
+    [ "LocalException.cpp", "_local_exception_8cpp.html", null ],
+    [ "LocalException.h", "_local_exception_8h.html", [
+      [ "MQTT::Exception", "class_m_q_t_t_1_1_exception.html", "class_m_q_t_t_1_1_exception" ]
+    ] ],
+    [ "MessageContainer.h", "_message_container_8h.html", [
+      [ "MQTT::MessageContainer", "struct_m_q_t_t_1_1_message_container.html", "struct_m_q_t_t_1_1_message_container" ]
+    ] ],
+    [ "Publisher.cpp", "_publisher_8cpp.html", "_publisher_8cpp" ],
+    [ "Publisher.h", "_publisher_8h.html", [
+      [ "MQTT::Publisher", "class_m_q_t_t_1_1_publisher.html", "class_m_q_t_t_1_1_publisher" ]
+    ] ]
+];
\ No newline at end of file
diff --git a/doc/html/dir_a41816149b1851ca69b3e9aaedcc5381.html b/doc/html/dir_a41816149b1851ca69b3e9aaedcc5381.html
new file mode 100644
index 0000000000000000000000000000000000000000..273d664474ce75ccb486b916d643c2ee51bc6f65
--- /dev/null
+++ b/doc/html/dir_a41816149b1851ca69b3e9aaedcc5381.html
@@ -0,0 +1,117 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/UDP Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('dir_a41816149b1851ca69b3e9aaedcc5381.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">UDP Directory Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_broadcast_8cpp.html">Broadcast.cpp</a> <a href="_broadcast_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_broadcast_8h.html">Broadcast.h</a> <a href="_broadcast_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_u_d_p_2_configuration_8cpp.html">Configuration.cpp</a> <a href="_u_d_p_2_configuration_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_u_d_p_2_configuration_8h.html">Configuration.h</a> <a href="_u_d_p_2_configuration_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_u_d_p_2constants_8h.html">constants.h</a> <a href="_u_d_p_2constants_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_exception_8cpp.html">Exception.cpp</a> <a href="_exception_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_exception_8h.html">Exception.h</a> <a href="_exception_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html">UDP</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_a41816149b1851ca69b3e9aaedcc5381.js b/doc/html/dir_a41816149b1851ca69b3e9aaedcc5381.js
new file mode 100644
index 0000000000000000000000000000000000000000..75cf90a496097dfecd6b302ed6f7e9c06ffb5b5e
--- /dev/null
+++ b/doc/html/dir_a41816149b1851ca69b3e9aaedcc5381.js
@@ -0,0 +1,16 @@
+var dir_a41816149b1851ca69b3e9aaedcc5381 =
+[
+    [ "Broadcast.cpp", "_broadcast_8cpp.html", null ],
+    [ "Broadcast.h", "_broadcast_8h.html", [
+      [ "UDP::Broadcast", "class_u_d_p_1_1_broadcast.html", "class_u_d_p_1_1_broadcast" ]
+    ] ],
+    [ "Configuration.cpp", "_u_d_p_2_configuration_8cpp.html", "_u_d_p_2_configuration_8cpp" ],
+    [ "Configuration.h", "_u_d_p_2_configuration_8h.html", [
+      [ "UDP::Configuration", "class_u_d_p_1_1_configuration.html", "class_u_d_p_1_1_configuration" ]
+    ] ],
+    [ "constants.h", "_u_d_p_2constants_8h.html", null ],
+    [ "Exception.cpp", "_exception_8cpp.html", null ],
+    [ "Exception.h", "_exception_8h.html", [
+      [ "UDP::Exception", "class_u_d_p_1_1_exception.html", "class_u_d_p_1_1_exception" ]
+    ] ]
+];
\ No newline at end of file
diff --git a/doc/html/dir_fad39c6a80d5b10502d8b8402de358e3.html b/doc/html/dir_fad39c6a80d5b10502d8b8402de358e3.html
new file mode 100644
index 0000000000000000000000000000000000000000..432b986024d735ef2615fc579cc8d6ee3f7f9ec6
--- /dev/null
+++ b/doc/html/dir_fad39c6a80d5b10502d8b8402de358e3.html
@@ -0,0 +1,105 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/TEST Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('dir_fad39c6a80d5b10502d8b8402de358e3.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">TEST Directory Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html">main.cpp</a> <a href="main_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fad39c6a80d5b10502d8b8402de358e3.html">TEST</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_fad39c6a80d5b10502d8b8402de358e3.js b/doc/html/dir_fad39c6a80d5b10502d8b8402de358e3.js
new file mode 100644
index 0000000000000000000000000000000000000000..0100f9fb430973d0b027297abe3fcee33d7b8578
--- /dev/null
+++ b/doc/html/dir_fad39c6a80d5b10502d8b8402de358e3.js
@@ -0,0 +1,4 @@
+var dir_fad39c6a80d5b10502d8b8402de358e3 =
+[
+    [ "main.cpp", "main_8cpp.html", "main_8cpp" ]
+];
\ No newline at end of file
diff --git a/doc/html/dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html b/doc/html/dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html
new file mode 100644
index 0000000000000000000000000000000000000000..866b8f5522f25a5ad0ee1e08668b3bc75b51201e
--- /dev/null
+++ b/doc/html/dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html
@@ -0,0 +1,115 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/REST Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">REST Directory Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_r_e_s_t_2constants_8h.html">constants.h</a> <a href="_r_e_s_t_2constants_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_resource_8cpp.html">Resource.cpp</a> <a href="_resource_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_resource_8h.html">Resource.h</a> <a href="_resource_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_server_8cpp.html">Server.cpp</a> <a href="_server_8cpp_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_server_8h.html">Server.h</a> <a href="_server_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_r_e_s_t_2_types_8h.html">Types.h</a> <a href="_r_e_s_t_2_types_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html">REST</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/dir_fd8c6ed2afcc9d9b88b85c637913cdaa.js b/doc/html/dir_fd8c6ed2afcc9d9b88b85c637913cdaa.js
new file mode 100644
index 0000000000000000000000000000000000000000..5da09fe36e69d1c782a30dfb2340c782155bc486
--- /dev/null
+++ b/doc/html/dir_fd8c6ed2afcc9d9b88b85c637913cdaa.js
@@ -0,0 +1,13 @@
+var dir_fd8c6ed2afcc9d9b88b85c637913cdaa =
+[
+    [ "constants.h", "_r_e_s_t_2constants_8h.html", "_r_e_s_t_2constants_8h" ],
+    [ "Resource.cpp", "_resource_8cpp.html", null ],
+    [ "Resource.h", "_resource_8h.html", [
+      [ "HTTP::Resource", "class_h_t_t_p_1_1_resource.html", "class_h_t_t_p_1_1_resource" ]
+    ] ],
+    [ "Server.cpp", "_server_8cpp.html", null ],
+    [ "Server.h", "_server_8h.html", [
+      [ "HTTP::Server", "class_h_t_t_p_1_1_server.html", "class_h_t_t_p_1_1_server" ]
+    ] ],
+    [ "Types.h", "_r_e_s_t_2_types_8h.html", "_r_e_s_t_2_types_8h" ]
+];
\ No newline at end of file
diff --git a/doc/html/doc.png b/doc/html/doc.png
new file mode 100644
index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501
Binary files /dev/null and b/doc/html/doc.png differ
diff --git a/doc/html/doxygen.css b/doc/html/doxygen.css
new file mode 100644
index 0000000000000000000000000000000000000000..9036737224dcbddfe4ccabaa9abba260e142b05f
--- /dev/null
+++ b/doc/html/doxygen.css
@@ -0,0 +1,1841 @@
+/* The standard CSS for doxygen 1.9.3 */
+
+body, table, div, p, dl {
+	font: 400 14px/22px Roboto,sans-serif;
+}
+
+p.reference, p.definition {
+	font: 400 14px/22px Roboto,sans-serif;
+}
+
+/* @group Heading Levels */
+
+h1.groupheader {
+	font-size: 150%;
+}
+
+.title {
+	font: 400 14px/28px Roboto,sans-serif;
+	font-size: 150%;
+	font-weight: bold;
+	margin: 10px 2px;
+}
+
+h2.groupheader {
+	border-bottom: 1px solid #879ECB;
+	color: #354C7B;
+	font-size: 150%;
+	font-weight: normal;
+	margin-top: 1.75em;
+	padding-top: 8px;
+	padding-bottom: 4px;
+	width: 100%;
+}
+
+h3.groupheader {
+	font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+	-webkit-transition: text-shadow 0.5s linear;
+	-moz-transition: text-shadow 0.5s linear;
+	-ms-transition: text-shadow 0.5s linear;
+	-o-transition: text-shadow 0.5s linear;
+	transition: text-shadow 0.5s linear;
+	margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+	text-shadow: 0 0 15px cyan;
+}
+
+dt {
+	font-weight: bold;
+}
+
+ul.multicol {
+	-moz-column-gap: 1em;
+	-webkit-column-gap: 1em;
+	column-gap: 1em;
+	-moz-column-count: 3;
+	-webkit-column-count: 3;
+	column-count: 3;
+}
+
+p.startli, p.startdd {
+	margin-top: 2px;
+}
+
+th p.starttd, th p.intertd, th p.endtd {
+        font-size: 100%;
+        font-weight: 700;
+}
+
+p.starttd {
+	margin-top: 0px;
+}
+
+p.endli {
+	margin-bottom: 0px;
+}
+
+p.enddd {
+	margin-bottom: 4px;
+}
+
+p.endtd {
+	margin-bottom: 2px;
+}
+
+p.interli {
+}
+
+p.interdd {
+}
+
+p.intertd {
+}
+
+/* @end */
+
+caption {
+	font-weight: bold;
+}
+
+span.legend {
+	font-size: 70%;
+	text-align: center;
+}
+
+h3.version {
+	font-size: 90%;
+	text-align: center;
+}
+
+div.navtab {
+	border-right: 1px solid #A3B4D7;
+	padding-right: 15px;
+	text-align: right;
+	line-height: 110%;
+}
+
+div.navtab table {
+	border-spacing: 0;
+}
+
+td.navtab {
+	padding-right: 6px;
+	padding-left: 6px;
+}
+td.navtabHL {
+	background-image: url('tab_a.png');
+	background-repeat:repeat-x;
+	padding-right: 6px;
+	padding-left: 6px;
+}
+
+td.navtabHL a, td.navtabHL a:visited {
+	color: #fff;
+	text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+}
+
+a.navtab {
+	font-weight: bold;
+}
+
+div.qindex{
+	text-align: center;
+	width: 100%;
+	line-height: 140%;
+	font-size: 130%;
+	color: #A0A0A0;
+}
+
+dt.alphachar{
+	font-size: 180%;
+	font-weight: bold;
+}
+
+.alphachar a{
+	color: black;
+}
+
+.alphachar a:hover, .alphachar a:visited{
+	text-decoration: none;
+}
+
+.classindex dl {
+	padding: 25px;
+	column-count:1
+}
+
+.classindex dd {
+	display:inline-block;
+	margin-left: 50px;
+	width: 90%;
+	line-height: 1.15em;
+}
+
+.classindex dl.odd {
+	background-color: #F8F9FC;
+}
+
+@media(min-width: 1120px) {
+	.classindex dl {
+		column-count:2
+	}
+}
+
+@media(min-width: 1320px) {
+	.classindex dl {
+		column-count:3
+	}
+}
+
+
+/* @group Link Styling */
+
+a {
+	color: #3D578C;
+	font-weight: normal;
+	text-decoration: none;
+}
+
+.contents a:visited {
+	color: #4665A2;
+}
+
+a:hover {
+	text-decoration: underline;
+}
+
+.contents a.qindexHL:visited {
+        color: #FFFFFF;
+}
+
+a.el {
+	font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code, a.code:visited, a.line, a.line:visited {
+	color: #4665A2; 
+}
+
+a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited {
+	color: #4665A2; 
+}
+
+a.code.hl_class { /* style for links to class names in code snippets */ }
+a.code.hl_struct { /* style for links to struct names in code snippets */ }
+a.code.hl_union { /* style for links to union names in code snippets */ }
+a.code.hl_interface { /* style for links to interface names in code snippets */ }
+a.code.hl_protocol { /* style for links to protocol names in code snippets */ }
+a.code.hl_category { /* style for links to category names in code snippets */ }
+a.code.hl_exception { /* style for links to exception names in code snippets */ }
+a.code.hl_service { /* style for links to service names in code snippets */ }
+a.code.hl_singleton { /* style for links to singleton names in code snippets */ }
+a.code.hl_concept { /* style for links to concept names in code snippets */ }
+a.code.hl_namespace { /* style for links to namespace names in code snippets */ }
+a.code.hl_package { /* style for links to package names in code snippets */ }
+a.code.hl_define { /* style for links to macro names in code snippets */ }
+a.code.hl_function { /* style for links to function names in code snippets */ }
+a.code.hl_variable { /* style for links to variable names in code snippets */ }
+a.code.hl_typedef { /* style for links to typedef names in code snippets */ }
+a.code.hl_enumvalue { /* style for links to enum value names in code snippets */ }
+a.code.hl_enumeration { /* style for links to enumeration names in code snippets */ }
+a.code.hl_signal { /* style for links to Qt signal names in code snippets */ }
+a.code.hl_slot { /* style for links to Qt slot names in code snippets */ }
+a.code.hl_friend { /* style for links to friend names in code snippets */ }
+a.code.hl_dcop { /* style for links to KDE3 DCOP names in code snippets */ }
+a.code.hl_property { /* style for links to property names in code snippets */ }
+a.code.hl_event { /* style for links to event names in code snippets */ }
+a.code.hl_sequence { /* style for links to sequence names in code snippets */ }
+a.code.hl_dictionary { /* style for links to dictionary names in code snippets */ }
+
+/* @end */
+
+dl.el {
+	margin-left: -1cm;
+}
+
+ul {
+  overflow: visible;
+}
+
+#side-nav ul {
+  overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */
+}
+
+#main-nav ul {
+  overflow: visible; /* reset ul rule for the navigation bar drop down lists */
+}
+
+.fragment {
+  text-align: left;
+  direction: ltr;
+  overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/
+  overflow-y: hidden;
+}
+
+pre.fragment {
+        border: 1px solid #C4CFE5;
+        background-color: #FBFCFD;
+        padding: 4px 6px;
+        margin: 4px 8px 4px 2px;
+        overflow: auto;
+        word-wrap: break-word;
+        font-size:  9pt;
+        line-height: 125%;
+        font-family: monospace, fixed;
+        font-size: 105%;
+}
+
+div.fragment {
+  padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/
+  margin: 4px 8px 4px 2px;
+	background-color: #FBFCFD;
+	border: 1px solid #C4CFE5;
+}
+
+div.line {
+	font-family: monospace, fixed;
+        font-size: 13px;
+	min-height: 13px;
+	line-height: 1.0;
+	text-wrap: unrestricted;
+	white-space: -moz-pre-wrap; /* Moz */
+	white-space: -pre-wrap;     /* Opera 4-6 */
+	white-space: -o-pre-wrap;   /* Opera 7 */
+	white-space: pre-wrap;      /* CSS3  */
+	word-wrap: break-word;      /* IE 5.5+ */
+	text-indent: -53px;
+	padding-left: 53px;
+	padding-bottom: 0px;
+	margin: 0px;
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+div.line:after {
+    content:"\000A";
+    white-space: pre;
+}
+
+div.line.glow {
+	background-color: cyan;
+	box-shadow: 0 0 10px cyan;
+}
+
+
+span.lineno {
+	padding-right: 4px;
+        margin-right: 9px;
+	text-align: right;
+	border-right: 2px solid #0F0;
+	background-color: #E8E8E8;
+        white-space: pre;
+}
+span.lineno a {
+	background-color: #D8D8D8;
+}
+
+span.lineno a:hover {
+	background-color: #C8C8C8;
+}
+
+.lineno {
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+div.ah, span.ah {
+	background-color: black;
+	font-weight: bold;
+	color: #FFFFFF;
+	margin-bottom: 3px;
+	margin-top: 3px;
+	padding: 0.2em;
+	border: solid thin #333;
+	border-radius: 0.5em;
+	-webkit-border-radius: .5em;
+	-moz-border-radius: .5em;
+	box-shadow: 2px 2px 3px #999;
+	-webkit-box-shadow: 2px 2px 3px #999;
+	-moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+	background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+	background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%);
+}
+
+div.classindex ul {
+        list-style: none;
+        padding-left: 0;
+}
+
+div.classindex span.ai {
+        display: inline-block;
+}
+
+div.groupHeader {
+	margin-left: 16px;
+	margin-top: 12px;
+	font-weight: bold;
+}
+
+div.groupText {
+	margin-left: 16px;
+	font-style: italic;
+}
+
+body {
+	background-color: white;
+	color: black;
+        margin: 0;
+}
+
+div.contents {
+	margin-top: 10px;
+	margin-left: 12px;
+	margin-right: 8px;
+}
+
+td.indexkey {
+	background-color: #EBEFF6;
+	font-weight: bold;
+	border: 1px solid #C4CFE5;
+	margin: 2px 0px 2px 0;
+	padding: 2px 10px;
+        white-space: nowrap;
+        vertical-align: top;
+}
+
+td.indexvalue {
+	background-color: #EBEFF6;
+	border: 1px solid #C4CFE5;
+	padding: 2px 10px;
+	margin: 2px 0px;
+}
+
+tr.memlist {
+	background-color: #EEF1F7;
+}
+
+p.formulaDsp {
+	text-align: center;
+}
+
+img.formulaDsp {
+	
+}
+
+img.formulaInl, img.inline {
+	vertical-align: middle;
+}
+
+div.center {
+	text-align: center;
+        margin-top: 0px;
+        margin-bottom: 0px;
+        padding: 0px;
+}
+
+div.center img {
+	border: 0px;
+}
+
+address.footer {
+	text-align: right;
+	padding-right: 12px;
+}
+
+img.footer {
+	border: 0px;
+	vertical-align: middle;
+}
+
+.compoundTemplParams {
+	color: #4665A2;
+	font-size: 80%;
+	line-height: 120%;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+	color: #008000
+}
+
+span.keywordtype {
+	color: #604020
+}
+
+span.keywordflow {
+	color: #e08000
+}
+
+span.comment {
+	color: #800000
+}
+
+span.preprocessor {
+	color: #806020
+}
+
+span.stringliteral {
+	color: #002080
+}
+
+span.charliteral {
+	color: #008080
+}
+
+span.vhdldigit { 
+	color: #ff00ff 
+}
+
+span.vhdlchar { 
+	color: #000000 
+}
+
+span.vhdlkeyword { 
+	color: #700070 
+}
+
+span.vhdllogic { 
+	color: #ff0000 
+}
+
+blockquote {
+        background-color: #F7F8FB;
+        border-left: 2px solid #9CAFD4;
+        margin: 0 24px 0 4px;
+        padding: 0 12px 0 16px;
+}
+
+blockquote.DocNodeRTL {
+   border-left: 0;
+   border-right: 2px solid #9CAFD4;
+   margin: 0 4px 0 24px;
+   padding: 0 16px 0 12px;
+}
+
+/* @end */
+
+/*
+.search {
+	color: #003399;
+	font-weight: bold;
+}
+
+form.search {
+	margin-bottom: 0px;
+	margin-top: 0px;
+}
+
+input.search {
+	font-size: 75%;
+	color: #000080;
+	font-weight: normal;
+	background-color: #e8eef2;
+}
+*/
+
+td.tiny {
+	font-size: 75%;
+}
+
+.dirtab {
+	padding: 4px;
+	border-collapse: collapse;
+	border: 1px solid #A3B4D7;
+}
+
+th.dirtab {
+	background: #EBEFF6;
+	font-weight: bold;
+}
+
+hr {
+	height: 0px;
+	border: none;
+	border-top: 1px solid #4A6AAA;
+}
+
+hr.footer {
+	height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+	border-spacing: 0px;
+	padding: 0px;
+}
+
+.memberdecls td, .fieldtable tr {
+	-webkit-transition-property: background-color, box-shadow;
+	-webkit-transition-duration: 0.5s;
+	-moz-transition-property: background-color, box-shadow;
+	-moz-transition-duration: 0.5s;
+	-ms-transition-property: background-color, box-shadow;
+	-ms-transition-duration: 0.5s;
+	-o-transition-property: background-color, box-shadow;
+	-o-transition-duration: 0.5s;
+	transition-property: background-color, box-shadow;
+	transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+	background-color: cyan;
+	box-shadow: 0 0 15px cyan;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+	background-color: #F9FAFC;
+	border: none;
+	margin: 4px;
+	padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+	padding: 0px 8px 4px 8px;
+	color: #555;
+}
+
+.memSeparator {
+        border-bottom: 1px solid #DEE4F0;
+        line-height: 1px;
+        margin: 0px;
+        padding: 0px;
+}
+
+.memItemLeft, .memTemplItemLeft {
+        white-space: nowrap;
+}
+
+.memItemRight, .memTemplItemRight {
+	width: 100%;
+}
+
+.memTemplParams {
+	color: #4665A2;
+        white-space: nowrap;
+	font-size: 80%;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtitle {
+	padding: 8px;
+	border-top: 1px solid #A8B8D9;
+	border-left: 1px solid #A8B8D9;
+	border-right: 1px solid #A8B8D9;
+	border-top-right-radius: 4px;
+	border-top-left-radius: 4px;
+	margin-bottom: -1px;
+	background-image: url('nav_f.png');
+	background-repeat: repeat-x;
+	background-color: #E2E8F2;
+	line-height: 1.25;
+	font-weight: 300;
+	float:left;
+}
+
+.permalink
+{
+        font-size: 65%;
+        display: inline-block;
+        vertical-align: middle;
+}
+
+.memtemplate {
+	font-size: 80%;
+	color: #4665A2;
+	font-weight: normal;
+	margin-left: 9px;
+}
+
+.memnav {
+	background-color: #EBEFF6;
+	border: 1px solid #A3B4D7;
+	text-align: center;
+	margin: 2px;
+	margin-right: 15px;
+	padding: 2px;
+}
+
+.mempage {
+	width: 100%;
+}
+
+.memitem {
+	padding: 0;
+	margin-bottom: 10px;
+	margin-right: 5px;
+        -webkit-transition: box-shadow 0.5s linear;
+        -moz-transition: box-shadow 0.5s linear;
+        -ms-transition: box-shadow 0.5s linear;
+        -o-transition: box-shadow 0.5s linear;
+        transition: box-shadow 0.5s linear;
+        display: table !important;
+        width: 100%;
+}
+
+.memitem.glow {
+         box-shadow: 0 0 15px cyan;
+}
+
+.memname {
+        font-weight: 400;
+        margin-left: 6px;
+}
+
+.memname td {
+	vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
+        border-top: 1px solid #A8B8D9;
+        border-left: 1px solid #A8B8D9;
+        border-right: 1px solid #A8B8D9;
+        padding: 6px 0px 6px 0px;
+        color: #253555;
+        font-weight: bold;
+        text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+        background-color: #DFE5F1;
+        /* opera specific markup */
+        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        border-top-right-radius: 4px;
+        /* firefox specific markup */
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        -moz-border-radius-topright: 4px;
+        /* webkit specific markup */
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        -webkit-border-top-right-radius: 4px;
+
+}
+
+.overload {
+        font-family: "courier new",courier,monospace;
+	font-size: 65%;
+}
+
+.memdoc, dl.reflist dd {
+        border-bottom: 1px solid #A8B8D9;      
+        border-left: 1px solid #A8B8D9;      
+        border-right: 1px solid #A8B8D9; 
+        padding: 6px 10px 2px 10px;
+        background-color: #FBFCFD;
+        border-top-width: 0;
+        background-image:url('nav_g.png');
+        background-repeat:repeat-x;
+        background-color: #FFFFFF;
+        /* opera specific markup */
+        border-bottom-left-radius: 4px;
+        border-bottom-right-radius: 4px;
+        box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+        /* firefox specific markup */
+        -moz-border-radius-bottomleft: 4px;
+        -moz-border-radius-bottomright: 4px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+        /* webkit specific markup */
+        -webkit-border-bottom-left-radius: 4px;
+        -webkit-border-bottom-right-radius: 4px;
+        -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+        padding: 5px;
+}
+
+dl.reflist dd {
+        margin: 0px 0px 10px 0px;
+        padding: 5px;
+}
+
+.paramkey {
+	text-align: right;
+}
+
+.paramtype {
+	white-space: nowrap;
+}
+
+.paramname {
+	color: #602020;
+	white-space: nowrap;
+}
+.paramname em {
+	font-style: normal;
+}
+.paramname code {
+        line-height: 14px;
+}
+
+.params, .retval, .exception, .tparams {
+        margin-left: 0px;
+        padding-left: 0px;
+}       
+
+.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname {
+        font-weight: bold;
+        vertical-align: top;
+}
+        
+.params .paramtype, .tparams .paramtype {
+        font-style: italic;
+        vertical-align: top;
+}       
+        
+.params .paramdir, .tparams .paramdir {
+        font-family: "courier new",courier,monospace;
+        vertical-align: top;
+}
+
+table.mlabels {
+	border-spacing: 0px;
+}
+
+td.mlabels-left {
+	width: 100%;
+	padding: 0px;
+}
+
+td.mlabels-right {
+	vertical-align: bottom;
+	padding: 0px;
+	white-space: nowrap;
+}
+
+span.mlabels {
+        margin-left: 8px;
+}
+
+span.mlabel {
+        background-color: #728DC1;
+        border-top:1px solid #5373B4;
+        border-left:1px solid #5373B4;
+        border-right:1px solid #C4CFE5;
+        border-bottom:1px solid #C4CFE5;
+	text-shadow: none;
+	color: white;
+	margin-right: 4px;
+	padding: 2px 3px;
+	border-radius: 3px;
+	font-size: 7pt;
+	white-space: nowrap;
+	vertical-align: middle;
+}
+
+
+
+/* @end */
+
+/* these are for tree view inside a (index) page */
+
+div.directory {
+        margin: 10px 0px;
+        border-top: 1px solid #9CAFD4;
+        border-bottom: 1px solid #9CAFD4;
+        width: 100%;
+}
+
+.directory table {
+        border-collapse:collapse;
+}
+
+.directory td {
+        margin: 0px;
+        padding: 0px;
+	vertical-align: top;
+}
+
+.directory td.entry {
+        white-space: nowrap;
+        padding-right: 6px;
+	padding-top: 3px;
+}
+
+.directory td.entry a {
+        outline:none;
+}
+
+.directory td.entry a img {
+        border: none;
+}
+
+.directory td.desc {
+        width: 100%;
+        padding-left: 6px;
+	padding-right: 6px;
+	padding-top: 3px;
+	border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+	padding-left: 6px;
+	background-color: #F7F8FB;
+}
+
+.directory img {
+	vertical-align: -30%;
+}
+
+.directory .levels {
+        white-space: nowrap;
+        width: 100%;
+        text-align: right;
+        font-size: 9pt;
+}
+
+.directory .levels span {
+        cursor: pointer;
+        padding-left: 2px;
+        padding-right: 2px;
+	color: #3D578C;
+}
+
+.arrow {
+    color: #9CAFD4;
+    -webkit-user-select: none;
+    -khtml-user-select: none;
+    -moz-user-select: none;
+    -ms-user-select: none;
+    user-select: none;
+    cursor: pointer;
+    font-size: 80%;
+    display: inline-block;
+    width: 16px;
+    height: 22px;
+}
+
+.icon {
+    font-family: Arial, Helvetica;
+    font-weight: bold;
+    font-size: 12px;
+    height: 14px;
+    width: 16px;
+    display: inline-block;
+    background-color: #728DC1;
+    color: white;
+    text-align: center;
+    border-radius: 4px;
+    margin-left: 2px;
+    margin-right: 2px;
+}
+
+.icona {
+    width: 24px;
+    height: 22px;
+    display: inline-block;
+}
+
+.iconfopen {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:url('folderopen.png');
+    background-position: 0px -4px;
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+.iconfclosed {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:url('folderclosed.png');
+    background-position: 0px -4px;
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+.icondoc {
+    width: 24px;
+    height: 18px;
+    margin-bottom: 4px;
+    background-image:url('doc.png');
+    background-position: 0px -4px;
+    background-repeat: repeat-y;
+    vertical-align:top;
+    display: inline-block;
+}
+
+table.directory {
+    font: 400 14px Roboto,sans-serif;
+}
+
+/* @end */
+
+div.dynheader {
+        margin-top: 8px;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+address {
+	font-style: normal;
+	color: #2A3D61;
+}
+
+table.doxtable caption {
+	caption-side: top;
+}
+
+table.doxtable {
+	border-collapse:collapse;
+        margin-top: 4px;
+        margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+	border: 1px solid #2D4068;
+	padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+	background-color: #374F7F;
+	color: #FFFFFF;
+	font-size: 110%;
+	padding-bottom: 4px;
+	padding-top: 5px;
+}
+
+table.fieldtable {
+        /*width: 100%;*/
+        margin-bottom: 10px;
+        border: 1px solid #A8B8D9;
+        border-spacing: 0px;
+        -moz-border-radius: 4px;
+        -webkit-border-radius: 4px;
+        border-radius: 4px;
+        -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+        -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+        box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+        padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+        white-space: nowrap;
+        border-right: 1px solid #A8B8D9;
+        border-bottom: 1px solid #A8B8D9;
+        vertical-align: top;
+}
+
+.fieldtable td.fieldname {
+        padding-top: 3px;
+}
+
+.fieldtable td.fielddoc {
+        border-bottom: 1px solid #A8B8D9;
+        /*width: 100%;*/
+}
+
+.fieldtable td.fielddoc p:first-child {
+        margin-top: 0px;
+}       
+        
+.fieldtable td.fielddoc p:last-child {
+        margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+        border-bottom: none;
+}
+
+.fieldtable th {
+        background-image:url('nav_f.png');
+        background-repeat:repeat-x;
+        background-color: #E2E8F2;
+        font-size: 90%;
+        color: #253555;
+        padding-bottom: 4px;
+        padding-top: 5px;
+        text-align:left;
+        font-weight: 400;
+        -moz-border-radius-topleft: 4px;
+        -moz-border-radius-topright: 4px;
+        -webkit-border-top-left-radius: 4px;
+        -webkit-border-top-right-radius: 4px;
+        border-top-left-radius: 4px;
+        border-top-right-radius: 4px;
+        border-bottom: 1px solid #A8B8D9;
+}
+
+
+.tabsearch {
+	top: 0px;
+	left: 10px;
+	height: 36px;
+	background-image: url('tab_b.png');
+	z-index: 101;
+	overflow: hidden;
+	font-size: 13px;
+}
+
+.navpath ul
+{
+	font-size: 11px;
+	background-image:url('tab_b.png');
+	background-repeat:repeat-x;
+	background-position: 0 -5px;
+	height:30px;
+	line-height:30px;
+	color:#8AA0CC;
+	border:solid 1px #C2CDE4;
+	overflow:hidden;
+	margin:0px;
+	padding:0px;
+}
+
+.navpath li
+{
+	list-style-type:none;
+	float:left;
+	padding-left:10px;
+	padding-right:15px;
+	background-image:url('bc_s.png');
+	background-repeat:no-repeat;
+	background-position:right;
+	color:#364D7C;
+}
+
+.navpath li.navelem a
+{
+	height:32px;
+	display:block;
+	text-decoration: none;
+	outline: none;
+	color: #283A5D;
+	font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+	text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+	text-decoration: none;        
+}
+
+.navpath li.navelem a:hover
+{
+	color:#6884BD;
+}
+
+.navpath li.footer
+{
+        list-style-type:none;
+        float:right;
+        padding-left:10px;
+        padding-right:15px;
+        background-image:none;
+        background-repeat:no-repeat;
+        background-position:right;
+        color:#364D7C;
+        font-size: 8pt;
+}
+
+
+div.summary
+{
+	float: right;
+	font-size: 8pt;
+	padding-right: 5px;
+	width: 50%;
+	text-align: right;
+}       
+
+div.summary a
+{
+	white-space: nowrap;
+}
+
+table.classindex
+{
+        margin: 10px;
+        white-space: nowrap;
+        margin-left: 3%;
+        margin-right: 3%;
+        width: 94%;
+        border: 0;
+        border-spacing: 0; 
+        padding: 0;
+}
+
+div.ingroups
+{
+	font-size: 8pt;
+	width: 50%;
+	text-align: left;
+}
+
+div.ingroups a
+{
+	white-space: nowrap;
+}
+
+div.header
+{
+        background-image:url('nav_h.png');
+        background-repeat:repeat-x;
+	background-color: #F9FAFC;
+	margin:  0px;
+	border-bottom: 1px solid #C4CFE5;
+}
+
+div.headertitle
+{
+	padding: 5px 5px 5px 10px;
+}
+
+.PageDocRTL-title div.headertitle {
+  text-align: right;
+  direction: rtl;
+}
+
+dl {
+        padding: 0 0 0 0;
+}
+
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */
+dl.section {
+	margin-left: 0px;
+	padding-left: 0px;
+}
+
+dl.section.DocNodeRTL {
+  margin-right: 0px;
+  padding-right: 0px;
+}
+
+dl.note {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #D0C000;
+}
+
+dl.note.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #D0C000;
+}
+
+dl.warning, dl.attention {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #FF0000;
+}
+
+dl.warning.DocNodeRTL, dl.attention.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #00D000;
+}
+
+dl.pre.DocNodeRTL, dl.post.DocNodeRTL, dl.invariant.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #00D000;
+}
+
+dl.deprecated {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #505050;
+}
+
+dl.deprecated.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #505050;
+}
+
+dl.todo {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #00C0E0;
+}
+
+dl.todo.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #00C0E0;
+}
+
+dl.test {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #3030E0;
+}
+
+dl.test.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #3030E0;
+}
+
+dl.bug {
+  margin-left: -7px;
+  padding-left: 3px;
+  border-left: 4px solid;
+  border-color: #C08050;
+}
+
+dl.bug.DocNodeRTL {
+  margin-left: 0;
+  padding-left: 0;
+  border-left: 0;
+  margin-right: -7px;
+  padding-right: 3px;
+  border-right: 4px solid;
+  border-color: #C08050;
+}
+
+dl.section dd {
+	margin-bottom: 6px;
+}
+
+
+#projectrow
+{
+	height: 56px;
+}
+
+#projectlogo
+{
+	text-align: center;
+	vertical-align: bottom;
+	border-collapse: separate;
+}
+ 
+#projectlogo img
+{ 
+	border: 0px none;
+}
+ 
+#projectalign
+{
+        vertical-align: middle;
+        padding-left: 0.5em;
+}
+
+#projectname
+{
+	font: 200% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 2px 0px;
+}
+    
+#projectbrief
+{
+	font: 90% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 0px;
+}
+
+#projectnumber
+{
+	font: 50% Tahoma, Arial,sans-serif;
+	margin: 0px;
+	padding: 0px;
+}
+
+#titlearea
+{
+	padding: 0px;
+	margin: 0px;
+	width: 100%;
+	border-bottom: 1px solid #5373B4;
+}
+
+.image
+{
+        text-align: center;
+}
+
+.dotgraph
+{
+        text-align: center;
+}
+
+.mscgraph
+{
+        text-align: center;
+}
+
+.plantumlgraph
+{
+        text-align: center;
+}
+
+.diagraph
+{
+        text-align: center;
+}
+
+.caption
+{
+	font-weight: bold;
+}
+
+div.zoom
+{
+	border: 1px solid #90A5CE;
+}
+
+dl.citelist {
+        margin-bottom:50px;
+}
+
+dl.citelist dt {
+        color:#334975;
+        float:left;
+        font-weight:bold;
+        margin-right:10px;
+        padding:5px;
+        text-align:right;
+        width:52px;
+}
+
+dl.citelist dd {
+        margin:2px 0 2px 72px;
+        padding:5px 0;
+}
+
+div.toc {
+        padding: 14px 25px;
+        background-color: #F4F6FA;
+        border: 1px solid #D8DFEE;
+        border-radius: 7px 7px 7px 7px;
+        float: right;
+        height: auto;
+        margin: 0 8px 10px 10px;
+        width: 200px;
+}
+
+.PageDocRTL-title div.toc {
+  float: left !important;
+  text-align: right;
+}
+
+div.toc li {
+        background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+        font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+        margin-top: 5px;
+        padding-left: 10px;
+        padding-top: 2px;
+}
+
+.PageDocRTL-title div.toc li {
+  background-position-x: right !important;
+  padding-left: 0 !important;
+  padding-right: 10px;
+}
+
+div.toc h3 {
+        font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+	color: #4665A2;
+        border-bottom: 0 none;
+        margin: 0;
+}
+
+div.toc ul {
+        list-style: none outside none;
+        border: medium none;
+        padding: 0px;
+}       
+
+div.toc li.level1 {
+        margin-left: 0px;
+}
+
+div.toc li.level2 {
+        margin-left: 15px;
+}
+
+div.toc li.level3 {
+        margin-left: 30px;
+}
+
+div.toc li.level4 {
+        margin-left: 45px;
+}
+
+span.emoji {
+        /* font family used at the site: https://unicode.org/emoji/charts/full-emoji-list.html
+         * font-family: "Noto Color Emoji", "Apple Color Emoji", "Segoe UI Emoji", Times, Symbola, Aegyptus, Code2000, Code2001, Code2002, Musica, serif, LastResort;
+         */
+}
+
+span.obfuscator {
+  display: none;
+}
+
+.PageDocRTL-title div.toc li.level1 {
+  margin-left: 0 !important;
+  margin-right: 0;
+}
+
+.PageDocRTL-title div.toc li.level2 {
+  margin-left: 0 !important;
+  margin-right: 15px;
+}
+
+.PageDocRTL-title div.toc li.level3 {
+  margin-left: 0 !important;
+  margin-right: 30px;
+}
+
+.PageDocRTL-title div.toc li.level4 {
+  margin-left: 0 !important;
+  margin-right: 45px;
+}
+
+.inherit_header {
+        font-weight: bold;
+        color: gray;
+        cursor: pointer;
+	-webkit-touch-callout: none;
+	-webkit-user-select: none;
+	-khtml-user-select: none;
+	-moz-user-select: none;
+	-ms-user-select: none;
+	user-select: none;
+}
+
+.inherit_header td {
+        padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+        display: none;
+}
+
+tr.heading h2 {
+        margin-top: 12px;
+        margin-bottom: 4px;
+}
+
+/* tooltip related style info */
+
+.ttc {
+        position: absolute;
+        display: none;
+}
+
+#powerTip {
+	cursor: default;
+	/*white-space: nowrap;*/
+	background-color: white;
+	border: 1px solid gray;
+	border-radius: 4px 4px 4px 4px;
+	box-shadow: 1px 1px 7px gray;
+	display: none;
+	font-size: smaller;
+	max-width: 80%;
+	opacity: 0.9;
+	padding: 1ex 1em 1em;
+	position: absolute;
+	z-index: 2147483647;
+}
+
+#powerTip div.ttdoc {
+        color: grey;
+	font-style: italic;
+}
+
+#powerTip div.ttname a {
+        font-weight: bold;
+}
+
+#powerTip div.ttname {
+        font-weight: bold;
+}
+
+#powerTip div.ttdeci {
+        color: #006318;
+}
+
+#powerTip div {
+        margin: 0px;
+        padding: 0px;
+        font: 12px/16px Roboto,sans-serif;
+}
+
+#powerTip:before, #powerTip:after {
+	content: "";
+	position: absolute;
+	margin: 0px;
+}
+
+#powerTip.n:after,  #powerTip.n:before,
+#powerTip.s:after,  #powerTip.s:before,
+#powerTip.w:after,  #powerTip.w:before,
+#powerTip.e:after,  #powerTip.e:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.nw:after, #powerTip.nw:before,
+#powerTip.sw:after, #powerTip.sw:before {
+	border: solid transparent;
+	content: " ";
+	height: 0;
+	width: 0;
+	position: absolute;
+}
+
+#powerTip.n:after,  #powerTip.s:after,
+#powerTip.w:after,  #powerTip.e:after,
+#powerTip.nw:after, #powerTip.ne:after,
+#powerTip.sw:after, #powerTip.se:after {
+	border-color: rgba(255, 255, 255, 0);
+}
+
+#powerTip.n:before,  #powerTip.s:before,
+#powerTip.w:before,  #powerTip.e:before,
+#powerTip.nw:before, #powerTip.ne:before,
+#powerTip.sw:before, #powerTip.se:before {
+	border-color: rgba(128, 128, 128, 0);
+}
+
+#powerTip.n:after,  #powerTip.n:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.nw:after, #powerTip.nw:before {
+	top: 100%;
+}
+
+#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
+	border-top-color: #FFFFFF;
+	border-width: 10px;
+	margin: 0px -10px;
+}
+#powerTip.n:before {
+	border-top-color: #808080;
+	border-width: 11px;
+	margin: 0px -11px;
+}
+#powerTip.n:after, #powerTip.n:before {
+	left: 50%;
+}
+
+#powerTip.nw:after, #powerTip.nw:before {
+	right: 14px;
+}
+
+#powerTip.ne:after, #powerTip.ne:before {
+	left: 14px;
+}
+
+#powerTip.s:after,  #powerTip.s:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.sw:after, #powerTip.sw:before {
+	bottom: 100%;
+}
+
+#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
+	border-bottom-color: #FFFFFF;
+	border-width: 10px;
+	margin: 0px -10px;
+}
+
+#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
+	border-bottom-color: #808080;
+	border-width: 11px;
+	margin: 0px -11px;
+}
+
+#powerTip.s:after, #powerTip.s:before {
+	left: 50%;
+}
+
+#powerTip.sw:after, #powerTip.sw:before {
+	right: 14px;
+}
+
+#powerTip.se:after, #powerTip.se:before {
+	left: 14px;
+}
+
+#powerTip.e:after, #powerTip.e:before {
+	left: 100%;
+}
+#powerTip.e:after {
+	border-left-color: #FFFFFF;
+	border-width: 10px;
+	top: 50%;
+	margin-top: -10px;
+}
+#powerTip.e:before {
+	border-left-color: #808080;
+	border-width: 11px;
+	top: 50%;
+	margin-top: -11px;
+}
+
+#powerTip.w:after, #powerTip.w:before {
+	right: 100%;
+}
+#powerTip.w:after {
+	border-right-color: #FFFFFF;
+	border-width: 10px;
+	top: 50%;
+	margin-top: -10px;
+}
+#powerTip.w:before {
+	border-right-color: #808080;
+	border-width: 11px;
+	top: 50%;
+	margin-top: -11px;
+}
+
+@media print
+{
+  #top { display: none; }
+  #side-nav { display: none; }
+  #nav-path { display: none; }
+  body { overflow:visible; }
+  h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+  .summary { display: none; }
+  .memitem { page-break-inside: avoid; }
+  #doc-content
+  {
+    margin-left:0 !important;
+    height:auto !important;
+    width:auto !important;
+    overflow:inherit;
+    display:inline;
+  }
+}
+
+/* @group Markdown */
+
+table.markdownTable {
+	border-collapse:collapse;
+        margin-top: 4px;
+        margin-bottom: 4px;
+}
+
+table.markdownTable td, table.markdownTable th {
+	border: 1px solid #2D4068;
+	padding: 3px 7px 2px;
+}
+
+table.markdownTable tr {
+}
+
+th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone {
+	background-color: #374F7F;
+	color: #FFFFFF;
+	font-size: 110%;
+	padding-bottom: 4px;
+	padding-top: 5px;
+}
+
+th.markdownTableHeadLeft, td.markdownTableBodyLeft {
+	text-align: left
+}
+
+th.markdownTableHeadRight, td.markdownTableBodyRight {
+	text-align: right
+}
+
+th.markdownTableHeadCenter, td.markdownTableBodyCenter {
+	text-align: center
+}
+
+.DocNodeRTL {
+  text-align: right;
+  direction: rtl;
+}
+
+.DocNodeLTR {
+  text-align: left;
+  direction: ltr;
+}
+
+table.DocNodeRTL {
+   width: auto;
+   margin-right: 0;
+   margin-left: auto;
+}
+
+table.DocNodeLTR {
+   width: auto;
+   margin-right: auto;
+   margin-left: 0;
+}
+
+code.JavaDocCode
+  direction:ltr;
+}
+
+tt, code, kbd, samp
+{
+  display: inline-block;
+  direction:ltr; 
+}
+/* @end */
+
+u {
+	text-decoration: underline;
+}
+
diff --git a/doc/html/doxygen.svg b/doc/html/doxygen.svg
new file mode 100644
index 0000000000000000000000000000000000000000..d42dad52d5d1d835a65d89dbddd042c44ee40d3b
--- /dev/null
+++ b/doc/html/doxygen.svg
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg version="1.1" viewBox="0 0 104 31" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <defs>
+  <linearGradient id="a">
+   <stop stop-color="#5373B4" offset="0"/>
+   <stop stop-color="#7C95C6" offset="1"/>
+  </linearGradient>
+  <linearGradient id="d" x1="31.474" x2="31.474" y1="24.821" y2="26.773" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+  <linearGradient id="c" x1="31.474" x2="31.474" y1="24.821" y2="26.773" gradientTransform="matrix(.6816 0 0 1.0248 72.391 -.91809)" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+  <linearGradient id="b" x1="56.295" x2="56.295" y1="24.622" y2="26.574" gradientUnits="userSpaceOnUse" xlink:href="#a"/>
+  <linearGradient id="e" x1="49.067" x2="48.956" y1="19.719" y2="9.5227" gradientTransform="matrix(.97968 0 0 1.0207 -.25579 -.25579)" gradientUnits="userSpaceOnUse">
+   <stop stop-color="#C0CCE3" offset="0"/>
+   <stop stop-color="#EEF1F7" offset="1"/>
+  </linearGradient>
+  <filter id="f" x="-.010676" y="-.045304" width="1.0214" height="1.0906" color-interpolation-filters="sRGB">
+   <feGaussianBlur stdDeviation="0.45293203"/>
+  </filter>
+ </defs>
+ <g>
+  <path transform="translate(-2.5759 -27.848)" d="m13.609 32.203v6.8633h-0.05078c-0.40533-0.66867-0.96254-1.1715-1.6719-1.5059-0.69244-0.35193-1.4282-0.52734-2.2051-0.52734-0.96267 0-1.807 0.2027-2.5332 0.60742-0.72622 0.38713-1.3344 0.90556-1.8242 1.5566-0.47289 0.65108-0.83456 1.4092-1.0879 2.2715-0.23644 0.84464-0.35547 1.7236-0.35547 2.6387 0 0.95022 0.11902 1.8643 0.35547 2.7441 0.25333 0.87983 0.615 1.6633 1.0879 2.3496 0.48978 0.66867 1.1065 1.2066 1.8496 1.6113 0.74311 0.38713 1.6044 0.58008 2.584 0.58008 0.86133 0 1.6311-0.15787 2.3066-0.47461 0.69244-0.33434 1.2497-0.87227 1.6719-1.6113h0.05078v1.7422h3.4199v-18.846zm12.875 4.8301c-1.0302 0-1.9596 0.17541-2.7871 0.52734-0.82756 0.33434-1.5358 0.81965-2.127 1.4531-0.59111 0.61588-1.0483 1.3721-1.3691 2.2695-0.32089 0.87983-0.48047 1.866-0.48047 2.957s0.15958 2.0752 0.48047 2.9551c0.32089 0.87983 0.77803 1.6361 1.3691 2.2695 0.59111 0.61588 1.2994 1.0914 2.127 1.4258 0.82756 0.33434 1.7569 0.50195 2.7871 0.50195 1.0302 0 1.9596-0.16762 2.7871-0.50195 0.84444-0.33434 1.5612-0.8099 2.1523-1.4258 0.59111-0.63348 1.0483-1.3897 1.3691-2.2695 0.32089-0.87983 0.48047-1.8641 0.48047-2.9551s-0.15958-2.0772-0.48047-2.957c-0.32089-0.89743-0.77803-1.6536-1.3691-2.2695-0.59111-0.63348-1.3079-1.1188-2.1523-1.4531-0.82756-0.35193-1.7569-0.52734-2.7871-0.52734zm41.715 0c-0.912 0-1.7223 0.18516-2.4316 0.55469-0.69244 0.36953-1.2752 0.87043-1.748 1.5039-0.47289 0.61588-0.83651 1.337-1.0898 2.1641-0.23645 0.80944-0.35352 1.6553-0.35352 2.5352 0 0.93262 0.10007 1.8214 0.30273 2.666 0.21956 0.82704 0.55767 1.556 1.0137 2.1895 0.456 0.61588 1.0387 1.109 1.748 1.4785 0.70933 0.35193 1.5536 0.5293 2.5332 0.5293 0.79378 0 1.5446-0.16762 2.2539-0.50195 0.72622-0.35193 1.2834-0.88986 1.6719-1.6113h0.05078v1.7949c0.01689 0.96782-0.21071 1.7689-0.68359 2.4023-0.456 0.63348-1.1898 0.95117-2.2031 0.95117-0.64178 0-1.2075-0.14228-1.6973-0.42383-0.48978-0.26395-0.81939-0.74731-0.98828-1.4512h-3.5723c0.05067 0.77425 0.25276 1.435 0.60742 1.9805 0.37156 0.56309 0.8287 1.0192 1.3691 1.3711 0.55733 0.35193 1.1656 0.60726 1.8242 0.76562 0.67556 0.17597 1.3328 0.26562 1.9746 0.26562 1.5031 0 2.7025-0.21245 3.5977-0.63477 0.89511-0.42232 1.5798-0.94076 2.0527-1.5566 0.47289-0.59829 0.777-1.2493 0.91211-1.9531 0.152-0.70386 0.22656-1.3295 0.22656-1.875v-12.775h-3.4199v1.8223h-0.05078c-0.43911-0.79185-0.98782-1.3551-1.6465-1.6895-0.64178-0.33434-1.3926-0.50195-2.2539-0.50195zm16.523 0c-0.99644 0-1.9088 0.18516-2.7363 0.55469-0.81067 0.36953-1.5124 0.88018-2.1035 1.5312-0.59111 0.63348-1.0463 1.3897-1.3672 2.2695s-0.48047 1.831-0.48047 2.8516c0 1.0558 0.15108 2.0225 0.45508 2.9023 0.32089 0.87983 0.76758 1.6361 1.3418 2.2695 0.57422 0.63348 1.276 1.1266 2.1035 1.4785 0.82756 0.33434 1.7569 0.50195 2.7871 0.50195 1.4862 0 2.7517-0.35277 3.7988-1.0566 1.0471-0.70387 1.8254-1.8733 2.332-3.5098h-3.168c-0.11822 0.42232-0.43934 0.82772-0.96289 1.2148-0.52355 0.36953-1.1468 0.55274-1.873 0.55273-1.0133 0-1.7916-0.27286-2.332-0.81836-0.54044-0.5455-0.83605-1.4245-0.88672-2.6387h9.4492c0.06756-1.0558-0.01551-2.0673-0.25195-3.0352-0.23644-0.96782-0.62557-1.8293-1.166-2.5859-0.52356-0.75666-1.1998-1.355-2.0273-1.7949-0.82756-0.45751-1.7974-0.6875-2.9121-0.6875zm16.189 0c-0.76 0-1.5023 0.18516-2.2285 0.55469-0.72622 0.35193-1.3174 0.92299-1.7734 1.7148h-0.07617v-1.9004h-3.4199v13.646h3.5977v-7.1523c0-1.3901 0.21909-2.3841 0.6582-2.9824 0.43911-0.61588 1.1494-0.92383 2.1289-0.92383 0.86133 0 1.4611 0.28066 1.7988 0.84375 0.33777 0.5455 0.50586 1.3816 0.50586 2.5078v7.707h3.5976v-8.3926c0-0.84464-0.0765-1.6106-0.22851-2.2969-0.13511-0.70387-0.37971-1.2925-0.73438-1.7676-0.35466-0.49271-0.84386-0.87277-1.4688-1.1367-0.608-0.28155-1.3948-0.42188-2.3574-0.42188zm-66.063 0.36914 4.3066 6.4668-4.7129 7.1797h4.0293l2.7363-4.3027 2.7344 4.3027h4.1055l-4.8398-7.2578 4.3066-6.3887h-3.9766l-2.2793 3.5645-2.3066-3.5645zm13.275 0 4.584 12.803c0.10133 0.26395 0.15234 0.54461 0.15234 0.84375 0 0.40472-0.11707 0.77504-0.35352 1.1094-0.21956 0.33434-0.56617 0.52729-1.0391 0.58008-0.35467 0.0176-0.70979 0.0098-1.0645-0.02539-0.35467-0.03519-0.70128-0.07028-1.0391-0.10547v3.0879c0.37156 0.03519 0.73518 0.06051 1.0898 0.07813 0.37156 0.03519 0.74368 0.05273 1.1152 0.05273 1.2329 0 2.1943-0.23778 2.8867-0.71289 0.69244-0.47511 1.2326-1.2664 1.6211-2.375l5.4727-15.336h-3.7246l-2.8613 9.3438h-0.05078l-2.9648-9.3438zm-37.48 2.4551c0.59111 0 1.0823 0.12279 1.4707 0.36914 0.38844 0.24635 0.6991 0.57184 0.93555 0.97656 0.25333 0.38713 0.43187 0.84515 0.5332 1.373 0.10133 0.5103 0.15234 1.0482 0.15234 1.6113 0 0.56309-0.05101 1.1069-0.15234 1.6348-0.10133 0.5279-0.27137 1.0035-0.50781 1.4258-0.23644 0.40472-0.5556 0.73021-0.96094 0.97656-0.38844 0.24635-0.87959 0.36914-1.4707 0.36914-0.55733 0-1.038-0.12279-1.4434-0.36914-0.38844-0.26395-0.71806-0.59723-0.98828-1.002-0.25333-0.42232-0.43842-0.89788-0.55664-1.4258s-0.17773-1.0561-0.17773-1.584c-1e-7 -0.56309 0.05101-1.0991 0.15234-1.6094 0.11822-0.5279 0.29481-0.99567 0.53125-1.4004 0.25333-0.40472 0.58295-0.73021 0.98828-0.97656 0.40533-0.24635 0.90303-0.36914 1.4941-0.36914zm15.84 0c0.608 0 1.1142 0.13253 1.5195 0.39648 0.42222 0.24635 0.75184 0.57184 0.98828 0.97656 0.25333 0.40472 0.42992 0.87054 0.53125 1.3984 0.10133 0.5279 0.15234 1.0658 0.15234 1.6113 0 0.5455-0.05101 1.0815-0.15234 1.6094-0.10134 0.5103-0.27792 0.97612-0.53125 1.3984-0.23644 0.40472-0.56606 0.73021-0.98828 0.97656-0.40533 0.24635-0.91153 0.36914-1.5195 0.36914-0.608 0-1.1142-0.12279-1.5195-0.36914s-0.73495-0.57184-0.98828-0.97656c-0.23644-0.42232-0.40648-0.88814-0.50781-1.3984-0.10133-0.5279-0.15234-1.0639-0.15234-1.6094 0-0.5455 0.05101-1.0834 0.15234-1.6113 0.10133-0.5279 0.27137-0.99371 0.50781-1.3984 0.25333-0.40472 0.58295-0.73021 0.98828-0.97656 0.40533-0.26395 0.91153-0.39648 1.5195-0.39648zm42.602 0c0.59111 0 1.0803 0.11499 1.4688 0.34375 0.38844 0.22876 0.70105 0.5367 0.9375 0.92383 0.23644 0.38713 0.40648 0.8354 0.50781 1.3457 0.10133 0.49271 0.15039 1.0209 0.15039 1.584 0 0.4927-0.06606 0.96827-0.20117 1.4258-0.11822 0.43992-0.30526 0.83557-0.55859 1.1875-0.25333 0.35193-0.57445 0.63259-0.96289 0.84375-0.38844 0.21116-0.83513 0.31836-1.3418 0.31836-0.55733 0-1.021-0.12474-1.3926-0.37109-0.37156-0.24635-0.67566-0.56209-0.91211-0.94922-0.21956-0.38713-0.38109-0.81786-0.48242-1.293-0.08444-0.49271-0.12695-0.98581-0.12695-1.4785 0-0.5103 0.05101-0.99366 0.15234-1.4512 0.11822-0.47511 0.29676-0.89025 0.5332-1.2422 0.25333-0.36953 0.55744-0.65993 0.91211-0.87109 0.37156-0.21116 0.80974-0.31641 1.3164-0.31641zm15.535 0c0.87822 0 1.529 0.24753 1.9512 0.74023 0.43911 0.49271 0.74322 1.2138 0.91211 2.1641h-5.8535c0.01689-0.26395 0.0679-0.5641 0.15234-0.89844 0.10133-0.33434 0.26287-0.65008 0.48242-0.94922 0.23644-0.29914 0.54055-0.54667 0.91211-0.74023 0.38845-0.21116 0.86914-0.31641 1.4434-0.31641z" filter="url(#f)" opacity=".3" stroke="#969696" xlink:href="#path141"/>
+  <path d="m0.97202 24.161 43.605-0.0019 0.0508 3.3061-43.6 0.04174z" fill="url(#d)" stroke="#000" stroke-width=".5"/>
+  <path d="m10.283 3.5547v6.8633h-0.05078c-0.40533-0.66867-0.96254-1.1715-1.6719-1.5059-0.69244-0.35193-1.4282-0.52734-2.2051-0.52734-0.96267 0-1.807 0.2027-2.5332 0.60742-0.72622 0.38713-1.3344 0.90556-1.8242 1.5566-0.47289 0.65108-0.83456 1.4092-1.0879 2.2715-0.23644 0.84464-0.35547 1.7236-0.35547 2.6387 0 0.95022 0.11902 1.8643 0.35547 2.7441 0.25333 0.87983 0.615 1.6633 1.0879 2.3496 0.48978 0.66867 1.1065 1.2066 1.8496 1.6113 0.74311 0.38713 1.6044 0.58008 2.584 0.58008 0.86133 0 1.6311-0.15787 2.3066-0.47461 0.69244-0.33434 1.2497-0.87227 1.6719-1.6113h0.05078v1.7422h3.4199v-18.846zm12.875 4.8301c-1.0302 0-1.9596 0.17541-2.7871 0.52734-0.82756 0.33434-1.5358 0.81965-2.127 1.4531-0.59111 0.61588-1.0483 1.3721-1.3691 2.2695-0.32089 0.87983-0.48047 1.866-0.48047 2.957s0.15958 2.0752 0.48047 2.9551c0.32089 0.87983 0.77803 1.6361 1.3691 2.2695 0.59111 0.61588 1.2994 1.0914 2.127 1.4258 0.82756 0.33434 1.7569 0.50195 2.7871 0.50195 1.0302 0 1.9596-0.16762 2.7871-0.50195 0.84444-0.33434 1.5612-0.8099 2.1523-1.4258 0.59111-0.63348 1.0483-1.3897 1.3691-2.2695 0.32089-0.87983 0.48047-1.8641 0.48047-2.9551s-0.15958-2.0772-0.48047-2.957c-0.32089-0.89743-0.77803-1.6536-1.3691-2.2695-0.59111-0.63348-1.3079-1.1188-2.1523-1.4531-0.82756-0.35193-1.7569-0.52734-2.7871-0.52734zm41.715 0c-0.912 0-1.7223 0.18516-2.4316 0.55469-0.69244 0.36953-1.2752 0.87043-1.748 1.5039-0.47289 0.61588-0.83651 1.337-1.0898 2.1641-0.23644 0.80944-0.35352 1.6553-0.35352 2.5352 0 0.93262 0.10007 1.8214 0.30273 2.666 0.21956 0.82704 0.55767 1.556 1.0137 2.1895 0.456 0.61588 1.0387 1.109 1.748 1.4785 0.70933 0.35193 1.5536 0.5293 2.5332 0.5293 0.79378 0 1.5446-0.16762 2.2539-0.50195 0.72622-0.35193 1.2834-0.88986 1.6719-1.6113h0.05078v1.7949c0.01689 0.96782-0.21071 1.7689-0.68359 2.4023-0.456 0.63348-1.1898 0.95117-2.2031 0.95117-0.64178 0-1.2075-0.14228-1.6973-0.42383-0.48978-0.26395-0.81939-0.74731-0.98828-1.4512h-3.5723c0.05067 0.77425 0.25276 1.435 0.60742 1.9805 0.37156 0.56309 0.8287 1.0192 1.3691 1.3711 0.55733 0.35193 1.1656 0.60726 1.8242 0.76562 0.67556 0.17597 1.3328 0.26562 1.9746 0.26562 1.5031 0 2.7025-0.21245 3.5977-0.63477 0.89511-0.42232 1.5798-0.94076 2.0527-1.5566 0.47289-0.59829 0.777-1.2493 0.91211-1.9531 0.152-0.70386 0.22656-1.3295 0.22656-1.875v-12.775h-3.4199v1.8223h-0.05078c-0.43911-0.79185-0.98782-1.3551-1.6465-1.6895-0.64178-0.33434-1.3926-0.50195-2.2539-0.50195zm16.523 0c-0.99644 0-1.9088 0.18516-2.7363 0.55469-0.81067 0.36953-1.5124 0.88017-2.1035 1.5312-0.59111 0.63348-1.0463 1.3897-1.3672 2.2695s-0.48047 1.831-0.48047 2.8516c0 1.0558 0.15108 2.0225 0.45508 2.9023 0.32089 0.87983 0.76758 1.6361 1.3418 2.2695 0.57422 0.63348 1.276 1.1266 2.1035 1.4785 0.82756 0.33434 1.7569 0.50195 2.7871 0.50195 1.4862 0 2.7517-0.35278 3.7988-1.0566 1.0471-0.70386 1.8254-1.8733 2.332-3.5098h-3.168c-0.11822 0.42232-0.43934 0.82772-0.96289 1.2148-0.52355 0.36953-1.1468 0.55274-1.873 0.55273-1.0133 0-1.7916-0.27286-2.332-0.81836-0.54044-0.5455-0.83605-1.4245-0.88672-2.6387h9.4492c0.06756-1.0558-0.01551-2.0673-0.25195-3.0352-0.23644-0.96782-0.62557-1.8293-1.166-2.5859-0.52356-0.75666-1.1998-1.355-2.0273-1.7949-0.82756-0.45751-1.7974-0.6875-2.9121-0.6875zm16.189 0c-0.76 0-1.5023 0.18516-2.2285 0.55469-0.72622 0.35193-1.3174 0.923-1.7734 1.7148h-0.07617v-1.9004h-3.4199v13.646h3.5977v-7.1523c0-1.3901 0.21909-2.3841 0.6582-2.9824 0.43911-0.61588 1.1494-0.92383 2.1289-0.92383 0.86133 0 1.461 0.28066 1.7988 0.84375 0.33778 0.5455 0.50586 1.3816 0.50586 2.5078v7.707h3.5977v-8.3926c0-0.84464-0.0765-1.6106-0.22852-2.2969-0.13511-0.70387-0.3797-1.2925-0.73437-1.7676-0.35466-0.49271-0.84386-0.87277-1.4688-1.1367-0.608-0.28155-1.3948-0.42188-2.3574-0.42188zm-66.062 0.36914 4.3066 6.4668-4.7129 7.1797h4.0293l2.7363-4.3027 2.7344 4.3027h4.1055l-4.8398-7.2578 4.3066-6.3887h-3.9766l-2.2793 3.5645-2.3066-3.5645zm13.275 0 4.584 12.803c0.10133 0.26395 0.15234 0.54461 0.15234 0.84375 0 0.40472-0.11707 0.77504-0.35352 1.1094-0.21956 0.33434-0.56617 0.52729-1.0391 0.58008-0.35467 0.0176-0.70979 0.0098-1.0645-0.02539-0.35467-0.03519-0.70128-0.07027-1.0391-0.10547v3.0879c0.37156 0.03519 0.73518 0.06052 1.0898 0.07813 0.37156 0.03519 0.74368 0.05273 1.1152 0.05273 1.2329 0 2.1943-0.23778 2.8867-0.71289 0.69244-0.47511 1.2326-1.2664 1.6211-2.375l5.4727-15.336h-3.7246l-2.8613 9.3437h-0.05078l-2.9648-9.3437zm-37.48 2.4551c0.59111 0 1.0823 0.12279 1.4707 0.36914s0.6991 0.57184 0.93555 0.97656c0.25333 0.38713 0.43187 0.84515 0.5332 1.373 0.10133 0.5103 0.15234 1.0482 0.15234 1.6113 0 0.56309-0.05101 1.1069-0.15234 1.6348-0.10133 0.5279-0.27137 1.0035-0.50781 1.4258-0.23644 0.40472-0.5556 0.73021-0.96094 0.97656-0.38844 0.24635-0.87959 0.36914-1.4707 0.36914-0.55733 0-1.038-0.12279-1.4434-0.36914-0.38844-0.26395-0.71806-0.59723-0.98828-1.002-0.25333-0.42232-0.43842-0.89788-0.55664-1.4258s-0.17773-1.0561-0.17773-1.584c-1e-7 -0.56309 0.05101-1.0991 0.15234-1.6094 0.11822-0.5279 0.29481-0.99567 0.53125-1.4004 0.25333-0.40472 0.58295-0.73021 0.98828-0.97656 0.40533-0.24635 0.90303-0.36914 1.4941-0.36914zm15.84 0c0.608 0 1.1142 0.13254 1.5195 0.39648 0.42222 0.24635 0.75184 0.57184 0.98828 0.97656 0.25333 0.40472 0.42992 0.87054 0.53125 1.3984 0.10133 0.5279 0.15234 1.0658 0.15234 1.6113 0 0.5455-0.05101 1.0815-0.15234 1.6094-0.10133 0.5103-0.27792 0.97612-0.53125 1.3984-0.23644 0.40472-0.56606 0.73021-0.98828 0.97656-0.40533 0.24635-0.91153 0.36914-1.5195 0.36914-0.608 0-1.1142-0.12279-1.5195-0.36914s-0.73495-0.57184-0.98828-0.97656c-0.23644-0.42232-0.40648-0.88813-0.50781-1.3984-0.10133-0.5279-0.15234-1.0639-0.15234-1.6094 0-0.5455 0.05101-1.0834 0.15234-1.6113 0.10133-0.5279 0.27137-0.99371 0.50781-1.3984 0.25333-0.40472 0.58295-0.73021 0.98828-0.97656 0.40533-0.26395 0.91153-0.39648 1.5195-0.39648zm42.602 0c0.59111 0 1.0803 0.11499 1.4688 0.34375 0.38844 0.22876 0.70106 0.5367 0.9375 0.92383 0.23644 0.38713 0.40648 0.8354 0.50781 1.3457 0.10133 0.49271 0.15039 1.0209 0.15039 1.584 0 0.49271-0.06606 0.96827-0.20117 1.4258-0.11822 0.43992-0.30526 0.83557-0.55859 1.1875-0.25333 0.35193-0.57445 0.63259-0.96289 0.84375-0.38844 0.21116-0.83513 0.31836-1.3418 0.31836-0.55733 0-1.021-0.12474-1.3926-0.37109-0.37156-0.24635-0.67566-0.56209-0.91211-0.94922-0.21956-0.38713-0.38109-0.81786-0.48242-1.293-0.08444-0.49271-0.12695-0.98581-0.12695-1.4785 0-0.5103 0.05101-0.99366 0.15234-1.4512 0.11822-0.47511 0.29676-0.89026 0.5332-1.2422 0.25333-0.36953 0.55744-0.65993 0.91211-0.87109 0.37156-0.21116 0.80974-0.31641 1.3164-0.31641zm15.535 0c0.87822 0 1.529 0.24753 1.9512 0.74024 0.43911 0.49271 0.74322 1.2138 0.91211 2.1641h-5.8535c0.01689-0.26395 0.0679-0.5641 0.15234-0.89844 0.10133-0.33434 0.26287-0.65008 0.48242-0.94922 0.23644-0.29914 0.54055-0.54667 0.91211-0.74023 0.38845-0.21116 0.86914-0.31641 1.4434-0.31641z" fill="url(#e)" stroke="#4665A2" stroke-width=".7"/>
+  <path d="m52.988 27.291c0.99602-1.0359 1.3944-1.8725 1.7928-3.1076l3.8247-0.03984c0.3113 1.6096 0.82413 2.5137 1.6335 3.1474z" fill="url(#b)" stroke="#000" stroke-width=".5"/>
+  <path d="m73.89 24.04 28.885-0.2011-0.12476 3.3879-31.033 0.16229c1.2621-1.0234 1.9665-2.2859 2.2724-3.3491z" fill="url(#c)" stroke="#000" stroke-width=".41788"/>
+ </g>
+</svg>
diff --git a/doc/html/dynsections.js b/doc/html/dynsections.js
new file mode 100644
index 0000000000000000000000000000000000000000..7906639fe4a12199b66da4212fde5e9ac10c1062
--- /dev/null
+++ b/doc/html/dynsections.js
@@ -0,0 +1,128 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+ */
+function toggleVisibility(linkObj)
+{
+ var base = $(linkObj).attr('id');
+ var summary = $('#'+base+'-summary');
+ var content = $('#'+base+'-content');
+ var trigger = $('#'+base+'-trigger');
+ var src=$(trigger).attr('src');
+ if (content.is(':visible')===true) {
+   content.hide();
+   summary.show();
+   $(linkObj).addClass('closed').removeClass('opened');
+   $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+   content.show();
+   summary.hide();
+   $(linkObj).removeClass('closed').addClass('opened');
+   $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+ return false;
+}
+
+function updateStripes()
+{
+  $('table.directory tr').
+       removeClass('even').filter(':visible:even').addClass('even');
+}
+
+function toggleLevel(level)
+{
+  $('table.directory tr').each(function() {
+    var l = this.id.split('_').length-1;
+    var i = $('#img'+this.id.substring(3));
+    var a = $('#arr'+this.id.substring(3));
+    if (l<level+1) {
+      i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
+      a.html('&#9660;');
+      $(this).show();
+    } else if (l==level+1) {
+      i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
+      a.html('&#9658;');
+      $(this).show();
+    } else {
+      $(this).hide();
+    }
+  });
+  updateStripes();
+}
+
+function toggleFolder(id)
+{
+  // the clicked row
+  var currentRow = $('#row_'+id);
+
+  // all rows after the clicked row
+  var rows = currentRow.nextAll("tr");
+
+  var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
+
+  // only match elements AFTER this one (can't hide elements before)
+  var childRows = rows.filter(function() { return this.id.match(re); });
+
+  // first row is visible we are HIDING
+  if (childRows.filter(':first').is(':visible')===true) {
+    // replace down arrow by right arrow for current row
+    var currentRowSpans = currentRow.find("span");
+    currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+    currentRowSpans.filter(".arrow").html('&#9658;');
+    rows.filter("[id^=row_"+id+"]").hide(); // hide all children
+  } else { // we are SHOWING
+    // replace right arrow by down arrow for current row
+    var currentRowSpans = currentRow.find("span");
+    currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
+    currentRowSpans.filter(".arrow").html('&#9660;');
+    // replace down arrows by right arrows for child rows
+    var childRowsSpans = childRows.find("span");
+    childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+    childRowsSpans.filter(".arrow").html('&#9658;');
+    childRows.show(); //show all children
+  }
+  updateStripes();
+}
+
+
+function toggleInherit(id)
+{
+  var rows = $('tr.inherit.'+id);
+  var img = $('tr.inherit_header.'+id+' img');
+  var src = $(img).attr('src');
+  if (rows.filter(':first').is(':visible')===true) {
+    rows.css('display','none');
+    $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+  } else {
+    rows.css('display','table-row'); // using show() causes jump in firefox
+    $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+  }
+}
+/* @license-end */
+$(document).ready(function() {
+  $('.code,.codeRef').each(function() {
+    $(this).data('powertip',$('#a'+$(this).attr('href').replace(/.*\//,'').replace(/[^a-z_A-Z0-9]/g,'_')).html());
+    $.fn.powerTip.smartPlacementLists.s = [ 's', 'n', 'ne', 'se' ];
+    $(this).powerTip({ placement: 's', smartPlacement: true, mouseOnToPopup: true });
+  });
+});
diff --git a/doc/html/files.html b/doc/html/files.html
new file mode 100644
index 0000000000000000000000000000000000000000..1c6ee969b3ea0ec46498672901b4d6aaec68f013
--- /dev/null
+++ b/doc/html/files.html
@@ -0,0 +1,161 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: File List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('files.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">File List</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all files with brief descriptions:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span id="img_0_" class="iconfopen" onclick="toggleFolder('0_')">&#160;</span><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" target="_self">src</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_0_" class="arrow" onclick="toggleFolder('0_0_')">&#9660;</span><span id="img_0_0_" class="iconfopen" onclick="toggleFolder('0_0_')">&#160;</span><a class="el" href="dir_97e9162b5eba51ba7b47a8e5d05863f3.html" target="_self">MQTT</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_m_q_t_t_2_configuration_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_m_q_t_t_2_configuration_8cpp.html" target="_self">Configuration.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_m_q_t_t_2_configuration_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_m_q_t_t_2_configuration_8h.html" target="_self">Configuration.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_m_q_t_t_2constants_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_m_q_t_t_2constants_8h.html" target="_self">constants.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_local_exception_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_local_exception_8cpp.html" target="_self">LocalException.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_local_exception_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_local_exception_8h.html" target="_self">LocalException.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_5_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_message_container_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_message_container_8h.html" target="_self">MessageContainer.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_6_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_publisher_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_publisher_8cpp.html" target="_self">Publisher.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_publisher_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_publisher_8h.html" target="_self">Publisher.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_1_" class="arrow" onclick="toggleFolder('0_1_')">&#9660;</span><span id="img_0_1_" class="iconfopen" onclick="toggleFolder('0_1_')">&#160;</span><a class="el" href="dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html" target="_self">REST</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_0_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_r_e_s_t_2constants_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_r_e_s_t_2constants_8h.html" target="_self">constants.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_resource_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_resource_8cpp.html" target="_self">Resource.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_2_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_resource_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_resource_8h.html" target="_self">Resource.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_3_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_server_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_server_8cpp.html" target="_self">Server.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_4_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_server_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_server_8h.html" target="_self">Server.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_5_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_r_e_s_t_2_types_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_r_e_s_t_2_types_8h.html" target="_self">Types.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_2_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_2_" class="arrow" onclick="toggleFolder('0_2_')">&#9660;</span><span id="img_0_2_" class="iconfopen" onclick="toggleFolder('0_2_')">&#160;</span><a class="el" href="dir_5c48c3ba762084c368f706b319e3221b.html" target="_self">SIGN</a></td><td class="desc"></td></tr>
+<tr id="row_0_2_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_s_i_g_n_2constants_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_s_i_g_n_2constants_8h.html" target="_self">constants.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_2_1_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_hasher_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_hasher_8cpp.html" target="_self">Hasher.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_2_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_hasher_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_hasher_8h.html" target="_self">Hasher.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_2_3_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_signer_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_signer_8cpp.html" target="_self">Signer.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_2_4_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_signer_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_signer_8h.html" target="_self">Signer.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_3_" class="arrow" onclick="toggleFolder('0_3_')">&#9660;</span><span id="img_0_3_" class="iconfopen" onclick="toggleFolder('0_3_')">&#160;</span><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html" target="_self">SOIL</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_s_o_i_l_2constants_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_s_o_i_l_2constants_8h.html" target="_self">constants.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_1_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_container_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_container_8cpp.html" target="_self">Container.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_container_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_container_8h.html" target="_self">Container.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_3_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_element_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_element_8cpp.html" target="_self">Element.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_4_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_element_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_element_8h.html" target="_self">Element.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_5_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_enum_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_enum_8cpp.html" target="_self">Enum.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_6_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_enum_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_enum_8h.html" target="_self">Enum.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_7_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_figure_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_figure_8cpp.html" target="_self">Figure.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_8_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_figure_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_figure_8h.html" target="_self">Figure.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_9_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_function_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_function_8cpp.html" target="_self">Function.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_10_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_function_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_function_8h.html" target="_self">Function.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_11_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="json__helpers_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="json__helpers_8cpp.html" target="_self">json_helpers.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_12_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="json__helpers_8h_source.html"><span class="icondoc"></span></a><a class="el" href="json__helpers_8h.html" target="_self">json_helpers.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_13_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_object_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_object_8cpp.html" target="_self">Object.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_14_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_object_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_object_8h.html" target="_self">Object.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_15_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_parameter_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_parameter_8cpp.html" target="_self">Parameter.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_16_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_parameter_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_parameter_8h.html" target="_self">Parameter.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_17_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_range_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_range_8cpp.html" target="_self">Range.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_18_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_range_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_range_8h.html" target="_self">Range.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_19_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_time_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_time_8cpp.html" target="_self">Time.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_20_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_time_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_time_8h.html" target="_self">Time.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_21_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_types_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_types_8cpp.html" target="_self">Types.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_22_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_s_o_i_l_2_types_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_s_o_i_l_2_types_8h.html" target="_self">Types.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_23_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_variable_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_variable_8cpp.html" target="_self">Variable.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_24_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_variable_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_variable_8h.html" target="_self">Variable.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_4_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_4_" class="arrow" onclick="toggleFolder('0_4_')">&#9660;</span><span id="img_0_4_" class="iconfopen" onclick="toggleFolder('0_4_')">&#160;</span><a class="el" href="dir_fad39c6a80d5b10502d8b8402de358e3.html" target="_self">TEST</a></td><td class="desc"></td></tr>
+<tr id="row_0_4_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="main_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="main_8cpp.html" target="_self">main.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_5_" class="arrow" onclick="toggleFolder('0_5_')">&#9660;</span><span id="img_0_5_" class="iconfopen" onclick="toggleFolder('0_5_')">&#160;</span><a class="el" href="dir_a41816149b1851ca69b3e9aaedcc5381.html" target="_self">UDP</a></td><td class="desc"></td></tr>
+<tr id="row_0_5_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_broadcast_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_broadcast_8cpp.html" target="_self">Broadcast.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_5_1_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_broadcast_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_broadcast_8h.html" target="_self">Broadcast.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_5_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_u_d_p_2_configuration_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_u_d_p_2_configuration_8cpp.html" target="_self">Configuration.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_5_3_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_u_d_p_2_configuration_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_u_d_p_2_configuration_8h.html" target="_self">Configuration.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_5_4_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_u_d_p_2constants_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_u_d_p_2constants_8h.html" target="_self">constants.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_5_5_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_exception_8cpp_source.html"><span class="icondoc"></span></a><a class="el" href="_exception_8cpp.html" target="_self">Exception.cpp</a></td><td class="desc"></td></tr>
+<tr id="row_0_5_6_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><a href="_exception_8h_source.html"><span class="icondoc"></span></a><a class="el" href="_exception_8h.html" target="_self">Exception.h</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/files_dup.js b/doc/html/files_dup.js
new file mode 100644
index 0000000000000000000000000000000000000000..c3b39c499fc42f35d406cf7c961cd7d2bdd5760b
--- /dev/null
+++ b/doc/html/files_dup.js
@@ -0,0 +1,4 @@
+var files_dup =
+[
+    [ "src", "dir_68267d1309a1af8e8297ef4c3efbcdba.html", "dir_68267d1309a1af8e8297ef4c3efbcdba" ]
+];
\ No newline at end of file
diff --git a/doc/html/folderclosed.png b/doc/html/folderclosed.png
new file mode 100644
index 0000000000000000000000000000000000000000..bb8ab35edce8e97554e360005ee9fc5bffb36e66
Binary files /dev/null and b/doc/html/folderclosed.png differ
diff --git a/doc/html/folderopen.png b/doc/html/folderopen.png
new file mode 100644
index 0000000000000000000000000000000000000000..d6c7f676a3b3ef8c2c307d319dff3c6a604eb227
Binary files /dev/null and b/doc/html/folderopen.png differ
diff --git a/doc/html/functions.html b/doc/html/functions.html
new file mode 100644
index 0000000000000000000000000000000000000000..d2b80505980c4c91f800bdd50254a1b15c108c5b
--- /dev/null
+++ b/doc/html/functions.html
@@ -0,0 +1,107 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_a" name="index_a"></a>- a -</h3><ul>
+<li>add()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83">HTTP::Server</a>, <a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">SOIL::Element</a></li>
+<li>add_argument()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">SOIL::Function</a></li>
+<li>add_client()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b">UDP::Broadcast</a></li>
+<li>add_return()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680">SOIL::Function</a></li>
+<li>allowed_methods&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">HTTP::Resource</a></li>
+<li>allowed_origins&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">HTTP::Resource</a></li>
+<li>apply_headers()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">HTTP::Resource</a></li>
+<li>at()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d">SOIL::Container&lt; T, x, -1 &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_b.html b/doc/html/functions_b.html
new file mode 100644
index 0000000000000000000000000000000000000000..cf87e2c456424b392d9b84d24c56546c78e75cd9
--- /dev/null
+++ b/doc/html/functions_b.html
@@ -0,0 +1,101 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_b.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_b" name="index_b"></a>- b -</h3><ul>
+<li>Broadcast()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7">UDP::Broadcast</a></li>
+<li>bytes()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_c.html b/doc/html/functions_c.html
new file mode 100644
index 0000000000000000000000000000000000000000..17ee42fd75f0b2f33bcb5caefcb994c1a89723d7
--- /dev/null
+++ b/doc/html/functions_c.html
@@ -0,0 +1,118 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_c.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_c" name="index_c"></a>- c -</h3><ul>
+<li>cast()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">SOIL::Element</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>certificate_authority&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">MQTT::Configuration</a></li>
+<li>check()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">SOIL::Range&lt; T &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b">SOIL::Range&lt; ENUM &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a030f2f9b3f2e56f0e832956e069226d2">SOIL::Range&lt; std::string &gt;</a></li>
+<li>check_range()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e">SOIL::Container&lt; T, x, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>children&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">SOIL::Element</a></li>
+<li>choices()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a">SOIL::Enum</a></li>
+<li>clean_session&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">MQTT::Configuration</a></li>
+<li>clients&#160;:&#160;<a class="el" href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">UDP::Configuration</a></li>
+<li>close()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a">HTTP::Server</a></li>
+<li>code()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1">MQTT::Exception</a></li>
+<li>Configuration()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3">MQTT::Configuration</a>, <a class="el" href="class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed">UDP::Configuration</a></li>
+<li>configure()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15">MQTT::Publisher</a>, <a class="el" href="class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1">UDP::Broadcast</a></li>
+<li>connect()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93">MQTT::Publisher</a></li>
+<li>connection_timeout_s&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">MQTT::Configuration</a></li>
+<li>constant&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">SOIL::Parameter&lt; T, x, y &gt;</a></li>
+<li>Container()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8">SOIL::Container&lt; T, x, -1 &gt;</a></li>
+<li>content_type&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">HTTP::Resource</a></li>
+<li>covariance&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>create()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6">SOIL::Function</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_d.html b/doc/html/functions_d.html
new file mode 100644
index 0000000000000000000000000000000000000000..1d05314738472c1d4b9629564fbaa6a629dc1fff
--- /dev/null
+++ b/doc/html/functions_d.html
@@ -0,0 +1,101 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_d.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_d" name="index_d"></a>- d -</h3><ul>
+<li>description&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">SOIL::Element</a></li>
+<li>disconnect()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e">MQTT::Publisher</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_dup.js b/doc/html/functions_dup.js
new file mode 100644
index 0000000000000000000000000000000000000000..ac8af6abf4178db0233a94df3aa600ff43ec4f62
--- /dev/null
+++ b/doc/html/functions_dup.js
@@ -0,0 +1,25 @@
+var functions_dup =
+[
+    [ "a", "functions.html", null ],
+    [ "b", "functions_b.html", null ],
+    [ "c", "functions_c.html", null ],
+    [ "d", "functions_d.html", null ],
+    [ "e", "functions_e.html", null ],
+    [ "f", "functions_f.html", null ],
+    [ "h", "functions_h.html", null ],
+    [ "i", "functions_i.html", null ],
+    [ "j", "functions_j.html", null ],
+    [ "k", "functions_k.html", null ],
+    [ "m", "functions_m.html", null ],
+    [ "n", "functions_n.html", null ],
+    [ "o", "functions_o.html", null ],
+    [ "p", "functions_p.html", null ],
+    [ "q", "functions_q.html", null ],
+    [ "r", "functions_r.html", null ],
+    [ "s", "functions_s.html", null ],
+    [ "t", "functions_t.html", null ],
+    [ "u", "functions_u.html", null ],
+    [ "v", "functions_v.html", null ],
+    [ "w", "functions_w.html", null ],
+    [ "~", "functions_~.html", null ]
+];
\ No newline at end of file
diff --git a/doc/html/functions_e.html b/doc/html/functions_e.html
new file mode 100644
index 0000000000000000000000000000000000000000..1c666be77f2678f4e525975e37cef0a41b888074
--- /dev/null
+++ b/doc/html/functions_e.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_e.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_e" name="index_e"></a>- e -</h3><ul>
+<li>Element()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">SOIL::Element</a></li>
+<li>Enum()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1">SOIL::Enum</a></li>
+<li>Exception()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f">MQTT::Exception</a>, <a class="el" href="class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1">UDP::Exception</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_f.html b/doc/html/functions_f.html
new file mode 100644
index 0000000000000000000000000000000000000000..5fc2073a60d034b70121850f3c3a4aab83ad9cda
--- /dev/null
+++ b/doc/html/functions_f.html
@@ -0,0 +1,103 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_f.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_f" name="index_f"></a>- f -</h3><ul>
+<li>Figure()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>fingerprint()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>fqid()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">SOIL::Element</a></li>
+<li>Function()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1">SOIL::Function</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func.html b/doc/html/functions_func.html
new file mode 100644
index 0000000000000000000000000000000000000000..a0e98f5f3d69356b61862a31d3134a99b5532f81
--- /dev/null
+++ b/doc/html/functions_func.html
@@ -0,0 +1,105 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_a" name="index_a"></a>- a -</h3><ul>
+<li>add()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83">HTTP::Server</a>, <a class="el" href="class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb">SOIL::Element</a></li>
+<li>add_argument()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d">SOIL::Function</a></li>
+<li>add_client()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b">UDP::Broadcast</a></li>
+<li>add_return()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680">SOIL::Function</a></li>
+<li>apply_headers()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb">HTTP::Resource</a></li>
+<li>at()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d">SOIL::Container&lt; T, x, -1 &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func.js b/doc/html/functions_func.js
new file mode 100644
index 0000000000000000000000000000000000000000..bd1b25c31309adf5aa7cdeb5b11c4ae90670b115
--- /dev/null
+++ b/doc/html/functions_func.js
@@ -0,0 +1,23 @@
+var functions_func =
+[
+    [ "a", "functions_func.html", null ],
+    [ "b", "functions_func_b.html", null ],
+    [ "c", "functions_func_c.html", null ],
+    [ "d", "functions_func_d.html", null ],
+    [ "e", "functions_func_e.html", null ],
+    [ "f", "functions_func_f.html", null ],
+    [ "h", "functions_func_h.html", null ],
+    [ "i", "functions_func_i.html", null ],
+    [ "j", "functions_func_j.html", null ],
+    [ "m", "functions_func_m.html", null ],
+    [ "n", "functions_func_n.html", null ],
+    [ "o", "functions_func_o.html", null ],
+    [ "p", "functions_func_p.html", null ],
+    [ "r", "functions_func_r.html", null ],
+    [ "s", "functions_func_s.html", null ],
+    [ "t", "functions_func_t.html", null ],
+    [ "u", "functions_func_u.html", null ],
+    [ "v", "functions_func_v.html", null ],
+    [ "w", "functions_func_w.html", null ],
+    [ "~", "functions_func_~.html", null ]
+];
\ No newline at end of file
diff --git a/doc/html/functions_func_b.html b/doc/html/functions_func_b.html
new file mode 100644
index 0000000000000000000000000000000000000000..c51d8c7cb2b9a9ca90785c11d02b8f3fe900e6b9
--- /dev/null
+++ b/doc/html/functions_func_b.html
@@ -0,0 +1,101 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_b.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_b" name="index_b"></a>- b -</h3><ul>
+<li>Broadcast()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7">UDP::Broadcast</a></li>
+<li>bytes()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_c.html b/doc/html/functions_func_c.html
new file mode 100644
index 0000000000000000000000000000000000000000..b9e27ed4d5a347e299854803e1b87790f45cb5b2
--- /dev/null
+++ b/doc/html/functions_func_c.html
@@ -0,0 +1,110 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_c.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_c" name="index_c"></a>- c -</h3><ul>
+<li>cast()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d">SOIL::Element</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>check()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53">SOIL::Range&lt; T &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b">SOIL::Range&lt; ENUM &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a030f2f9b3f2e56f0e832956e069226d2">SOIL::Range&lt; std::string &gt;</a></li>
+<li>check_range()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e">SOIL::Container&lt; T, x, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>choices()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a">SOIL::Enum</a></li>
+<li>close()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a">HTTP::Server</a></li>
+<li>code()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1">MQTT::Exception</a></li>
+<li>Configuration()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3">MQTT::Configuration</a>, <a class="el" href="class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed">UDP::Configuration</a></li>
+<li>configure()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15">MQTT::Publisher</a>, <a class="el" href="class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1">UDP::Broadcast</a></li>
+<li>connect()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93">MQTT::Publisher</a></li>
+<li>Container()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8">SOIL::Container&lt; T, x, -1 &gt;</a></li>
+<li>create()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6">SOIL::Function</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_d.html b/doc/html/functions_func_d.html
new file mode 100644
index 0000000000000000000000000000000000000000..f0ae1168b8e12faf8f21d6ecfda75773a41d4f30
--- /dev/null
+++ b/doc/html/functions_func_d.html
@@ -0,0 +1,100 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_d.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_d" name="index_d"></a>- d -</h3><ul>
+<li>disconnect()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e">MQTT::Publisher</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_e.html b/doc/html/functions_func_e.html
new file mode 100644
index 0000000000000000000000000000000000000000..84e99fe9b5465a18f6691af52cff0b0d47a630c1
--- /dev/null
+++ b/doc/html/functions_func_e.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_e.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_e" name="index_e"></a>- e -</h3><ul>
+<li>Element()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652">SOIL::Element</a></li>
+<li>Enum()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1">SOIL::Enum</a></li>
+<li>Exception()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f">MQTT::Exception</a>, <a class="el" href="class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1">UDP::Exception</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_f.html b/doc/html/functions_func_f.html
new file mode 100644
index 0000000000000000000000000000000000000000..af8641e6ba47e86ebe7aa3ee3368eb77ccd1598a
--- /dev/null
+++ b/doc/html/functions_func_f.html
@@ -0,0 +1,103 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_f.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_f" name="index_f"></a>- f -</h3><ul>
+<li>Figure()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>fingerprint()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>fqid()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb">SOIL::Element</a></li>
+<li>Function()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1">SOIL::Function</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_h.html b/doc/html/functions_func_h.html
new file mode 100644
index 0000000000000000000000000000000000000000..3f435a5b95e75968dd319acf3db16dd913d1b87b
--- /dev/null
+++ b/doc/html/functions_func_h.html
@@ -0,0 +1,110 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_h" name="index_h"></a>- h -</h3><ul>
+<li>handle()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">SOIL::Element</a></li>
+<li>handle_delete()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7">SOIL::Object</a></li>
+<li>handle_exception()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">HTTP::Resource</a></li>
+<li>handle_get()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">SOIL::Function</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>handle_head()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">HTTP::Resource</a></li>
+<li>handle_options()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>handle_patch()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad">SOIL::Parameter&lt; T, x, y &gt;</a></li>
+<li>handle_post()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">SOIL::Function</a></li>
+<li>handle_put()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978">SOIL::Object</a></li>
+<li>hash()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960">SIGN::Hasher</a></li>
+<li>Hasher()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b">SIGN::Hasher</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_i.html b/doc/html/functions_func_i.html
new file mode 100644
index 0000000000000000000000000000000000000000..8033b0b227f3c05f61acd27264c1346010ea60e1
--- /dev/null
+++ b/doc/html/functions_func_i.html
@@ -0,0 +1,108 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_i.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_i" name="index_i"></a>- i -</h3><ul>
+<li>index()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0">SOIL::Enum</a></li>
+<li>insert()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">SOIL::Element</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f">SOIL::Object</a></li>
+<li>invoke()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b">SOIL::Function</a></li>
+<li>is_connected()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d">MQTT::Publisher</a></li>
+<li>is_function()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">SOIL::Element</a></li>
+<li>is_null()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1">SOIL::Container&lt; T, x, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">SOIL::Time</a></li>
+<li>is_object()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">SOIL::Element</a></li>
+<li>is_parameter()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">SOIL::Element</a></li>
+<li>is_variable()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">SOIL::Element</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_j.html b/doc/html/functions_func_j.html
new file mode 100644
index 0000000000000000000000000000000000000000..7fcae3198a5d72ac9b2da859cb749df221b9d8ab
--- /dev/null
+++ b/doc/html/functions_func_j.html
@@ -0,0 +1,100 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_j.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_j" name="index_j"></a>- j -</h3><ul>
+<li>json()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">SOIL::Element</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_m.html b/doc/html/functions_func_m.html
new file mode 100644
index 0000000000000000000000000000000000000000..ecb48aaa936836ebf670606544dcaad8c2902635
--- /dev/null
+++ b/doc/html/functions_func_m.html
@@ -0,0 +1,103 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_m.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_m" name="index_m"></a>- m -</h3><ul>
+<li>make_argument()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b">SOIL::Function</a></li>
+<li>make_return()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46">SOIL::Function</a></li>
+<li>min_delay_ms()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd">MQTT::Publisher</a></li>
+<li>mqtt()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_n.html b/doc/html/functions_func_n.html
new file mode 100644
index 0000000000000000000000000000000000000000..c2eba55e4ef0cdccb14ddcd8404aab35b3493a72
--- /dev/null
+++ b/doc/html/functions_func_n.html
@@ -0,0 +1,100 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_n.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_n" name="index_n"></a>- n -</h3><ul>
+<li>name()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925">SIGN::Signer</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_o.html b/doc/html/functions_func_o.html
new file mode 100644
index 0000000000000000000000000000000000000000..65281a9480daa9d4924fb8c920a46a0fc04c8471
--- /dev/null
+++ b/doc/html/functions_func_o.html
@@ -0,0 +1,105 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_o.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_o" name="index_o"></a>- o -</h3><ul>
+<li>Object()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd">SOIL::Object</a></li>
+<li>open()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486">HTTP::Server</a></li>
+<li>openssl_version()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4">SIGN::Signer</a></li>
+<li>operator*()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647">SOIL::Container&lt; T, x, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>operator=()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>operator[]()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">SOIL::Element</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_p.html b/doc/html/functions_func_p.html
new file mode 100644
index 0000000000000000000000000000000000000000..0584781f1c88d7f65befdf70549d3608c0e00981
--- /dev/null
+++ b/doc/html/functions_func_p.html
@@ -0,0 +1,105 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_p.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_p" name="index_p"></a>- p -</h3><ul>
+<li>Parameter()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4">SOIL::Parameter&lt; T, x, y &gt;</a></li>
+<li>print()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a5bd6f0f8915dab9870ca8eb8a4d39a10">SIGN::Hasher</a></li>
+<li>ptr()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260">SOIL::Function</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>publish()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe">MQTT::Publisher</a></li>
+<li>Publisher()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac">MQTT::Publisher</a></li>
+<li>push_back()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f">SIGN::Hasher</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_r.html b/doc/html/functions_func_r.html
new file mode 100644
index 0000000000000000000000000000000000000000..27036e66c3183c65796584fcd64ac78fec0778c3
--- /dev/null
+++ b/doc/html/functions_func_r.html
@@ -0,0 +1,108 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_r.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_r" name="index_r"></a>- r -</h3><ul>
+<li>Range()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">SOIL::Range&lt; T &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38">SOIL::Range&lt; ENUM &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a635b0935b69730c81232c9f26267e5ec">SOIL::Range&lt; std::string &gt;</a></li>
+<li>read()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>reconnect()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08">MQTT::Publisher</a></li>
+<li>remove()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238">HTTP::Server</a>, <a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">SOIL::Element</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108">SOIL::Object</a></li>
+<li>remove_client()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92">UDP::Broadcast</a></li>
+<li>request_info()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">HTTP::Resource</a></li>
+<li>reset()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3">SIGN::Hasher</a></li>
+<li>Resource()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">HTTP::Resource</a></li>
+<li>rfc3339()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">SOIL::Time</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_s.html b/doc/html/functions_func_s.html
new file mode 100644
index 0000000000000000000000000000000000000000..e54ec045e2f8d669ad73a74fb757a9dd3ffc6aba
--- /dev/null
+++ b/doc/html/functions_func_s.html
@@ -0,0 +1,117 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_s.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_s" name="index_s"></a>- s -</h3><ul>
+<li>selected()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">SOIL::Enum</a></li>
+<li>send()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">UDP::Broadcast</a></li>
+<li>serialize()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993">SOIL::Time</a></li>
+<li>serialize_dimensions()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34">SOIL::Container&lt; T, x, -1 &gt;</a></li>
+<li>serialize_value()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724">SOIL::Container&lt; T, x, -1 &gt;</a></li>
+<li>Server()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0">HTTP::Server</a></li>
+<li>set()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41">SOIL::Enum</a></li>
+<li>set_buffer()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d">MQTT::Publisher</a></li>
+<li>set_covariance()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>set_null()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b">SOIL::Container&lt; T, x, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f">SOIL::Time</a></li>
+<li>set_range()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>set_root_topic()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801">MQTT::Publisher</a></li>
+<li>set_time()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>set_value()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>sha256()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044">SIGN::Hasher</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>sign()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f">SIGN::Signer</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>Signer()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794">SIGN::Signer</a></li>
+<li>size()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d">SIGN::Hasher</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_t.html b/doc/html/functions_func_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..01c76a5a3f6246f5aaca34580934db3357ae25c1
--- /dev/null
+++ b/doc/html/functions_func_t.html
@@ -0,0 +1,100 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_t.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_t" name="index_t"></a>- t -</h3><ul>
+<li>Time()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">SOIL::Time</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_u.html b/doc/html/functions_func_u.html
new file mode 100644
index 0000000000000000000000000000000000000000..8903060093c79e3390e19c4a42b24b83e86a78cb
--- /dev/null
+++ b/doc/html/functions_func_u.html
@@ -0,0 +1,103 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_u.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_u" name="index_u"></a>- u -</h3><ul>
+<li>update()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>uri()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">MQTT::Configuration</a></li>
+<li>use_count()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de">UDP::Broadcast</a></li>
+<li>utc_now()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">SOIL::Time</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_v.html b/doc/html/functions_func_v.html
new file mode 100644
index 0000000000000000000000000000000000000000..da40bf0f8c822544ac5a753ebe27f7a6e5a0dcd5
--- /dev/null
+++ b/doc/html/functions_func_v.html
@@ -0,0 +1,100 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_v.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_v" name="index_v"></a>- v -</h3><ul>
+<li>Variable()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_w.html b/doc/html/functions_func_w.html
new file mode 100644
index 0000000000000000000000000000000000000000..676f26e940345643a0503cd7995ea52f4f53fdaa
--- /dev/null
+++ b/doc/html/functions_func_w.html
@@ -0,0 +1,101 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_w.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_w" name="index_w"></a>- w -</h3><ul>
+<li>wjson()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480">SOIL::Container&lt; T, x, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">SOIL::Function</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">SOIL::Range&lt; T &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3">SOIL::Range&lt; ENUM &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ad5847bdeceb2dcf632de0e7c0c3bc73f">SOIL::Range&lt; std::string &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>write()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_func_~.html b/doc/html/functions_func_~.html
new file mode 100644
index 0000000000000000000000000000000000000000..2618f37e42652db3bd91ad7263df7f46563f81ac
--- /dev/null
+++ b/doc/html/functions_func_~.html
@@ -0,0 +1,116 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_func_~.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index__7E" name="index__7E"></a>- ~ -</h3><ul>
+<li>~Broadcast()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f">UDP::Broadcast</a></li>
+<li>~Configuration()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458">MQTT::Configuration</a>, <a class="el" href="class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada">UDP::Configuration</a></li>
+<li>~Element()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">SOIL::Element</a></li>
+<li>~Enum()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867">SOIL::Enum</a></li>
+<li>~Exception()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202">MQTT::Exception</a>, <a class="el" href="class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0">UDP::Exception</a></li>
+<li>~Figure()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>~Function()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec">SOIL::Function</a></li>
+<li>~Hasher()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3">SIGN::Hasher</a></li>
+<li>~Object()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57">SOIL::Object</a></li>
+<li>~Parameter()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5">SOIL::Parameter&lt; T, x, y &gt;</a></li>
+<li>~Publisher()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205">MQTT::Publisher</a></li>
+<li>~Range()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">SOIL::Range&lt; T &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c">SOIL::Range&lt; ENUM &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a280aacb2fb5b4ad22c866a83671967c5">SOIL::Range&lt; std::string &gt;</a></li>
+<li>~Resource()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">HTTP::Resource</a></li>
+<li>~Server()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759">HTTP::Server</a></li>
+<li>~Signer()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d">SIGN::Signer</a></li>
+<li>~Time()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16">SOIL::Time</a></li>
+<li>~Variable()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_h.html b/doc/html/functions_h.html
new file mode 100644
index 0000000000000000000000000000000000000000..317c2e698361d1e290e5e0a8f179009b9f41aeb8
--- /dev/null
+++ b/doc/html/functions_h.html
@@ -0,0 +1,111 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_h" name="index_h"></a>- h -</h3><ul>
+<li>handle()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2">SOIL::Element</a></li>
+<li>handle_delete()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7">SOIL::Object</a></li>
+<li>handle_exception()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800">HTTP::Resource</a></li>
+<li>handle_get()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9">SOIL::Function</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>handle_head()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5">HTTP::Resource</a></li>
+<li>handle_options()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>handle_patch()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad">SOIL::Parameter&lt; T, x, y &gt;</a></li>
+<li>handle_post()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88">SOIL::Function</a></li>
+<li>handle_put()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c">HTTP::Resource</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978">SOIL::Object</a></li>
+<li>hash()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960">SIGN::Hasher</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>Hasher()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b">SIGN::Hasher</a></li>
+<li>host&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5">MQTT::Configuration</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_i.html b/doc/html/functions_i.html
new file mode 100644
index 0000000000000000000000000000000000000000..5b55216ffec3d98cf11a9f0663027dd013148735
--- /dev/null
+++ b/doc/html/functions_i.html
@@ -0,0 +1,109 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_i.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_i" name="index_i"></a>- i -</h3><ul>
+<li>index()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0">SOIL::Enum</a></li>
+<li>insert()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">SOIL::Element</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f">SOIL::Object</a></li>
+<li>invoke()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b">SOIL::Function</a></li>
+<li>is_connected()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d">MQTT::Publisher</a></li>
+<li>is_function()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7">SOIL::Element</a></li>
+<li>is_null()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1">SOIL::Container&lt; T, x, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325">SOIL::Time</a></li>
+<li>is_object()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3">SOIL::Element</a></li>
+<li>is_parameter()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b">SOIL::Element</a></li>
+<li>is_variable()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49">SOIL::Element</a></li>
+<li>iterator&#160;:&#160;<a class="el" href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">UDP::Configuration</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_j.html b/doc/html/functions_j.html
new file mode 100644
index 0000000000000000000000000000000000000000..6a1039da8f55a3c0ec9f75a882ad2ba719013127
--- /dev/null
+++ b/doc/html/functions_j.html
@@ -0,0 +1,100 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_j.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_j" name="index_j"></a>- j -</h3><ul>
+<li>json()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce">SOIL::Element</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_k.html b/doc/html/functions_k.html
new file mode 100644
index 0000000000000000000000000000000000000000..44ffc3b9b42b838f92a390bb06af52d63a05112d
--- /dev/null
+++ b/doc/html/functions_k.html
@@ -0,0 +1,100 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_k.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_k" name="index_k"></a>- k -</h3><ul>
+<li>keep_alive&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">MQTT::Configuration</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_m.html b/doc/html/functions_m.html
new file mode 100644
index 0000000000000000000000000000000000000000..a61036d532c1baddf1a39f53855b6308fbf529d0
--- /dev/null
+++ b/doc/html/functions_m.html
@@ -0,0 +1,105 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_m.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_m" name="index_m"></a>- m -</h3><ul>
+<li>make_argument()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b">SOIL::Function</a></li>
+<li>make_return()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46">SOIL::Function</a></li>
+<li>message&#160;:&#160;<a class="el" href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">MQTT::MessageContainer</a></li>
+<li>min_delay_ms&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">MQTT::Configuration</a>, <a class="el" href="class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd">MQTT::Publisher</a></li>
+<li>mqtt()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>mutex&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">SOIL::Element</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_n.html b/doc/html/functions_n.html
new file mode 100644
index 0000000000000000000000000000000000000000..35d6eb0140e821e08aa23a17db1fbbf040584162
--- /dev/null
+++ b/doc/html/functions_n.html
@@ -0,0 +1,101 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_n.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_n" name="index_n"></a>- n -</h3><ul>
+<li>name()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925">SIGN::Signer</a>, <a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">SOIL::Element</a></li>
+<li>nonce&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_o.html b/doc/html/functions_o.html
new file mode 100644
index 0000000000000000000000000000000000000000..bcf068c32d67c770f1b0e20d157d0b89981df162
--- /dev/null
+++ b/doc/html/functions_o.html
@@ -0,0 +1,108 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_o.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_o" name="index_o"></a>- o -</h3><ul>
+<li>Object()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd">SOIL::Object</a></li>
+<li>ontology&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">SOIL::Element</a></li>
+<li>open()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486">HTTP::Server</a></li>
+<li>openssl_version()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4">SIGN::Signer</a></li>
+<li>operator*()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647">SOIL::Container&lt; T, x, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>operator&lt;=&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda">SOIL::Time</a></li>
+<li>operator=()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>operator&gt;=&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa">SOIL::Time</a></li>
+<li>operator[]()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239">SOIL::Element</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_p.html b/doc/html/functions_p.html
new file mode 100644
index 0000000000000000000000000000000000000000..aae476e37d1aba52771c019799d358836b0c4754
--- /dev/null
+++ b/doc/html/functions_p.html
@@ -0,0 +1,109 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_p.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_p" name="index_p"></a>- p -</h3><ul>
+<li>Parameter()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4">SOIL::Parameter&lt; T, x, y &gt;</a></li>
+<li>parent&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">SOIL::Element</a></li>
+<li>password&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">MQTT::Configuration</a></li>
+<li>path&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b">MQTT::Configuration</a></li>
+<li>port&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1">MQTT::Configuration</a></li>
+<li>print()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a5bd6f0f8915dab9870ca8eb8a4d39a10">SIGN::Hasher</a></li>
+<li>ptr()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260">SOIL::Function</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>publish()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe">MQTT::Publisher</a></li>
+<li>Publisher()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac">MQTT::Publisher</a></li>
+<li>push_back()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f">SIGN::Hasher</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_q.html b/doc/html/functions_q.html
new file mode 100644
index 0000000000000000000000000000000000000000..696a1ebcffd4e74013a0c2a445ef65366567b4c2
--- /dev/null
+++ b/doc/html/functions_q.html
@@ -0,0 +1,100 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_q.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_q" name="index_q"></a>- q -</h3><ul>
+<li>qos&#160;:&#160;<a class="el" href="struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0">MQTT::MessageContainer</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_r.html b/doc/html/functions_r.html
new file mode 100644
index 0000000000000000000000000000000000000000..eeb12908d1388f822db56d3063106cb756915ccc
--- /dev/null
+++ b/doc/html/functions_r.html
@@ -0,0 +1,111 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_r.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_r" name="index_r"></a>- r -</h3><ul>
+<li>range&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>Range()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e">SOIL::Range&lt; T &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38">SOIL::Range&lt; ENUM &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a635b0935b69730c81232c9f26267e5ec">SOIL::Range&lt; std::string &gt;</a></li>
+<li>read()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>reconnect()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08">MQTT::Publisher</a></li>
+<li>remove()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238">HTTP::Server</a>, <a class="el" href="class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f">SOIL::Element</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108">SOIL::Object</a></li>
+<li>remove_client()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92">UDP::Broadcast</a></li>
+<li>request_info()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad">HTTP::Resource</a></li>
+<li>reset()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3">SIGN::Hasher</a></li>
+<li>Resource()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc">HTTP::Resource</a></li>
+<li>retain&#160;:&#160;<a class="el" href="struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9">MQTT::MessageContainer</a></li>
+<li>rfc3339()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">SOIL::Time</a></li>
+<li>root&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">MQTT::Configuration</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_rela.html b/doc/html/functions_rela.html
new file mode 100644
index 0000000000000000000000000000000000000000..e8496d4ed01f7068a069ae3c594724601cbce11d
--- /dev/null
+++ b/doc/html/functions_rela.html
@@ -0,0 +1,99 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Related Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_rela.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>operator&lt;=&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda">SOIL::Time</a></li>
+<li>operator&gt;=&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa">SOIL::Time</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_s.html b/doc/html/functions_s.html
new file mode 100644
index 0000000000000000000000000000000000000000..034ff9e93c613707e44aa14ed73469ea2d6e0677
--- /dev/null
+++ b/doc/html/functions_s.html
@@ -0,0 +1,119 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_s.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_s" name="index_s"></a>- s -</h3><ul>
+<li>selected()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">SOIL::Enum</a></li>
+<li>self&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">SOIL::Element</a></li>
+<li>send()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">UDP::Broadcast</a></li>
+<li>serialize()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993">SOIL::Time</a></li>
+<li>serialize_dimensions()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34">SOIL::Container&lt; T, x, -1 &gt;</a></li>
+<li>serialize_value()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724">SOIL::Container&lt; T, x, -1 &gt;</a></li>
+<li>Server()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0">HTTP::Server</a></li>
+<li>set()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41">SOIL::Enum</a></li>
+<li>set_buffer()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d">MQTT::Publisher</a></li>
+<li>set_covariance()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>set_null()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b">SOIL::Container&lt; T, x, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f">SOIL::Time</a></li>
+<li>set_range()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>set_root_topic()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801">MQTT::Publisher</a></li>
+<li>set_time()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>set_value()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>sha256()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044">SIGN::Hasher</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>sign()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f">SIGN::Signer</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>Signer()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794">SIGN::Signer</a></li>
+<li>size()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d">SIGN::Hasher</a></li>
+<li>ssl&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">MQTT::Configuration</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_t.html b/doc/html/functions_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..87588052895e540c27745be39f3b02f6c427d866
--- /dev/null
+++ b/doc/html/functions_t.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_t.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_t" name="index_t"></a>- t -</h3><ul>
+<li>time&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>Time()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf">SOIL::Time</a></li>
+<li>topic&#160;:&#160;<a class="el" href="struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79">MQTT::MessageContainer</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_type.html b/doc/html/functions_type.html
new file mode 100644
index 0000000000000000000000000000000000000000..4bc82c065d2b54f08045ce860c5096dd79b21bd0
--- /dev/null
+++ b/doc/html/functions_type.html
@@ -0,0 +1,98 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Typedefs</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_type.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>iterator&#160;:&#160;<a class="el" href="class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053">UDP::Configuration</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_u.html b/doc/html/functions_u.html
new file mode 100644
index 0000000000000000000000000000000000000000..589b27976d082099b529343460744f98bc65e9bb
--- /dev/null
+++ b/doc/html/functions_u.html
@@ -0,0 +1,106 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_u.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_u" name="index_u"></a>- u -</h3><ul>
+<li>unit&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>update()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>uri()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">MQTT::Configuration</a></li>
+<li>use_count()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de">UDP::Broadcast</a></li>
+<li>username&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">MQTT::Configuration</a></li>
+<li>utc_now()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">SOIL::Time</a></li>
+<li>uuid&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">SOIL::Element</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_v.html b/doc/html/functions_v.html
new file mode 100644
index 0000000000000000000000000000000000000000..ae1365b6847f2c3e26dc930360a1e22bff6e8b19
--- /dev/null
+++ b/doc/html/functions_v.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_v.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_v" name="index_v"></a>- v -</h3><ul>
+<li>value&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>Variable()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>verify&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">MQTT::Configuration</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_vars.html b/doc/html/functions_vars.html
new file mode 100644
index 0000000000000000000000000000000000000000..f0a50dddce90caea83f8f93553c7253ec2116591
--- /dev/null
+++ b/doc/html/functions_vars.html
@@ -0,0 +1,197 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_vars.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_a" name="index_a"></a>- a -</h3><ul>
+<li>allowed_methods&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0">HTTP::Resource</a></li>
+<li>allowed_origins&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752">HTTP::Resource</a></li>
+</ul>
+
+
+<h3><a id="index_c" name="index_c"></a>- c -</h3><ul>
+<li>certificate_authority&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">MQTT::Configuration</a></li>
+<li>children&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf">SOIL::Element</a></li>
+<li>clean_session&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be">MQTT::Configuration</a></li>
+<li>clients&#160;:&#160;<a class="el" href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">UDP::Configuration</a></li>
+<li>connection_timeout_s&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52">MQTT::Configuration</a></li>
+<li>constant&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841">SOIL::Parameter&lt; T, x, y &gt;</a></li>
+<li>content_type&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6">HTTP::Resource</a></li>
+<li>covariance&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+
+
+<h3><a id="index_d" name="index_d"></a>- d -</h3><ul>
+<li>description&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9">SOIL::Element</a></li>
+</ul>
+
+
+<h3><a id="index_h" name="index_h"></a>- h -</h3><ul>
+<li>hash&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>host&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5">MQTT::Configuration</a></li>
+</ul>
+
+
+<h3><a id="index_k" name="index_k"></a>- k -</h3><ul>
+<li>keep_alive&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06">MQTT::Configuration</a></li>
+</ul>
+
+
+<h3><a id="index_m" name="index_m"></a>- m -</h3><ul>
+<li>message&#160;:&#160;<a class="el" href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">MQTT::MessageContainer</a></li>
+<li>min_delay_ms&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b">MQTT::Configuration</a></li>
+<li>mutex&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c">SOIL::Element</a></li>
+</ul>
+
+
+<h3><a id="index_n" name="index_n"></a>- n -</h3><ul>
+<li>name&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8">SOIL::Element</a></li>
+<li>nonce&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+
+
+<h3><a id="index_o" name="index_o"></a>- o -</h3><ul>
+<li>ontology&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d">SOIL::Element</a></li>
+</ul>
+
+
+<h3><a id="index_p" name="index_p"></a>- p -</h3><ul>
+<li>parent&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b">SOIL::Element</a></li>
+<li>password&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7">MQTT::Configuration</a></li>
+<li>path&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b">MQTT::Configuration</a></li>
+<li>port&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1">MQTT::Configuration</a></li>
+</ul>
+
+
+<h3><a id="index_q" name="index_q"></a>- q -</h3><ul>
+<li>qos&#160;:&#160;<a class="el" href="struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0">MQTT::MessageContainer</a></li>
+</ul>
+
+
+<h3><a id="index_r" name="index_r"></a>- r -</h3><ul>
+<li>range&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>retain&#160;:&#160;<a class="el" href="struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9">MQTT::MessageContainer</a></li>
+<li>root&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574">MQTT::Configuration</a></li>
+</ul>
+
+
+<h3><a id="index_s" name="index_s"></a>- s -</h3><ul>
+<li>self&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30">SOIL::Element</a></li>
+<li>ssl&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe">MQTT::Configuration</a></li>
+</ul>
+
+
+<h3><a id="index_t" name="index_t"></a>- t -</h3><ul>
+<li>time&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>topic&#160;:&#160;<a class="el" href="struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79">MQTT::MessageContainer</a></li>
+</ul>
+
+
+<h3><a id="index_u" name="index_u"></a>- u -</h3><ul>
+<li>unit&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>username&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338">MQTT::Configuration</a></li>
+<li>uuid&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104">SOIL::Element</a></li>
+</ul>
+
+
+<h3><a id="index_v" name="index_v"></a>- v -</h3><ul>
+<li>value&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>verify&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78">MQTT::Configuration</a></li>
+</ul>
+
+
+<h3><a id="index_w" name="index_w"></a>- w -</h3><ul>
+<li>websocket&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097">MQTT::Configuration</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_w.html b/doc/html/functions_w.html
new file mode 100644
index 0000000000000000000000000000000000000000..c744bea6af99afb54ef3c8e42d68cd93de436571
--- /dev/null
+++ b/doc/html/functions_w.html
@@ -0,0 +1,102 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_w.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index_w" name="index_w"></a>- w -</h3><ul>
+<li>websocket&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097">MQTT::Configuration</a></li>
+<li>wjson()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a">SOIL::Container&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338">SOIL::Container&lt; T, -1, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480">SOIL::Container&lt; T, x, -1 &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a">SOIL::Element</a>, <a class="el" href="class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e">SOIL::Function</a>, <a class="el" href="class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3">SOIL::Object</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade">SOIL::Range&lt; T &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3">SOIL::Range&lt; ENUM &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ad5847bdeceb2dcf632de0e7c0c3bc73f">SOIL::Range&lt; std::string &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68">SOIL::Variable&lt; T, x, y &gt;</a></li>
+<li>write()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0">SOIL::Figure&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c">SOIL::Parameter&lt; T, x, y &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/functions_~.html b/doc/html/functions_~.html
new file mode 100644
index 0000000000000000000000000000000000000000..26b24e3a5741f346c29627a7d1c95daf271797c8
--- /dev/null
+++ b/doc/html/functions_~.html
@@ -0,0 +1,116 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('functions_~.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
+
+<h3><a id="index__7E" name="index__7E"></a>- ~ -</h3><ul>
+<li>~Broadcast()&#160;:&#160;<a class="el" href="class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f">UDP::Broadcast</a></li>
+<li>~Configuration()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458">MQTT::Configuration</a>, <a class="el" href="class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada">UDP::Configuration</a></li>
+<li>~Element()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab">SOIL::Element</a></li>
+<li>~Enum()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867">SOIL::Enum</a></li>
+<li>~Exception()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202">MQTT::Exception</a>, <a class="el" href="class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0">UDP::Exception</a></li>
+<li>~Figure()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0">SOIL::Figure&lt; T, x, y &gt;</a></li>
+<li>~Function()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec">SOIL::Function</a></li>
+<li>~Hasher()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3">SIGN::Hasher</a></li>
+<li>~Object()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57">SOIL::Object</a></li>
+<li>~Parameter()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5">SOIL::Parameter&lt; T, x, y &gt;</a></li>
+<li>~Publisher()&#160;:&#160;<a class="el" href="class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205">MQTT::Publisher</a></li>
+<li>~Range()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b">SOIL::Range&lt; T &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c">SOIL::Range&lt; ENUM &gt;</a>, <a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a280aacb2fb5b4ad22c866a83671967c5">SOIL::Range&lt; std::string &gt;</a></li>
+<li>~Resource()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5">HTTP::Resource</a></li>
+<li>~Server()&#160;:&#160;<a class="el" href="class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759">HTTP::Server</a></li>
+<li>~Signer()&#160;:&#160;<a class="el" href="class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d">SIGN::Signer</a></li>
+<li>~Time()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16">SOIL::Time</a></li>
+<li>~Variable()&#160;:&#160;<a class="el" href="class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa">SOIL::Variable&lt; T, x, y &gt;</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals.html b/doc/html/globals.html
new file mode 100644
index 0000000000000000000000000000000000000000..f66d3c28ef409a94eedcfae990eea886e8275905
--- /dev/null
+++ b/doc/html/globals.html
@@ -0,0 +1,113 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: File Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('globals.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all file members with links to the files they belong to:</div><ul>
+<li>_WIN32_WINNT&#160;:&#160;<a class="el" href="_m_q_t_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">constants.h</a></li>
+<li>EVP_MD_CTX&#160;:&#160;<a class="el" href="_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a">Signer.h</a></li>
+<li>EVP_PKEY&#160;:&#160;<a class="el" href="_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce">Signer.h</a></li>
+<li>json&#160;:&#160;<a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">Configuration.cpp</a></li>
+<li>main()&#160;:&#160;<a class="el" href="main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main.cpp</a></li>
+<li>PAHO_MQTT_IMPORTS&#160;:&#160;<a class="el" href="_publisher_8cpp.html#a7448c142e0c36065fc7e625cd4b6b045">Publisher.cpp</a></li>
+<li>SOIL::datatype&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="_figure_8cpp.html#a2c60fe17aef5a333bceb59cbcbef54c0">Figure.cpp</a></li>
+<li>SOIL::datatype&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="_figure_8cpp.html#a30e419f20fa7f6edd5cd20a93ad810ea">Figure.cpp</a></li>
+<li>SOIL::datatype&lt; std::string &gt;()&#160;:&#160;<a class="el" href="_figure_8cpp.html#a879dfa5f8bb335421b721c57145b622e">Figure.cpp</a></li>
+<li>SOIL::to_json&lt; SOIL::BOOL &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#aae694c8a60db24c08de0a3a22ef12a40">json_helpers.cpp</a></li>
+<li>SOIL::to_json&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#a6ae5f67d92f7f1c13b8c5f816640b887">json_helpers.cpp</a></li>
+<li>SOIL::to_json&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#a10a05ce00d314258ffb9c6b536c1bf95">json_helpers.cpp</a></li>
+<li>SOIL::to_json&lt; std::string &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#a434c4f67044a7cc0f874ef0f5bf55b22">json_helpers.cpp</a></li>
+<li>SOIL::to_value&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#ab40adce50ce6a2a1da1f33a133e674b8">json_helpers.cpp</a></li>
+<li>SOIL::to_value&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#a682bf7d67c51ddd6da804bfd2416d99d">json_helpers.cpp</a></li>
+<li>SOIL::to_value&lt; std::string &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#a9769894e25cf77bdd6aaea440439d6c6">json_helpers.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals_defs.html b/doc/html/globals_defs.html
new file mode 100644
index 0000000000000000000000000000000000000000..5313da06746522a5a9d94893867d399f0b2cbf37
--- /dev/null
+++ b/doc/html/globals_defs.html
@@ -0,0 +1,99 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: File Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('globals_defs.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>_WIN32_WINNT&#160;:&#160;<a class="el" href="_m_q_t_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748">constants.h</a></li>
+<li>PAHO_MQTT_IMPORTS&#160;:&#160;<a class="el" href="_publisher_8cpp.html#a7448c142e0c36065fc7e625cd4b6b045">Publisher.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals_func.html b/doc/html/globals_func.html
new file mode 100644
index 0000000000000000000000000000000000000000..c5589c26af12066135dfbed3ef7de966ef31d301
--- /dev/null
+++ b/doc/html/globals_func.html
@@ -0,0 +1,108 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: File Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('globals_func.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>main()&#160;:&#160;<a class="el" href="main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main.cpp</a></li>
+<li>SOIL::datatype&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="_figure_8cpp.html#a2c60fe17aef5a333bceb59cbcbef54c0">Figure.cpp</a></li>
+<li>SOIL::datatype&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="_figure_8cpp.html#a30e419f20fa7f6edd5cd20a93ad810ea">Figure.cpp</a></li>
+<li>SOIL::datatype&lt; std::string &gt;()&#160;:&#160;<a class="el" href="_figure_8cpp.html#a879dfa5f8bb335421b721c57145b622e">Figure.cpp</a></li>
+<li>SOIL::to_json&lt; SOIL::BOOL &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#aae694c8a60db24c08de0a3a22ef12a40">json_helpers.cpp</a></li>
+<li>SOIL::to_json&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#a6ae5f67d92f7f1c13b8c5f816640b887">json_helpers.cpp</a></li>
+<li>SOIL::to_json&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#a10a05ce00d314258ffb9c6b536c1bf95">json_helpers.cpp</a></li>
+<li>SOIL::to_json&lt; std::string &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#a434c4f67044a7cc0f874ef0f5bf55b22">json_helpers.cpp</a></li>
+<li>SOIL::to_value&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#ab40adce50ce6a2a1da1f33a133e674b8">json_helpers.cpp</a></li>
+<li>SOIL::to_value&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#a682bf7d67c51ddd6da804bfd2416d99d">json_helpers.cpp</a></li>
+<li>SOIL::to_value&lt; std::string &gt;()&#160;:&#160;<a class="el" href="json__helpers_8cpp.html#a9769894e25cf77bdd6aaea440439d6c6">json_helpers.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/globals_type.html b/doc/html/globals_type.html
new file mode 100644
index 0000000000000000000000000000000000000000..7221e0b776a080d6d08fd8e64c4d55af052259fa
--- /dev/null
+++ b/doc/html/globals_type.html
@@ -0,0 +1,100 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: File Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('globals_type.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>EVP_MD_CTX&#160;:&#160;<a class="el" href="_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a">Signer.h</a></li>
+<li>EVP_PKEY&#160;:&#160;<a class="el" href="_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce">Signer.h</a></li>
+<li>json&#160;:&#160;<a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">Configuration.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/hierarchy.html b/doc/html/hierarchy.html
new file mode 100644
index 0000000000000000000000000000000000000000..46bae1b63268cc4fdd452b2e87710f763f9057f3
--- /dev/null
+++ b/doc/html/hierarchy.html
@@ -0,0 +1,130 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Class Hierarchy</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('hierarchy.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Class Hierarchy</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">This inheritance list is sorted roughly, but not completely, alphabetically:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span><span onclick="javascript:toggleLevel(4);">4</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_u_d_p_1_1_broadcast.html" target="_self">UDP::Broadcast</a></td><td class="desc"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> </td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_m_q_t_t_1_1_configuration.html" target="_self">MQTT::Configuration</a></td><td class="desc"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> publishing configuration </td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_u_d_p_1_1_configuration.html" target="_self">UDP::Configuration</a></td><td class="desc"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_configuration.html" title="UDP Broadcast Configuration.">Configuration</a> </td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_container.html" target="_self">SOIL::Container&lt; T, x, y &gt;</a></td><td class="desc">Data <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> </td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html" target="_self">SOIL::Container&lt; T, -1, -1 &gt;</a></td><td class="desc">Template specialization for Scalars </td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html" target="_self">SOIL::Container&lt; T, x, -1 &gt;</a></td><td class="desc">Template specialization for 1D-Arrays/Vectors </td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_container.html" target="_self">SOIL::Container&lt; T, x, y &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_enum.html" target="_self">SOIL::Enum</a></td><td class="desc"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> Datatype </td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_i_g_n_1_1_hasher.html" target="_self">SIGN::Hasher</a></td><td class="desc">SHA256 <a class="el" href="class_s_i_g_n_1_1_hasher.html" title="SHA256 Hasher.">Hasher</a> </td></tr>
+<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_m_q_t_t_1_1_message_container.html" target="_self">MQTT::MessageContainer</a></td><td class="desc">Internal <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message struct </td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_m_q_t_t_1_1_publisher.html" target="_self">MQTT::Publisher</a></td><td class="desc"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a> </td></tr>
+<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_range.html" target="_self">SOIL::Range&lt; T &gt;</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> Helper Class </td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html" target="_self">SOIL::Range&lt; ENUM &gt;</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> </td></tr>
+<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html" target="_self">SOIL::Range&lt; std::string &gt;</a></td><td class="desc">String <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> </td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_14_" class="arrow" onclick="toggleFolder('14_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_h_t_t_p_1_1_resource.html" target="_self">HTTP::Resource</a></td><td class="desc"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> <a class="el" href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class.">Resource</a> base class </td></tr>
+<tr id="row_14_0_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_14_0_" class="arrow" onclick="toggleFolder('14_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_element.html" target="_self">SOIL::Element</a></td><td class="desc"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Base <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> </td></tr>
+<tr id="row_14_0_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_14_0_0_" class="arrow" onclick="toggleFolder('14_0_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_figure.html" target="_self">SOIL::Figure&lt; T, -1, -1 &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_14_0_0_0_"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_parameter.html" target="_self">SOIL::Parameter&lt; T, x, y &gt;</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> Class </td></tr>
+<tr id="row_14_0_0_1_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_variable.html" target="_self">SOIL::Variable&lt; T, x, y &gt;</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> Class </td></tr>
+<tr id="row_14_0_1_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_figure.html" target="_self">SOIL::Figure&lt; T, x, y &gt;</a></td><td class="desc">Intermediate class for <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> that derives from <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> </td></tr>
+<tr id="row_14_0_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_function.html" target="_self">SOIL::Function</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> Class </td></tr>
+<tr id="row_14_0_3_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_object.html" target="_self">SOIL::Object</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> Class </td></tr>
+<tr id="row_15_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_15_" class="arrow" onclick="toggleFolder('15_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>std::runtime_error</b></td><td class="desc"></td></tr>
+<tr id="row_15_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_m_q_t_t_1_1_exception.html" target="_self">MQTT::Exception</a></td><td class="desc"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a> <a class="el" href="class_m_q_t_t_1_1_exception.html" title="MQTT Publisher Exception.">Exception</a> </td></tr>
+<tr id="row_15_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_u_d_p_1_1_exception.html" target="_self">UDP::Exception</a></td><td class="desc"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_exception.html" title="UDP Broadcast Exception.">Exception</a> </td></tr>
+<tr id="row_16_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_h_t_t_p_1_1_server.html" target="_self">HTTP::Server</a></td><td class="desc">HTPP <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">Server</a> </td></tr>
+<tr id="row_17_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_i_g_n_1_1_signer.html" target="_self">SIGN::Signer</a></td><td class="desc"><a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">Signer</a> </td></tr>
+<tr id="row_18_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_time.html" target="_self">SOIL::Time</a></td><td class="desc"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> </td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/hierarchy.js b/doc/html/hierarchy.js
new file mode 100644
index 0000000000000000000000000000000000000000..a9222bb73390376190587e57001b1e9c7608930b
--- /dev/null
+++ b/doc/html/hierarchy.js
@@ -0,0 +1,35 @@
+var hierarchy =
+[
+    [ "UDP::Broadcast", "class_u_d_p_1_1_broadcast.html", null ],
+    [ "MQTT::Configuration", "class_m_q_t_t_1_1_configuration.html", null ],
+    [ "UDP::Configuration", "class_u_d_p_1_1_configuration.html", null ],
+    [ "SOIL::Container< T, x, y >", "class_s_o_i_l_1_1_container.html", null ],
+    [ "SOIL::Container< T, -1, -1 >", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html", null ],
+    [ "SOIL::Container< T, x, -1 >", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html", null ],
+    [ "SOIL::Container< T, x, y >", "class_s_o_i_l_1_1_container.html", null ],
+    [ "SOIL::Enum", "class_s_o_i_l_1_1_enum.html", null ],
+    [ "SIGN::Hasher", "class_s_i_g_n_1_1_hasher.html", null ],
+    [ "MQTT::MessageContainer", "struct_m_q_t_t_1_1_message_container.html", null ],
+    [ "MQTT::Publisher", "class_m_q_t_t_1_1_publisher.html", null ],
+    [ "SOIL::Range< T >", "class_s_o_i_l_1_1_range.html", null ],
+    [ "SOIL::Range< ENUM >", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html", null ],
+    [ "SOIL::Range< std::string >", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html", null ],
+    [ "HTTP::Resource", "class_h_t_t_p_1_1_resource.html", [
+      [ "SOIL::Element", "class_s_o_i_l_1_1_element.html", [
+        [ "SOIL::Figure< T, -1, -1 >", "class_s_o_i_l_1_1_figure.html", [
+          [ "SOIL::Parameter< T, x, y >", "class_s_o_i_l_1_1_parameter.html", null ],
+          [ "SOIL::Variable< T, x, y >", "class_s_o_i_l_1_1_variable.html", null ]
+        ] ],
+        [ "SOIL::Figure< T, x, y >", "class_s_o_i_l_1_1_figure.html", null ],
+        [ "SOIL::Function", "class_s_o_i_l_1_1_function.html", null ],
+        [ "SOIL::Object", "class_s_o_i_l_1_1_object.html", null ]
+      ] ]
+    ] ],
+    [ "std::runtime_error", null, [
+      [ "MQTT::Exception", "class_m_q_t_t_1_1_exception.html", null ],
+      [ "UDP::Exception", "class_u_d_p_1_1_exception.html", null ]
+    ] ],
+    [ "HTTP::Server", "class_h_t_t_p_1_1_server.html", null ],
+    [ "SIGN::Signer", "class_s_i_g_n_1_1_signer.html", null ],
+    [ "SOIL::Time", "class_s_o_i_l_1_1_time.html", null ]
+];
\ No newline at end of file
diff --git a/doc/html/index.html b/doc/html/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..864f54b2d60c419fc6e7b6b859c27b456bce4191
--- /dev/null
+++ b/doc/html/index.html
@@ -0,0 +1,157 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL C++</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('index.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div><div class="header">
+  <div class="headertitle"><div class="title"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> C++ </div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p ><a class="anchor" id="md_README"></a>The <b>Unified Device Interface</b> provides four dynamic libraries which assemble a web-service for a sensor or measurement device. The interface provides a RESTful <a class="el" href="namespace_h_t_t_p.html">HTTP</a> server, a MQTT-Publisher, and UDP-Broadcaster, whereas the UDP-Broadcaster is of minor importance. The libary allows to fully implement a <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> sensor service. By implementing your device against the provided API, it is possible to send message via <a class="el" href="namespace_m_q_t_t.html">MQTT</a> which are then recieved by clients and to access the measurements and methods of the sensor/device via <a class="el" href="namespace_h_t_t_p.html">HTTP</a>.</p>
+<p >If a more detailed introduction or explanation of these concepts is requried, please contact <a href="#" onclick="location.href='mai'+'lto:'+'b.m'+'on'+'tav'+'on'+'@wz'+'l-'+'mq.'+'rw'+'th-'+'aa'+'che'+'n.'+'de'; return false;">Benjamin Montavon</a> or <a href="#" onclick="location.href='mai'+'lto:'+'m.b'+'od'+'enb'+'en'+'ner'+'@w'+'zl.'+'rw'+'th-'+'aa'+'che'+'n.'+'de'; return false;">Matthias Bodenbenner</a>. Same holds for any kind of problems when using, compiling, etc. the libraries.</p>
+<h1><a class="anchor" id="autotoc_md1"></a>
+Development setup</h1>
+<h2><a class="anchor" id="autotoc_md2"></a>
+Dependencies</h2>
+<p >This library has the following dependencies (VCPKG naming):</p><ul>
+<li>boost-date-time</li>
+<li>boost-asio</li>
+<li>boost-thread</li>
+<li>boost-algorithm</li>
+<li>nlohmann-json</li>
+<li>cpprestsdk</li>
+<li>paho-mqttpp3</li>
+<li>openssl</li>
+</ul>
+<h2><a class="anchor" id="autotoc_md3"></a>
+Windows</h2>
+<ol type="1">
+<li>Install Visual Studio - The most recent developments have been carried out with Visual Studio 2022. The Community Edition is known to be sufficient and can be used free of charge for academic purposes. You can download it and see more details at <a href="https://visualstudio.microsoft.com/de/vs/community/">https://visualstudio.microsoft.com/de/vs/community/</a>.</li>
+<li>Install VCPKG<ol type="a">
+<li>Clone the <a href="https://github.com/microsoft/vcpkg">vcpkg-repository</a>.</li>
+<li>Go into vcpkg folder.</li>
+<li>Run *.\bootstrap-vcpkg.bat*</li>
+</ol>
+<ol type="a">
+<li>Configurure environment variables and path:<ol type="i">
+<li>Add environment variable <code>VCPKG_INSTALLED</code> and set the value to <em>[vcpkg-directory]/installed</em>. The Visual Studio project heavily depends on this path!</li>
+<li>Add the vcpkg directory to PATH.</li>
+</ol>
+</li>
+<li>Do not forget to restart Visual Studio after changing the variables!</li>
+</ol>
+</li>
+<li>Install required packages. You can install <b>all</b> dependencies by executing <em>install_packages.bat</em>. It may take a lot of time (&gt; 1h), have patience!. If you only want to use a specific library install the following packages. For compiling the x64 configuration install the packages and append *:x64-windows* (e.g. boost-date-time:x64-windows).</li>
+<li>Compile source code.</li>
+<li>The compiled *.dll-files and generated *.lib are copied into the <em>dist</em> folder under the chosen configuration (i.e. ./x64/Debug)</li>
+<li>The *.dll files coming with the library still reside within <code>VCPKG_INSTALLED</code> within the respective subfolders (&lt;x64/x86&gt;-windows/[debug/]bin). Adding all folders to <code>PATH</code> may cause problems during debugging. It is recommended to put them next to the application or carefully select path modifications. During debugging, Visual Studio is managing this problem for you.</li>
+</ol>
+<h2><a class="anchor" id="autotoc_md4"></a>
+Linux</h2>
+<ol type="1">
+<li>Install <code>git</code>, <code>gcc</code>, <code>make</code>, <code>cmake</code> at least and configure your build environment</li>
+<li>Install VCPKG<ol type="a">
+<li>Clone the <a href="https://github.com/microsoft/vcpkg">vcpkg-repository</a>.</li>
+<li>Go into vcpkg folder.</li>
+<li>Run *./bootstrap-vcpkg.sh*</li>
+</ol>
+</li>
+<li>Install required packages. You may use <em>install_packages.sh</em>.</li>
+<li>Run CMAKE using the vcpkg toolchain according to <a href="https://vcpkg.readthedocs.io/en/latest/examples/installing-and-using-packages/#cmake">https://vcpkg.readthedocs.io/en/latest/examples/installing-and-using-packages/#cmake</a>. When using the CMake GUI, use the option <em>Specify Toolchain for Cross-Compiling</em>, even if not Cross-Compiling. From the command-line, use <code>CMAKE_TOOLCHAIN_FILE</code>. Using <code>projects/linux/cmake/CMakeLists.txt</code> will build all components and test at once.</li>
+</ol>
+<h1><a class="anchor" id="autotoc_md5"></a>
+Implement device conform to the unified interface</h1>
+<p >To implement a device service which is conform to the unified interface on has to inherit from the three classes <em>Object</em>, <em>Function</em> and <em>Variable</em> of the <b>REST</b> project. The <em><a class="el" href="main_8cpp.html">main.cpp</a></em> of the <em>TEST</em> project can be used as template for main method of your device.</p>
+<h1><a class="anchor" id="autotoc_md6"></a>
+Known Issues and Warnings</h1>
+<p >This project recently changed the default string backend for cpprestsdk from <code>std::wstring</code> to <code>std::string</code>. You may need to adjust some little pieces of code at your end when updating. </p>
+</div></div><!-- PageDoc -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/jquery.js b/doc/html/jquery.js
new file mode 100644
index 0000000000000000000000000000000000000000..c9ed3d99cbc898d1ab4d9bd378e55e43ad9022f5
--- /dev/null
+++ b/doc/html/jquery.js
@@ -0,0 +1,35 @@
+/*! jQuery v3.6.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */
+!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0<t&&t-1 in e)}S.fn=S.prototype={jquery:f,constructor:S,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=S.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return S.each(this,e)},map:function(n){return this.pushStack(S.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(S.grep(this,function(e,t){return(t+1)%2}))},odd:function(){return this.pushStack(S.grep(this,function(e,t){return t%2}))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:u,sort:t.sort,splice:t.splice},S.extend=S.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||m(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],"__proto__"!==t&&a!==r&&(l&&r&&(S.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||S.isPlainObject(n)?n:{},i=!1,a[t]=S.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},S.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||"[object Object]"!==o.call(e))&&(!(t=r(e))||"function"==typeof(n=v.call(t,"constructor")&&t.constructor)&&a.call(n)===l)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){b(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(p(e)){for(n=e.length;r<n;r++)if(!1===t.call(e[r],r,e[r]))break}else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(p(Object(e))?S.merge(n,"string"==typeof e?[e]:e):u.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:i.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,o=0,a=[];if(p(e))for(r=e.length;o<r;o++)null!=(i=t(e[o],o,n))&&a.push(i);else for(o in e)null!=(i=t(e[o],o,n))&&a.push(i);return g(a)},guid:1,support:y}),"function"==typeof Symbol&&(S.fn[Symbol.iterator]=t[Symbol.iterator]),S.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(e,t){n["[object "+t+"]"]=t.toLowerCase()});var d=function(n){var e,d,b,o,i,h,f,g,w,u,l,T,C,a,E,v,s,c,y,S="sizzle"+1*new Date,p=n.document,k=0,r=0,m=ue(),x=ue(),A=ue(),N=ue(),j=function(e,t){return e===t&&(l=!0),0},D={}.hasOwnProperty,t=[],q=t.pop,L=t.push,H=t.push,O=t.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",I="(?:\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",W="\\["+M+"*("+I+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+I+"))|)"+M+"*\\]",F=":("+I+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+W+")*)|.*)\\)|)",B=new RegExp(M+"+","g"),$=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),_=new RegExp("^"+M+"*,"+M+"*"),z=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="<a id='"+S+"'></a><select id='"+S+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0<se(t,C,null,[e]).length},se.contains=function(e,t){return(e.ownerDocument||e)!=C&&T(e),y(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=C&&T(e);var n=b.attrHandle[t.toLowerCase()],r=n&&D.call(b.attrHandle,t.toLowerCase())?n(e,t,!E):void 0;return void 0!==r?r:d.attributes||!E?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},se.escape=function(e){return(e+"").replace(re,ie)},se.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},se.uniqueSort=function(e){var t,n=[],r=0,i=0;if(l=!d.detectDuplicates,u=!d.sortStable&&e.slice(0),e.sort(j),l){while(t=e[i++])t===e[i]&&(r=n.push(i));while(r--)e.splice(n[r],1)}return u=null,e},o=se.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=o(e)}else if(3===i||4===i)return e.nodeValue}else while(t=e[r++])n+=o(t);return n},(b=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1<t.indexOf(i):"$="===r?i&&t.slice(-i.length)===i:"~="===r?-1<(" "+t.replace(B," ")+" ").indexOf(i):"|="===r&&(t===i||t.slice(0,i.length+1)===i+"-"))}},CHILD:function(h,e,t,g,v){var y="nth"!==h.slice(0,3),m="last"!==h.slice(-4),x="of-type"===e;return 1===g&&0===v?function(e){return!!e.parentNode}:function(e,t,n){var r,i,o,a,s,u,l=y!==m?"nextSibling":"previousSibling",c=e.parentNode,f=x&&e.nodeName.toLowerCase(),p=!n&&!x,d=!1;if(c){if(y){while(l){a=e;while(a=a[l])if(x?a.nodeName.toLowerCase()===f:1===a.nodeType)return!1;u=l="only"===h&&!u&&"nextSibling"}return!0}if(u=[m?c.firstChild:c.lastChild],m&&p){d=(s=(r=(i=(o=(a=c)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1])&&r[2],a=s&&c.childNodes[s];while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if(1===a.nodeType&&++d&&a===e){i[h]=[k,s,d];break}}else if(p&&(d=s=(r=(i=(o=(a=e)[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]||[])[0]===k&&r[1]),!1===d)while(a=++s&&a&&a[l]||(d=s=0)||u.pop())if((x?a.nodeName.toLowerCase()===f:1===a.nodeType)&&++d&&(p&&((i=(o=a[S]||(a[S]={}))[a.uniqueID]||(o[a.uniqueID]={}))[h]=[k,d]),a===e))break;return(d-=v)===g||d%g==0&&0<=d/g}}},PSEUDO:function(e,o){var t,a=b.pseudos[e]||b.setFilters[e.toLowerCase()]||se.error("unsupported pseudo: "+e);return a[S]?a(o):1<a.length?(t=[e,e,"",o],b.setFilters.hasOwnProperty(e.toLowerCase())?le(function(e,t){var n,r=a(e,o),i=r.length;while(i--)e[n=P(e,r[i])]=!(t[n]=r[i])}):function(e){return a(e,0,t)}):a}},pseudos:{not:le(function(e){var r=[],i=[],s=f(e.replace($,"$1"));return s[S]?le(function(e,t,n,r){var i,o=s(e,null,r,[]),a=e.length;while(a--)(i=o[a])&&(e[a]=!(t[a]=i))}):function(e,t,n){return r[0]=e,s(r,null,n,i),r[0]=null,!i.pop()}}),has:le(function(t){return function(e){return 0<se(t,e).length}}),contains:le(function(t){return t=t.replace(te,ne),function(e){return-1<(e.textContent||o(e)).indexOf(t)}}),lang:le(function(n){return V.test(n||"")||se.error("unsupported lang: "+n),n=n.replace(te,ne).toLowerCase(),function(e){var t;do{if(t=E?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(t=t.toLowerCase())===n||0===t.indexOf(n+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===a},focus:function(e){return e===C.activeElement&&(!C.hasFocus||C.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!b.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ve(function(){return[0]}),last:ve(function(e,t){return[t-1]}),eq:ve(function(e,t,n){return[n<0?n+t:n]}),even:ve(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:ve(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:ve(function(e,t,n){for(var r=n<0?n+t:t<n?t:n;0<=--r;)e.push(r);return e}),gt:ve(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}}).pseudos.nth=b.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})b.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})b.pseudos[e]=he(e);function me(){}function xe(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function be(s,e,t){var u=e.dir,l=e.next,c=l||u,f=t&&"parentNode"===c,p=r++;return e.first?function(e,t,n){while(e=e[u])if(1===e.nodeType||f)return s(e,t,n);return!1}:function(e,t,n){var r,i,o,a=[k,p];if(n){while(e=e[u])if((1===e.nodeType||f)&&s(e,t,n))return!0}else while(e=e[u])if(1===e.nodeType||f)if(i=(o=e[S]||(e[S]={}))[e.uniqueID]||(o[e.uniqueID]={}),l&&l===e.nodeName.toLowerCase())e=e[u]||e;else{if((r=i[c])&&r[0]===k&&r[1]===p)return a[2]=r[2];if((i[c]=a)[2]=s(e,t,n))return!0}return!1}}function we(i){return 1<i.length?function(e,t,n){var r=i.length;while(r--)if(!i[r](e,t,n))return!1;return!0}:i[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(d,h,g,v,y,e){return v&&!v[S]&&(v=Ce(v)),y&&!y[S]&&(y=Ce(y,e)),le(function(e,t,n,r){var i,o,a,s=[],u=[],l=t.length,c=e||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(h||"*",n.nodeType?[n]:n,[]),f=!d||!e&&h?c:Te(c,s,d,n,r),p=g?y||(e?d:l||v)?[]:t:f;if(g&&g(f,p,n,r),v){i=Te(p,u),v(i,[],n,r),o=i.length;while(o--)(a=i[o])&&(p[u[o]]=!(f[u[o]]=a))}if(e){if(y||d){if(y){i=[],o=p.length;while(o--)(a=p[o])&&i.push(f[o]=a);y(null,p=[],i,r)}o=p.length;while(o--)(a=p[o])&&-1<(i=y?P(e,a):s[o])&&(e[i]=!(t[i]=a))}}else p=Te(p===t?p.splice(l,p.length):p),y?y(null,t,p,r):H.apply(t,p)})}function Ee(e){for(var i,t,n,r=e.length,o=b.relative[e[0].type],a=o||b.relative[" "],s=o?1:0,u=be(function(e){return e===i},a,!0),l=be(function(e){return-1<P(i,e)},a,!0),c=[function(e,t,n){var r=!o&&(n||t!==w)||((i=t).nodeType?u(e,t,n):l(e,t,n));return i=null,r}];s<r;s++)if(t=b.relative[e[s].type])c=[be(we(c),t)];else{if((t=b.filter[e[s].type].apply(null,e[s].matches))[S]){for(n=++s;n<r;n++)if(b.relative[e[n].type])break;return Ce(1<s&&we(c),1<s&&xe(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace($,"$1"),t,s<n&&Ee(e.slice(s,n)),n<r&&Ee(e=e.slice(n)),n<r&&xe(e))}c.push(t)}return we(c)}return me.prototype=b.filters=b.pseudos,b.setFilters=new me,h=se.tokenize=function(e,t){var n,r,i,o,a,s,u,l=x[e+" "];if(l)return t?0:l.slice(0);a=e,s=[],u=b.preFilter;while(a){for(o in n&&!(r=_.exec(a))||(r&&(a=a.slice(r[0].length)||a),s.push(i=[])),n=!1,(r=z.exec(a))&&(n=r.shift(),i.push({value:n,type:r[0].replace($," ")}),a=a.slice(n.length)),b.filter)!(r=G[o].exec(a))||u[o]&&!(r=u[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return t?a.length:a?se.error(e):x(e,s).slice(0)},f=se.compile=function(e,t){var n,v,y,m,x,r,i=[],o=[],a=A[e+" "];if(!a){t||(t=h(e)),n=t.length;while(n--)(a=Ee(t[n]))[S]?i.push(a):o.push(a);(a=A(e,(v=o,m=0<(y=i).length,x=0<v.length,r=function(e,t,n,r,i){var o,a,s,u=0,l="0",c=e&&[],f=[],p=w,d=e||x&&b.find.TAG("*",i),h=k+=null==p?1:Math.random()||.1,g=d.length;for(i&&(w=t==C||t||i);l!==g&&null!=(o=d[l]);l++){if(x&&o){a=0,t||o.ownerDocument==C||(T(o),n=!E);while(s=v[a++])if(s(o,t||C,n)){r.push(o);break}i&&(k=h)}m&&((o=!s&&o)&&u--,e&&c.push(o))}if(u+=l,m&&l!==u){a=0;while(s=y[a++])s(c,f,t,n);if(e){if(0<u)while(l--)c[l]||f[l]||(f[l]=q.call(r));f=Te(f)}H.apply(r,f),i&&!e&&0<f.length&&1<u+y.length&&se.uniqueSort(r)}return i&&(k=h,w=p),c},m?le(r):r))).selector=e}return a},g=se.select=function(e,t,n,r){var i,o,a,s,u,l="function"==typeof e&&e,c=!r&&h(e=l.selector||e);if(n=n||[],1===c.length){if(2<(o=c[0]=c[0].slice(0)).length&&"ID"===(a=o[0]).type&&9===t.nodeType&&E&&b.relative[o[1].type]){if(!(t=(b.find.ID(a.matches[0].replace(te,ne),t)||[])[0]))return n;l&&(t=t.parentNode),e=e.slice(o.shift().value.length)}i=G.needsContext.test(e)?0:o.length;while(i--){if(a=o[i],b.relative[s=a.type])break;if((u=b.find[s])&&(r=u(a.matches[0].replace(te,ne),ee.test(o[0].type)&&ye(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&xe(o)))return H.apply(n,r),n;break}}}return(l||f(e,c))(r,t,!E,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},d.sortStable=S.split("").sort(j).join("")===S,d.detectDuplicates=!!l,T(),d.sortDetached=ce(function(e){return 1&e.compareDocumentPosition(C.createElement("fieldset"))}),ce(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||fe("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),d.attributes&&ce(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||fe("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),ce(function(e){return null==e.getAttribute("disabled")})||fe(R,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),se}(C);S.find=d,S.expr=d.selectors,S.expr[":"]=S.expr.pseudos,S.uniqueSort=S.unique=d.uniqueSort,S.text=d.getText,S.isXMLDoc=d.isXML,S.contains=d.contains,S.escapeSelector=d.escape;var h=function(e,t,n){var r=[],i=void 0!==n;while((e=e[t])&&9!==e.nodeType)if(1===e.nodeType){if(i&&S(e).is(n))break;r.push(e)}return r},T=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=S.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1<i.call(n,e)!==r}):S.filter(n,e,r)}S.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?S.find.matchesSelector(r,e)?[r]:[]:S.find.matches(e,S.grep(t,function(e){return 1===e.nodeType}))},S.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(S(e).filter(function(){for(t=0;t<r;t++)if(S.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)S.find(e,i[t],n);return 1<r?S.uniqueSort(n):n},filter:function(e){return this.pushStack(j(this,e||[],!1))},not:function(e){return this.pushStack(j(this,e||[],!0))},is:function(e){return!!j(this,"string"==typeof e&&k.test(e)?S(e):e||[],!1).length}});var D,q=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(S.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&S(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?-1<a.index(n):1===n.nodeType&&S.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(1<o.length?S.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?i.call(S(e),this[0]):i.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(S.uniqueSort(S.merge(this.get(),S(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),S.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return h(e,"parentNode")},parentsUntil:function(e,t,n){return h(e,"parentNode",n)},next:function(e){return O(e,"nextSibling")},prev:function(e){return O(e,"previousSibling")},nextAll:function(e){return h(e,"nextSibling")},prevAll:function(e){return h(e,"previousSibling")},nextUntil:function(e,t,n){return h(e,"nextSibling",n)},prevUntil:function(e,t,n){return h(e,"previousSibling",n)},siblings:function(e){return T((e.parentNode||{}).firstChild,e)},children:function(e){return T(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,"template")&&(e=e.content||e),S.merge([],e.childNodes))}},function(r,i){S.fn[r]=function(e,t){var n=S.map(this,i,e);return"Until"!==r.slice(-5)&&(t=e),t&&"string"==typeof t&&(n=S.filter(t,n)),1<this.length&&(H[r]||S.uniqueSort(n),L.test(r)&&n.reverse()),this.pushStack(n)}});var P=/[^\x20\t\r\n\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&m(i=e.promise)?i.call(e).done(t).fail(n):e&&m(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}S.Callbacks=function(r){var e,n;r="string"==typeof r?(e=r,n={},S.each(e.match(P)||[],function(e,t){n[t]=!0}),n):S.extend({},r);var i,t,o,a,s=[],u=[],l=-1,c=function(){for(a=a||r.once,o=i=!0;u.length;l=-1){t=u.shift();while(++l<s.length)!1===s[l].apply(t[0],t[1])&&r.stopOnFalse&&(l=s.length,t=!1)}r.memory||(t=!1),i=!1,a&&(s=t?[]:"")},f={add:function(){return s&&(t&&!i&&(l=s.length-1,u.push(t)),function n(e){S.each(e,function(e,t){m(t)?r.unique&&f.has(t)||s.push(t):t&&t.length&&"string"!==w(t)&&n(t)})}(arguments),t&&!i&&c()),this},remove:function(){return S.each(arguments,function(e,t){var n;while(-1<(n=S.inArray(t,s,n)))s.splice(n,1),n<=l&&l--}),this},has:function(e){return e?-1<S.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return a=u=[],s=t="",this},disabled:function(){return!s},lock:function(){return a=u=[],t||i||(s=t=""),this},locked:function(){return!!a},fireWith:function(e,t){return a||(t=[e,(t=t||[]).slice?t.slice():t],u.push(t),i||c()),this},fire:function(){return f.fireWith(this,arguments),this},fired:function(){return!!o}};return f},S.extend({Deferred:function(e){var o=[["notify","progress",S.Callbacks("memory"),S.Callbacks("memory"),2],["resolve","done",S.Callbacks("once memory"),S.Callbacks("once memory"),0,"resolved"],["reject","fail",S.Callbacks("once memory"),S.Callbacks("once memory"),1,"rejected"]],i="pending",a={state:function(){return i},always:function(){return s.done(arguments).fail(arguments),this},"catch":function(e){return a.then(null,e)},pipe:function(){var i=arguments;return S.Deferred(function(r){S.each(o,function(e,t){var n=m(i[t[4]])&&i[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&m(e.promise)?e.promise().progress(r.notify).done(r.resolve).fail(r.reject):r[t[0]+"With"](this,n?[e]:arguments)})}),i=null}).promise()},then:function(t,n,r){var u=0;function l(i,o,a,s){return function(){var n=this,r=arguments,e=function(){var e,t;if(!(i<u)){if((e=a.apply(n,r))===o.promise())throw new TypeError("Thenable self-resolution");t=e&&("object"==typeof e||"function"==typeof e)&&e.then,m(t)?s?t.call(e,l(u,o,R,s),l(u,o,M,s)):(u++,t.call(e,l(u,o,R,s),l(u,o,M,s),l(u,o,R,o.notifyWith))):(a!==R&&(n=void 0,r=[e]),(s||o.resolveWith)(n,r))}},t=s?e:function(){try{e()}catch(e){S.Deferred.exceptionHook&&S.Deferred.exceptionHook(e,t.stackTrace),u<=i+1&&(a!==M&&(n=void 0,r=[e]),o.rejectWith(n,r))}};i?t():(S.Deferred.getStackHook&&(t.stackTrace=S.Deferred.getStackHook()),C.setTimeout(t))}}return S.Deferred(function(e){o[0][3].add(l(0,e,m(r)?r:R,e.notifyWith)),o[1][3].add(l(0,e,m(t)?t:R)),o[2][3].add(l(0,e,m(n)?n:M))}).promise()},promise:function(e){return null!=e?S.extend(e,a):a}},s={};return S.each(o,function(e,t){var n=t[2],r=t[5];a[t[1]]=n.add,r&&n.add(function(){i=r},o[3-e][2].disable,o[3-e][3].disable,o[0][2].lock,o[0][3].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+"With"](this===s?void 0:this,arguments),this},s[t[0]+"With"]=n.fireWith}),a.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,r=Array(t),i=s.call(arguments),o=S.Deferred(),a=function(t){return function(e){r[t]=this,i[t]=1<arguments.length?s.call(arguments):e,--n||o.resolveWith(r,i)}};if(n<=1&&(I(e,o.done(a(t)).resolve,o.reject,!n),"pending"===o.state()||m(i[t]&&i[t].then)))return o.then();while(t--)I(i[t],a(t),o.reject);return o.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;S.Deferred.exceptionHook=function(e,t){C.console&&C.console.warn&&e&&W.test(e.name)&&C.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},S.readyException=function(e){C.setTimeout(function(){throw e})};var F=S.Deferred();function B(){E.removeEventListener("DOMContentLoaded",B),C.removeEventListener("load",B),S.ready()}S.fn.ready=function(e){return F.then(e)["catch"](function(e){S.readyException(e)}),this},S.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--S.readyWait:S.isReady)||(S.isReady=!0)!==e&&0<--S.readyWait||F.resolveWith(E,[S])}}),S.ready.then=F.then,"complete"===E.readyState||"loading"!==E.readyState&&!E.documentElement.doScroll?C.setTimeout(S.ready):(E.addEventListener("DOMContentLoaded",B),C.addEventListener("load",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if("object"===w(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,m(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(S(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,"ms-").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=S.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;while(n--)delete r[t[n]]}(void 0===t||S.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!S.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,K=/[A-Z]/g;function Z(e,t,n){var r,i;if(void 0===n&&1===e.nodeType)if(r="data-"+t.replace(K,"-$&").toLowerCase(),"string"==typeof(n=e.getAttribute(r))){try{n="true"===(i=n)||"false"!==i&&("null"===i?null:i===+i+""?+i:J.test(i)?JSON.parse(i):i)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}S.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),S.fn.extend({data:function(n,e){var t,r,i,o=this[0],a=o&&o.attributes;if(void 0===n){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,"hasDataAttrs"))){t=a.length;while(t--)a[t]&&0===(r=a[t].name).indexOf("data-")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,"hasDataAttrs",!0)}return i}return"object"==typeof n?this.each(function(){Q.set(this,n)}):$(this,function(e){var t;if(o&&void 0===e)return void 0!==(t=Q.get(o,n))?t:void 0!==(t=Z(o,n))?t:void 0;this.each(function(){Q.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){Q.remove(this,e)})}}),S.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,S.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=S.queue(e,t),r=n.length,i=n.shift(),o=S._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,function(){S.dequeue(e,t)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Y.get(e,n)||Y.access(e,n,{empty:S.Callbacks("once memory").add(function(){Y.remove(e,[t+"queue",n])})})}}),S.fn.extend({queue:function(t,n){var e=2;return"string"!=typeof t&&(n=t,t="fx",e--),arguments.length<e?S.queue(this[0],t):void 0===n?this:this.each(function(){var e=S.queue(this,t,n);S._queueHooks(this,t),"fx"===t&&"inprogress"!==e[0]&&S.dequeue(this,t)})},dequeue:function(e){return this.each(function(){S.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=S.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};"string"!=typeof e&&(t=e,e=void 0),e=e||"fx";while(a--)(n=Y.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,te=new RegExp("^(?:([+-])=|)("+ee+")([a-z%]*)$","i"),ne=["Top","Right","Bottom","Left"],re=E.documentElement,ie=function(e){return S.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return S.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return"none"===(e=t||e).style.display||""===e.style.display&&ie(e)&&"none"===S.css(e,"display")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return S.css(e,t,"")},u=s(),l=n&&n[3]||(S.cssNumber[t]?"":"px"),c=e.nodeType&&(S.cssNumber[t]||"px"!==l&&+u)&&te.exec(S.css(e,t));if(c&&c[3]!==l){u/=2,l=l||c[3],c=+u||1;while(a--)S.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,S.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e,t){for(var n,r,i,o,a,s,u,l=[],c=0,f=e.length;c<f;c++)(r=e[c]).style&&(n=r.style.display,t?("none"===n&&(l[c]=Y.get(r,"display")||null,l[c]||(r.style.display="")),""===r.style.display&&ae(r)&&(l[c]=(u=a=o=void 0,a=(i=r).ownerDocument,s=i.nodeName,(u=ue[s])||(o=a.body.appendChild(a.createElement(s)),u=S.css(o,"display"),o.parentNode.removeChild(o),"none"===u&&(u="block"),ue[s]=u)))):"none"!==n&&(l[c]="none",Y.set(r,"display",n)));for(c=0;c<f;c++)null!=l[c]&&(e[c].style.display=l[c]);return e}S.fn.extend({show:function(){return le(this,!0)},hide:function(){return le(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){ae(this)?S(this).show():S(this).hide()})}});var ce,fe,pe=/^(?:checkbox|radio)$/i,de=/<([a-z][^\/\0>\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="<textarea>x</textarea>",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="<option></option>",y.option=!!ce.lastChild;var ge={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],"globalEval",!t||Y.get(t[n],"globalEval"))}ge.tbody=ge.tfoot=ge.colgroup=ge.caption=ge.thead,ge.th=ge.td,y.option||(ge.optgroup=ge.option=[1,"<select multiple='multiple'>","</select>"]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if("object"===w(o))S.merge(p,o.nodeType?[o]:o);else if(me.test(o)){a=a||f.appendChild(t.createElement("div")),s=(de.exec(o)||["",""])[1].toLowerCase(),u=ge[s]||ge._default,a.innerHTML=u[1]+S.htmlPrefilter(o)+u[2],c=u[0];while(c--)a=a.lastChild;S.merge(p,a.childNodes),(a=f.firstChild).textContent=""}else p.push(t.createTextNode(o));f.textContent="",d=0;while(o=p[d++])if(r&&-1<S.inArray(o,r))i&&i.push(o);else if(l=ie(o),a=ve(f.appendChild(o),"script"),l&&ye(a),n){c=0;while(o=a[c++])he.test(o.type||"")&&n.push(o)}return f}var be=/^([^.]*)(?:\.(.+)|)/;function we(){return!0}function Te(){return!1}function Ce(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ee(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ee(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Te;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return S().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=S.guid++)),e.each(function(){S.event.add(this,t,i,r,n)})}function Se(e,i,o){o?(Y.set(e,i,!1),S.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Y.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(S.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Y.set(this,i,r),t=o(this,i),this[i](),r!==(n=Y.get(this,i))||t?Y.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n&&n.value}else r.length&&(Y.set(this,i,{value:S.event.trigger(S.extend(r[0],S.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,i)&&S.event.add(e,i,we)}S.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(t);if(V(t)){n.handler&&(n=(o=n).handler,i=o.selector),i&&S.find.matchesSelector(re,i),n.guid||(n.guid=S.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof S&&S.event.triggered!==e.type?S.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(P)||[""]).length;while(l--)d=g=(s=be.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=S.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=S.event.special[d]||{},c=S.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&S.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),S.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(P)||[""]).length;while(l--)if(d=g=(s=be.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=S.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||S.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)S.event.remove(e,d+t[l],n,r,!0);S.isEmptyObject(u)&&Y.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=S.event.fix(e),l=(Y.get(this,"events")||Object.create(null))[u.type]||[],c=S.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){a=S.event.handlers.call(this,u,l),t=0;while((i=a[t++])&&!u.isPropagationStopped()){u.currentTarget=i.elem,n=0;while((o=i.handlers[n++])&&!u.isImmediatePropagationStopped())u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((S.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()))}return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&1<=e.button))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+" "]&&(a[i]=r.needsContext?-1<S(i,this).index(l):S.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(t,e){Object.defineProperty(S.Event.prototype,t,{enumerable:!0,configurable:!0,get:m(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[S.expando]?e:new S.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click",we),!1},trigger:function(e){var t=this||e;return pe.test(t.type)&&t.click&&A(t,"input")&&Se(t,"click"),!0},_default:function(e){var t=e.target;return pe.test(t.type)&&t.click&&A(t,"input")&&Y.get(t,"click")||A(t,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},S.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},S.Event=function(e,t){if(!(this instanceof S.Event))return new S.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?we:Te,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&S.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[S.expando]=!0},S.Event.prototype={constructor:S.Event,isDefaultPrevented:Te,isPropagationStopped:Te,isImmediatePropagationStopped:Te,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=we,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=we,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=we,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},S.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,"char":!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:!0},S.event.addProp),S.each({focus:"focusin",blur:"focusout"},function(e,t){S.event.special[e]={setup:function(){return Se(this,e,Ce),!1},trigger:function(){return Se(this,e),!0},_default:function(){return!0},delegateType:t}}),S.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,i){S.event.special[e]={delegateType:i,bindType:i,handle:function(e){var t,n=e.relatedTarget,r=e.handleObj;return n&&(n===this||S.contains(this,n))||(e.type=r.origType,t=r.handler.apply(this,arguments),e.type=i),t}}}),S.fn.extend({on:function(e,t,n,r){return Ee(this,e,t,n,r)},one:function(e,t,n,r){return Ee(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,S(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=Te),this.each(function(){S.event.remove(this,e,n,t)})}});var ke=/<script|<style|<link/i,Ae=/checked\s*(?:[^=]|=\s*.checked.)/i,Ne=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n<r;n++)S.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=S.extend({},o),Q.set(t,a))}}function He(n,r,i,o){r=g(r);var e,t,a,s,u,l,c=0,f=n.length,p=f-1,d=r[0],h=m(d);if(h||1<f&&"string"==typeof d&&!y.checkClone&&Ae.test(d))return n.each(function(e){var t=n.eq(e);h&&(r[0]=d.call(this,e,t.html())),He(t,r,i,o)});if(f&&(t=(e=xe(r,n[0].ownerDocument,!1,n,o)).firstChild,1===e.childNodes.length&&(e=t),t||o)){for(s=(a=S.map(ve(e,"script"),De)).length;c<f;c++)u=e,c!==p&&(u=S.clone(u,!0,!0),s&&S.merge(a,ve(u,"script"))),i.call(n[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,S.map(a,qe),c=0;c<s;c++)u=a[c],he.test(u.type||"")&&!Y.access(u,"globalEval")&&S.contains(l,u)&&(u.src&&"module"!==(u.type||"").toLowerCase()?S._evalUrl&&!u.noModule&&S._evalUrl(u.src,{nonce:u.nonce||u.getAttribute("nonce")},l):b(u.textContent.replace(Ne,""),u,l))}return n}function Oe(e,t,n){for(var r,i=t?S.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||S.cleanData(ve(r)),r.parentNode&&(n&&ie(r)&&ye(ve(r,"script")),r.parentNode.removeChild(r));return e}S.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=ie(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||S.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r<i;r++)s=o[r],u=a[r],void 0,"input"===(l=u.nodeName.toLowerCase())&&pe.test(s.type)?u.checked=s.checked:"input"!==l&&"textarea"!==l||(u.defaultValue=s.defaultValue);if(t)if(n)for(o=o||ve(e),a=a||ve(c),r=0,i=o.length;r<i;r++)Le(o[r],a[r]);else Le(e,c);return 0<(a=ve(c,"script")).length&&ye(a,!f&&ve(e,"script")),c},cleanData:function(e){for(var t,n,r,i=S.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?S.event.remove(n,r):S.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),S.fn.extend({detach:function(e){return Oe(this,e,!0)},remove:function(e){return Oe(this,e)},text:function(e){return $(this,function(e){return void 0===e?S.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return He(this,arguments,function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||je(this,e).appendChild(e)})},prepend:function(){return He(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=je(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return He(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(S.cleanData(ve(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return S.clone(this,e,t)})},html:function(e){return $(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ke.test(e)&&!ge[(de.exec(e)||["",""])[1].toLowerCase()]){e=S.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(S.cleanData(ve(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return He(this,arguments,function(e){var t=this.parentNode;S.inArray(this,n)<0&&(S.cleanData(ve(this)),t&&t.replaceChild(e,this))},n)}}),S.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,a){S.fn[e]=function(e){for(var t,n=[],r=S(e),i=r.length-1,o=0;o<=i;o++)t=o===i?this:this.clone(!0),S(r[o])[a](t),u.apply(n,t.get());return this.pushStack(n)}});var Pe=new RegExp("^("+ee+")(?!px)[a-z%]+$","i"),Re=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=C),t.getComputedStyle(e)},Me=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},Ie=new RegExp(ne.join("|"),"i");function We(e,t,n){var r,i,o,a,s=e.style;return(n=n||Re(e))&&(""!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=S.style(e,t)),!y.pixelBoxStyles()&&Pe.test(a)&&Ie.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+"":a}function Fe(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){u.style.cssText="position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0",l.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%",re.appendChild(u).appendChild(l);var e=C.getComputedStyle(l);n="1%"!==e.top,s=12===t(e.marginLeft),l.style.right="60%",o=36===t(e.right),r=36===t(e.width),l.style.position="absolute",i=12===t(l.offsetWidth/3),re.removeChild(u),l=null}}function t(e){return Math.round(parseFloat(e))}var n,r,i,o,a,s,u=E.createElement("div"),l=E.createElement("div");l.style&&(l.style.backgroundClip="content-box",l.cloneNode(!0).style.backgroundClip="",y.clearCloneStyle="content-box"===l.style.backgroundClip,S.extend(y,{boxSizingReliable:function(){return e(),r},pixelBoxStyles:function(){return e(),o},pixelPosition:function(){return e(),n},reliableMarginLeft:function(){return e(),s},scrollboxSize:function(){return e(),i},reliableTrDimensions:function(){var e,t,n,r;return null==a&&(e=E.createElement("table"),t=E.createElement("tr"),n=E.createElement("div"),e.style.cssText="position:absolute;left:-11111px;border-collapse:separate",t.style.cssText="border:1px solid",t.style.height="1px",n.style.height="9px",n.style.display="block",re.appendChild(e).appendChild(t).appendChild(n),r=C.getComputedStyle(t),a=parseInt(r.height,10)+parseInt(r.borderTopWidth,10)+parseInt(r.borderBottomWidth,10)===t.offsetHeight,re.removeChild(e)),a}}))}();var Be=["Webkit","Moz","ms"],$e=E.createElement("div").style,_e={};function ze(e){var t=S.cssProps[e]||_e[e];return t||(e in $e?e:_e[e]=function(e){var t=e[0].toUpperCase()+e.slice(1),n=Be.length;while(n--)if((e=Be[n]+t)in $e)return e}(e)||e)}var Ue=/^(none|table(?!-c[ea]).+)/,Xe=/^--/,Ve={position:"absolute",visibility:"hidden",display:"block"},Ge={letterSpacing:"0",fontWeight:"400"};function Ye(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||"px"):t}function Qe(e,t,n,r,i,o){var a="width"===t?1:0,s=0,u=0;if(n===(r?"border":"content"))return 0;for(;a<4;a+=2)"margin"===n&&(u+=S.css(e,n+ne[a],!0,i)),r?("content"===n&&(u-=S.css(e,"padding"+ne[a],!0,i)),"margin"!==n&&(u-=S.css(e,"border"+ne[a]+"Width",!0,i))):(u+=S.css(e,"padding"+ne[a],!0,i),"padding"!==n?u+=S.css(e,"border"+ne[a]+"Width",!0,i):s+=S.css(e,"border"+ne[a]+"Width",!0,i));return!r&&0<=o&&(u+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function Je(e,t,n){var r=Re(e),i=(!y.boxSizingReliable()||n)&&"border-box"===S.css(e,"boxSizing",!1,r),o=i,a=We(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Pe.test(a)){if(!n)return a;a="auto"}return(!y.boxSizingReliable()&&i||!y.reliableTrDimensions()&&A(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===S.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===S.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+Qe(e,t,n||(i?"border":"content"),o,r,a)+"px"}function Ke(e,t,n,r,i){return new Ke.prototype.init(e,t,n,r,i)}S.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=We(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Xe.test(t),l=e.style;if(u||(t=ze(s)),a=S.cssHooks[t]||S.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];"string"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||u||(n+=i&&i[3]||(S.cssNumber[s]?"":"px")),y.clearCloneStyle||""!==n||0!==t.indexOf("background")||(l[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Xe.test(t)||(t=ze(s)),(a=S.cssHooks[t]||S.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=We(e,t,r)),"normal"===i&&t in Ge&&(i=Ge[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),S.each(["height","width"],function(e,u){S.cssHooks[u]={get:function(e,t,n){if(t)return!Ue.test(S.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?Je(e,u,n):Me(e,Ve,function(){return Je(e,u,n)})},set:function(e,t,n){var r,i=Re(e),o=!y.scrollboxSize()&&"absolute"===i.position,a=(o||n)&&"border-box"===S.css(e,"boxSizing",!1,i),s=n?Qe(e,u,n,a,i):0;return a&&o&&(s-=Math.ceil(e["offset"+u[0].toUpperCase()+u.slice(1)]-parseFloat(i[u])-Qe(e,u,"border",!1,i)-.5)),s&&(r=te.exec(t))&&"px"!==(r[3]||"px")&&(e.style[u]=t,t=S.css(e,u)),Ye(0,t,s)}}}),S.cssHooks.marginLeft=Fe(y.reliableMarginLeft,function(e,t){if(t)return(parseFloat(We(e,"marginLeft"))||e.getBoundingClientRect().left-Me(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),S.each({margin:"",padding:"",border:"Width"},function(i,o){S.cssHooks[i+o]={expand:function(e){for(var t=0,n={},r="string"==typeof e?e.split(" "):[e];t<4;t++)n[i+ne[t]+o]=r[t]||r[t-2]||r[0];return n}},"margin"!==i&&(S.cssHooks[i+o].set=Ye)}),S.fn.extend({css:function(e,t){return $(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Re(e),i=t.length;a<i;a++)o[t[a]]=S.css(e,t[a],!1,r);return o}return void 0!==n?S.style(e,t,n):S.css(e,t)},e,t,1<arguments.length)}}),((S.Tween=Ke).prototype={constructor:Ke,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||S.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(S.cssNumber[n]?"":"px")},cur:function(){var e=Ke.propHooks[this.prop];return e&&e.get?e.get(this):Ke.propHooks._default.get(this)},run:function(e){var t,n=Ke.propHooks[this.prop];return this.options.duration?this.pos=t=S.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ke.propHooks._default.set(this),this}}).init.prototype=Ke.prototype,(Ke.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=S.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){S.fx.step[e.prop]?S.fx.step[e.prop](e):1!==e.elem.nodeType||!S.cssHooks[e.prop]&&null==e.elem.style[ze(e.prop)]?e.elem[e.prop]=e.now:S.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Ke.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},S.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},S.fx=Ke.prototype.init,S.fx.step={};var Ze,et,tt,nt,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function ot(){et&&(!1===E.hidden&&C.requestAnimationFrame?C.requestAnimationFrame(ot):C.setTimeout(ot,S.fx.interval),S.fx.tick())}function at(){return C.setTimeout(function(){Ze=void 0}),Ze=Date.now()}function st(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=ne[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function ut(e,t,n){for(var r,i=(lt.tweeners[t]||[]).concat(lt.tweeners["*"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function lt(o,e,t){var n,a,r=0,i=lt.prefilters.length,s=S.Deferred().always(function(){delete u.elem}),u=function(){if(a)return!1;for(var e=Ze||at(),t=Math.max(0,l.startTime+l.duration-e),n=1-(t/l.duration||0),r=0,i=l.tweens.length;r<i;r++)l.tweens[r].run(n);return s.notifyWith(o,[l,n,t]),n<1&&i?t:(i||s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l]),!1)},l=s.promise({elem:o,props:S.extend({},e),opts:S.extend(!0,{specialEasing:{},easing:S.easing._default},t),originalProperties:e,originalOptions:t,startTime:Ze||at(),duration:t.duration,tweens:[],createTween:function(e,t){var n=S.Tween(o,l.opts,e,t,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(n),n},stop:function(e){var t=0,n=e?l.tweens.length:0;if(a)return this;for(a=!0;t<n;t++)l.tweens[t].run(1);return e?(s.notifyWith(o,[l,1,0]),s.resolveWith(o,[l,e])):s.rejectWith(o,[l,e]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=S.cssHooks[r])&&"expand"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);r<i;r++)if(n=lt.prefilters[r].call(l,o,c,l.opts))return m(n.stop)&&(S._queueHooks(l.elem,l.opts.queue).stop=n.stop.bind(n)),n;return S.map(c,ut,l),m(l.opts.start)&&l.opts.start.call(o,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),S.fx.timer(S.extend(u,{elem:o,anim:l,queue:l.opts.queue})),l}S.Animation=S.extend(lt,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){m(e)?(t=e,e=["*"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],lt.tweeners[n]=lt.tweeners[n]||[],lt.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f="width"in t||"height"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,"fxshow");for(r in n.queue||(null==(a=S._queueHooks(e,"fx")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,S.queue(e,"fx").length||a.empty.fire()})})),t)if(i=t[r],rt.test(i)){if(delete t[r],o=o||"toggle"===i,i===(g?"hide":"show")){if("show"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||S.style(e,r)}if((u=!S.isEmptyObject(t))||!S.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,"display")),"none"===(c=S.css(e,"display"))&&(l?c=l:(le([e],!0),l=e.style.display||l,c=S.css(e,"display"),le([e]))),("inline"===c||"inline-block"===c&&null!=l)&&"none"===S.css(e,"float")&&(u||(p.done(function(){h.display=l}),null==l&&(c=h.display,l="none"===c?"":c)),h.display="inline-block")),n.overflow&&(h.overflow="hidden",p.always(function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]})),u=!1,d)u||(v?"hidden"in v&&(g=v.hidden):v=Y.access(e,"fxshow",{display:l}),o&&(v.hidden=!g),g&&le([e],!0),p.done(function(){for(r in g||le([e]),Y.remove(e,"fxshow"),d)S.style(e,r,d[r])})),u=ut(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?lt.prefilters.unshift(e):lt.prefilters.push(e)}}),S.speed=function(e,t,n){var r=e&&"object"==typeof e?S.extend({},e):{complete:n||!n&&t||m(e)&&e,duration:e,easing:n&&t||t&&!m(t)&&t};return S.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in S.fx.speeds?r.duration=S.fx.speeds[r.duration]:r.duration=S.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){m(r.old)&&r.old.call(this),r.queue&&S.dequeue(this,r.queue)},r},S.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(t,e,n,r){var i=S.isEmptyObject(t),o=S.speed(e,n,r),a=function(){var e=lt(this,S.extend({},t),o);(i||Y.get(this,"finish"))&&e.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(i,e,o){var a=function(e){var t=e.stop;delete e.stop,t(o)};return"string"!=typeof i&&(o=e,e=i,i=void 0),e&&this.queue(i||"fx",[]),this.each(function(){var e=!0,t=null!=i&&i+"queueHooks",n=S.timers,r=Y.get(this);if(t)r[t]&&r[t].stop&&a(r[t]);else for(t in r)r[t]&&r[t].stop&&it.test(t)&&a(r[t]);for(t=n.length;t--;)n[t].elem!==this||null!=i&&n[t].queue!==i||(n[t].anim.stop(o),e=!1,n.splice(t,1));!e&&o||S.dequeue(this,i)})},finish:function(a){return!1!==a&&(a=a||"fx"),this.each(function(){var e,t=Y.get(this),n=t[a+"queue"],r=t[a+"queueHooks"],i=S.timers,o=n?n.length:0;for(t.finish=!0,S.queue(this,a,[]),r&&r.stop&&r.stop.call(this,!0),e=i.length;e--;)i[e].elem===this&&i[e].queue===a&&(i[e].anim.stop(!0),i.splice(e,1));for(e=0;e<o;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),S.each(["toggle","show","hide"],function(e,r){var i=S.fn[r];S.fn[r]=function(e,t,n){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(st(r,!0),e,t,n)}}),S.each({slideDown:st("show"),slideUp:st("hide"),slideToggle:st("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,r){S.fn[e]=function(e,t,n){return this.animate(r,e,t,n)}}),S.timers=[],S.fx.tick=function(){var e,t=0,n=S.timers;for(Ze=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||S.fx.stop(),Ze=void 0},S.fx.timer=function(e){S.timers.push(e),S.fx.start()},S.fx.interval=13,S.fx.start=function(){et||(et=!0,ot())},S.fx.stop=function(){et=null},S.fx.speeds={slow:600,fast:200,_default:400},S.fn.delay=function(r,e){return r=S.fx&&S.fx.speeds[r]||r,e=e||"fx",this.queue(e,function(e,t){var n=C.setTimeout(e,r);t.stop=function(){C.clearTimeout(n)}})},tt=E.createElement("input"),nt=E.createElement("select").appendChild(E.createElement("option")),tt.type="checkbox",y.checkOn=""!==tt.value,y.optSelected=nt.selected,(tt=E.createElement("input")).value="t",tt.type="radio",y.radioValue="t"===tt.value;var ct,ft=S.expr.attrHandle;S.fn.extend({attr:function(e,t){return $(this,S.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){S.removeAttr(this,e)})}}),S.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return"undefined"==typeof e.getAttribute?S.prop(e,t,n):(1===o&&S.isXMLDoc(e)||(i=S.attrHooks[t.toLowerCase()]||(S.expr.match.bool.test(t)?ct:void 0)),void 0!==n?null===n?void S.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=S.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!y.radioValue&&"radio"===t&&A(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)while(n=i[r++])e.removeAttribute(n)}}),ct={set:function(e,t,n){return!1===t?S.removeAttr(e,n):e.setAttribute(n,n),n}},S.each(S.expr.match.bool.source.match(/\w+/g),function(e,t){var a=ft[t]||S.find.attr;ft[t]=function(e,t,n){var r,i,o=t.toLowerCase();return n||(i=ft[o],ft[o]=r,r=null!=a(e,t,n)?o:null,ft[o]=i),r}});var pt=/^(?:input|select|textarea|button)$/i,dt=/^(?:a|area)$/i;function ht(e){return(e.match(P)||[]).join(" ")}function gt(e){return e.getAttribute&&e.getAttribute("class")||""}function vt(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(P)||[]}S.fn.extend({prop:function(e,t){return $(this,S.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[S.propFix[e]||e]})}}),S.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&S.isXMLDoc(e)||(t=S.propFix[t]||t,i=S.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=S.find.attr(e,"tabindex");return t?parseInt(t,10):pt.test(e.nodeName)||dt.test(e.nodeName)&&e.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),y.optSelected||(S.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),S.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){S.propFix[this.toLowerCase()]=this}),S.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).addClass(t.call(this,e,gt(this)))});if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,u=0;if(m(t))return this.each(function(e){S(this).removeClass(t.call(this,e,gt(this)))});if(!arguments.length)return this.attr("class","");if((e=vt(t)).length)while(n=this[u++])if(i=gt(n),r=1===n.nodeType&&" "+ht(i)+" "){a=0;while(o=e[a++])while(-1<r.indexOf(" "+o+" "))r=r.replace(" "+o+" "," ");i!==(s=ht(r))&&n.setAttribute("class",s)}return this},toggleClass:function(i,t){var o=typeof i,a="string"===o||Array.isArray(i);return"boolean"==typeof t&&a?t?this.addClass(i):this.removeClass(i):m(i)?this.each(function(e){S(this).toggleClass(i.call(this,e,gt(this),t),t)}):this.each(function(){var e,t,n,r;if(a){t=0,n=S(this),r=vt(i);while(e=r[t++])n.hasClass(e)?n.removeClass(e):n.addClass(e)}else void 0!==i&&"boolean"!==o||((e=gt(this))&&Y.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===i?"":Y.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;t=" "+e+" ";while(n=this[r++])if(1===n.nodeType&&-1<(" "+ht(gt(n))+" ").indexOf(t))return!0;return!1}});var yt=/\r/g;S.fn.extend({val:function(n){var r,e,i,t=this[0];return arguments.length?(i=m(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=i?n.call(this,e,S(this).val()):n)?t="":"number"==typeof t?t+="":Array.isArray(t)&&(t=S.map(t,function(e){return null==e?"":e+""})),(r=S.valHooks[this.type]||S.valHooks[this.nodeName.toLowerCase()])&&"set"in r&&void 0!==r.set(this,t,"value")||(this.value=t))})):t?(r=S.valHooks[t.type]||S.valHooks[t.nodeName.toLowerCase()])&&"get"in r&&void 0!==(e=r.get(t,"value"))?e:"string"==typeof(e=t.value)?e.replace(yt,""):null==e?"":e:void 0}}),S.extend({valHooks:{option:{get:function(e){var t=S.find.attr(e,"value");return null!=t?t:ht(S.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,"optgroup"))){if(t=S(n).val(),a)return t;s.push(t)}return s},set:function(e,t){var n,r,i=e.options,o=S.makeArray(t),a=i.length;while(a--)((r=i[a]).selected=-1<S.inArray(S.valHooks.option.get(r),o))&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),S.each(["radio","checkbox"],function(){S.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<S.inArray(S(e).val(),t)}},y.checkOn||(S.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),y.focusin="onfocusin"in C;var mt=/^(?:focusinfocus|focusoutblur)$/,xt=function(e){e.stopPropagation()};S.extend(S.event,{trigger:function(e,t,n,r){var i,o,a,s,u,l,c,f,p=[n||E],d=v.call(e,"type")?e.type:e,h=v.call(e,"namespace")?e.namespace.split("."):[];if(o=f=a=n=n||E,3!==n.nodeType&&8!==n.nodeType&&!mt.test(d+S.event.triggered)&&(-1<d.indexOf(".")&&(d=(h=d.split(".")).shift(),h.sort()),u=d.indexOf(":")<0&&"on"+d,(e=e[S.expando]?e:new S.Event(d,"object"==typeof e&&e)).isTrigger=r?2:3,e.namespace=h.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:S.makeArray(t,[e]),c=S.event.special[d]||{},r||!c.trigger||!1!==c.trigger.apply(n,t))){if(!r&&!c.noBubble&&!x(n)){for(s=c.delegateType||d,mt.test(s+d)||(o=o.parentNode);o;o=o.parentNode)p.push(o),a=o;a===(n.ownerDocument||E)&&p.push(a.defaultView||a.parentWindow||C)}i=0;while((o=p[i++])&&!e.isPropagationStopped())f=o,e.type=1<i?s:c.bindType||d,(l=(Y.get(o,"events")||Object.create(null))[e.type]&&Y.get(o,"handle"))&&l.apply(o,t),(l=u&&o[u])&&l.apply&&V(o)&&(e.result=l.apply(o,t),!1===e.result&&e.preventDefault());return e.type=d,r||e.isDefaultPrevented()||c._default&&!1!==c._default.apply(p.pop(),t)||!V(n)||u&&m(n[d])&&!x(n)&&((a=n[u])&&(n[u]=null),S.event.triggered=d,e.isPropagationStopped()&&f.addEventListener(d,xt),n[d](),e.isPropagationStopped()&&f.removeEventListener(d,xt),S.event.triggered=void 0,a&&(n[u]=a)),e.result}},simulate:function(e,t,n){var r=S.extend(new S.Event,n,{type:e,isSimulated:!0});S.event.trigger(r,null,t)}}),S.fn.extend({trigger:function(e,t){return this.each(function(){S.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return S.event.trigger(e,t,n,!0)}}),y.focusin||S.each({focus:"focusin",blur:"focusout"},function(n,r){var i=function(e){S.event.simulate(r,e.target,S.event.fix(e))};S.event.special[r]={setup:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r);t||e.addEventListener(n,i,!0),Y.access(e,r,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this.document||this,t=Y.access(e,r)-1;t?Y.access(e,r,t):(e.removeEventListener(n,i,!0),Y.remove(e,r))}}});var bt=C.location,wt={guid:Date.now()},Tt=/\?/;S.parseXML=function(e){var t,n;if(!e||"string"!=typeof e)return null;try{t=(new C.DOMParser).parseFromString(e,"text/xml")}catch(e){}return n=t&&t.getElementsByTagName("parsererror")[0],t&&!n||S.error("Invalid XML: "+(n?S.map(n.childNodes,function(e){return e.textContent}).join("\n"):e)),t};var Ct=/\[\]$/,Et=/\r?\n/g,St=/^(?:submit|button|image|reset|file)$/i,kt=/^(?:input|select|textarea|keygen)/i;function At(n,e,r,i){var t;if(Array.isArray(e))S.each(e,function(e,t){r||Ct.test(n)?i(n,t):At(n+"["+("object"==typeof t&&null!=t?e:"")+"]",t,r,i)});else if(r||"object"!==w(e))i(n,e);else for(t in e)At(n+"["+t+"]",e[t],r,i)}S.param=function(e,t){var n,r=[],i=function(e,t){var n=m(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!S.isPlainObject(e))S.each(e,function(){i(this.name,this.value)});else for(n in e)At(n,e[n],t,i);return r.join("&")},S.fn.extend({serialize:function(){return S.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=S.prop(this,"elements");return e?S.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!S(this).is(":disabled")&&kt.test(this.nodeName)&&!St.test(e)&&(this.checked||!pe.test(e))}).map(function(e,t){var n=S(this).val();return null==n?null:Array.isArray(n)?S.map(n,function(e){return{name:t.name,value:e.replace(Et,"\r\n")}}):{name:t.name,value:n.replace(Et,"\r\n")}}).get()}});var Nt=/%20/g,jt=/#.*$/,Dt=/([?&])_=[^&]*/,qt=/^(.*?):[ \t]*([^\r\n]*)$/gm,Lt=/^(?:GET|HEAD)$/,Ht=/^\/\//,Ot={},Pt={},Rt="*/".concat("*"),Mt=E.createElement("a");function It(o){return function(e,t){"string"!=typeof e&&(t=e,e="*");var n,r=0,i=e.toLowerCase().match(P)||[];if(m(t))while(n=i[r++])"+"===n[0]?(n=n.slice(1)||"*",(o[n]=o[n]||[]).unshift(t)):(o[n]=o[n]||[]).push(t)}}function Wt(t,i,o,a){var s={},u=t===Pt;function l(e){var r;return s[e]=!0,S.each(t[e]||[],function(e,t){var n=t(i,o,a);return"string"!=typeof n||u||s[n]?u?!(r=n):void 0:(i.dataTypes.unshift(n),l(n),!1)}),r}return l(i.dataTypes[0])||!s["*"]&&l("*")}function Ft(e,t){var n,r,i=S.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&S.extend(!0,e,r),e}Mt.href=bt.href,S.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:bt.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(bt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Rt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":S.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Ft(Ft(e,S.ajaxSettings),t):Ft(S.ajaxSettings,e)},ajaxPrefilter:It(Ot),ajaxTransport:It(Pt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var c,f,p,n,d,r,h,g,i,o,v=S.ajaxSetup({},t),y=v.context||v,m=v.context&&(y.nodeType||y.jquery)?S(y):S.event,x=S.Deferred(),b=S.Callbacks("once memory"),w=v.statusCode||{},a={},s={},u="canceled",T={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n){n={};while(t=qt.exec(p))n[t[1].toLowerCase()+" "]=(n[t[1].toLowerCase()+" "]||[]).concat(t[2])}t=n[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,a[e]=t),this},overrideMimeType:function(e){return null==h&&(v.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)T.always(e[T.status]);else for(t in e)w[t]=[w[t],e[t]];return this},abort:function(e){var t=e||u;return c&&c.abort(t),l(0,t),this}};if(x.promise(T),v.url=((e||v.url||bt.href)+"").replace(Ht,bt.protocol+"//"),v.type=t.method||t.type||v.method||v.type,v.dataTypes=(v.dataType||"*").toLowerCase().match(P)||[""],null==v.crossDomain){r=E.createElement("a");try{r.href=v.url,r.href=r.href,v.crossDomain=Mt.protocol+"//"+Mt.host!=r.protocol+"//"+r.host}catch(e){v.crossDomain=!0}}if(v.data&&v.processData&&"string"!=typeof v.data&&(v.data=S.param(v.data,v.traditional)),Wt(Ot,v,t,T),h)return T;for(i in(g=S.event&&v.global)&&0==S.active++&&S.event.trigger("ajaxStart"),v.type=v.type.toUpperCase(),v.hasContent=!Lt.test(v.type),f=v.url.replace(jt,""),v.hasContent?v.data&&v.processData&&0===(v.contentType||"").indexOf("application/x-www-form-urlencoded")&&(v.data=v.data.replace(Nt,"+")):(o=v.url.slice(f.length),v.data&&(v.processData||"string"==typeof v.data)&&(f+=(Tt.test(f)?"&":"?")+v.data,delete v.data),!1===v.cache&&(f=f.replace(Dt,"$1"),o=(Tt.test(f)?"&":"?")+"_="+wt.guid+++o),v.url=f+o),v.ifModified&&(S.lastModified[f]&&T.setRequestHeader("If-Modified-Since",S.lastModified[f]),S.etag[f]&&T.setRequestHeader("If-None-Match",S.etag[f])),(v.data&&v.hasContent&&!1!==v.contentType||t.contentType)&&T.setRequestHeader("Content-Type",v.contentType),T.setRequestHeader("Accept",v.dataTypes[0]&&v.accepts[v.dataTypes[0]]?v.accepts[v.dataTypes[0]]+("*"!==v.dataTypes[0]?", "+Rt+"; q=0.01":""):v.accepts["*"]),v.headers)T.setRequestHeader(i,v.headers[i]);if(v.beforeSend&&(!1===v.beforeSend.call(y,T,v)||h))return T.abort();if(u="abort",b.add(v.complete),T.done(v.success),T.fail(v.error),c=Wt(Pt,v,t,T)){if(T.readyState=1,g&&m.trigger("ajaxSend",[T,v]),h)return T;v.async&&0<v.timeout&&(d=C.setTimeout(function(){T.abort("timeout")},v.timeout));try{h=!1,c.send(a,l)}catch(e){if(h)throw e;l(-1,e)}}else l(-1,"No Transport");function l(e,t,n,r){var i,o,a,s,u,l=t;h||(h=!0,d&&C.clearTimeout(d),c=void 0,p=r||"",T.readyState=0<e?4:0,i=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var r,i,o,a,s=e.contents,u=e.dataTypes;while("*"===u[0])u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+" "+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(v,T,n)),!i&&-1<S.inArray("script",v.dataTypes)&&S.inArray("json",v.dataTypes)<0&&(v.converters["text script"]=function(){}),s=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];o=c.shift();while(o)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if("*"===o)o=u;else if("*"!==u&&u!==o){if(!(a=l[u+" "+o]||l["* "+o]))for(i in l)if((s=i.split(" "))[1]===o&&(a=l[u+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e["throws"])t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+u+" to "+o}}}return{state:"success",data:t}}(v,s,T,i),i?(v.ifModified&&((u=T.getResponseHeader("Last-Modified"))&&(S.lastModified[f]=u),(u=T.getResponseHeader("etag"))&&(S.etag[f]=u)),204===e||"HEAD"===v.type?l="nocontent":304===e?l="notmodified":(l=s.state,o=s.data,i=!(a=s.error))):(a=l,!e&&l||(l="error",e<0&&(e=0))),T.status=e,T.statusText=(t||l)+"",i?x.resolveWith(y,[o,l,T]):x.rejectWith(y,[T,l,a]),T.statusCode(w),w=void 0,g&&m.trigger(i?"ajaxSuccess":"ajaxError",[T,v,i?o:a]),b.fireWith(y,[T,l]),g&&(m.trigger("ajaxComplete",[T,v]),--S.active||S.event.trigger("ajaxStop")))}return T},getJSON:function(e,t,n){return S.get(e,t,n,"json")},getScript:function(e,t){return S.get(e,void 0,t,"script")}}),S.each(["get","post"],function(e,i){S[i]=function(e,t,n,r){return m(t)&&(r=r||n,n=t,t=void 0),S.ajax(S.extend({url:e,type:i,dataType:r,data:t,success:n},S.isPlainObject(e)&&e))}}),S.ajaxPrefilter(function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")}),S._evalUrl=function(e,t,n){return S.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){S.globalEval(e,t,n)}})},S.fn.extend({wrapAll:function(e){var t;return this[0]&&(m(e)&&(e=e.call(this[0])),t=S(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstElementChild)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(n){return m(n)?this.each(function(e){S(this).wrapInner(n.call(this,e))}):this.each(function(){var e=S(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=m(t);return this.each(function(e){S(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not("body").each(function(){S(this).replaceWith(this.childNodes)}),this}}),S.expr.pseudos.hidden=function(e){return!S.expr.pseudos.visible(e)},S.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},S.ajaxSettings.xhr=function(){try{return new C.XMLHttpRequest}catch(e){}};var Bt={0:200,1223:204},$t=S.ajaxSettings.xhr();y.cors=!!$t&&"withCredentials"in $t,y.ajax=$t=!!$t,S.ajaxTransport(function(i){var o,a;if(y.cors||$t&&!i.crossDomain)return{send:function(e,t){var n,r=i.xhr();if(r.open(i.type,i.url,i.async,i.username,i.password),i.xhrFields)for(n in i.xhrFields)r[n]=i.xhrFields[n];for(n in i.mimeType&&r.overrideMimeType&&r.overrideMimeType(i.mimeType),i.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest"),e)r.setRequestHeader(n,e[n]);o=function(e){return function(){o&&(o=a=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===e?r.abort():"error"===e?"number"!=typeof r.status?t(0,"error"):t(r.status,r.statusText):t(Bt[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=o(),a=r.onerror=r.ontimeout=o("error"),void 0!==r.onabort?r.onabort=a:r.onreadystatechange=function(){4===r.readyState&&C.setTimeout(function(){o&&a()})},o=o("abort");try{r.send(i.hasContent&&i.data||null)}catch(e){if(o)throw e}},abort:function(){o&&o()}}}),S.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),S.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return S.globalEval(e),e}}}),S.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),S.ajaxTransport("script",function(n){var r,i;if(n.crossDomain||n.scriptAttrs)return{send:function(e,t){r=S("<script>").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="<form></form><form></form>",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1<s&&(r=ht(e.slice(s)),e=e.slice(0,s)),m(t)?(n=t,t=void 0):t&&"object"==typeof t&&(i="POST"),0<a.length&&S.ajax({url:e,type:i||"GET",dataType:"html",data:t}).done(function(e){o=arguments,a.html(r?S("<div>").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}});var Xt=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;S.proxy=function(e,t){var n,r,i;if("string"==typeof t&&(n=e[t],t=e,e=n),m(e))return r=s.call(arguments,2),(i=function(){return e.apply(t||this,r.concat(s.call(arguments)))}).guid=e.guid=e.guid||S.guid++,i},S.holdReady=function(e){e?S.readyWait++:S.ready(!0)},S.isArray=Array.isArray,S.parseJSON=JSON.parse,S.nodeName=A,S.isFunction=m,S.isWindow=x,S.camelCase=X,S.type=w,S.now=Date.now,S.isNumeric=function(e){var t=S.type(e);return("number"===t||"string"===t)&&!isNaN(e-parseFloat(e))},S.trim=function(e){return null==e?"":(e+"").replace(Xt,"")},"function"==typeof define&&define.amd&&define("jquery",[],function(){return S});var Vt=C.jQuery,Gt=C.$;return S.noConflict=function(e){return C.$===S&&(C.$=Gt),e&&C.jQuery===S&&(C.jQuery=Vt),S},"undefined"==typeof e&&(C.jQuery=C.$=S),S});
+/*! jQuery UI - v1.12.1 - 2019-01-27
+* http://jqueryui.com
+* Includes: widget.js, position.js, data.js, disable-selection.js, focusable.js, form-reset-mixin.js, jquery-1-7.js, keycode.js, labels.js, scroll-parent.js, tabbable.js, unique-id.js, widgets/resizable.js, widgets/mouse.js
+* Copyright jQuery Foundation and other contributors; Licensed MIT */
+
+(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)})(function(t){function e(t){for(var e=t.css("visibility");"inherit"===e;)t=t.parent(),e=t.css("visibility");return"hidden"!==e}t.ui=t.ui||{},t.ui.version="1.12.1";var i=0,s=Array.prototype.slice;t.cleanData=function(e){return function(i){var s,n,o;for(o=0;null!=(n=i[o]);o++)try{s=t._data(n,"events"),s&&s.remove&&t(n).triggerHandler("remove")}catch(a){}e(i)}}(t.cleanData),t.widget=function(e,i,s){var n,o,a,r={},h=e.split(".")[0];e=e.split(".")[1];var l=h+"-"+e;return s||(s=i,i=t.Widget),t.isArray(s)&&(s=t.extend.apply(null,[{}].concat(s))),t.expr[":"][l.toLowerCase()]=function(e){return!!t.data(e,l)},t[h]=t[h]||{},n=t[h][e],o=t[h][e]=function(t,e){return this._createWidget?(arguments.length&&this._createWidget(t,e),void 0):new o(t,e)},t.extend(o,n,{version:s.version,_proto:t.extend({},s),_childConstructors:[]}),a=new i,a.options=t.widget.extend({},a.options),t.each(s,function(e,s){return t.isFunction(s)?(r[e]=function(){function t(){return i.prototype[e].apply(this,arguments)}function n(t){return i.prototype[e].apply(this,t)}return function(){var e,i=this._super,o=this._superApply;return this._super=t,this._superApply=n,e=s.apply(this,arguments),this._super=i,this._superApply=o,e}}(),void 0):(r[e]=s,void 0)}),o.prototype=t.widget.extend(a,{widgetEventPrefix:n?a.widgetEventPrefix||e:e},r,{constructor:o,namespace:h,widgetName:e,widgetFullName:l}),n?(t.each(n._childConstructors,function(e,i){var s=i.prototype;t.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete n._childConstructors):i._childConstructors.push(o),t.widget.bridge(e,o),o},t.widget.extend=function(e){for(var i,n,o=s.call(arguments,1),a=0,r=o.length;r>a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),h=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(h=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):h=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),h}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+o.eventNamespace,c=h[2];c?n.on(l,c,r):i.on(l,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,h=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.width<e.element[0].scrollWidth,o="scroll"===s||"auto"===s&&e.height<e.element[0].scrollHeight;return{width:o?t.position.scrollbarWidth():0,height:n?t.position.scrollbarWidth():0}},getWithinInfo:function(e){var i=t(e||window),s=t.isWindow(i[0]),n=!!i[0]&&9===i[0].nodeType,o=!s&&!n;return{element:i,isWindow:s,isDocument:n,offset:o?t(e).offset():{left:0,top:0},scrollLeft:i.scrollLeft(),scrollTop:i.scrollTop(),width:i.outerWidth(),height:i.outerHeight()}}},t.fn.position=function(n){if(!n||!n.of)return d.apply(this,arguments);n=t.extend({},n);var u,p,f,m,g,_,v=t(n.of),b=t.position.getWithinInfo(n.within),y=t.position.getScrollInfo(b),w=(n.collision||"flip").split(" "),x={};return _=s(v),v[0].preventDefault&&(n.at="left top"),p=_.width,f=_.height,m=_.offset,g=t.extend({},m),t.each(["my","at"],function(){var t,e,i=(n[this]||"").split(" ");1===i.length&&(i=r.test(i[0])?i.concat(["center"]):h.test(i[0])?["center"].concat(i):["center","center"]),i[0]=r.test(i[0])?i[0]:"center",i[1]=h.test(i[1])?i[1]:"center",t=l.exec(i[0]),e=l.exec(i[1]),x[this]=[t?t[0]:0,e?e[0]:0],n[this]=[c.exec(i[0])[0],c.exec(i[1])[0]]}),1===w.length&&(w[1]=w[0]),"right"===n.at[0]?g.left+=p:"center"===n.at[0]&&(g.left+=p/2),"bottom"===n.at[1]?g.top+=f:"center"===n.at[1]&&(g.top+=f/2),u=e(x.at,p,f),g.left+=u[0],g.top+=u[1],this.each(function(){var s,r,h=t(this),l=h.outerWidth(),c=h.outerHeight(),d=i(this,"marginLeft"),_=i(this,"marginTop"),k=l+d+i(this,"marginRight")+y.width,C=c+_+i(this,"marginBottom")+y.height,D=t.extend({},g),T=e(x.my,h.outerWidth(),h.outerHeight());"right"===n.my[0]?D.left-=l:"center"===n.my[0]&&(D.left-=l/2),"bottom"===n.my[1]?D.top-=c:"center"===n.my[1]&&(D.top-=c/2),D.left+=T[0],D.top+=T[1],s={marginLeft:d,marginTop:_},t.each(["left","top"],function(e,i){t.ui.position[w[e]]&&t.ui.position[w[e]][i](D,{targetWidth:p,targetHeight:f,elemWidth:l,elemHeight:c,collisionPosition:s,collisionWidth:k,collisionHeight:C,offset:[u[0]+T[0],u[1]+T[1]],my:n.my,at:n.at,within:b,elem:h})}),n.using&&(r=function(t){var e=m.left-D.left,i=e+p-l,s=m.top-D.top,r=s+f-c,u={target:{element:v,left:m.left,top:m.top,width:p,height:f},element:{element:h,left:D.left,top:D.top,width:l,height:c},horizontal:0>i?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};l>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),h.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,h=n-r,l=r+e.collisionWidth-a-n;e.collisionWidth>a?h>0&&0>=l?(i=t.left+h+e.collisionWidth-a-n,t.left+=h-i):t.left=l>0&&0>=h?n:h>l?n+a-e.collisionWidth:n:h>0?t.left+=h:l>0?t.left-=l:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,h=n-r,l=r+e.collisionHeight-a-n;e.collisionHeight>a?h>0&&0>=l?(i=t.top+h+e.collisionHeight-a-n,t.top+=h-i):t.top=l>0&&0>=h?n:h>l?n+a-e.collisionHeight:n:h>0?t.top+=h:l>0?t.top-=l:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=t.left-e.collisionPosition.marginLeft,c=l-h,u=l+e.collisionWidth-r-h,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-h,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=t.top-e.collisionPosition.marginTop,c=l-h,u=l+e.collisionHeight-r-h,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,m=-2*e.offset[1];0>c?(s=t.top+p+f+m+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+m)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+m-h,(i>0||u>a(i))&&(t.top+=p+f+m))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,h,l=i.nodeName.toLowerCase();return"area"===l?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(l)?(r=!i.disabled,r&&(h=t(i).closest("fieldset")[0],h&&(r=!h.disabled))):r="a"===l?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("<div class='ui-wrapper' style='overflow: hidden;'></div>").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("<div>"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,h=this._change[o];return this._updatePrevProperties(),h?(i=h.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,h=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(a,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidth<t.width,n=this._isNumber(t.height)&&e.maxHeight&&e.maxHeight<t.height,o=this._isNumber(t.width)&&e.minWidth&&e.minWidth>t.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,h=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=r-e.minWidth),s&&l&&(t.left=r-e.maxWidth),a&&c&&(t.top=h-e.minHeight),n&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("<div style='overflow:hidden;'></div>"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element
+},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-a},l=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,h=t(this).resizable("instance"),l=h.options,c=h.element,u=l.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(h.containerElement=t(d),/document/.test(u)||u===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=h._num(e.css("padding"+s))}),h.containerOffset=e.offset(),h.containerPosition=e.position(),h.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,o=h.containerSize.width,a=h._hasScroll(d,"left")?d.scrollWidth:o,r=h._hasScroll(d)?d.scrollHeight:n,h.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,h=a.containerOffset,l=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(a._helper?h.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-h.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?h.left:0),l.top<(a._helper?h.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-h.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?h.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-h.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-h.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),h=a.outerWidth()-e.sizeDiff.width,l=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,c=h[1]||1,u=Math.round((n.width-o.width)/l)*l,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=h,_&&(p+=l),v&&(f+=c),m&&(p-=l),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-l)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-l>0?(i.size.width=p,i.position.left=a.left-u):(p=l-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});/**
+ * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler
+ * Licensed under MIT
+ * @author Ariel Flesler
+ * @version 2.1.2
+ */
+;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1<b.axis.length;u&&(d/=2);b.offset=h(b.offset);b.over=h(b.over);return this.each(function(){function k(a){var k=$.extend({},b,{queue:!0,duration:d,complete:a&&function(){a.call(q,e,b)}});r.animate(f,k)}if(null!==a){var l=n(this),q=l?this.contentWindow||window:this,r=$(q),e=a,f={},t;switch(typeof e){case "number":case "string":if(/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(e)){e= h(e);break}e=l?$(e):$(e,q);case "object":if(e.length===0)return;if(e.is||e.style)t=(e=$(e)).offset()}var v=$.isFunction(b.offset)&&b.offset(q,e)||b.offset;$.each(b.axis.split(""),function(a,c){var d="x"===c?"Left":"Top",m=d.toLowerCase(),g="scroll"+d,h=r[g](),n=p.max(q,c);t?(f[g]=t[m]+(l?0:h-r.offset()[m]),b.margin&&(f[g]-=parseInt(e.css("margin"+d),10)||0,f[g]-=parseInt(e.css("border"+d+"Width"),10)||0),f[g]+=v[m]||0,b.over[m]&&(f[g]+=e["x"===c?"width":"height"]()*b.over[m])):(d=e[m],f[g]=d.slice&& "%"===d.slice(-1)?parseFloat(d)/100*n:d);b.limit&&/^\d+$/.test(f[g])&&(f[g]=0>=f[g]?0:Math.min(f[g],n));!a&&1<b.axis.length&&(h===f[g]?f={}:u&&(k(b.onAfterFirst),f={}))});k(b.onAfter)}})};p.max=function(a,d){var b="x"===d?"Width":"Height",h="scroll"+b;if(!n(a))return a[h]-$(a)[b.toLowerCase()]();var b="client"+b,k=a.ownerDocument||a.document,l=k.documentElement,k=k.body;return Math.max(l[h],k[h])-Math.min(l[b],k[b])};$.Tween.propHooks.scrollLeft=$.Tween.propHooks.scrollTop={get:function(a){return $(a.elem)[a.prop]()}, set:function(a){var d=this.get(a);if(a.options.interrupt&&a._last&&a._last!==d)return $(a.elem).stop();var b=Math.round(a.now);d!==b&&($(a.elem)[a.prop](b),a._last=this.get(a))}};return p});
+/*!
+ PowerTip v1.3.1 (2018-04-15)
+ https://stevenbenner.github.io/jquery-powertip/
+ Copyright (c) 2018 Steven Benner (http://stevenbenner.com/).
+ Released under MIT license.
+ https://raw.github.com/stevenbenner/jquery-powertip/master/LICENSE.txt
+*/
+(function(root,factory){if(typeof define==="function"&&define.amd){define(["jquery"],factory)}else if(typeof module==="object"&&module.exports){module.exports=factory(require("jquery"))}else{factory(root.jQuery)}})(this,function($){var $document=$(document),$window=$(window),$body=$("body");var DATA_DISPLAYCONTROLLER="displayController",DATA_HASACTIVEHOVER="hasActiveHover",DATA_FORCEDOPEN="forcedOpen",DATA_HASMOUSEMOVE="hasMouseMove",DATA_MOUSEONTOTIP="mouseOnToPopup",DATA_ORIGINALTITLE="originalTitle",DATA_POWERTIP="powertip",DATA_POWERTIPJQ="powertipjq",DATA_POWERTIPTARGET="powertiptarget",EVENT_NAMESPACE=".powertip",RAD2DEG=180/Math.PI,MOUSE_EVENTS=["click","dblclick","mousedown","mouseup","mousemove","mouseover","mouseout","mouseenter","mouseleave","contextmenu"];var session={tooltips:null,isTipOpen:false,isFixedTipOpen:false,isClosing:false,tipOpenImminent:false,activeHover:null,currentX:0,currentY:0,previousX:0,previousY:0,desyncTimeout:null,closeDelayTimeout:null,mouseTrackingActive:false,delayInProgress:false,windowWidth:0,windowHeight:0,scrollTop:0,scrollLeft:0};var Collision={none:0,top:1,bottom:2,left:4,right:8};$.fn.powerTip=function(opts,arg){var targetElements=this,options,tipController;if(!targetElements.length){return targetElements}if($.type(opts)==="string"&&$.powerTip[opts]){return $.powerTip[opts].call(targetElements,targetElements,arg)}options=$.extend({},$.fn.powerTip.defaults,opts);tipController=new TooltipController(options);initTracking();targetElements.each(function elementSetup(){var $this=$(this),dataPowertip=$this.data(DATA_POWERTIP),dataElem=$this.data(DATA_POWERTIPJQ),dataTarget=$this.data(DATA_POWERTIPTARGET),title=$this.attr("title");if(!dataPowertip&&!dataTarget&&!dataElem&&title){$this.data(DATA_POWERTIP,title);$this.data(DATA_ORIGINALTITLE,title);$this.removeAttr("title")}$this.data(DATA_DISPLAYCONTROLLER,new DisplayController($this,options,tipController))});if(!options.manual){$.each(options.openEvents,function(idx,evt){if($.inArray(evt,options.closeEvents)>-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference<options.intentSensitivity){cancelClose();closeAnyDelayed();tipController.showTip(element)}else{session.previousX=session.currentX;session.previousY=session.currentY;openTooltip()}}function cancelTimer(stopClose){hoverTimer=clearTimeout(hoverTimer);if(session.closeDelayTimeout&&myCloseDelay===session.closeDelayTimeout||stopClose){cancelClose()}}function cancelClose(){session.closeDelayTimeout=clearTimeout(session.closeDelayTimeout);session.delayInProgress=false}function closeAnyDelayed(){if(session.delayInProgress&&session.activeHover&&!session.activeHover.is(element)){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide(true)}}function repositionTooltip(){tipController.resetPosition(element)}this.show=openTooltip;this.hide=closeTooltip;this.cancel=cancelTimer;this.resetPosition=repositionTooltip}function PlacementCalculator(){function computePlacementCoords(element,placement,tipWidth,tipHeight,offset){var placementBase=placement.split("-")[0],coords=new CSSCoordinates,position;if(isSvgElement(element)){position=getSvgPlacement(element,placementBase)}else{position=getHtmlPlacement(element,placementBase)}switch(placement){case"n":coords.set("left",position.left-tipWidth/2);coords.set("bottom",session.windowHeight-position.top+offset);break;case"e":coords.set("left",position.left+offset);coords.set("top",position.top-tipHeight/2);break;case"s":coords.set("left",position.left-tipWidth/2);coords.set("top",position.top+offset);break;case"w":coords.set("top",position.top-tipHeight/2);coords.set("right",session.windowWidth-position.left+offset);break;case"nw":coords.set("bottom",session.windowHeight-position.top+offset);coords.set("right",session.windowWidth-position.left-20);break;case"nw-alt":coords.set("left",position.left);coords.set("bottom",session.windowHeight-position.top+offset);break;case"ne":coords.set("left",position.left-20);coords.set("bottom",session.windowHeight-position.top+offset);break;case"ne-alt":coords.set("bottom",session.windowHeight-position.top+offset);coords.set("right",session.windowWidth-position.left);break;case"sw":coords.set("top",position.top+offset);coords.set("right",session.windowWidth-position.left-20);break;case"sw-alt":coords.set("left",position.left);coords.set("top",position.top+offset);break;case"se":coords.set("left",position.left-20);coords.set("top",position.top+offset);break;case"se-alt":coords.set("top",position.top+offset);coords.set("right",session.windowWidth-position.left);break}return coords}function getHtmlPlacement(element,placement){var objectOffset=element.offset(),objectWidth=element.outerWidth(),objectHeight=element.outerHeight(),left,top;switch(placement){case"n":left=objectOffset.left+objectWidth/2;top=objectOffset.top;break;case"e":left=objectOffset.left+objectWidth;top=objectOffset.top+objectHeight/2;break;case"s":left=objectOffset.left+objectWidth/2;top=objectOffset.top+objectHeight;break;case"w":left=objectOffset.left;top=objectOffset.top+objectHeight/2;break;case"nw":left=objectOffset.left;top=objectOffset.top;break;case"ne":left=objectOffset.left+objectWidth;top=objectOffset.top;break;case"sw":left=objectOffset.left;top=objectOffset.top+objectHeight;break;case"se":left=objectOffset.left+objectWidth;top=objectOffset.top+objectHeight;break}return{top:top,left:left}}function getSvgPlacement(element,placement){var svgElement=element.closest("svg")[0],domElement=element[0],point=svgElement.createSVGPoint(),boundingBox=domElement.getBBox(),matrix=domElement.getScreenCTM(),halfWidth=boundingBox.width/2,halfHeight=boundingBox.height/2,placements=[],placementKeys=["nw","n","ne","e","se","s","sw","w"],coords,rotation,steps,x;function pushPlacement(){placements.push(point.matrixTransform(matrix))}point.x=boundingBox.x;point.y=boundingBox.y;pushPlacement();point.x+=halfWidth;pushPlacement();point.x+=halfWidth;pushPlacement();point.y+=halfHeight;pushPlacement();point.y+=halfHeight;pushPlacement();point.x-=halfWidth;pushPlacement();point.x-=halfWidth;pushPlacement();point.y-=halfHeight;pushPlacement();if(placements[0].y!==placements[1].y||placements[0].x!==placements[7].x){rotation=Math.atan2(matrix.b,matrix.a)*RAD2DEG;steps=Math.ceil((rotation%360-22.5)/45);if(steps<1){steps+=8}while(steps--){placementKeys.push(placementKeys.shift())}}for(x=0;x<placements.length;x++){if(placementKeys[x]===placement){coords=placements[x];break}}return{top:coords.y+session.scrollTop,left:coords.x+session.scrollLeft}}this.compute=computePlacementCoords}function TooltipController(options){var placementCalculator=new PlacementCalculator,tipElement=$("#"+options.popupId);if(tipElement.length===0){tipElement=$("<div/>",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.top<viewportTop||Math.abs(coords.bottom-session.windowHeight)-elementHeight<viewportTop){collisions|=Collision.top}if(coords.top+elementHeight>viewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.left<viewportLeft||coords.right+elementWidth>viewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right<viewportLeft){collisions|=Collision.right}return collisions}function countFlags(value){var count=0;while(value){value&=value-1;count++}return count}return $.powerTip});/*!
+ * jQuery UI Touch Punch 0.2.3
+ *
+ * Copyright 2011–2014, Dave Furfero
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ *
+ * Depends:
+ *  jquery.ui.widget.js
+ *  jquery.ui.mouse.js
+ */
+!function(a){function f(a,b){if(!(a.originalEvent.touches.length>1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017
+ * http://www.smartmenus.org/
+ * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("<span/>").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('<div class="sm-jquery-disable-overlay"/>').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('<span class="scroll-up"><span class="scroll-up-arrow"></span></span>')[0],$('<span class="scroll-down"><span class="scroll-down-arrow"></span></span>')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y<o.upEnd)&&a.eq(o.up?1:0).show(),o.y==n)mouse&&a.eq(o.up?0:1).hide(),this.menuScrollStop(t);else if(!e){this.opts.scrollAccelerate&&o.step<this.opts.scrollStep&&(o.step+=.2);var h=this;this.scrollTimeout=requestAnimationFrame(function(){h.menuScroll(t)})}},menuScrollMousewheel:function(t,e){if(this.getClosestMenu(e.target)==t[0]){e=e.originalEvent;var i=(e.wheelDelta||-e.detail)>0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$});
\ No newline at end of file
diff --git a/doc/html/json__helpers_8cpp.html b/doc/html/json__helpers_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..15b07fb956436dbf084beba46778118a1edca8ed
--- /dev/null
+++ b/doc/html/json__helpers_8cpp.html
@@ -0,0 +1,285 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/json_helpers.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('json__helpers_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle"><div class="title">json_helpers.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="json__helpers_8h_source.html">json_helpers.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>&quot;</code><br />
+</div>
+<p><a href="json__helpers_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a434c4f67044a7cc0f874ef0f5bf55b22"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a434c4f67044a7cc0f874ef0f5bf55b22"><td class="memTemplItemLeft" align="right" valign="top">web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="json__helpers_8cpp.html#a434c4f67044a7cc0f874ef0f5bf55b22">SOIL::to_json&lt; std::string &gt;</a> (const std::string &amp;value)</td></tr>
+<tr class="separator:a434c4f67044a7cc0f874ef0f5bf55b22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10a05ce00d314258ffb9c6b536c1bf95"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a10a05ce00d314258ffb9c6b536c1bf95"><td class="memTemplItemLeft" align="right" valign="top">web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="json__helpers_8cpp.html#a10a05ce00d314258ffb9c6b536c1bf95">SOIL::to_json&lt; SOIL::TIME &gt;</a> (const <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &amp;value)</td></tr>
+<tr class="separator:a10a05ce00d314258ffb9c6b536c1bf95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ae5f67d92f7f1c13b8c5f816640b887"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a6ae5f67d92f7f1c13b8c5f816640b887"><td class="memTemplItemLeft" align="right" valign="top">web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="json__helpers_8cpp.html#a6ae5f67d92f7f1c13b8c5f816640b887">SOIL::to_json&lt; SOIL::ENUM &gt;</a> (const <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &amp;value)</td></tr>
+<tr class="separator:a6ae5f67d92f7f1c13b8c5f816640b887"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae694c8a60db24c08de0a3a22ef12a40"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:aae694c8a60db24c08de0a3a22ef12a40"><td class="memTemplItemLeft" align="right" valign="top">web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="json__helpers_8cpp.html#aae694c8a60db24c08de0a3a22ef12a40">SOIL::to_json&lt; SOIL::BOOL &gt;</a> (const bool &amp;value)</td></tr>
+<tr class="separator:aae694c8a60db24c08de0a3a22ef12a40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9769894e25cf77bdd6aaea440439d6c6"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a9769894e25cf77bdd6aaea440439d6c6"><td class="memTemplItemLeft" align="right" valign="top">std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="json__helpers_8cpp.html#a9769894e25cf77bdd6aaea440439d6c6">SOIL::to_value&lt; std::string &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:a9769894e25cf77bdd6aaea440439d6c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a682bf7d67c51ddd6da804bfd2416d99d"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a682bf7d67c51ddd6da804bfd2416d99d"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="json__helpers_8cpp.html#a682bf7d67c51ddd6da804bfd2416d99d">SOIL::to_value&lt; SOIL::TIME &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:a682bf7d67c51ddd6da804bfd2416d99d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab40adce50ce6a2a1da1f33a133e674b8"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:ab40adce50ce6a2a1da1f33a133e674b8"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="json__helpers_8cpp.html#ab40adce50ce6a2a1da1f33a133e674b8">SOIL::to_value&lt; SOIL::ENUM &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:ab40adce50ce6a2a1da1f33a133e674b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aae694c8a60db24c08de0a3a22ef12a40" name="aae694c8a60db24c08de0a3a22ef12a40"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae694c8a60db24c08de0a3a22ef12a40">&#9670;&nbsp;</a></span>SOIL::to_json&lt; SOIL::BOOL &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">SOIL::BOOL</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const bool &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00047">47</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a6ae5f67d92f7f1c13b8c5f816640b887" name="a6ae5f67d92f7f1c13b8c5f816640b887"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ae5f67d92f7f1c13b8c5f816640b887">&#9670;&nbsp;</a></span>SOIL::to_json&lt; SOIL::ENUM &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00041">41</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a10a05ce00d314258ffb9c6b536c1bf95" name="a10a05ce00d314258ffb9c6b536c1bf95"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10a05ce00d314258ffb9c6b536c1bf95">&#9670;&nbsp;</a></span>SOIL::to_json&lt; SOIL::TIME &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00035">35</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a434c4f67044a7cc0f874ef0f5bf55b22" name="a434c4f67044a7cc0f874ef0f5bf55b22"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a434c4f67044a7cc0f874ef0f5bf55b22">&#9670;&nbsp;</a></span>SOIL::to_json&lt; std::string &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; std::string &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00029">29</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ab40adce50ce6a2a1da1f33a133e674b8" name="ab40adce50ce6a2a1da1f33a133e674b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab40adce50ce6a2a1da1f33a133e674b8">&#9670;&nbsp;</a></span>SOIL::to_value&lt; SOIL::ENUM &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> <a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00086">86</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a682bf7d67c51ddd6da804bfd2416d99d" name="a682bf7d67c51ddd6da804bfd2416d99d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a682bf7d67c51ddd6da804bfd2416d99d">&#9670;&nbsp;</a></span>SOIL::to_value&lt; SOIL::TIME &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> <a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00080">80</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a9769894e25cf77bdd6aaea440439d6c6" name="a9769894e25cf77bdd6aaea440439d6c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9769894e25cf77bdd6aaea440439d6c6">&#9670;&nbsp;</a></span>SOIL::to_value&lt; std::string &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string <a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a>&lt; std::string &gt; </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00074">74</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="json__helpers_8cpp.html">json_helpers.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/json__helpers_8cpp.js b/doc/html/json__helpers_8cpp.js
new file mode 100644
index 0000000000000000000000000000000000000000..4334eda9b67d234f19a1f7ee2c1e317f65cb1d2b
--- /dev/null
+++ b/doc/html/json__helpers_8cpp.js
@@ -0,0 +1,10 @@
+var json__helpers_8cpp =
+[
+    [ "SOIL::to_json< SOIL::BOOL >", "json__helpers_8cpp.html#aae694c8a60db24c08de0a3a22ef12a40", null ],
+    [ "SOIL::to_json< SOIL::ENUM >", "json__helpers_8cpp.html#a6ae5f67d92f7f1c13b8c5f816640b887", null ],
+    [ "SOIL::to_json< SOIL::TIME >", "json__helpers_8cpp.html#a10a05ce00d314258ffb9c6b536c1bf95", null ],
+    [ "SOIL::to_json< std::string >", "json__helpers_8cpp.html#a434c4f67044a7cc0f874ef0f5bf55b22", null ],
+    [ "SOIL::to_value< SOIL::ENUM >", "json__helpers_8cpp.html#ab40adce50ce6a2a1da1f33a133e674b8", null ],
+    [ "SOIL::to_value< SOIL::TIME >", "json__helpers_8cpp.html#a682bf7d67c51ddd6da804bfd2416d99d", null ],
+    [ "SOIL::to_value< std::string >", "json__helpers_8cpp.html#a9769894e25cf77bdd6aaea440439d6c6", null ]
+];
\ No newline at end of file
diff --git a/doc/html/json__helpers_8cpp_source.html b/doc/html/json__helpers_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..02d46102201322bfe26d94ca7db35443ead22fe3
--- /dev/null
+++ b/doc/html/json__helpers_8cpp_source.html
@@ -0,0 +1,211 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/json_helpers.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('json__helpers_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">json_helpers.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="json__helpers_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="json__helpers_8h.html">json_helpers.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_s_o_i_l_2_types_8h.html">Types.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>web::json::value <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>(<span class="keyword">const</span> T&amp; value)</div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>{</div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    <span class="keywordflow">return</span> web::json::value(value);</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>}</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span> </div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e">   11</a></span>web::json::value <a class="code hl_function" href="namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e">SOIL::to_json&lt;double&gt;</a>(<span class="keyword">const</span> <span class="keywordtype">double</span>&amp; value)</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>{</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keywordflow">return</span> web::json::value::number(value);</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>}</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span> </div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95">   17</a></span>web::json::value <a class="code hl_function" href="namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95">SOIL::to_json&lt;int64_t&gt;</a>(<span class="keyword">const</span> int64_t&amp; value)</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>{</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <span class="keywordflow">return</span> web::json::value::number(value);</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>}</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">   23</a></span>web::json::value <a class="code hl_function" href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">SOIL::to_json&lt;int&gt;</a>(<span class="keyword">const</span> <span class="keywordtype">int</span>&amp; value)</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>{</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    <span class="keywordflow">return</span> web::json::value::number(value);</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>}</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span> </div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"><a class="line" href="json__helpers_8cpp.html#a434c4f67044a7cc0f874ef0f5bf55b22">   29</a></span>web::json::value SOIL::to_json&lt;std::string&gt;(<span class="keyword">const</span> std::string&amp; value)</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>{</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    <span class="keywordflow">return</span> web::json::value::string(utility::conversions::to_string_t(value));</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>}</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"><a class="line" href="json__helpers_8cpp.html#a10a05ce00d314258ffb9c6b536c1bf95">   35</a></span>web::json::value SOIL::to_json&lt;SOIL::TIME&gt;(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::TIME</a>&amp; value)</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>{</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    <span class="keywordflow">return</span> to_json&lt;std::string&gt;(value.<a class="code hl_function" href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">rfc3339</a>());</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>}</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span> </div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="json__helpers_8cpp.html#a6ae5f67d92f7f1c13b8c5f816640b887">   41</a></span>web::json::value SOIL::to_json&lt;SOIL::ENUM&gt;(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">SOIL::ENUM</a>&amp; value)</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>{</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    <span class="keywordflow">return</span> to_json&lt;std::string&gt;(value.<a class="code hl_function" href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">selected</a>());</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>}</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span> </div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="json__helpers_8cpp.html#aae694c8a60db24c08de0a3a22ef12a40">   47</a></span>web::json::value SOIL::to_json&lt;SOIL::BOOL&gt;(<span class="keyword">const</span> <span class="keywordtype">bool</span>&amp; value)</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>{</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    <span class="keywordflow">return</span> web::json::value::boolean(value);</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>}</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span> </div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span> </div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span> </div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec">   55</a></span><span class="keywordtype">double</span> <a class="code hl_function" href="namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec">SOIL::to_value&lt;double&gt;</a>(web::json::value value)</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>{</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    <span class="keywordflow">return</span> value.as_double();</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>}</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span> </div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span> </div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962">   62</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962">SOIL::to_value&lt;int&gt;</a>(web::json::value value)</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>{</div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    <span class="keywordflow">return</span> value.as_integer();</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>}</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span> </div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942">   68</a></span>int64_t <a class="code hl_function" href="namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942">SOIL::to_value&lt;int64_t&gt;</a>(web::json::value value)</div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span>{</div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>    <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>int64_t<span class="keyword">&gt;</span>(value.as_integer());</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>}</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span> </div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="json__helpers_8cpp.html#a9769894e25cf77bdd6aaea440439d6c6">   74</a></span>std::string SOIL::to_value&lt;std::string&gt;(web::json::value <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>{</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>    <span class="keywordflow">return</span> utility::conversions::to_utf8string(<a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>.as_string());</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>}</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span> </div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"><a class="line" href="json__helpers_8cpp.html#a682bf7d67c51ddd6da804bfd2416d99d">   80</a></span><a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::TIME</a> SOIL::to_value&lt;SOIL::TIME&gt;(web::json::value <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>{</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>    <span class="keywordflow">return</span> <a class="code hl_typedef" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a>(to_value&lt;std::string&gt;(<a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>));</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>}</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span> </div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"><a class="line" href="json__helpers_8cpp.html#ab40adce50ce6a2a1da1f33a133e674b8">   86</a></span><a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">SOIL::ENUM</a> SOIL::to_value&lt;SOIL::ENUM&gt;(web::json::value <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span>{</div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>    <span class="keywordflow">return</span> <a class="code hl_typedef" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a>(to_value&lt;std::string&gt;(<a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>));</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span>}</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span> </div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span><span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b">   92</a></span><span class="keywordtype">bool</span> <a class="code hl_function" href="namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b">SOIL::to_value&lt;bool&gt;</a>(web::json::value <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>{</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>    <span class="keywordflow">return</span> <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>.as_bool();</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>}</div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="a_s_o_i_l_2_types_8h_html"><div class="ttname"><a href="_s_o_i_l_2_types_8h.html">Types.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></div><div class="ttdoc">SOIL Enum Datatype.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8h_source.html#l00015">Enum.h:16</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html_aa02862d7713c094d7ae5819eab23765f"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f">SOIL::Enum::selected</a></div><div class="ttdeci">std::string selected(void) const</div><div class="ttdoc">Get selected value.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8cpp_source.html#l00021">Enum.cpp:21</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00012">Time.h:13</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_a8b1d27ee800ce3dddeb38356c5edb86d"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d">SOIL::Time::rfc3339</a></div><div class="ttdeci">DLL std::string rfc3339(void) const</div><div class="ttdoc">RFC3339 representation.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00006">Time.cpp:6</a></div></div>
+<div class="ttc" id="ajson__helpers_8h_html"><div class="ttname"><a href="json__helpers_8h.html">json_helpers.h</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a088b157f218c9c844ae77c2c07f1b328"><div class="ttname"><a href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a></div><div class="ttdeci">Time TIME</div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00054">Types.h:54</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a104dd24cc9e4f3291cd6f6cd4ef9a962"><div class="ttname"><a href="namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962">SOIL::to_value&lt; int &gt;</a></div><div class="ttdeci">DLL int to_value&lt; int &gt;(web::json::value value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00062">json_helpers.cpp:62</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a1d5fe6676b3cd6aef4b24e9c4ba4f097"><div class="ttname"><a href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a></div><div class="ttdeci">Enum ENUM</div><div class="ttdoc">SOIL Enum.</div><div class="ttdef"><b>Definition:</b> <a href="_s_o_i_l_2_types_8h_source.html#l00047">Types.h:47</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a82671406aa31a367c38dcad31d359b92"><div class="ttname"><a href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a></div><div class="ttdeci">DLL web::json::value to_json(const T &amp;value)</div><div class="ttdoc">Value to JSON.</div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a86cf6d407ececca2487dcbe521978d21"><div class="ttname"><a href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">SOIL::to_json&lt; int &gt;</a></div><div class="ttdeci">DLL web::json::value to_json&lt; int &gt;(const int &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00023">json_helpers.cpp:23</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_aa5865fafee3cc8f7eeba8269f24c86ec"><div class="ttname"><a href="namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec">SOIL::to_value&lt; double &gt;</a></div><div class="ttdeci">DLL double to_value&lt; double &gt;(web::json::value value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00055">json_helpers.cpp:55</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_aaff67634d006fd7dca3fffb14b28dd8e"><div class="ttname"><a href="namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e">SOIL::to_json&lt; double &gt;</a></div><div class="ttdeci">DLL web::json::value to_json&lt; double &gt;(const double &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00011">json_helpers.cpp:11</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_ad66a788615277edb2f3e7077d89cd942"><div class="ttname"><a href="namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942">SOIL::to_value&lt; int64_t &gt;</a></div><div class="ttdeci">DLL int64_t to_value&lt; int64_t &gt;(web::json::value value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00068">json_helpers.cpp:68</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_ada5ccc8aa10b097eea146a1b2d720e95"><div class="ttname"><a href="namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95">SOIL::to_json&lt; int64_t &gt;</a></div><div class="ttdeci">DLL web::json::value to_json&lt; int64_t &gt;(const int64_t &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00017">json_helpers.cpp:17</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_adaab1a60ee0b36f8537055549511ba7b"><div class="ttname"><a href="namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b">SOIL::to_value&lt; bool &gt;</a></div><div class="ttdeci">DLL bool to_value&lt; bool &gt;(web::json::value json)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00092">json_helpers.cpp:92</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="json__helpers_8cpp.html">json_helpers.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/json__helpers_8h.html b/doc/html/json__helpers_8h.html
new file mode 100644
index 0000000000000000000000000000000000000000..ad26649b5c8690acc31507e5c9759289308c3403
--- /dev/null
+++ b/doc/html/json__helpers_8h.html
@@ -0,0 +1,167 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/json_helpers.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('json__helpers_8h.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle"><div class="title">json_helpers.h File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_s_o_i_l_2constants_8h_source.html">constants.h</a>&quot;</code><br />
+<code>#include &quot;cpprest/http_listener.h&quot;</code><br />
+<code>#include &quot;<a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>&quot;</code><br />
+</div>
+<p><a href="json__helpers_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespace_s_o_i_l"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></td></tr>
+<tr class="memdesc:namespace_s_o_i_l"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type definitions. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a82671406aa31a367c38dcad31d359b92"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a82671406aa31a367c38dcad31d359b92"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a> (const T &amp;value)</td></tr>
+<tr class="memdesc:a82671406aa31a367c38dcad31d359b92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Value to JSON.  <a href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">More...</a><br /></td></tr>
+<tr class="separator:a82671406aa31a367c38dcad31d359b92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57872750dce21dba7ad0597f87c45556"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a57872750dce21dba7ad0597f87c45556"><td class="memTemplItemLeft" align="right" valign="top">DLL T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="memdesc:a57872750dce21dba7ad0597f87c45556"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON to Value.  <a href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">More...</a><br /></td></tr>
+<tr class="separator:a57872750dce21dba7ad0597f87c45556"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaff67634d006fd7dca3fffb14b28dd8e"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:aaff67634d006fd7dca3fffb14b28dd8e"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e">SOIL::to_json&lt; double &gt;</a> (const double &amp;value)</td></tr>
+<tr class="separator:aaff67634d006fd7dca3fffb14b28dd8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada5ccc8aa10b097eea146a1b2d720e95"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:ada5ccc8aa10b097eea146a1b2d720e95"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95">SOIL::to_json&lt; int64_t &gt;</a> (const int64_t &amp;value)</td></tr>
+<tr class="separator:ada5ccc8aa10b097eea146a1b2d720e95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86cf6d407ececca2487dcbe521978d21"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a86cf6d407ececca2487dcbe521978d21"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">SOIL::to_json&lt; int &gt;</a> (const int &amp;value)</td></tr>
+<tr class="separator:a86cf6d407ececca2487dcbe521978d21"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02992988be78a7ab33f587f28f9d77ee"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a02992988be78a7ab33f587f28f9d77ee"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a02992988be78a7ab33f587f28f9d77ee">SOIL::to_json&lt; std::string &gt;</a> (const std::string &amp;value)</td></tr>
+<tr class="separator:a02992988be78a7ab33f587f28f9d77ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cb86f8e799f4d035ef321becf44d6e2"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a6cb86f8e799f4d035ef321becf44d6e2"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a6cb86f8e799f4d035ef321becf44d6e2">SOIL::to_json&lt; SOIL::TIME &gt;</a> (const <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &amp;value)</td></tr>
+<tr class="separator:a6cb86f8e799f4d035ef321becf44d6e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a19e241bb85fab8d5669742af038a6b"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a7a19e241bb85fab8d5669742af038a6b"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a7a19e241bb85fab8d5669742af038a6b">SOIL::to_json&lt; SOIL::ENUM &gt;</a> (const <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &amp;value)</td></tr>
+<tr class="separator:a7a19e241bb85fab8d5669742af038a6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c15040c8f4602cc146655bf71293721"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a2c15040c8f4602cc146655bf71293721"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a2c15040c8f4602cc146655bf71293721">SOIL::to_json&lt; SOIL::BOOL &gt;</a> (const bool &amp;value)</td></tr>
+<tr class="separator:a2c15040c8f4602cc146655bf71293721"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5865fafee3cc8f7eeba8269f24c86ec"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:aa5865fafee3cc8f7eeba8269f24c86ec"><td class="memTemplItemLeft" align="right" valign="top">DLL double&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec">SOIL::to_value&lt; double &gt;</a> (web::json::value value)</td></tr>
+<tr class="separator:aa5865fafee3cc8f7eeba8269f24c86ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a104dd24cc9e4f3291cd6f6cd4ef9a962"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a104dd24cc9e4f3291cd6f6cd4ef9a962"><td class="memTemplItemLeft" align="right" valign="top">DLL int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962">SOIL::to_value&lt; int &gt;</a> (web::json::value value)</td></tr>
+<tr class="separator:a104dd24cc9e4f3291cd6f6cd4ef9a962"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad66a788615277edb2f3e7077d89cd942"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:ad66a788615277edb2f3e7077d89cd942"><td class="memTemplItemLeft" align="right" valign="top">DLL int64_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942">SOIL::to_value&lt; int64_t &gt;</a> (web::json::value value)</td></tr>
+<tr class="separator:ad66a788615277edb2f3e7077d89cd942"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b6625a4bf4d20d486a4258a17462ef9"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a5b6625a4bf4d20d486a4258a17462ef9"><td class="memTemplItemLeft" align="right" valign="top">DLL std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a5b6625a4bf4d20d486a4258a17462ef9">SOIL::to_value&lt; std::string &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:a5b6625a4bf4d20d486a4258a17462ef9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10e716692b430aae80488a4eb82c7711"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a10e716692b430aae80488a4eb82c7711"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a10e716692b430aae80488a4eb82c7711">SOIL::to_value&lt; SOIL::TIME &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:a10e716692b430aae80488a4eb82c7711"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80e0cc86c7756c3f9b4ccf338cd146bd"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a80e0cc86c7756c3f9b4ccf338cd146bd"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a80e0cc86c7756c3f9b4ccf338cd146bd">SOIL::to_value&lt; SOIL::ENUM &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:a80e0cc86c7756c3f9b4ccf338cd146bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adaab1a60ee0b36f8537055549511ba7b"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:adaab1a60ee0b36f8537055549511ba7b"><td class="memTemplItemLeft" align="right" valign="top">DLL bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b">SOIL::to_value&lt; bool &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:adaab1a60ee0b36f8537055549511ba7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="json__helpers_8h.html">json_helpers.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/json__helpers_8h.js b/doc/html/json__helpers_8h.js
new file mode 100644
index 0000000000000000000000000000000000000000..073d82ec4d52d53f26ed6999c3bfcc4fb63ea3e3
--- /dev/null
+++ b/doc/html/json__helpers_8h.js
@@ -0,0 +1,19 @@
+var json__helpers_8h =
+[
+    [ "to_json", "json__helpers_8h.html#a82671406aa31a367c38dcad31d359b92", null ],
+    [ "to_json< double >", "json__helpers_8h.html#aaff67634d006fd7dca3fffb14b28dd8e", null ],
+    [ "to_json< int >", "json__helpers_8h.html#a86cf6d407ececca2487dcbe521978d21", null ],
+    [ "to_json< int64_t >", "json__helpers_8h.html#ada5ccc8aa10b097eea146a1b2d720e95", null ],
+    [ "to_json< SOIL::BOOL >", "json__helpers_8h.html#a2c15040c8f4602cc146655bf71293721", null ],
+    [ "to_json< SOIL::ENUM >", "json__helpers_8h.html#a7a19e241bb85fab8d5669742af038a6b", null ],
+    [ "to_json< SOIL::TIME >", "json__helpers_8h.html#a6cb86f8e799f4d035ef321becf44d6e2", null ],
+    [ "to_json< std::string >", "json__helpers_8h.html#a02992988be78a7ab33f587f28f9d77ee", null ],
+    [ "to_value", "json__helpers_8h.html#a57872750dce21dba7ad0597f87c45556", null ],
+    [ "to_value< bool >", "json__helpers_8h.html#adaab1a60ee0b36f8537055549511ba7b", null ],
+    [ "to_value< double >", "json__helpers_8h.html#aa5865fafee3cc8f7eeba8269f24c86ec", null ],
+    [ "to_value< int >", "json__helpers_8h.html#a104dd24cc9e4f3291cd6f6cd4ef9a962", null ],
+    [ "to_value< int64_t >", "json__helpers_8h.html#ad66a788615277edb2f3e7077d89cd942", null ],
+    [ "to_value< SOIL::ENUM >", "json__helpers_8h.html#a80e0cc86c7756c3f9b4ccf338cd146bd", null ],
+    [ "to_value< SOIL::TIME >", "json__helpers_8h.html#a10e716692b430aae80488a4eb82c7711", null ],
+    [ "to_value< std::string >", "json__helpers_8h.html#a5b6625a4bf4d20d486a4258a17462ef9", null ]
+];
\ No newline at end of file
diff --git a/doc/html/json__helpers_8h_source.html b/doc/html/json__helpers_8h_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..67b7e5522ded1850bb768e66155de93123e2f550
--- /dev/null
+++ b/doc/html/json__helpers_8h_source.html
@@ -0,0 +1,157 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/SOIL/json_helpers.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('json__helpers_8h_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">json_helpers.h</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="json__helpers_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_u_d_p_2constants_8h.html">constants.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;cpprest/http_listener.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="_s_o_i_l_2_types_8h.html">Types.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span> </div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_s_o_i_l.html">SOIL</a></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>{</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">   19</a></span>    DLL web::json::value <a class="code hl_function" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">to_json</a>(<span class="keyword">const</span> T&amp; value);</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span> </div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">   32</a></span>    DLL T <a class="code hl_function" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">to_value</a>(web::json::value <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span> </div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    DLL web::json::value <a class="code hl_function" href="namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e">to_json&lt;double&gt;</a>(<span class="keyword">const</span> <span class="keywordtype">double</span>&amp; value);</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    DLL web::json::value <a class="code hl_function" href="namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95">to_json&lt;int64_t&gt;</a>(<span class="keyword">const</span> int64_t&amp; value);</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    DLL web::json::value <a class="code hl_function" href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">to_json&lt;int&gt;</a>(<span class="keyword">const</span> <span class="keywordtype">int</span>&amp; value);</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a02992988be78a7ab33f587f28f9d77ee">   42</a></span>    DLL web::json::value to_json&lt;std::string&gt;(<span class="keyword">const</span> std::string&amp; value);</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a6cb86f8e799f4d035ef321becf44d6e2">   44</a></span>    DLL web::json::value to_json&lt;SOIL::TIME&gt;(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::TIME</a>&amp; value);</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a7a19e241bb85fab8d5669742af038a6b">   46</a></span>    DLL web::json::value to_json&lt;SOIL::ENUM&gt;(<span class="keyword">const</span> <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">SOIL::ENUM</a>&amp; value);</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a2c15040c8f4602cc146655bf71293721">   48</a></span>    DLL web::json::value to_json&lt;SOIL::BOOL&gt;(<span class="keyword">const</span> <span class="keywordtype">bool</span>&amp; value);</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    DLL <span class="keywordtype">double</span> <a class="code hl_function" href="namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec">to_value&lt;double&gt;</a>(web::json::value value);</div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>    DLL <span class="keywordtype">int</span> <a class="code hl_function" href="namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962">to_value&lt;int&gt;</a>(web::json::value value);</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    DLL int64_t <a class="code hl_function" href="namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942">to_value&lt;int64_t&gt;</a>(web::json::value value);</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a5b6625a4bf4d20d486a4258a17462ef9">   56</a></span>    DLL std::string to_value&lt;std::string&gt;(web::json::value <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a10e716692b430aae80488a4eb82c7711">   58</a></span>    DLL <a class="code hl_class" href="class_s_o_i_l_1_1_time.html">SOIL::TIME</a> to_value&lt;SOIL::TIME&gt;(web::json::value <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="namespace_s_o_i_l.html#a80e0cc86c7756c3f9b4ccf338cd146bd">   60</a></span>    DLL <a class="code hl_class" href="class_s_o_i_l_1_1_enum.html">SOIL::ENUM</a> to_value&lt;SOIL::ENUM&gt;(web::json::value <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>    <span class="keyword">template</span>&lt;&gt;</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>    DLL <span class="keywordtype">bool</span> <a class="code hl_function" href="namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b">to_value&lt;bool&gt;</a>(web::json::value <a class="code hl_typedef" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>);</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span>}</div>
+<div class="ttc" id="a_m_q_t_t_2_configuration_8cpp_html_ab701e3ac61a85b337ec5c1abaad6742d"><div class="ttname"><a href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a></div><div class="ttdeci">nlohmann::json json</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00006">Configuration.cpp:6</a></div></div>
+<div class="ttc" id="a_s_o_i_l_2_types_8h_html"><div class="ttname"><a href="_s_o_i_l_2_types_8h.html">Types.h</a></div></div>
+<div class="ttc" id="a_u_d_p_2constants_8h_html"><div class="ttname"><a href="_u_d_p_2constants_8h.html">constants.h</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_enum_html"><div class="ttname"><a href="class_s_o_i_l_1_1_enum.html">SOIL::Enum</a></div><div class="ttdoc">SOIL Enum Datatype.</div><div class="ttdef"><b>Definition:</b> <a href="_enum_8h_source.html#l00015">Enum.h:16</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html">SOIL::Time</a></div><div class="ttdoc">SOIL Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8h_source.html#l00012">Time.h:13</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html"><div class="ttname"><a href="namespace_s_o_i_l.html">SOIL</a></div><div class="ttdoc">Type definitions.</div><div class="ttdef"><b>Definition:</b> <a href="_container_8h_source.html#l00006">Container.h:7</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a104dd24cc9e4f3291cd6f6cd4ef9a962"><div class="ttname"><a href="namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962">SOIL::to_value&lt; int &gt;</a></div><div class="ttdeci">DLL int to_value&lt; int &gt;(web::json::value value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00062">json_helpers.cpp:62</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a57872750dce21dba7ad0597f87c45556"><div class="ttname"><a href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a></div><div class="ttdeci">DLL T to_value(web::json::value json)</div><div class="ttdoc">JSON to Value.</div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a82671406aa31a367c38dcad31d359b92"><div class="ttname"><a href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a></div><div class="ttdeci">DLL web::json::value to_json(const T &amp;value)</div><div class="ttdoc">Value to JSON.</div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_a86cf6d407ececca2487dcbe521978d21"><div class="ttname"><a href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">SOIL::to_json&lt; int &gt;</a></div><div class="ttdeci">DLL web::json::value to_json&lt; int &gt;(const int &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00023">json_helpers.cpp:23</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_aa5865fafee3cc8f7eeba8269f24c86ec"><div class="ttname"><a href="namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec">SOIL::to_value&lt; double &gt;</a></div><div class="ttdeci">DLL double to_value&lt; double &gt;(web::json::value value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00055">json_helpers.cpp:55</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_aaff67634d006fd7dca3fffb14b28dd8e"><div class="ttname"><a href="namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e">SOIL::to_json&lt; double &gt;</a></div><div class="ttdeci">DLL web::json::value to_json&lt; double &gt;(const double &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00011">json_helpers.cpp:11</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_ad66a788615277edb2f3e7077d89cd942"><div class="ttname"><a href="namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942">SOIL::to_value&lt; int64_t &gt;</a></div><div class="ttdeci">DLL int64_t to_value&lt; int64_t &gt;(web::json::value value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00068">json_helpers.cpp:68</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_ada5ccc8aa10b097eea146a1b2d720e95"><div class="ttname"><a href="namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95">SOIL::to_json&lt; int64_t &gt;</a></div><div class="ttdeci">DLL web::json::value to_json&lt; int64_t &gt;(const int64_t &amp;value)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00017">json_helpers.cpp:17</a></div></div>
+<div class="ttc" id="anamespace_s_o_i_l_html_adaab1a60ee0b36f8537055549511ba7b"><div class="ttname"><a href="namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b">SOIL::to_value&lt; bool &gt;</a></div><div class="ttdeci">DLL bool to_value&lt; bool &gt;(web::json::value json)</div><div class="ttdef"><b>Definition:</b> <a href="json__helpers_8cpp_source.html#l00092">json_helpers.cpp:92</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_80eb279d1f03cba0b7c8d3c4072fe319.html">SOIL</a></li><li class="navelem"><a class="el" href="json__helpers_8h.html">json_helpers.h</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/main_8cpp.html b/doc/html/main_8cpp.html
new file mode 100644
index 0000000000000000000000000000000000000000..ab06f3e32528eaa901403176d582ed82c08dc722
--- /dev/null
+++ b/doc/html/main_8cpp.html
@@ -0,0 +1,151 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/TEST/main.cpp File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('main_8cpp.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle"><div class="title">main.cpp File Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="_publisher_8h_source.html">MQTT/Publisher.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_broadcast_8h_source.html">UDP/Broadcast.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_server_8h_source.html">REST/Server.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_object_8h_source.html">SOIL/Object.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_variable_8h_source.html">SOIL/Variable.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_s_o_i_l_2_types_8h_source.html">SOIL/Types.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_hasher_8h_source.html">SIGN/Hasher.h</a>&quot;</code><br />
+<code>#include &quot;<a class="el" href="_signer_8h_source.html">SIGN/Signer.h</a>&quot;</code><br />
+<code>#include &lt;thread&gt;</code><br />
+<code>#include &lt;iostream&gt;</code><br />
+<code>#include &lt;chrono&gt;</code><br />
+</div>
+<p><a href="main_8cpp_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
+<tr class="separator:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a3c04138a5bfe5d72780bb7e82a18e627" name="a3c04138a5bfe5d72780bb7e82a18e627"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c04138a5bfe5d72780bb7e82a18e627">&#9670;&nbsp;</a></span>main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int main </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>argc</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">char **&#160;</td>
+          <td class="paramname"><em>argv</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="main_8cpp_source.html#l00015">15</a> of file <a class="el" href="main_8cpp_source.html">main.cpp</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fad39c6a80d5b10502d8b8402de358e3.html">TEST</a></li><li class="navelem"><a class="el" href="main_8cpp.html">main.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/main_8cpp.js b/doc/html/main_8cpp.js
new file mode 100644
index 0000000000000000000000000000000000000000..89e321acc34abb92df48dc8c46daee05d973d25a
--- /dev/null
+++ b/doc/html/main_8cpp.js
@@ -0,0 +1,4 @@
+var main_8cpp =
+[
+    [ "main", "main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627", null ]
+];
\ No newline at end of file
diff --git a/doc/html/main_8cpp_source.html b/doc/html/main_8cpp_source.html
new file mode 100644
index 0000000000000000000000000000000000000000..c6f0214f8e9bd9b6baf4bf88ac84c7e2311b2687
--- /dev/null
+++ b/doc/html/main_8cpp_source.html
@@ -0,0 +1,223 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: src/TEST/main.cpp Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('main_8cpp_source.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">main.cpp</div></div>
+</div><!--header-->
+<div class="contents">
+<a href="main_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#include &quot;<a class="code" href="_publisher_8h.html">MQTT/Publisher.h</a>&quot;</span></div>
+<div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;<a class="code" href="_broadcast_8h.html">UDP/Broadcast.h</a>&quot;</span></div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;<a class="code" href="_server_8h.html">REST/Server.h</a>&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;<a class="code" href="_object_8h.html">SOIL/Object.h</a>&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;<a class="code" href="_variable_8h.html">SOIL/Variable.h</a>&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &quot;<a class="code" href="_s_o_i_l_2_types_8h.html">SOIL/Types.h</a>&quot;</span></div>
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="preprocessor">#include &quot;<a class="code" href="_hasher_8h.html">SIGN/Hasher.h</a>&quot;</span></div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="preprocessor">#include &quot;<a class="code" href="_signer_8h.html">SIGN/Signer.h</a>&quot;</span></div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="preprocessor">#include &lt;thread&gt;</span></div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="preprocessor">#include &lt;iostream&gt;</span></div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span><span class="preprocessor">#include &lt;chrono&gt;</span></div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span> </div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span> </div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span> </div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"><a class="line" href="main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">   15</a></span><span class="keywordtype">int</span> <a class="code hl_function" href="main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>** argv)</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>{</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keywordflow">try</span></div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    {</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;############ SOIL #############&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>        std::shared_ptr&lt;SIGN::Signer&gt; signer(<span class="keyword">new</span> <a class="code hl_class" href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a>(<span class="stringliteral">&quot;../../../../assets/private-device-key.pem&quot;</span>));</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[INFO] &quot;</span> &lt;&lt; signer-&gt;openssl_version() &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>        std::shared_ptr&lt;SOIL::Object&gt; root_object = <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">SOIL::Object::create</a>(NULL, <span class="stringliteral">&quot;OBJ-ROOT&quot;</span>, <span class="stringliteral">&quot;Root Object&quot;</span>, <span class="stringliteral">&quot;Root Object and entry point for the model.&quot;</span>);</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>        std::shared_ptr&lt;SOIL::Object&gt; lsm_object = <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">SOIL::Object::create</a>(root_object, <span class="stringliteral">&quot;OBJ-LSM&quot;</span>, <span class="stringliteral">&quot;LSM System&quot;</span>, <span class="stringliteral">&quot;LSM system root object&quot;</span>);</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>        std::shared_ptr&lt;SOIL::Object&gt; entities_object = <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">SOIL::Object::create</a>(lsm_object, <span class="stringliteral">&quot;OBJ-Entities&quot;</span>, <span class="stringliteral">&quot;Mobile Entities&quot;</span>, <span class="stringliteral">&quot;Mobile entities of the LSM system&quot;</span>);</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>        std::shared_ptr&lt;SOIL::Object&gt; target_A123 = <a class="code hl_function" href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">SOIL::Object::create</a>(entities_object, <span class="stringliteral">&quot;OBJ-A123&quot;</span>, <span class="stringliteral">&quot;Target A123&quot;</span>, <span class="stringliteral">&quot;Target A123 of the LSM system&quot;</span>);</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>        std::shared_ptr&lt;SOIL::Variable&lt;double, 3&gt; &gt; variable = <a class="code hl_function" href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">SOIL::Variable&lt;double, 3&gt;::create</a>(target_A123, <span class="stringliteral">&quot;VAR-Position&quot;</span>, <span class="stringliteral">&quot;Position&quot;</span>, <span class="stringliteral">&quot;A dummy position variable for testing&quot;</span>, <span class="stringliteral">&quot;MTR&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>        <span class="comment">// NOTE: In above calls, the ptr-&gt;() function is used to avoid double allocation of shared pointer and double life cycle accounting</span></div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span> </div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>        variable-&gt;update(std::vector&lt;double&gt;({ 1.0, 1.5, 2.0 }), <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">SOIL::TIME::utc_now</a>(), <span class="stringliteral">&quot;LaVA Test&quot;</span>);</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>        variable-&gt;set_covariance(std::vector&lt;std::vector&lt;double&gt; &gt;({ { 0.01, 0, 0 },{0, 0.01, 0},{ 0, 0, 0.01 } }));</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>        variable-&gt;sign(signer);</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span> </div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[INFO] &quot;</span> &lt;&lt; <span class="stringliteral">&quot;--- Exemplary JSON Serialization ---&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>        std::cout &lt;&lt; variable-&gt;json() &lt;&lt; std::endl &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[INFO] &quot;</span> &lt;&lt; <span class="stringliteral">&quot;------------------------------------&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span> </div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span> </div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;############ MQTT ############&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>        <a class="code hl_class" href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a> mqtt_config(<span class="stringliteral">&quot;../../../../assets/mqtt.json&quot;</span>);</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>        mqtt_config.<a class="code hl_variable" href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">certificate_authority</a> = <span class="stringliteral">&quot;../../../../assets/MQTT-CA.pem&quot;</span>;</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span> </div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>        std::shared_ptr&lt;MQTT::Publisher&gt; mqtt_publisher = std::make_shared&lt;MQTT::Publisher&gt;(<span class="stringliteral">&quot;cpp-test&quot;</span>);</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>        mqtt_publisher-&gt;configure(mqtt_config);</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[INFO] MQTT Connecting to &quot;</span> &lt;&lt; mqtt_config.<a class="code hl_function" href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">uri</a>() &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>        mqtt_publisher-&gt;connect();</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[OK] MQTT Connected&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span> </div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[INFO] Running Loop Test&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span> </div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>        <span class="keyword">auto</span> begin = std::chrono::steady_clock::now();</div>
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span>        <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; 1000; i++)</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>        {</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>            variable-&gt;update(std::vector&lt;double&gt;({ 1.0 * i, 2.0 * i, 3.0 * i }), <a class="code hl_function" href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">SOIL::TIME::utc_now</a>(), <span class="stringliteral">&quot;Loop Test Update&quot;</span>);</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>            variable-&gt;set_covariance(std::vector&lt;std::vector&lt;double&gt; &gt;({ { 1.0 * i,0,0 },{ 0,1.0 * i,0 },{ 0,0,1.0 * i } }));</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>            variable-&gt;sign(signer);</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>            variable-&gt;json();</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>            variable-&gt;fqid();</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span>            variable-&gt;mqtt(mqtt_publisher);</div>
+<div class="line"><a id="l00060" name="l00060"></a><span class="lineno">   60</span>        }</div>
+<div class="line"><a id="l00061" name="l00061"></a><span class="lineno">   61</span>        <span class="keyword">auto</span> end = std::chrono::steady_clock::now();</div>
+<div class="line"><a id="l00062" name="l00062"></a><span class="lineno">   62</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[INFO] &quot;</span> &lt;&lt; <span class="stringliteral">&quot;Average update, serialization and publish cycle: &quot;</span> &lt;&lt; std::chrono::duration_cast&lt;std::chrono::milliseconds&gt;(end - begin).count() / 1000.0 &lt;&lt; <span class="stringliteral">&quot; ms&quot;</span> &lt;&lt; std::endl &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00063" name="l00063"></a><span class="lineno">   63</span> </div>
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>        std::this_thread::sleep_for(std::chrono::milliseconds(500));</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>        mqtt_publisher-&gt;disconnect();</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[OK] MQTT Disconnect&quot;</span> &lt;&lt; std::endl &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>        std::this_thread::sleep_for(std::chrono::milliseconds(500));</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span> </div>
+<div class="line"><a id="l00069" name="l00069"></a><span class="lineno">   69</span> </div>
+<div class="line"><a id="l00070" name="l00070"></a><span class="lineno">   70</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;############ UDP #############&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00071" name="l00071"></a><span class="lineno">   71</span>        <a class="code hl_class" href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a> udp_config(<span class="stringliteral">&quot;../../../../assets/udp.json&quot;</span>);</div>
+<div class="line"><a id="l00072" name="l00072"></a><span class="lineno">   72</span>        <a class="code hl_class" href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a> udp_broadcast(1);</div>
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span>        udp_broadcast.<a class="code hl_function" href="class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1">configure</a>(udp_config);</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>        udp_broadcast.<a class="code hl_function" href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">send</a>(variable-&gt;json());</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[OK] UDP Broadcast sent to localhost on port &quot;</span> &lt;&lt; udp_config.<a class="code hl_variable" href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">clients</a>[<span class="stringliteral">&quot;127.0.0.1&quot;</span>] &lt;&lt; std::endl &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span> </div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span> </div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;############ REST ############&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>        <a class="code hl_class" href="class_h_t_t_p_1_1_server.html">HTTP::Server</a> http_server(<span class="stringliteral">&quot;http://localhost:8000&quot;</span>);</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>        http_server.<a class="code hl_function" href="class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83">add</a>(<span class="stringliteral">&quot;/?(.*)&quot;</span>, root_object);</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>        http_server.<a class="code hl_function" href="class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486">open</a>();</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[OK] HTTP Server listening on http://localhost:8000. Press Enter to quit...&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span>        std::string s;</div>
+<div class="line"><a id="l00084" name="l00084"></a><span class="lineno">   84</span>        std::getline(std::cin, s);</div>
+<div class="line"><a id="l00085" name="l00085"></a><span class="lineno">   85</span>        http_server.<a class="code hl_function" href="class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a">close</a>();</div>
+<div class="line"><a id="l00086" name="l00086"></a><span class="lineno">   86</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[OK] Closing HTTP Server&quot;</span> &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00087" name="l00087"></a><span class="lineno">   87</span> </div>
+<div class="line"><a id="l00088" name="l00088"></a><span class="lineno">   88</span>        root_object.reset();</div>
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno">   89</span> </div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span>        <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span>    }</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span>    <span class="keywordflow">catch</span> (std::exception&amp; e)</div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>    {</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span>        std::cout &lt;&lt; <span class="stringliteral">&quot;[ERROR] &quot;</span> &lt;&lt; e.what() &lt;&lt; std::endl;</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>        </div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>        <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a id="l00097" name="l00097"></a><span class="lineno">   97</span>    }</div>
+<div class="line"><a id="l00098" name="l00098"></a><span class="lineno">   98</span> </div>
+<div class="line"><a id="l00099" name="l00099"></a><span class="lineno">   99</span>}</div>
+<div class="ttc" id="a_broadcast_8h_html"><div class="ttname"><a href="_broadcast_8h.html">Broadcast.h</a></div></div>
+<div class="ttc" id="a_hasher_8h_html"><div class="ttname"><a href="_hasher_8h.html">Hasher.h</a></div></div>
+<div class="ttc" id="a_object_8h_html"><div class="ttname"><a href="_object_8h.html">Object.h</a></div></div>
+<div class="ttc" id="a_publisher_8h_html"><div class="ttname"><a href="_publisher_8h.html">Publisher.h</a></div></div>
+<div class="ttc" id="a_s_o_i_l_2_types_8h_html"><div class="ttname"><a href="_s_o_i_l_2_types_8h.html">Types.h</a></div></div>
+<div class="ttc" id="a_server_8h_html"><div class="ttname"><a href="_server_8h.html">Server.h</a></div></div>
+<div class="ttc" id="a_signer_8h_html"><div class="ttname"><a href="_signer_8h.html">Signer.h</a></div></div>
+<div class="ttc" id="a_variable_8h_html"><div class="ttname"><a href="_variable_8h.html">Variable.h</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html">HTTP::Server</a></div><div class="ttdoc">HTPP Server.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8h_source.html#l00021">Server.h:22</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html_a9f24bc848a91d7d8a7e084b102de4e7a"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a">HTTP::Server::close</a></div><div class="ttdeci">void close()</div><div class="ttdoc">Stop listener.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8h_source.html#l00091">Server.h:91</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html_abb452f50d7c5660ee204e47e20066c83"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83">HTTP::Server::add</a></div><div class="ttdeci">void add(std::string path, std::shared_ptr&lt; Resource &gt; resource)</div><div class="ttdoc">Register resource.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8cpp_source.html#l00039">Server.cpp:39</a></div></div>
+<div class="ttc" id="aclass_h_t_t_p_1_1_server_html_aec1277227e7f17a1115e6d868a07b486"><div class="ttname"><a href="class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486">HTTP::Server::open</a></div><div class="ttdeci">void open()</div><div class="ttdoc">Start listener.</div><div class="ttdef"><b>Definition:</b> <a href="_server_8h_source.html#l00084">Server.h:84</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html">MQTT::Configuration</a></div><div class="ttdoc">MQTT publishing configuration.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00013">Configuration.h:14</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_aa943275c72ea7cc94bd9de56c0dfaa9d"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d">MQTT::Configuration::certificate_authority</a></div><div class="ttdeci">std::string certificate_authority</div><div class="ttdoc">Path to CA PEM-file.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8h_source.html#l00133">Configuration.h:133</a></div></div>
+<div class="ttc" id="aclass_m_q_t_t_1_1_configuration_html_ac4b05210a99b650da641d3966266ec04"><div class="ttname"><a href="class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04">MQTT::Configuration::uri</a></div><div class="ttdeci">std::string uri()</div><div class="ttdoc">URI Builder.</div><div class="ttdef"><b>Definition:</b> <a href="_m_q_t_t_2_configuration_8cpp_source.html#l00053">Configuration.cpp:53</a></div></div>
+<div class="ttc" id="aclass_s_i_g_n_1_1_signer_html"><div class="ttname"><a href="class_s_i_g_n_1_1_signer.html">SIGN::Signer</a></div><div class="ttdoc">Signer.</div><div class="ttdef"><b>Definition:</b> <a href="_signer_8h_source.html#l00018">Signer.h:19</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_object_html_a4ce4f8d21682f894c34f447d2a62cd30"><div class="ttname"><a href="class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30">SOIL::Object::create</a></div><div class="ttdeci">static std::shared_ptr&lt; Object &gt; create(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string ontology=&quot;&quot;)</div><div class="ttdoc">Create new Object.</div><div class="ttdef"><b>Definition:</b> <a href="_object_8cpp_source.html#l00018">Object.cpp:18</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_time_html_ae06629b296dcd9b01b6019101a020208"><div class="ttname"><a href="class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208">SOIL::Time::utc_now</a></div><div class="ttdeci">static DLL boost::posix_time::ptime utc_now(void)</div><div class="ttdoc">Current Time.</div><div class="ttdef"><b>Definition:</b> <a href="_time_8cpp_source.html#l00057">Time.cpp:57</a></div></div>
+<div class="ttc" id="aclass_s_o_i_l_1_1_variable_html_a421f6aeaee92e362e455edcbe6b58231"><div class="ttname"><a href="class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231">SOIL::Variable::create</a></div><div class="ttdeci">static std::shared_ptr&lt; Variable &gt; create(std::shared_ptr&lt; Element &gt; parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology=&quot;&quot;, Range&lt; T &gt; range=Range&lt; T &gt;(), TIME time=TIME(), std::string nonce=&quot;&quot;)</div><div class="ttdoc">Create new Variable.</div><div class="ttdef"><b>Definition:</b> <a href="_variable_8h_source.html#l00328">Variable.h:328</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html">UDP::Broadcast</a></div><div class="ttdoc">UDP Broadcast.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8h_source.html#l00022">Broadcast.h:23</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html_a4083638acba927342d411db85d6fe9a1"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1">UDP::Broadcast::configure</a></div><div class="ttdeci">void configure(UDP::Configuration config)</div><div class="ttdoc">Configure Broadcast.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8cpp_source.html#l00132">Broadcast.cpp:132</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_broadcast_html_a9c923c64d3e48d85c3e91db348ffaa45"><div class="ttname"><a href="class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45">UDP::Broadcast::send</a></div><div class="ttdeci">void send(std::string message)</div><div class="ttdoc">Send Message.</div><div class="ttdef"><b>Definition:</b> <a href="_broadcast_8cpp_source.html#l00109">Broadcast.cpp:109</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html">UDP::Configuration</a></div><div class="ttdoc">UDP Broadcast Configuration.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8h_source.html#l00013">Configuration.h:14</a></div></div>
+<div class="ttc" id="aclass_u_d_p_1_1_configuration_html_a320ba9474ff76cbc5626d667a4388a55"><div class="ttname"><a href="class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55">UDP::Configuration::clients</a></div><div class="ttdeci">std::map&lt; std::string, int &gt; clients</div><div class="ttdoc">List of clients.</div><div class="ttdef"><b>Definition:</b> <a href="_u_d_p_2_configuration_8h_source.html#l00028">Configuration.h:28</a></div></div>
+<div class="ttc" id="amain_8cpp_html_a3c04138a5bfe5d72780bb7e82a18e627"><div class="ttname"><a href="main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a></div><div class="ttdeci">int main(int argc, char **argv)</div><div class="ttdef"><b>Definition:</b> <a href="main_8cpp_source.html#l00015">main.cpp:15</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_fad39c6a80d5b10502d8b8402de358e3.html">TEST</a></li><li class="navelem"><a class="el" href="main_8cpp.html">main.cpp</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/menu.js b/doc/html/menu.js
new file mode 100644
index 0000000000000000000000000000000000000000..54e81cf15c45dfeff196985e943cb4eb9f353fd1
--- /dev/null
+++ b/doc/html/menu.js
@@ -0,0 +1,127 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+ */
+function initMenu(relPath,searchEnabled,serverSide,searchPage,search) {
+  function makeTree(data,relPath) {
+    var result='';
+    if ('children' in data) {
+      result+='<ul>';
+      for (var i in data.children) {
+        result+='<li><a href="'+relPath+data.children[i].url+'">'+
+                                data.children[i].text+'</a>'+
+                                makeTree(data.children[i],relPath)+'</li>';
+      }
+      result+='</ul>';
+    }
+    return result;
+  }
+  var searchBox;
+  if (searchEnabled) {
+    if (serverSide) {
+      searchBox='<div id="MSearchBox" class="MSearchBoxInactive">'+
+                 '<div class="left">'+
+                  '<form id="FSearchBox" action="'+relPath+searchPage+
+                    '" method="get"><img id="MSearchSelect" src="'+
+                    relPath+'search/mag.svg" alt=""/>'+
+                  '<input type="text" id="MSearchField" name="query" value="'+search+
+                    '" size="20" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)"'+
+                    ' onblur="searchBox.OnSearchFieldFocus(false)">'+
+                  '</form>'+
+                 '</div>'+
+                 '<div class="right"></div>'+
+                '</div>';
+    } else {
+      searchBox='<div id="MSearchBox" class="MSearchBoxInactive">'+
+                 '<span class="left">'+
+                  '<img id="MSearchSelect" src="'+relPath+
+                     'search/mag_sel.svg" onmouseover="return searchBox.OnSearchSelectShow()"'+
+                     ' onmouseout="return searchBox.OnSearchSelectHide()" alt=""/>'+
+                  '<input type="text" id="MSearchField" value="'+search+
+                    '" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" '+
+                    'onblur="searchBox.OnSearchFieldFocus(false)" '+
+                    'onkeyup="searchBox.OnSearchFieldChange(event)"/>'+
+                 '</span>'+
+                 '<span class="right"><a id="MSearchClose" '+
+                  'href="javascript:searchBox.CloseResultsWindow()">'+
+                  '<img id="MSearchCloseImg" border="0" src="'+relPath+
+                  'search/close.svg" alt=""/></a>'
+                 '</span>'
+                '</div>';
+    }
+  }
+
+  $('#main-nav').before('<div class="sm sm-dox"><input id="main-menu-state" type="checkbox"/>'+
+                        '<label class="main-menu-btn" for="main-menu-state">'+
+                        '<span class="main-menu-btn-icon"></span> '+
+                        'Toggle main menu visibility</label>'+
+                        '<span id="searchBoxPos1" style="position:absolute;right:8px;top:8px;height:36px;"></span>'+
+                        '</div>');
+  $('#main-nav').append(makeTree(menudata,relPath));
+  $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu');
+  if (searchBox) {
+    $('#main-menu').append('<li id="searchBoxPos2" style="float:right"></li>');
+  }
+  var $mainMenuState = $('#main-menu-state');
+  var prevWidth = 0;
+  if ($mainMenuState.length) {
+    function initResizableIfExists() {
+      if (typeof initResizable==='function') initResizable();
+    }
+    // animate mobile menu
+    $mainMenuState.change(function(e) {
+      var $menu = $('#main-menu');
+      var options = { duration: 250, step: initResizableIfExists };
+      if (this.checked) {
+        options['complete'] = function() { $menu.css('display', 'block') };
+        $menu.hide().slideDown(options);
+      } else {
+        options['complete'] = function() { $menu.css('display', 'none') };
+        $menu.show().slideUp(options);
+      }
+    });
+    // set default menu visibility
+    function resetState() {
+      var $menu = $('#main-menu');
+      var $mainMenuState = $('#main-menu-state');
+      var newWidth = $(window).outerWidth();
+      if (newWidth!=prevWidth) {
+        if ($(window).outerWidth()<768) {
+          $mainMenuState.prop('checked',false); $menu.hide();
+          $('#searchBoxPos1').html(searchBox);
+          $('#searchBoxPos2').hide();
+        } else {
+          $menu.show();
+          $('#searchBoxPos1').empty();
+          $('#searchBoxPos2').html(searchBox);
+          $('#searchBoxPos2').show();
+        }
+        prevWidth = newWidth;
+      }
+    }
+    $(window).ready(function() { resetState(); initResizableIfExists(); });
+    $(window).resize(resetState);
+  }
+  $('#main-menu').smartmenus();
+}
+/* @license-end */
diff --git a/doc/html/menudata.js b/doc/html/menudata.js
new file mode 100644
index 0000000000000000000000000000000000000000..bea0f2f4a913c1b39481b08723e3b8b0a613a4b8
--- /dev/null
+++ b/doc/html/menudata.js
@@ -0,0 +1,119 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+*/
+var menudata={children:[
+{text:"Main Page",url:"index.html"},
+{text:"Related Pages",url:"pages.html"},
+{text:"Namespaces",url:"namespaces.html",children:[
+{text:"Namespace List",url:"namespaces.html"},
+{text:"Namespace Members",url:"namespacemembers.html",children:[
+{text:"All",url:"namespacemembers.html",children:[
+{text:"b",url:"namespacemembers.html#index_b"},
+{text:"d",url:"namespacemembers.html#index_d"},
+{text:"e",url:"namespacemembers.html#index_e"},
+{text:"i",url:"namespacemembers.html#index_i"},
+{text:"j",url:"namespacemembers.html#index_j"},
+{text:"m",url:"namespacemembers.html#index_m"},
+{text:"n",url:"namespacemembers.html#index_n"},
+{text:"o",url:"namespacemembers.html#index_o"},
+{text:"r",url:"namespacemembers.html#index_r"},
+{text:"s",url:"namespacemembers.html#index_s"},
+{text:"t",url:"namespacemembers.html#index_t"}]},
+{text:"Functions",url:"namespacemembers_func.html"},
+{text:"Typedefs",url:"namespacemembers_type.html"}]}]},
+{text:"Classes",url:"annotated.html",children:[
+{text:"Class List",url:"annotated.html"},
+{text:"Class Index",url:"classes.html"},
+{text:"Class Hierarchy",url:"hierarchy.html"},
+{text:"Class Members",url:"functions.html",children:[
+{text:"All",url:"functions.html",children:[
+{text:"a",url:"functions.html#index_a"},
+{text:"b",url:"functions_b.html#index_b"},
+{text:"c",url:"functions_c.html#index_c"},
+{text:"d",url:"functions_d.html#index_d"},
+{text:"e",url:"functions_e.html#index_e"},
+{text:"f",url:"functions_f.html#index_f"},
+{text:"h",url:"functions_h.html#index_h"},
+{text:"i",url:"functions_i.html#index_i"},
+{text:"j",url:"functions_j.html#index_j"},
+{text:"k",url:"functions_k.html#index_k"},
+{text:"m",url:"functions_m.html#index_m"},
+{text:"n",url:"functions_n.html#index_n"},
+{text:"o",url:"functions_o.html#index_o"},
+{text:"p",url:"functions_p.html#index_p"},
+{text:"q",url:"functions_q.html#index_q"},
+{text:"r",url:"functions_r.html#index_r"},
+{text:"s",url:"functions_s.html#index_s"},
+{text:"t",url:"functions_t.html#index_t"},
+{text:"u",url:"functions_u.html#index_u"},
+{text:"v",url:"functions_v.html#index_v"},
+{text:"w",url:"functions_w.html#index_w"},
+{text:"~",url:"functions_~.html#index__7E"}]},
+{text:"Functions",url:"functions_func.html",children:[
+{text:"a",url:"functions_func.html#index_a"},
+{text:"b",url:"functions_func_b.html#index_b"},
+{text:"c",url:"functions_func_c.html#index_c"},
+{text:"d",url:"functions_func_d.html#index_d"},
+{text:"e",url:"functions_func_e.html#index_e"},
+{text:"f",url:"functions_func_f.html#index_f"},
+{text:"h",url:"functions_func_h.html#index_h"},
+{text:"i",url:"functions_func_i.html#index_i"},
+{text:"j",url:"functions_func_j.html#index_j"},
+{text:"m",url:"functions_func_m.html#index_m"},
+{text:"n",url:"functions_func_n.html#index_n"},
+{text:"o",url:"functions_func_o.html#index_o"},
+{text:"p",url:"functions_func_p.html#index_p"},
+{text:"r",url:"functions_func_r.html#index_r"},
+{text:"s",url:"functions_func_s.html#index_s"},
+{text:"t",url:"functions_func_t.html#index_t"},
+{text:"u",url:"functions_func_u.html#index_u"},
+{text:"v",url:"functions_func_v.html#index_v"},
+{text:"w",url:"functions_func_w.html#index_w"},
+{text:"~",url:"functions_func_~.html#index__7E"}]},
+{text:"Variables",url:"functions_vars.html",children:[
+{text:"a",url:"functions_vars.html#index_a"},
+{text:"c",url:"functions_vars.html#index_c"},
+{text:"d",url:"functions_vars.html#index_d"},
+{text:"h",url:"functions_vars.html#index_h"},
+{text:"k",url:"functions_vars.html#index_k"},
+{text:"m",url:"functions_vars.html#index_m"},
+{text:"n",url:"functions_vars.html#index_n"},
+{text:"o",url:"functions_vars.html#index_o"},
+{text:"p",url:"functions_vars.html#index_p"},
+{text:"q",url:"functions_vars.html#index_q"},
+{text:"r",url:"functions_vars.html#index_r"},
+{text:"s",url:"functions_vars.html#index_s"},
+{text:"t",url:"functions_vars.html#index_t"},
+{text:"u",url:"functions_vars.html#index_u"},
+{text:"v",url:"functions_vars.html#index_v"},
+{text:"w",url:"functions_vars.html#index_w"}]},
+{text:"Typedefs",url:"functions_type.html"},
+{text:"Related Functions",url:"functions_rela.html"}]}]},
+{text:"Files",url:"files.html",children:[
+{text:"File List",url:"files.html"},
+{text:"File Members",url:"globals.html",children:[
+{text:"All",url:"globals.html"},
+{text:"Functions",url:"globals_func.html"},
+{text:"Typedefs",url:"globals_type.html"},
+{text:"Macros",url:"globals_defs.html"}]}]}]}
diff --git a/doc/html/namespace_h_t_t_p.html b/doc/html/namespace_h_t_t_p.html
new file mode 100644
index 0000000000000000000000000000000000000000..96ea6bb353898b7926e5586b5199543d53e15803
--- /dev/null
+++ b/doc/html/namespace_h_t_t_p.html
@@ -0,0 +1,216 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: HTTP Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('namespace_h_t_t_p.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#typedef-members">Typedefs</a>  </div>
+  <div class="headertitle"><div class="title">HTTP Namespace Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_resource.html">Resource</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> <a class="el" href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class.">Resource</a> base class.  <a href="class_h_t_t_p_1_1_resource.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_t_t_p_1_1_server.html">Server</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">HTPP <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">Server</a>.  <a href="class_h_t_t_p_1_1_server.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ab1754212af3bb8edc420a97cffb176ea"><td class="memItemLeft" align="right" valign="top">typedef web::http::http_request&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">Request</a></td></tr>
+<tr class="memdesc:ab1754212af3bb8edc420a97cffb176ea"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Request.  <a href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">More...</a><br /></td></tr>
+<tr class="separator:ab1754212af3bb8edc420a97cffb176ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7f55b32590882bc9b905c78799fabdf"><td class="memItemLeft" align="right" valign="top">typedef web::http::http_response&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">Response</a></td></tr>
+<tr class="memdesc:af7f55b32590882bc9b905c78799fabdf"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Response.  <a href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">More...</a><br /></td></tr>
+<tr class="separator:af7f55b32590882bc9b905c78799fabdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af603c787079c0b8cacc07b6be6ae5e95"><td class="memItemLeft" align="right" valign="top">typedef web::http::status_codes&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95">Status</a></td></tr>
+<tr class="memdesc:af603c787079c0b8cacc07b6be6ae5e95"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Status.  <a href="namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95">More...</a><br /></td></tr>
+<tr class="separator:af603c787079c0b8cacc07b6be6ae5e95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28a83748614f1c141821ce4b9da83d3f"><td class="memItemLeft" align="right" valign="top">typedef web::http::methods&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f">Methods</a></td></tr>
+<tr class="memdesc:a28a83748614f1c141821ce4b9da83d3f"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> Methods.  <a href="namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f">More...</a><br /></td></tr>
+<tr class="separator:a28a83748614f1c141821ce4b9da83d3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a317431a644c9db16a1657ecc77677a11"><td class="memItemLeft" align="right" valign="top">typedef web::json::value&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">Json</a></td></tr>
+<tr class="memdesc:a317431a644c9db16a1657ecc77677a11"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON.  <a href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">More...</a><br /></td></tr>
+<tr class="separator:a317431a644c9db16a1657ecc77677a11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a317431a644c9db16a1657ecc77677a11" name="a317431a644c9db16a1657ecc77677a11"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a317431a644c9db16a1657ecc77677a11">&#9670;&nbsp;</a></span>Json</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef web::json::value <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Typedefinition for Json documents as provided by the cpprestsdk library. </p>
+
+<p class="definition">Definition at line <a class="el" href="_r_e_s_t_2_types_8h_source.html#l00039">39</a> of file <a class="el" href="_r_e_s_t_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="a28a83748614f1c141821ce4b9da83d3f" name="a28a83748614f1c141821ce4b9da83d3f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a28a83748614f1c141821ce4b9da83d3f">&#9670;&nbsp;</a></span>Methods</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef web::http::methods <a class="el" href="namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f">HTTP::Methods</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Typedefinition for <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Methods (Enum) as provided by the cpprestsdk library. </p>
+
+<p class="definition">Definition at line <a class="el" href="_r_e_s_t_2_types_8h_source.html#l00032">32</a> of file <a class="el" href="_r_e_s_t_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="ab1754212af3bb8edc420a97cffb176ea" name="ab1754212af3bb8edc420a97cffb176ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab1754212af3bb8edc420a97cffb176ea">&#9670;&nbsp;</a></span>Request</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef web::http::http_request <a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP::Request</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Typedefinition for <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Requests as provided by the cpprestsdk library. </p>
+
+<p class="definition">Definition at line <a class="el" href="_r_e_s_t_2_types_8h_source.html#l00011">11</a> of file <a class="el" href="_r_e_s_t_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="af7f55b32590882bc9b905c78799fabdf" name="af7f55b32590882bc9b905c78799fabdf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7f55b32590882bc9b905c78799fabdf">&#9670;&nbsp;</a></span>Response</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef web::http::http_response <a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP::Response</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Typedefinition for <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Responses as provided by the cpprestsdk library. </p>
+
+<p class="definition">Definition at line <a class="el" href="_r_e_s_t_2_types_8h_source.html#l00018">18</a> of file <a class="el" href="_r_e_s_t_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="af603c787079c0b8cacc07b6be6ae5e95" name="af603c787079c0b8cacc07b6be6ae5e95"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af603c787079c0b8cacc07b6be6ae5e95">&#9670;&nbsp;</a></span>Status</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef web::http::status_codes <a class="el" href="namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95">HTTP::Status</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Typedefinition for <a class="el" href="namespace_h_t_t_p.html">HTTP</a> Status Codes as provided by the cpprestsdk library. </p>
+
+<p class="definition">Definition at line <a class="el" href="_r_e_s_t_2_types_8h_source.html#l00025">25</a> of file <a class="el" href="_r_e_s_t_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_h_t_t_p.html">HTTP</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/namespace_h_t_t_p.js b/doc/html/namespace_h_t_t_p.js
new file mode 100644
index 0000000000000000000000000000000000000000..e393661d8ca203cfbd25b8819be76816f76d919f
--- /dev/null
+++ b/doc/html/namespace_h_t_t_p.js
@@ -0,0 +1,10 @@
+var namespace_h_t_t_p =
+[
+    [ "Resource", "class_h_t_t_p_1_1_resource.html", "class_h_t_t_p_1_1_resource" ],
+    [ "Server", "class_h_t_t_p_1_1_server.html", "class_h_t_t_p_1_1_server" ],
+    [ "Json", "namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11", null ],
+    [ "Methods", "namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f", null ],
+    [ "Request", "namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea", null ],
+    [ "Response", "namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf", null ],
+    [ "Status", "namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95", null ]
+];
\ No newline at end of file
diff --git a/doc/html/namespace_m_q_t_t.html b/doc/html/namespace_m_q_t_t.html
new file mode 100644
index 0000000000000000000000000000000000000000..e7f34949c5f357d99ccc82afee4fdbe22f2e5d08
--- /dev/null
+++ b/doc/html/namespace_m_q_t_t.html
@@ -0,0 +1,117 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: MQTT Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('namespace_m_q_t_t.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle"><div class="title">MQTT Namespace Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_configuration.html">Configuration</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> publishing configuration.  <a href="class_m_q_t_t_1_1_configuration.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_exception.html">Exception</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a> <a class="el" href="class_m_q_t_t_1_1_exception.html" title="MQTT Publisher Exception.">Exception</a>.  <a href="class_m_q_t_t_1_1_exception.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_m_q_t_t_1_1_message_container.html">MessageContainer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message struct.  <a href="struct_m_q_t_t_1_1_message_container.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_m_q_t_t_1_1_publisher.html">Publisher</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a>.  <a href="class_m_q_t_t_1_1_publisher.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_m_q_t_t.html">MQTT</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/namespace_m_q_t_t.js b/doc/html/namespace_m_q_t_t.js
new file mode 100644
index 0000000000000000000000000000000000000000..9e673e068cc893854d000f0db9be69739206d93c
--- /dev/null
+++ b/doc/html/namespace_m_q_t_t.js
@@ -0,0 +1,7 @@
+var namespace_m_q_t_t =
+[
+    [ "Configuration", "class_m_q_t_t_1_1_configuration.html", "class_m_q_t_t_1_1_configuration" ],
+    [ "Exception", "class_m_q_t_t_1_1_exception.html", "class_m_q_t_t_1_1_exception" ],
+    [ "MessageContainer", "struct_m_q_t_t_1_1_message_container.html", "struct_m_q_t_t_1_1_message_container" ],
+    [ "Publisher", "class_m_q_t_t_1_1_publisher.html", "class_m_q_t_t_1_1_publisher" ]
+];
\ No newline at end of file
diff --git a/doc/html/namespace_s_i_g_n.html b/doc/html/namespace_s_i_g_n.html
new file mode 100644
index 0000000000000000000000000000000000000000..afc599e08a279982544e03198e1d73e48565479e
--- /dev/null
+++ b/doc/html/namespace_s_i_g_n.html
@@ -0,0 +1,111 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SIGN Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('namespace_s_i_g_n.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle"><div class="title">SIGN Namespace Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_hasher.html">Hasher</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">SHA256 <a class="el" href="class_s_i_g_n_1_1_hasher.html" title="SHA256 Hasher.">Hasher</a>.  <a href="class_s_i_g_n_1_1_hasher.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_i_g_n_1_1_signer.html">Signer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">Signer</a>.  <a href="class_s_i_g_n_1_1_signer.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_i_g_n.html">SIGN</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/namespace_s_i_g_n.js b/doc/html/namespace_s_i_g_n.js
new file mode 100644
index 0000000000000000000000000000000000000000..b095deeee78b9224fb1c90c69e4aad46f8646114
--- /dev/null
+++ b/doc/html/namespace_s_i_g_n.js
@@ -0,0 +1,5 @@
+var namespace_s_i_g_n =
+[
+    [ "Hasher", "class_s_i_g_n_1_1_hasher.html", "class_s_i_g_n_1_1_hasher" ],
+    [ "Signer", "class_s_i_g_n_1_1_signer.html", "class_s_i_g_n_1_1_signer" ]
+];
\ No newline at end of file
diff --git a/doc/html/namespace_s_o_i_l.html b/doc/html/namespace_s_o_i_l.html
new file mode 100644
index 0000000000000000000000000000000000000000..1d7f52877d395ddf1bd37fa75406def3913ceba6
--- /dev/null
+++ b/doc/html/namespace_s_o_i_l.html
@@ -0,0 +1,1040 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: SOIL Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('namespace_s_o_i_l.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle"><div class="title">SOIL Namespace Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Type definitions.  
+<a href="namespace_s_o_i_l.html#details">More...</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container.html">Container</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a>.  <a href="class_s_o_i_l_1_1_container.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html">Container&lt; T, -1, -1 &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template specialization for Scalars.  <a href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html">Container&lt; T, x, -1 &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Template specialization for 1D-Arrays/Vectors.  <a href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_element.html">Element</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Base <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_element.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_enum.html">Enum</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> Datatype.  <a href="class_s_o_i_l_1_1_enum.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_figure.html">Figure</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Intermediate class for <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> that derives from <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a>.  <a href="class_s_o_i_l_1_1_figure.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_function.html">Function</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> Class.  <a href="class_s_o_i_l_1_1_function.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_object.html">Object</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> Class.  <a href="class_s_o_i_l_1_1_object.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_parameter.html">Parameter</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> Class.  <a href="class_s_o_i_l_1_1_parameter.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range.html">Range</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> Helper Class.  <a href="class_s_o_i_l_1_1_range.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html">Range&lt; ENUM &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a>.  <a href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html">Range&lt; std::string &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">String <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a>.  <a href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_time.html">Time</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a>.  <a href="class_s_o_i_l_1_1_time.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_s_o_i_l_1_1_variable.html">Variable</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> Class.  <a href="class_s_o_i_l_1_1_variable.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aef76c04a3939438dd7454193a3d56384"><td class="memItemLeft" align="right" valign="top">typedef int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384">INT</a></td></tr>
+<tr class="memdesc:aef76c04a3939438dd7454193a3d56384"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Integer.  <a href="namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384">More...</a><br /></td></tr>
+<tr class="separator:aef76c04a3939438dd7454193a3d56384"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1691ac525df63feb4f180fcc32f307f1"><td class="memItemLeft" align="right" valign="top">typedef double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1">DOUBLE</a></td></tr>
+<tr class="memdesc:a1691ac525df63feb4f180fcc32f307f1"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Double.  <a href="namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1">More...</a><br /></td></tr>
+<tr class="separator:a1691ac525df63feb4f180fcc32f307f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79f0d9e5821444f0265d9edf1e37f237"><td class="memItemLeft" align="right" valign="top">typedef bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">BOOL</a></td></tr>
+<tr class="memdesc:a79f0d9e5821444f0265d9edf1e37f237"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Boolean.  <a href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">More...</a><br /></td></tr>
+<tr class="separator:a79f0d9e5821444f0265d9edf1e37f237"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69374c360d593ed3cd4df6f3ebb40643"><td class="memItemLeft" align="right" valign="top">typedef std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643">STRING</a></td></tr>
+<tr class="memdesc:a69374c360d593ed3cd4df6f3ebb40643"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> String.  <a href="namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643">More...</a><br /></td></tr>
+<tr class="separator:a69374c360d593ed3cd4df6f3ebb40643"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d5fe6676b3cd6aef4b24e9c4ba4f097"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="class_s_o_i_l_1_1_enum.html">Enum</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">ENUM</a></td></tr>
+<tr class="memdesc:a1d5fe6676b3cd6aef4b24e9c4ba4f097"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a>.  <a href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">More...</a><br /></td></tr>
+<tr class="separator:a1d5fe6676b3cd6aef4b24e9c4ba4f097"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a088b157f218c9c844ae77c2c07f1b328"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">TIME</a></td></tr>
+<tr class="memdesc:a088b157f218c9c844ae77c2c07f1b328"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a>.  <a href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">More...</a><br /></td></tr>
+<tr class="separator:a088b157f218c9c844ae77c2c07f1b328"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a738722655e044a443e338fde0f97e9a0"><td class="memItemLeft" align="right" valign="top">typedef std::vector&lt; unsigned int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0">DIMENSION</a></td></tr>
+<tr class="memdesc:a738722655e044a443e338fde0f97e9a0"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Dimension.  <a href="namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0">More...</a><br /></td></tr>
+<tr class="separator:a738722655e044a443e338fde0f97e9a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:acc4b84d1cba2fafd495c35ebaeae1b96"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">null_deleter</a> (<a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a> *ptr)</td></tr>
+<tr class="memdesc:acc4b84d1cba2fafd495c35ebaeae1b96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Null deleter.  <a href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">More...</a><br /></td></tr>
+<tr class="separator:acc4b84d1cba2fafd495c35ebaeae1b96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a485afdb40b0c76b73cbbc0da177cf8e3"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a485afdb40b0c76b73cbbc0da177cf8e3"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">datatype</a> (void)</td></tr>
+<tr class="memdesc:a485afdb40b0c76b73cbbc0da177cf8e3"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON datatype.  <a href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">More...</a><br /></td></tr>
+<tr class="separator:a485afdb40b0c76b73cbbc0da177cf8e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a863aac9ac9eb4396135f86bd9bc29bad"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a863aac9ac9eb4396135f86bd9bc29bad"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad">datatype&lt; double &gt;</a> (void)</td></tr>
+<tr class="separator:a863aac9ac9eb4396135f86bd9bc29bad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a034d9e6f234755509cc20b01b506f761"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a034d9e6f234755509cc20b01b506f761"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761">datatype&lt; bool &gt;</a> (void)</td></tr>
+<tr class="separator:a034d9e6f234755509cc20b01b506f761"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa97c25e5a3e597eea65e13ac0ce85416"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:aa97c25e5a3e597eea65e13ac0ce85416"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#aa97c25e5a3e597eea65e13ac0ce85416">datatype&lt; std::string &gt;</a> (void)</td></tr>
+<tr class="separator:aa97c25e5a3e597eea65e13ac0ce85416"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a980491413d86c50ced57a8345c8f63ed"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a980491413d86c50ced57a8345c8f63ed"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed">datatype&lt; int64_t &gt;</a> (void)</td></tr>
+<tr class="separator:a980491413d86c50ced57a8345c8f63ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e904aedc828f75201ffc0452ff28c03"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a1e904aedc828f75201ffc0452ff28c03"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03">datatype&lt; int &gt;</a> (void)</td></tr>
+<tr class="separator:a1e904aedc828f75201ffc0452ff28c03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa16db0f32c1f6a992261e1747be93097"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:aa16db0f32c1f6a992261e1747be93097"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#aa16db0f32c1f6a992261e1747be93097">datatype&lt; SOIL::TIME &gt;</a> (void)</td></tr>
+<tr class="separator:aa16db0f32c1f6a992261e1747be93097"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3656e92123956c8afcfbe545eef81eb7"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a3656e92123956c8afcfbe545eef81eb7"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a3656e92123956c8afcfbe545eef81eb7">datatype&lt; SOIL::ENUM &gt;</a> (void)</td></tr>
+<tr class="separator:a3656e92123956c8afcfbe545eef81eb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82671406aa31a367c38dcad31d359b92"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a82671406aa31a367c38dcad31d359b92"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">to_json</a> (const T &amp;value)</td></tr>
+<tr class="memdesc:a82671406aa31a367c38dcad31d359b92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Value to JSON.  <a href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">More...</a><br /></td></tr>
+<tr class="separator:a82671406aa31a367c38dcad31d359b92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57872750dce21dba7ad0597f87c45556"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a57872750dce21dba7ad0597f87c45556"><td class="memTemplItemLeft" align="right" valign="top">DLL T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">to_value</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="memdesc:a57872750dce21dba7ad0597f87c45556"><td class="mdescLeft">&#160;</td><td class="mdescRight">JSON to Value.  <a href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">More...</a><br /></td></tr>
+<tr class="separator:a57872750dce21dba7ad0597f87c45556"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaff67634d006fd7dca3fffb14b28dd8e"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:aaff67634d006fd7dca3fffb14b28dd8e"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e">to_json&lt; double &gt;</a> (const double &amp;value)</td></tr>
+<tr class="separator:aaff67634d006fd7dca3fffb14b28dd8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada5ccc8aa10b097eea146a1b2d720e95"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:ada5ccc8aa10b097eea146a1b2d720e95"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95">to_json&lt; int64_t &gt;</a> (const int64_t &amp;value)</td></tr>
+<tr class="separator:ada5ccc8aa10b097eea146a1b2d720e95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86cf6d407ececca2487dcbe521978d21"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a86cf6d407ececca2487dcbe521978d21"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">to_json&lt; int &gt;</a> (const int &amp;value)</td></tr>
+<tr class="separator:a86cf6d407ececca2487dcbe521978d21"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02992988be78a7ab33f587f28f9d77ee"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a02992988be78a7ab33f587f28f9d77ee"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a02992988be78a7ab33f587f28f9d77ee">to_json&lt; std::string &gt;</a> (const std::string &amp;value)</td></tr>
+<tr class="separator:a02992988be78a7ab33f587f28f9d77ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cb86f8e799f4d035ef321becf44d6e2"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a6cb86f8e799f4d035ef321becf44d6e2"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a6cb86f8e799f4d035ef321becf44d6e2">to_json&lt; SOIL::TIME &gt;</a> (const <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &amp;value)</td></tr>
+<tr class="separator:a6cb86f8e799f4d035ef321becf44d6e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a19e241bb85fab8d5669742af038a6b"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a7a19e241bb85fab8d5669742af038a6b"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a7a19e241bb85fab8d5669742af038a6b">to_json&lt; SOIL::ENUM &gt;</a> (const <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &amp;value)</td></tr>
+<tr class="separator:a7a19e241bb85fab8d5669742af038a6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c15040c8f4602cc146655bf71293721"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a2c15040c8f4602cc146655bf71293721"><td class="memTemplItemLeft" align="right" valign="top">DLL web::json::value&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a2c15040c8f4602cc146655bf71293721">to_json&lt; SOIL::BOOL &gt;</a> (const bool &amp;value)</td></tr>
+<tr class="separator:a2c15040c8f4602cc146655bf71293721"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5865fafee3cc8f7eeba8269f24c86ec"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:aa5865fafee3cc8f7eeba8269f24c86ec"><td class="memTemplItemLeft" align="right" valign="top">DLL double&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec">to_value&lt; double &gt;</a> (web::json::value value)</td></tr>
+<tr class="separator:aa5865fafee3cc8f7eeba8269f24c86ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a104dd24cc9e4f3291cd6f6cd4ef9a962"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a104dd24cc9e4f3291cd6f6cd4ef9a962"><td class="memTemplItemLeft" align="right" valign="top">DLL int&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962">to_value&lt; int &gt;</a> (web::json::value value)</td></tr>
+<tr class="separator:a104dd24cc9e4f3291cd6f6cd4ef9a962"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad66a788615277edb2f3e7077d89cd942"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:ad66a788615277edb2f3e7077d89cd942"><td class="memTemplItemLeft" align="right" valign="top">DLL int64_t&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942">to_value&lt; int64_t &gt;</a> (web::json::value value)</td></tr>
+<tr class="separator:ad66a788615277edb2f3e7077d89cd942"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b6625a4bf4d20d486a4258a17462ef9"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a5b6625a4bf4d20d486a4258a17462ef9"><td class="memTemplItemLeft" align="right" valign="top">DLL std::string&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a5b6625a4bf4d20d486a4258a17462ef9">to_value&lt; std::string &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:a5b6625a4bf4d20d486a4258a17462ef9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10e716692b430aae80488a4eb82c7711"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a10e716692b430aae80488a4eb82c7711"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a10e716692b430aae80488a4eb82c7711">to_value&lt; SOIL::TIME &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:a10e716692b430aae80488a4eb82c7711"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80e0cc86c7756c3f9b4ccf338cd146bd"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:a80e0cc86c7756c3f9b4ccf338cd146bd"><td class="memTemplItemLeft" align="right" valign="top">DLL <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a80e0cc86c7756c3f9b4ccf338cd146bd">to_value&lt; SOIL::ENUM &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:a80e0cc86c7756c3f9b4ccf338cd146bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adaab1a60ee0b36f8537055549511ba7b"><td class="memItemLeft" align="right" valign="top">template&lt;&gt; </td></tr>
+<tr class="memitem:adaab1a60ee0b36f8537055549511ba7b"><td class="memTemplItemLeft" align="right" valign="top">DLL bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b">to_value&lt; bool &gt;</a> (web::json::value <a class="el" href="_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d">json</a>)</td></tr>
+<tr class="separator:adaab1a60ee0b36f8537055549511ba7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc8de2e2651ccc2e7c03e8289cd64c2b"><td class="memItemLeft" align="right" valign="top">DLL bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">operator&gt;=</a> (const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;t1, const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;t2)</td></tr>
+<tr class="memdesc:adc8de2e2651ccc2e7c03e8289cd64c2b"><td class="mdescLeft">&#160;</td><td class="mdescRight">GEQ <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> Operator.  <a href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">More...</a><br /></td></tr>
+<tr class="separator:adc8de2e2651ccc2e7c03e8289cd64c2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b4ec3441b90255cca35259c5e4a9321"><td class="memItemLeft" align="right" valign="top">DLL bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">operator&lt;=</a> (const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;t1, const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;t2)</td></tr>
+<tr class="memdesc:a3b4ec3441b90255cca35259c5e4a9321"><td class="mdescLeft">&#160;</td><td class="mdescRight">LEQ <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> Operator.  <a href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">More...</a><br /></td></tr>
+<tr class="separator:a3b4ec3441b90255cca35259c5e4a9321"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Set of type definitions to make sure the user can name <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> specific types without knowing the explicit underlying C++ type. </p>
+</div><h2 class="groupheader">Typedef Documentation</h2>
+<a id="a79f0d9e5821444f0265d9edf1e37f237" name="a79f0d9e5821444f0265d9edf1e37f237"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a79f0d9e5821444f0265d9edf1e37f237">&#9670;&nbsp;</a></span>BOOL</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef bool <a class="el" href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">SOIL::BOOL</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Type definition for boolean type used in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a>. </p>
+
+<p class="definition">Definition at line <a class="el" href="_s_o_i_l_2_types_8h_source.html#l00033">33</a> of file <a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="a738722655e044a443e338fde0f97e9a0" name="a738722655e044a443e338fde0f97e9a0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a738722655e044a443e338fde0f97e9a0">&#9670;&nbsp;</a></span>DIMENSION</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef std::vector&lt;unsigned int&gt; <a class="el" href="namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0">SOIL::DIMENSION</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Type definition for the underlying datatype that is used to manage dimensions in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> </p>
+
+<p class="definition">Definition at line <a class="el" href="_s_o_i_l_2_types_8h_source.html#l00061">61</a> of file <a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="a1691ac525df63feb4f180fcc32f307f1" name="a1691ac525df63feb4f180fcc32f307f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1691ac525df63feb4f180fcc32f307f1">&#9670;&nbsp;</a></span>DOUBLE</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef double <a class="el" href="namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1">SOIL::DOUBLE</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Type definition for double type used in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a>. Double is the preferred floating point type in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a>. </p>
+
+<p class="definition">Definition at line <a class="el" href="_s_o_i_l_2_types_8h_source.html#l00026">26</a> of file <a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="a1d5fe6676b3cd6aef4b24e9c4ba4f097" name="a1d5fe6676b3cd6aef4b24e9c4ba4f097"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d5fe6676b3cd6aef4b24e9c4ba4f097">&#9670;&nbsp;</a></span>ENUM</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef <a class="el" href="class_s_o_i_l_1_1_enum.html">Enum</a> <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Type definition for the custom defined <a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> for consistency. </p>
+
+<p class="definition">Definition at line <a class="el" href="_s_o_i_l_2_types_8h_source.html#l00047">47</a> of file <a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="aef76c04a3939438dd7454193a3d56384" name="aef76c04a3939438dd7454193a3d56384"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef76c04a3939438dd7454193a3d56384">&#9670;&nbsp;</a></span>INT</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef int64_t <a class="el" href="namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384">SOIL::INT</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Type definition for integer type used in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a>. </p>
+
+<p class="definition">Definition at line <a class="el" href="_s_o_i_l_2_types_8h_source.html#l00018">18</a> of file <a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="a69374c360d593ed3cd4df6f3ebb40643" name="a69374c360d593ed3cd4df6f3ebb40643"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a69374c360d593ed3cd4df6f3ebb40643">&#9670;&nbsp;</a></span>STRING</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef std::string <a class="el" href="namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643">SOIL::STRING</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Type definition for string type used in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a>. </p>
+
+<p class="definition">Definition at line <a class="el" href="_s_o_i_l_2_types_8h_source.html#l00040">40</a> of file <a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<a id="a088b157f218c9c844ae77c2c07f1b328" name="a088b157f218c9c844ae77c2c07f1b328"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a088b157f218c9c844ae77c2c07f1b328">&#9670;&nbsp;</a></span>TIME</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Type definition for the custom defined <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> in <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> for consistency. </p>
+
+<p class="definition">Definition at line <a class="el" href="_s_o_i_l_2_types_8h_source.html#l00054">54</a> of file <a class="el" href="_s_o_i_l_2_types_8h_source.html">Types.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a485afdb40b0c76b73cbbc0da177cf8e3" name="a485afdb40b0c76b73cbbc0da177cf8e3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a485afdb40b0c76b73cbbc0da177cf8e3">&#9670;&nbsp;</a></span>datatype()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> SOIL::datatype </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Returns the datatype part of the SOIL-conformant JSON-representation of the figure, expressed as string. This function is declared in its specializations as it needs to be implemented expclicitiy for each datatype.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Dataype under consideration </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="namespace_h_t_t_p.html">HTTP</a> JSON representaion as HTTP::Json::string </dd></dl>
+
+</div>
+</div>
+<a id="a034d9e6f234755509cc20b01b506f761" name="a034d9e6f234755509cc20b01b506f761"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a034d9e6f234755509cc20b01b506f761">&#9670;&nbsp;</a></span>datatype&lt; bool &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a>&lt; bool &gt; </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_figure_8cpp_source.html#l00010">10</a> of file <a class="el" href="_figure_8cpp_source.html">Figure.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a863aac9ac9eb4396135f86bd9bc29bad" name="a863aac9ac9eb4396135f86bd9bc29bad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a863aac9ac9eb4396135f86bd9bc29bad">&#9670;&nbsp;</a></span>datatype&lt; double &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a>&lt; double &gt; </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_figure_8cpp_source.html#l00004">4</a> of file <a class="el" href="_figure_8cpp_source.html">Figure.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a1e904aedc828f75201ffc0452ff28c03" name="a1e904aedc828f75201ffc0452ff28c03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e904aedc828f75201ffc0452ff28c03">&#9670;&nbsp;</a></span>datatype&lt; int &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a>&lt; int &gt; </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_figure_8cpp_source.html#l00031">31</a> of file <a class="el" href="_figure_8cpp_source.html">Figure.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a980491413d86c50ced57a8345c8f63ed" name="a980491413d86c50ced57a8345c8f63ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a980491413d86c50ced57a8345c8f63ed">&#9670;&nbsp;</a></span>datatype&lt; int64_t &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a>&lt; int64_t &gt; </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="_figure_8cpp_source.html#l00024">24</a> of file <a class="el" href="_figure_8cpp_source.html">Figure.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a3656e92123956c8afcfbe545eef81eb7" name="a3656e92123956c8afcfbe545eef81eb7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3656e92123956c8afcfbe545eef81eb7">&#9670;&nbsp;</a></span>datatype&lt; SOIL::ENUM &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aa16db0f32c1f6a992261e1747be93097" name="aa16db0f32c1f6a992261e1747be93097"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa16db0f32c1f6a992261e1747be93097">&#9670;&nbsp;</a></span>datatype&lt; SOIL::TIME &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aa97c25e5a3e597eea65e13ac0ce85416" name="aa97c25e5a3e597eea65e13ac0ce85416"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa97c25e5a3e597eea65e13ac0ce85416">&#9670;&nbsp;</a></span>datatype&lt; std::string &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL <a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP::Json</a> <a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL::datatype</a>&lt; std::string &gt; </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="acc4b84d1cba2fafd495c35ebaeae1b96" name="acc4b84d1cba2fafd495c35ebaeae1b96"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acc4b84d1cba2fafd495c35ebaeae1b96">&#9670;&nbsp;</a></span>null_deleter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void SOIL::null_deleter </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="class_s_o_i_l_1_1_element.html">SOIL::Element</a> *&#160;</td>
+          <td class="paramname"><em>ptr</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p >A function that essentially does nothing which is required as argument in the constructor of <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> to avoid that delete is implicitly called a second time in the destructor when the member shared pointer to the object itself is deleted and the internal shared pointer is the last reference to the object. This situation occurs for root objects. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">ptr</td><td>Pointer on which to do nothing </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p class="definition">Definition at line <a class="el" href="_element_8h_source.html#l00278">278</a> of file <a class="el" href="_element_8h_source.html">Element.h</a>.</p>
+
+</div>
+</div>
+<a id="a3b4ec3441b90255cca35259c5e4a9321" name="a3b4ec3441b90255cca35259c5e4a9321"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b4ec3441b90255cca35259c5e4a9321">&#9670;&nbsp;</a></span>operator&lt;=()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::operator&lt;= </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;&#160;</td>
+          <td class="paramname"><em>t1</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;&#160;</td>
+          <td class="paramname"><em>t2</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Friend Operator &lt;=.</p>
+<p >Lower or equal operation for two <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> objects, which is needed for the correct implementation of the <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> class.</p>
+<p >Returns true if <code>t1</code> &lt;= <code>t2</code>, otherwise false. If one of the <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> objects is set to null, the operation returns false.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">t1</td><td>Left hand side time </td></tr>
+    <tr><td class="paramname">t2</td><td>Right hand side time </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Comparison result as boolean </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_time_8cpp_source.html#l00128">128</a> of file <a class="el" href="_time_8cpp_source.html">Time.cpp</a>.</p>
+
+</div>
+</div>
+<a id="adc8de2e2651ccc2e7c03e8289cd64c2b" name="adc8de2e2651ccc2e7c03e8289cd64c2b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc8de2e2651ccc2e7c03e8289cd64c2b">&#9670;&nbsp;</a></span>operator&gt;=()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool SOIL::operator&gt;= </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;&#160;</td>
+          <td class="paramname"><em>t1</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="class_s_o_i_l_1_1_time.html">Time</a> &amp;&#160;</td>
+          <td class="paramname"><em>t2</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Friend Operator &gt;=.</p>
+<p >Greater or equal operation for two <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> objects, which is needed for the correct implementation of the <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> class.</p>
+<p >Returns true if <code>t1</code> &gt;= <code>t2</code>, otherwise false. If one of the <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> objects is set to null, the operation returns false.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">t1</td><td>Left hand side time </td></tr>
+    <tr><td class="paramname">t2</td><td>Right hand side time </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Comparison result as boolean </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="_time_8cpp_source.html#l00116">116</a> of file <a class="el" href="_time_8cpp_source.html">Time.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a82671406aa31a367c38dcad31d359b92" name="a82671406aa31a367c38dcad31d359b92"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a82671406aa31a367c38dcad31d359b92">&#9670;&nbsp;</a></span>to_json()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL web::json::value SOIL::to_json </td>
+          <td>(</td>
+          <td class="paramtype">const T &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Helper function to convert a value to its correct JSON value (RHS of key in document). This is a template function that is specialized for every datatype.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Datatype under consideration </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Value to convert </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>JSON value </dd></dl>
+
+</div>
+</div>
+<a id="aaff67634d006fd7dca3fffb14b28dd8e" name="aaff67634d006fd7dca3fffb14b28dd8e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaff67634d006fd7dca3fffb14b28dd8e">&#9670;&nbsp;</a></span>to_json&lt; double &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; double &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const double &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00011">11</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a86cf6d407ececca2487dcbe521978d21" name="a86cf6d407ececca2487dcbe521978d21"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a86cf6d407ececca2487dcbe521978d21">&#9670;&nbsp;</a></span>to_json&lt; int &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; int &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const int &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00023">23</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ada5ccc8aa10b097eea146a1b2d720e95" name="ada5ccc8aa10b097eea146a1b2d720e95"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ada5ccc8aa10b097eea146a1b2d720e95">&#9670;&nbsp;</a></span>to_json&lt; int64_t &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; int64_t &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const int64_t &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00017">17</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a2c15040c8f4602cc146655bf71293721" name="a2c15040c8f4602cc146655bf71293721"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c15040c8f4602cc146655bf71293721">&#9670;&nbsp;</a></span>to_json&lt; SOIL::BOOL &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">SOIL::BOOL</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const bool &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a7a19e241bb85fab8d5669742af038a6b" name="a7a19e241bb85fab8d5669742af038a6b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a19e241bb85fab8d5669742af038a6b">&#9670;&nbsp;</a></span>to_json&lt; SOIL::ENUM &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a6cb86f8e799f4d035ef321becf44d6e2" name="a6cb86f8e799f4d035ef321becf44d6e2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6cb86f8e799f4d035ef321becf44d6e2">&#9670;&nbsp;</a></span>to_json&lt; SOIL::TIME &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a02992988be78a7ab33f587f28f9d77ee" name="a02992988be78a7ab33f587f28f9d77ee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a02992988be78a7ab33f587f28f9d77ee">&#9670;&nbsp;</a></span>to_json&lt; std::string &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL web::json::value <a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL::to_json</a>&lt; std::string &gt; </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a57872750dce21dba7ad0597f87c45556" name="a57872750dce21dba7ad0597f87c45556"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57872750dce21dba7ad0597f87c45556">&#9670;&nbsp;</a></span>to_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL T SOIL::to_value </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Helper function to convert a value from a JSON object to its equivalent internal <a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> datatype. This is a template function that is specialized for every datatype.</p>
+<dl class="tparams"><dt>Template Parameters</dt><dd>
+  <table class="tparams">
+    <tr><td class="paramname">T</td><td>Datatype under consideration </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">json</td><td>JSON object to convert </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Value in native datatype </dd></dl>
+
+</div>
+</div>
+<a id="adaab1a60ee0b36f8537055549511ba7b" name="adaab1a60ee0b36f8537055549511ba7b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adaab1a60ee0b36f8537055549511ba7b">&#9670;&nbsp;</a></span>to_value&lt; bool &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">bool <a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a>&lt; bool &gt; </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00092">92</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="aa5865fafee3cc8f7eeba8269f24c86ec" name="aa5865fafee3cc8f7eeba8269f24c86ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa5865fafee3cc8f7eeba8269f24c86ec">&#9670;&nbsp;</a></span>to_value&lt; double &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">double <a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a>&lt; double &gt; </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00055">55</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a104dd24cc9e4f3291cd6f6cd4ef9a962" name="a104dd24cc9e4f3291cd6f6cd4ef9a962"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a104dd24cc9e4f3291cd6f6cd4ef9a962">&#9670;&nbsp;</a></span>to_value&lt; int &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">int <a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a>&lt; int &gt; </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00062">62</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="ad66a788615277edb2f3e7077d89cd942" name="ad66a788615277edb2f3e7077d89cd942"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad66a788615277edb2f3e7077d89cd942">&#9670;&nbsp;</a></span>to_value&lt; int64_t &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">int64_t <a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a>&lt; int64_t &gt; </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>value</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="json__helpers_8cpp_source.html#l00068">68</a> of file <a class="el" href="json__helpers_8cpp_source.html">json_helpers.cpp</a>.</p>
+
+</div>
+</div>
+<a id="a80e0cc86c7756c3f9b4ccf338cd146bd" name="a80e0cc86c7756c3f9b4ccf338cd146bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a80e0cc86c7756c3f9b4ccf338cd146bd">&#9670;&nbsp;</a></span>to_value&lt; SOIL::ENUM &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> <a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL::ENUM</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a10e716692b430aae80488a4eb82c7711" name="a10e716692b430aae80488a4eb82c7711"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10e716692b430aae80488a4eb82c7711">&#9670;&nbsp;</a></span>to_value&lt; SOIL::TIME &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> <a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a>&lt; <a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL::TIME</a> &gt; </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a5b6625a4bf4d20d486a4258a17462ef9" name="a5b6625a4bf4d20d486a4258a17462ef9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b6625a4bf4d20d486a4258a17462ef9">&#9670;&nbsp;</a></span>to_value&lt; std::string &gt;()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;&gt; </div>
+      <table class="memname">
+        <tr>
+          <td class="memname">DLL std::string <a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL::to_value</a>&lt; std::string &gt; </td>
+          <td>(</td>
+          <td class="paramtype">web::json::value&#160;</td>
+          <td class="paramname"><em>json</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_s_o_i_l.html">SOIL</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/namespace_s_o_i_l.js b/doc/html/namespace_s_o_i_l.js
new file mode 100644
index 0000000000000000000000000000000000000000..2448b6f08646a8f5c3f0e5361d555dc3643709ba
--- /dev/null
+++ b/doc/html/namespace_s_o_i_l.js
@@ -0,0 +1,51 @@
+var namespace_s_o_i_l =
+[
+    [ "Container", "class_s_o_i_l_1_1_container.html", "class_s_o_i_l_1_1_container" ],
+    [ "Container< T, -1, -1 >", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html", "class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4" ],
+    [ "Container< T, x, -1 >", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html", "class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4" ],
+    [ "Element", "class_s_o_i_l_1_1_element.html", "class_s_o_i_l_1_1_element" ],
+    [ "Enum", "class_s_o_i_l_1_1_enum.html", "class_s_o_i_l_1_1_enum" ],
+    [ "Figure", "class_s_o_i_l_1_1_figure.html", "class_s_o_i_l_1_1_figure" ],
+    [ "Function", "class_s_o_i_l_1_1_function.html", "class_s_o_i_l_1_1_function" ],
+    [ "Object", "class_s_o_i_l_1_1_object.html", "class_s_o_i_l_1_1_object" ],
+    [ "Parameter", "class_s_o_i_l_1_1_parameter.html", "class_s_o_i_l_1_1_parameter" ],
+    [ "Range", "class_s_o_i_l_1_1_range.html", "class_s_o_i_l_1_1_range" ],
+    [ "Range< ENUM >", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html", "class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4" ],
+    [ "Range< std::string >", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html", "class_s_o_i_l_1_1_range_3_01std_1_1string_01_4" ],
+    [ "Time", "class_s_o_i_l_1_1_time.html", "class_s_o_i_l_1_1_time" ],
+    [ "Variable", "class_s_o_i_l_1_1_variable.html", "class_s_o_i_l_1_1_variable" ],
+    [ "BOOL", "namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237", null ],
+    [ "DIMENSION", "namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0", null ],
+    [ "DOUBLE", "namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1", null ],
+    [ "ENUM", "namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097", null ],
+    [ "INT", "namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384", null ],
+    [ "STRING", "namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643", null ],
+    [ "TIME", "namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328", null ],
+    [ "datatype", "namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3", null ],
+    [ "datatype< bool >", "namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761", null ],
+    [ "datatype< double >", "namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad", null ],
+    [ "datatype< int >", "namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03", null ],
+    [ "datatype< int64_t >", "namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed", null ],
+    [ "datatype< SOIL::ENUM >", "namespace_s_o_i_l.html#a3656e92123956c8afcfbe545eef81eb7", null ],
+    [ "datatype< SOIL::TIME >", "namespace_s_o_i_l.html#aa16db0f32c1f6a992261e1747be93097", null ],
+    [ "datatype< std::string >", "namespace_s_o_i_l.html#aa97c25e5a3e597eea65e13ac0ce85416", null ],
+    [ "null_deleter", "namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96", null ],
+    [ "operator<=", "namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321", null ],
+    [ "operator>=", "namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b", null ],
+    [ "to_json", "namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92", null ],
+    [ "to_json< double >", "namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e", null ],
+    [ "to_json< int >", "namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21", null ],
+    [ "to_json< int64_t >", "namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95", null ],
+    [ "to_json< SOIL::BOOL >", "namespace_s_o_i_l.html#a2c15040c8f4602cc146655bf71293721", null ],
+    [ "to_json< SOIL::ENUM >", "namespace_s_o_i_l.html#a7a19e241bb85fab8d5669742af038a6b", null ],
+    [ "to_json< SOIL::TIME >", "namespace_s_o_i_l.html#a6cb86f8e799f4d035ef321becf44d6e2", null ],
+    [ "to_json< std::string >", "namespace_s_o_i_l.html#a02992988be78a7ab33f587f28f9d77ee", null ],
+    [ "to_value", "namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556", null ],
+    [ "to_value< bool >", "namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b", null ],
+    [ "to_value< double >", "namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec", null ],
+    [ "to_value< int >", "namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962", null ],
+    [ "to_value< int64_t >", "namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942", null ],
+    [ "to_value< SOIL::ENUM >", "namespace_s_o_i_l.html#a80e0cc86c7756c3f9b4ccf338cd146bd", null ],
+    [ "to_value< SOIL::TIME >", "namespace_s_o_i_l.html#a10e716692b430aae80488a4eb82c7711", null ],
+    [ "to_value< std::string >", "namespace_s_o_i_l.html#a5b6625a4bf4d20d486a4258a17462ef9", null ]
+];
\ No newline at end of file
diff --git a/doc/html/namespace_u_d_p.html b/doc/html/namespace_u_d_p.html
new file mode 100644
index 0000000000000000000000000000000000000000..01ac3a67b8b7ae7799610b8559a14ccbe25042b9
--- /dev/null
+++ b/doc/html/namespace_u_d_p.html
@@ -0,0 +1,114 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: UDP Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('namespace_u_d_p.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#nested-classes">Classes</a>  </div>
+  <div class="headertitle"><div class="title">UDP Namespace Reference</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_broadcast.html">Broadcast</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a>.  <a href="class_u_d_p_1_1_broadcast.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_configuration.html">Configuration</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_configuration.html" title="UDP Broadcast Configuration.">Configuration</a>.  <a href="class_u_d_p_1_1_configuration.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_d_p_1_1_exception.html">Exception</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_exception.html" title="UDP Broadcast Exception.">Exception</a>.  <a href="class_u_d_p_1_1_exception.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_u_d_p.html">UDP</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/namespace_u_d_p.js b/doc/html/namespace_u_d_p.js
new file mode 100644
index 0000000000000000000000000000000000000000..3f3987e74c0d16ee90f6c95e882b1bb1a2b3740c
--- /dev/null
+++ b/doc/html/namespace_u_d_p.js
@@ -0,0 +1,6 @@
+var namespace_u_d_p =
+[
+    [ "Broadcast", "class_u_d_p_1_1_broadcast.html", "class_u_d_p_1_1_broadcast" ],
+    [ "Configuration", "class_u_d_p_1_1_configuration.html", "class_u_d_p_1_1_configuration" ],
+    [ "Exception", "class_u_d_p_1_1_exception.html", "class_u_d_p_1_1_exception" ]
+];
\ No newline at end of file
diff --git a/doc/html/namespacemembers.html b/doc/html/namespacemembers.html
new file mode 100644
index 0000000000000000000000000000000000000000..c1ebc7059546d8c789dfd6dcf57779e546fd5eb9
--- /dev/null
+++ b/doc/html/namespacemembers.html
@@ -0,0 +1,178 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Namespace Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('namespacemembers.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all namespace members with links to the namespace documentation for each member:</div>
+
+<h3><a id="index_b" name="index_b"></a>- b -</h3><ul>
+<li>BOOL&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">SOIL</a></li>
+</ul>
+
+
+<h3><a id="index_d" name="index_d"></a>- d -</h3><ul>
+<li>datatype()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL</a></li>
+<li>datatype&lt; bool &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761">SOIL</a></li>
+<li>datatype&lt; double &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad">SOIL</a></li>
+<li>datatype&lt; int &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03">SOIL</a></li>
+<li>datatype&lt; int64_t &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed">SOIL</a></li>
+<li>datatype&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a3656e92123956c8afcfbe545eef81eb7">SOIL</a></li>
+<li>datatype&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#aa16db0f32c1f6a992261e1747be93097">SOIL</a></li>
+<li>datatype&lt; std::string &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#aa97c25e5a3e597eea65e13ac0ce85416">SOIL</a></li>
+<li>DIMENSION&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0">SOIL</a></li>
+<li>DOUBLE&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1">SOIL</a></li>
+</ul>
+
+
+<h3><a id="index_e" name="index_e"></a>- e -</h3><ul>
+<li>ENUM&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL</a></li>
+</ul>
+
+
+<h3><a id="index_i" name="index_i"></a>- i -</h3><ul>
+<li>INT&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384">SOIL</a></li>
+</ul>
+
+
+<h3><a id="index_j" name="index_j"></a>- j -</h3><ul>
+<li>Json&#160;:&#160;<a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP</a></li>
+</ul>
+
+
+<h3><a id="index_m" name="index_m"></a>- m -</h3><ul>
+<li>Methods&#160;:&#160;<a class="el" href="namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f">HTTP</a></li>
+</ul>
+
+
+<h3><a id="index_n" name="index_n"></a>- n -</h3><ul>
+<li>null_deleter()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">SOIL</a></li>
+</ul>
+
+
+<h3><a id="index_o" name="index_o"></a>- o -</h3><ul>
+<li>operator&lt;=()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">SOIL</a></li>
+<li>operator&gt;=()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">SOIL</a></li>
+</ul>
+
+
+<h3><a id="index_r" name="index_r"></a>- r -</h3><ul>
+<li>Request&#160;:&#160;<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP</a></li>
+<li>Response&#160;:&#160;<a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP</a></li>
+</ul>
+
+
+<h3><a id="index_s" name="index_s"></a>- s -</h3><ul>
+<li>Status&#160;:&#160;<a class="el" href="namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95">HTTP</a></li>
+<li>STRING&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643">SOIL</a></li>
+</ul>
+
+
+<h3><a id="index_t" name="index_t"></a>- t -</h3><ul>
+<li>TIME&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL</a></li>
+<li>to_json()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL</a></li>
+<li>to_json&lt; double &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e">SOIL</a></li>
+<li>to_json&lt; int &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">SOIL</a></li>
+<li>to_json&lt; int64_t &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95">SOIL</a></li>
+<li>to_json&lt; SOIL::BOOL &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a2c15040c8f4602cc146655bf71293721">SOIL</a></li>
+<li>to_json&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a7a19e241bb85fab8d5669742af038a6b">SOIL</a></li>
+<li>to_json&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a6cb86f8e799f4d035ef321becf44d6e2">SOIL</a></li>
+<li>to_json&lt; std::string &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a02992988be78a7ab33f587f28f9d77ee">SOIL</a></li>
+<li>to_value()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL</a></li>
+<li>to_value&lt; bool &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b">SOIL</a></li>
+<li>to_value&lt; double &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec">SOIL</a></li>
+<li>to_value&lt; int &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962">SOIL</a></li>
+<li>to_value&lt; int64_t &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942">SOIL</a></li>
+<li>to_value&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a80e0cc86c7756c3f9b4ccf338cd146bd">SOIL</a></li>
+<li>to_value&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a10e716692b430aae80488a4eb82c7711">SOIL</a></li>
+<li>to_value&lt; std::string &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a5b6625a4bf4d20d486a4258a17462ef9">SOIL</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/namespacemembers_func.html b/doc/html/namespacemembers_func.html
new file mode 100644
index 0000000000000000000000000000000000000000..d141cdd2e4402260eec46b76d2615a578189f8e7
--- /dev/null
+++ b/doc/html/namespacemembers_func.html
@@ -0,0 +1,124 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Namespace Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('namespacemembers_func.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>datatype()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3">SOIL</a></li>
+<li>datatype&lt; bool &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761">SOIL</a></li>
+<li>datatype&lt; double &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad">SOIL</a></li>
+<li>datatype&lt; int &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03">SOIL</a></li>
+<li>datatype&lt; int64_t &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed">SOIL</a></li>
+<li>datatype&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a3656e92123956c8afcfbe545eef81eb7">SOIL</a></li>
+<li>datatype&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#aa16db0f32c1f6a992261e1747be93097">SOIL</a></li>
+<li>datatype&lt; std::string &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#aa97c25e5a3e597eea65e13ac0ce85416">SOIL</a></li>
+<li>null_deleter()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96">SOIL</a></li>
+<li>operator&lt;=()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321">SOIL</a></li>
+<li>operator&gt;=()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b">SOIL</a></li>
+<li>to_json()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92">SOIL</a></li>
+<li>to_json&lt; double &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e">SOIL</a></li>
+<li>to_json&lt; int &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21">SOIL</a></li>
+<li>to_json&lt; int64_t &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95">SOIL</a></li>
+<li>to_json&lt; SOIL::BOOL &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a2c15040c8f4602cc146655bf71293721">SOIL</a></li>
+<li>to_json&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a7a19e241bb85fab8d5669742af038a6b">SOIL</a></li>
+<li>to_json&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a6cb86f8e799f4d035ef321becf44d6e2">SOIL</a></li>
+<li>to_json&lt; std::string &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a02992988be78a7ab33f587f28f9d77ee">SOIL</a></li>
+<li>to_value()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556">SOIL</a></li>
+<li>to_value&lt; bool &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b">SOIL</a></li>
+<li>to_value&lt; double &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec">SOIL</a></li>
+<li>to_value&lt; int &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962">SOIL</a></li>
+<li>to_value&lt; int64_t &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942">SOIL</a></li>
+<li>to_value&lt; SOIL::ENUM &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a80e0cc86c7756c3f9b4ccf338cd146bd">SOIL</a></li>
+<li>to_value&lt; SOIL::TIME &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a10e716692b430aae80488a4eb82c7711">SOIL</a></li>
+<li>to_value&lt; std::string &gt;()&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a5b6625a4bf4d20d486a4258a17462ef9">SOIL</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/namespacemembers_type.html b/doc/html/namespacemembers_type.html
new file mode 100644
index 0000000000000000000000000000000000000000..a7c1ccb647bdfcdd4d3837d71d2afce2b1ad94d1
--- /dev/null
+++ b/doc/html/namespacemembers_type.html
@@ -0,0 +1,109 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Namespace Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('namespacemembers_type.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>BOOL&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237">SOIL</a></li>
+<li>DIMENSION&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0">SOIL</a></li>
+<li>DOUBLE&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1">SOIL</a></li>
+<li>ENUM&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097">SOIL</a></li>
+<li>INT&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384">SOIL</a></li>
+<li>Json&#160;:&#160;<a class="el" href="namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11">HTTP</a></li>
+<li>Methods&#160;:&#160;<a class="el" href="namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f">HTTP</a></li>
+<li>Request&#160;:&#160;<a class="el" href="namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea">HTTP</a></li>
+<li>Response&#160;:&#160;<a class="el" href="namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf">HTTP</a></li>
+<li>Status&#160;:&#160;<a class="el" href="namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95">HTTP</a></li>
+<li>STRING&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643">SOIL</a></li>
+<li>TIME&#160;:&#160;<a class="el" href="namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328">SOIL</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/namespacemqtt.html b/doc/html/namespacemqtt.html
new file mode 100644
index 0000000000000000000000000000000000000000..3f1c8212b2a17b1a31aa859c199e5340874c4efa
--- /dev/null
+++ b/doc/html/namespacemqtt.html
@@ -0,0 +1,99 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: mqtt Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('namespacemqtt.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">mqtt Namespace Reference</div></div>
+</div><!--header-->
+<div class="contents">
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespacemqtt.html">mqtt</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/namespaces.html b/doc/html/namespaces.html
new file mode 100644
index 0000000000000000000000000000000000000000..c3b08476722d1b451de06ac80e2e94d5b9e13222
--- /dev/null
+++ b/doc/html/namespaces.html
@@ -0,0 +1,133 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Namespace List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('namespaces.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Namespace List</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all namespaces with brief descriptions:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_h_t_t_p.html" target="_self">HTTP</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_h_t_t_p_1_1_resource.html" target="_self">Resource</a></td><td class="desc"><a class="el" href="namespace_h_t_t_p.html">HTTP</a> <a class="el" href="class_h_t_t_p_1_1_resource.html" title="HTTP Resource base class.">Resource</a> base class </td></tr>
+<tr id="row_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_h_t_t_p_1_1_server.html" target="_self">Server</a></td><td class="desc">HTPP <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">Server</a> </td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_1_" class="arrow" onclick="toggleFolder('1_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_m_q_t_t.html" target="_self">MQTT</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_m_q_t_t_1_1_configuration.html" target="_self">Configuration</a></td><td class="desc"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> publishing configuration </td></tr>
+<tr id="row_1_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_m_q_t_t_1_1_exception.html" target="_self">Exception</a></td><td class="desc"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a> <a class="el" href="class_m_q_t_t_1_1_exception.html" title="MQTT Publisher Exception.">Exception</a> </td></tr>
+<tr id="row_1_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_m_q_t_t_1_1_message_container.html" target="_self">MessageContainer</a></td><td class="desc">Internal <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message struct </td></tr>
+<tr id="row_1_3_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_m_q_t_t_1_1_publisher.html" target="_self">Publisher</a></td><td class="desc"><a class="el" href="namespace_m_q_t_t.html">MQTT</a> <a class="el" href="class_m_q_t_t_1_1_publisher.html" title="MQTT Publisher.">Publisher</a> </td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespacemqtt.html" target="_self">mqtt</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_3_" class="arrow" onclick="toggleFolder('3_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_s_i_g_n.html" target="_self">SIGN</a></td><td class="desc"></td></tr>
+<tr id="row_3_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_i_g_n_1_1_hasher.html" target="_self">Hasher</a></td><td class="desc">SHA256 <a class="el" href="class_s_i_g_n_1_1_hasher.html" title="SHA256 Hasher.">Hasher</a> </td></tr>
+<tr id="row_3_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_i_g_n_1_1_signer.html" target="_self">Signer</a></td><td class="desc"><a class="el" href="class_s_i_g_n_1_1_signer.html" title="Signer.">Signer</a> </td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_4_" class="arrow" onclick="toggleFolder('4_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_s_o_i_l.html" target="_self">SOIL</a></td><td class="desc">Type definitions </td></tr>
+<tr id="row_4_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_container.html" target="_self">Container</a></td><td class="desc">Data <a class="el" href="class_s_o_i_l_1_1_container.html" title="Data Container.">Container</a> </td></tr>
+<tr id="row_4_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html" target="_self">Container&lt; T, -1, -1 &gt;</a></td><td class="desc">Template specialization for Scalars </td></tr>
+<tr id="row_4_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html" target="_self">Container&lt; T, x, -1 &gt;</a></td><td class="desc">Template specialization for 1D-Arrays/Vectors </td></tr>
+<tr id="row_4_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_element.html" target="_self">Element</a></td><td class="desc"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> Base <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> </td></tr>
+<tr id="row_4_4_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_enum.html" target="_self">Enum</a></td><td class="desc"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> Datatype </td></tr>
+<tr id="row_4_5_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_figure.html" target="_self">Figure</a></td><td class="desc">Intermediate class for <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> that derives from <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> </td></tr>
+<tr id="row_4_6_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_function.html" target="_self">Function</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_function.html" title="Function Class.">Function</a> Class </td></tr>
+<tr id="row_4_7_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_object.html" target="_self">Object</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_object.html" title="Object Class.">Object</a> Class </td></tr>
+<tr id="row_4_8_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_parameter.html" target="_self">Parameter</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a> Class </td></tr>
+<tr id="row_4_9_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_range.html" target="_self">Range</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> Helper Class </td></tr>
+<tr id="row_4_10_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html" target="_self">Range&lt; ENUM &gt;</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_enum.html" title="SOIL Enum Datatype.">Enum</a> <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> </td></tr>
+<tr id="row_4_11_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html" target="_self">Range&lt; std::string &gt;</a></td><td class="desc">String <a class="el" href="class_s_o_i_l_1_1_range.html" title="Range Helper Class.">Range</a> </td></tr>
+<tr id="row_4_12_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_time.html" target="_self">Time</a></td><td class="desc"><a class="el" href="namespace_s_o_i_l.html" title="Type definitions.">SOIL</a> <a class="el" href="class_s_o_i_l_1_1_time.html" title="SOIL Time.">Time</a> </td></tr>
+<tr id="row_4_13_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_s_o_i_l_1_1_variable.html" target="_self">Variable</a></td><td class="desc"><a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> Class </td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_5_" class="arrow" onclick="toggleFolder('5_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespace_u_d_p.html" target="_self">UDP</a></td><td class="desc"></td></tr>
+<tr id="row_5_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_u_d_p_1_1_broadcast.html" target="_self">Broadcast</a></td><td class="desc"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> </td></tr>
+<tr id="row_5_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_u_d_p_1_1_configuration.html" target="_self">Configuration</a></td><td class="desc"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_configuration.html" title="UDP Broadcast Configuration.">Configuration</a> </td></tr>
+<tr id="row_5_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_u_d_p_1_1_exception.html" target="_self">Exception</a></td><td class="desc"><a class="el" href="namespace_u_d_p.html">UDP</a> <a class="el" href="class_u_d_p_1_1_broadcast.html" title="UDP Broadcast.">Broadcast</a> <a class="el" href="class_u_d_p_1_1_exception.html" title="UDP Broadcast Exception.">Exception</a> </td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/namespaces_dup.js b/doc/html/namespaces_dup.js
new file mode 100644
index 0000000000000000000000000000000000000000..58caab4f4684d62f50f4d7192045458dca80c106
--- /dev/null
+++ b/doc/html/namespaces_dup.js
@@ -0,0 +1,9 @@
+var namespaces_dup =
+[
+    [ "HTTP", "namespace_h_t_t_p.html", "namespace_h_t_t_p" ],
+    [ "MQTT", "namespace_m_q_t_t.html", "namespace_m_q_t_t" ],
+    [ "mqtt", "namespacemqtt.html", null ],
+    [ "SIGN", "namespace_s_i_g_n.html", "namespace_s_i_g_n" ],
+    [ "SOIL", "namespace_s_o_i_l.html", "namespace_s_o_i_l" ],
+    [ "UDP", "namespace_u_d_p.html", "namespace_u_d_p" ]
+];
\ No newline at end of file
diff --git a/doc/html/nav_f.png b/doc/html/nav_f.png
new file mode 100644
index 0000000000000000000000000000000000000000..72a58a529ed3a9ed6aa0c51a79cf207e026deee2
Binary files /dev/null and b/doc/html/nav_f.png differ
diff --git a/doc/html/nav_g.png b/doc/html/nav_g.png
new file mode 100644
index 0000000000000000000000000000000000000000..2093a237a94f6c83e19ec6e5fd42f7ddabdafa81
Binary files /dev/null and b/doc/html/nav_g.png differ
diff --git a/doc/html/nav_h.png b/doc/html/nav_h.png
new file mode 100644
index 0000000000000000000000000000000000000000..33389b101d9cd9b4c98ad286b5d9c46a6671f650
Binary files /dev/null and b/doc/html/nav_h.png differ
diff --git a/doc/html/navtree.css b/doc/html/navtree.css
new file mode 100644
index 0000000000000000000000000000000000000000..d8a311a2ead9d4668cbc5a831e268ef2ddc20bc4
--- /dev/null
+++ b/doc/html/navtree.css
@@ -0,0 +1,147 @@
+#nav-tree .children_ul {
+  margin:0;
+  padding:4px;
+}
+
+#nav-tree ul {
+  list-style:none outside none;
+  margin:0px;
+  padding:0px;
+}
+
+#nav-tree li {
+  white-space:nowrap;
+  margin:0px;
+  padding:0px;
+}
+
+#nav-tree .plus {
+  margin:0px;
+}
+
+#nav-tree .selected {
+  background-image: url('tab_a.png');
+  background-repeat:repeat-x;
+  color: #fff;
+  text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+}
+
+#nav-tree img {
+  margin:0px;
+  padding:0px;
+  border:0px;
+  vertical-align: middle;
+}
+
+#nav-tree a {
+  text-decoration:none;
+  padding:0px;
+  margin:0px;
+  outline:none;
+}
+
+#nav-tree .label {
+  margin:0px;
+  padding:0px;
+  font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+}
+
+#nav-tree .label a {
+  padding:2px;
+}
+
+#nav-tree .selected a {
+  text-decoration:none;
+  color:#fff;
+}
+
+#nav-tree .children_ul {
+  margin:0px;
+  padding:0px;
+}
+
+#nav-tree .item {
+  margin:0px;
+  padding:0px;
+}
+
+#nav-tree {
+  padding: 0px 0px;
+  background-color: #FAFAFF; 
+  font-size:14px;
+  overflow:auto;
+}
+
+#doc-content {
+  overflow:auto;
+  display:block;
+  padding:0px;
+  margin:0px;
+  -webkit-overflow-scrolling : touch; /* iOS 5+ */
+}
+
+#side-nav {
+  padding:0 6px 0 0;
+  margin: 0px;
+  display:block;
+  position: absolute;
+  left: 0px;
+  width: 250px;
+  overflow : hidden;
+}
+
+.ui-resizable .ui-resizable-handle {
+  display:block;
+}
+
+.ui-resizable-e {
+  background-image:url("splitbar.png");
+  background-size:100%;
+  background-repeat:repeat-y;
+  background-attachment: scroll;
+  cursor:ew-resize;
+  height:100%;
+  right:0;
+  top:0;
+  width:6px;
+}
+
+.ui-resizable-handle {
+  display:none;
+  font-size:0.1px;
+  position:absolute;
+  z-index:1;
+}
+
+#nav-tree-contents {
+  margin: 6px 0px 0px 0px;
+}
+
+#nav-tree {
+  background-image:url('nav_h.png');
+  background-repeat:repeat-x;
+  background-color: #F9FAFC;
+  -webkit-overflow-scrolling : touch; /* iOS 5+ */
+}
+
+#nav-sync {
+  position:absolute;
+  top:5px;
+  right:24px;
+  z-index:0;
+}
+
+#nav-sync img {
+  opacity:0.3;
+}
+
+#nav-sync img:hover {
+  opacity:0.9;
+}
+
+@media print
+{
+  #nav-tree { display: none; }
+  div.ui-resizable-handle { display: none; position: relative; }
+}
+
diff --git a/doc/html/navtree.js b/doc/html/navtree.js
new file mode 100644
index 0000000000000000000000000000000000000000..27983687a968bba6866ade7a4f7c78f6b15a6164
--- /dev/null
+++ b/doc/html/navtree.js
@@ -0,0 +1,549 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+ */
+var navTreeSubIndices = new Array();
+var arrowDown = '&#9660;';
+var arrowRight = '&#9658;';
+
+function getData(varName)
+{
+  var i = varName.lastIndexOf('/');
+  var n = i>=0 ? varName.substring(i+1) : varName;
+  return eval(n.replace(/\-/g,'_'));
+}
+
+function stripPath(uri)
+{
+  return uri.substring(uri.lastIndexOf('/')+1);
+}
+
+function stripPath2(uri)
+{
+  var i = uri.lastIndexOf('/');
+  var s = uri.substring(i+1);
+  var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/);
+  return m ? uri.substring(i-6) : s;
+}
+
+function hashValue()
+{
+  return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,'');
+}
+
+function hashUrl()
+{
+  return '#'+hashValue();
+}
+
+function pathName()
+{
+  return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, '');
+}
+
+function localStorageSupported()
+{
+  try {
+    return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem;
+  }
+  catch(e) {
+    return false;
+  }
+}
+
+function storeLink(link)
+{
+  if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) {
+      window.localStorage.setItem('navpath',link);
+  }
+}
+
+function deleteLink()
+{
+  if (localStorageSupported()) {
+    window.localStorage.setItem('navpath','');
+  }
+}
+
+function cachedLink()
+{
+  if (localStorageSupported()) {
+    return window.localStorage.getItem('navpath');
+  } else {
+    return '';
+  }
+}
+
+function getScript(scriptName,func,show)
+{
+  var head = document.getElementsByTagName("head")[0];
+  var script = document.createElement('script');
+  script.id = scriptName;
+  script.type = 'text/javascript';
+  script.onload = func;
+  script.src = scriptName+'.js';
+  head.appendChild(script);
+}
+
+function createIndent(o,domNode,node,level)
+{
+  var level=-1;
+  var n = node;
+  while (n.parentNode) { level++; n=n.parentNode; }
+  if (node.childrenData) {
+    var imgNode = document.createElement("span");
+    imgNode.className = 'arrow';
+    imgNode.style.paddingLeft=(16*level).toString()+'px';
+    imgNode.innerHTML=arrowRight;
+    node.plus_img = imgNode;
+    node.expandToggle = document.createElement("a");
+    node.expandToggle.href = "javascript:void(0)";
+    node.expandToggle.onclick = function() {
+      if (node.expanded) {
+        $(node.getChildrenUL()).slideUp("fast");
+        node.plus_img.innerHTML=arrowRight;
+        node.expanded = false;
+      } else {
+        expandNode(o, node, false, false);
+      }
+    }
+    node.expandToggle.appendChild(imgNode);
+    domNode.appendChild(node.expandToggle);
+  } else {
+    var span = document.createElement("span");
+    span.className = 'arrow';
+    span.style.width   = 16*(level+1)+'px';
+    span.innerHTML = '&#160;';
+    domNode.appendChild(span);
+  }
+}
+
+var animationInProgress = false;
+
+function gotoAnchor(anchor,aname,updateLocation)
+{
+  var pos, docContent = $('#doc-content');
+  var ancParent = $(anchor.parent());
+  if (ancParent.hasClass('memItemLeft') ||
+      ancParent.hasClass('memtitle') ||
+      ancParent.hasClass('fieldname') ||
+      ancParent.hasClass('fieldtype') ||
+      ancParent.is(':header'))
+  {
+    pos = ancParent.position().top;
+  } else if (anchor.position()) {
+    pos = anchor.position().top;
+  }
+  if (pos) {
+    var dist = Math.abs(Math.min(
+               pos-docContent.offset().top,
+               docContent[0].scrollHeight-
+               docContent.height()-docContent.scrollTop()));
+    animationInProgress=true;
+    docContent.animate({
+      scrollTop: pos + docContent.scrollTop() - docContent.offset().top
+    },Math.max(50,Math.min(500,dist)),function(){
+      if (updateLocation) window.location.href=aname;
+      animationInProgress=false;
+    });
+  }
+}
+
+function newNode(o, po, text, link, childrenData, lastNode)
+{
+  var node = new Object();
+  node.children = Array();
+  node.childrenData = childrenData;
+  node.depth = po.depth + 1;
+  node.relpath = po.relpath;
+  node.isLast = lastNode;
+
+  node.li = document.createElement("li");
+  po.getChildrenUL().appendChild(node.li);
+  node.parentNode = po;
+
+  node.itemDiv = document.createElement("div");
+  node.itemDiv.className = "item";
+
+  node.labelSpan = document.createElement("span");
+  node.labelSpan.className = "label";
+
+  createIndent(o,node.itemDiv,node,0);
+  node.itemDiv.appendChild(node.labelSpan);
+  node.li.appendChild(node.itemDiv);
+
+  var a = document.createElement("a");
+  node.labelSpan.appendChild(a);
+  node.label = document.createTextNode(text);
+  node.expanded = false;
+  a.appendChild(node.label);
+  if (link) {
+    var url;
+    if (link.substring(0,1)=='^') {
+      url = link.substring(1);
+      link = url;
+    } else {
+      url = node.relpath+link;
+    }
+    a.className = stripPath(link.replace('#',':'));
+    if (link.indexOf('#')!=-1) {
+      var aname = '#'+link.split('#')[1];
+      var srcPage = stripPath(pathName());
+      var targetPage = stripPath(link.split('#')[0]);
+      a.href = srcPage!=targetPage ? url : "javascript:void(0)";
+      a.onclick = function(){
+        storeLink(link);
+        if (!$(a).parent().parent().hasClass('selected'))
+        {
+          $('.item').removeClass('selected');
+          $('.item').removeAttr('id');
+          $(a).parent().parent().addClass('selected');
+          $(a).parent().parent().attr('id','selected');
+        }
+        var anchor = $(aname);
+        gotoAnchor(anchor,aname,true);
+      };
+    } else {
+      a.href = url;
+      a.onclick = function() { storeLink(link); }
+    }
+  } else {
+    if (childrenData != null)
+    {
+      a.className = "nolink";
+      a.href = "javascript:void(0)";
+      a.onclick = node.expandToggle.onclick;
+    }
+  }
+
+  node.childrenUL = null;
+  node.getChildrenUL = function() {
+    if (!node.childrenUL) {
+      node.childrenUL = document.createElement("ul");
+      node.childrenUL.className = "children_ul";
+      node.childrenUL.style.display = "none";
+      node.li.appendChild(node.childrenUL);
+    }
+    return node.childrenUL;
+  };
+
+  return node;
+}
+
+function showRoot()
+{
+  var headerHeight = $("#top").height();
+  var footerHeight = $("#nav-path").height();
+  var windowHeight = $(window).height() - headerHeight - footerHeight;
+  (function (){ // retry until we can scroll to the selected item
+    try {
+      var navtree=$('#nav-tree');
+      navtree.scrollTo('#selected',100,{offset:-windowHeight/2});
+    } catch (err) {
+      setTimeout(arguments.callee, 0);
+    }
+  })();
+}
+
+function expandNode(o, node, imm, showRoot)
+{
+  if (node.childrenData && !node.expanded) {
+    if (typeof(node.childrenData)==='string') {
+      var varName    = node.childrenData;
+      getScript(node.relpath+varName,function(){
+        node.childrenData = getData(varName);
+        expandNode(o, node, imm, showRoot);
+      }, showRoot);
+    } else {
+      if (!node.childrenVisited) {
+        getNode(o, node);
+      }
+      $(node.getChildrenUL()).slideDown("fast");
+      node.plus_img.innerHTML = arrowDown;
+      node.expanded = true;
+    }
+  }
+}
+
+function glowEffect(n,duration)
+{
+  n.addClass('glow').delay(duration).queue(function(next){
+    $(this).removeClass('glow');next();
+  });
+}
+
+function highlightAnchor()
+{
+  var aname = hashUrl();
+  var anchor = $(aname);
+  if (anchor.parent().attr('class')=='memItemLeft'){
+    var rows = $('.memberdecls tr[class$="'+hashValue()+'"]');
+    glowEffect(rows.children(),300); // member without details
+  } else if (anchor.parent().attr('class')=='fieldname'){
+    glowEffect(anchor.parent().parent(),1000); // enum value
+  } else if (anchor.parent().attr('class')=='fieldtype'){
+    glowEffect(anchor.parent().parent(),1000); // struct field
+  } else if (anchor.parent().is(":header")) {
+    glowEffect(anchor.parent(),1000); // section header
+  } else {
+    glowEffect(anchor.next(),1000); // normal member
+  }
+}
+
+function selectAndHighlight(hash,n)
+{
+  var a;
+  if (hash) {
+    var link=stripPath(pathName())+':'+hash.substring(1);
+    a=$('.item a[class$="'+link+'"]');
+  }
+  if (a && a.length) {
+    a.parent().parent().addClass('selected');
+    a.parent().parent().attr('id','selected');
+    highlightAnchor();
+  } else if (n) {
+    $(n.itemDiv).addClass('selected');
+    $(n.itemDiv).attr('id','selected');
+  }
+  var topOffset=5;
+  if (typeof page_layout!=='undefined' && page_layout==1) {
+    topOffset+=$('#top').outerHeight();
+  }
+  if ($('#nav-tree-contents .item:first').hasClass('selected')) {
+    topOffset+=25;
+  }
+  $('#nav-sync').css('top',topOffset+'px');
+  showRoot();
+}
+
+function showNode(o, node, index, hash)
+{
+  if (node && node.childrenData) {
+    if (typeof(node.childrenData)==='string') {
+      var varName    = node.childrenData;
+      getScript(node.relpath+varName,function(){
+        node.childrenData = getData(varName);
+        showNode(o,node,index,hash);
+      },true);
+    } else {
+      if (!node.childrenVisited) {
+        getNode(o, node);
+      }
+      $(node.getChildrenUL()).css({'display':'block'});
+      node.plus_img.innerHTML = arrowDown;
+      node.expanded = true;
+      var n = node.children[o.breadcrumbs[index]];
+      if (index+1<o.breadcrumbs.length) {
+        showNode(o,n,index+1,hash);
+      } else {
+        if (typeof(n.childrenData)==='string') {
+          var varName = n.childrenData;
+          getScript(n.relpath+varName,function(){
+            n.childrenData = getData(varName);
+            node.expanded=false;
+            showNode(o,node,index,hash); // retry with child node expanded
+          },true);
+        } else {
+          var rootBase = stripPath(o.toroot.replace(/\..+$/, ''));
+          if (rootBase=="index" || rootBase=="pages" || rootBase=="search") {
+            expandNode(o, n, true, true);
+          }
+          selectAndHighlight(hash,n);
+        }
+      }
+    }
+  } else {
+    selectAndHighlight(hash);
+  }
+}
+
+function removeToInsertLater(element) {
+  var parentNode = element.parentNode;
+  var nextSibling = element.nextSibling;
+  parentNode.removeChild(element);
+  return function() {
+    if (nextSibling) {
+      parentNode.insertBefore(element, nextSibling);
+    } else {
+      parentNode.appendChild(element);
+    }
+  };
+}
+
+function getNode(o, po)
+{
+  var insertFunction = removeToInsertLater(po.li);
+  po.childrenVisited = true;
+  var l = po.childrenData.length-1;
+  for (var i in po.childrenData) {
+    var nodeData = po.childrenData[i];
+    po.children[i] = newNode(o, po, nodeData[0], nodeData[1], nodeData[2],
+      i==l);
+  }
+  insertFunction();
+}
+
+function gotoNode(o,subIndex,root,hash,relpath)
+{
+  var nti = navTreeSubIndices[subIndex][root+hash];
+  o.breadcrumbs = $.extend(true, [], nti ? nti : navTreeSubIndices[subIndex][root]);
+  if (!o.breadcrumbs && root!=NAVTREE[0][1]) { // fallback: show index
+    navTo(o,NAVTREE[0][1],"",relpath);
+    $('.item').removeClass('selected');
+    $('.item').removeAttr('id');
+  }
+  if (o.breadcrumbs) {
+    o.breadcrumbs.unshift(0); // add 0 for root node
+    showNode(o, o.node, 0, hash);
+  }
+}
+
+function navTo(o,root,hash,relpath)
+{
+  var link = cachedLink();
+  if (link) {
+    var parts = link.split('#');
+    root = parts[0];
+    if (parts.length>1) hash = '#'+parts[1].replace(/[^\w\-]/g,'');
+    else hash='';
+  }
+  if (hash.match(/^#l\d+$/)) {
+    var anchor=$('a[name='+hash.substring(1)+']');
+    glowEffect(anchor.parent(),1000); // line number
+    hash=''; // strip line number anchors
+  }
+  var url=root+hash;
+  var i=-1;
+  while (NAVTREEINDEX[i+1]<=url) i++;
+  if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index
+  if (navTreeSubIndices[i]) {
+    gotoNode(o,i,root,hash,relpath)
+  } else {
+    getScript(relpath+'navtreeindex'+i,function(){
+      navTreeSubIndices[i] = eval('NAVTREEINDEX'+i);
+      if (navTreeSubIndices[i]) {
+        gotoNode(o,i,root,hash,relpath);
+      }
+    },true);
+  }
+}
+
+function showSyncOff(n,relpath)
+{
+    n.html('<img src="'+relpath+'sync_off.png" title="'+SYNCOFFMSG+'"/>');
+}
+
+function showSyncOn(n,relpath)
+{
+    n.html('<img src="'+relpath+'sync_on.png" title="'+SYNCONMSG+'"/>');
+}
+
+function toggleSyncButton(relpath)
+{
+  var navSync = $('#nav-sync');
+  if (navSync.hasClass('sync')) {
+    navSync.removeClass('sync');
+    showSyncOff(navSync,relpath);
+    storeLink(stripPath2(pathName())+hashUrl());
+  } else {
+    navSync.addClass('sync');
+    showSyncOn(navSync,relpath);
+    deleteLink();
+  }
+}
+
+var loadTriggered = false;
+var readyTriggered = false;
+var loadObject,loadToRoot,loadUrl,loadRelPath;
+
+$(window).on('load',function(){
+  if (readyTriggered) { // ready first
+    navTo(loadObject,loadToRoot,loadUrl,loadRelPath);
+    showRoot();
+  }
+  loadTriggered=true;
+});
+
+function initNavTree(toroot,relpath)
+{
+  var o = new Object();
+  o.toroot = toroot;
+  o.node = new Object();
+  o.node.li = document.getElementById("nav-tree-contents");
+  o.node.childrenData = NAVTREE;
+  o.node.children = new Array();
+  o.node.childrenUL = document.createElement("ul");
+  o.node.getChildrenUL = function() { return o.node.childrenUL; };
+  o.node.li.appendChild(o.node.childrenUL);
+  o.node.depth = 0;
+  o.node.relpath = relpath;
+  o.node.expanded = false;
+  o.node.isLast = true;
+  o.node.plus_img = document.createElement("span");
+  o.node.plus_img.className = 'arrow';
+  o.node.plus_img.innerHTML = arrowRight;
+
+  if (localStorageSupported()) {
+    var navSync = $('#nav-sync');
+    if (cachedLink()) {
+      showSyncOff(navSync,relpath);
+      navSync.removeClass('sync');
+    } else {
+      showSyncOn(navSync,relpath);
+    }
+    navSync.click(function(){ toggleSyncButton(relpath); });
+  }
+
+  if (loadTriggered) { // load before ready
+    navTo(o,toroot,hashUrl(),relpath);
+    showRoot();
+  } else { // ready before load
+    loadObject  = o;
+    loadToRoot  = toroot;
+    loadUrl     = hashUrl();
+    loadRelPath = relpath;
+    readyTriggered=true;
+  }
+
+  $(window).bind('hashchange', function(){
+     if (window.location.hash && window.location.hash.length>1){
+       var a;
+       if ($(location).attr('hash')){
+         var clslink=stripPath(pathName())+':'+hashValue();
+         a=$('.item a[class$="'+clslink.replace(/</g,'\\3c ')+'"]');
+       }
+       if (a==null || !$(a).parent().parent().hasClass('selected')){
+         $('.item').removeClass('selected');
+         $('.item').removeAttr('id');
+       }
+       var link=stripPath2(pathName());
+       navTo(o,link,hashUrl(),relpath);
+     } else if (!animationInProgress) {
+       $('#doc-content').scrollTop(0);
+       $('.item').removeClass('selected');
+       $('.item').removeAttr('id');
+       navTo(o,toroot,hashUrl(),relpath);
+     }
+  })
+}
+/* @license-end */
diff --git a/doc/html/navtreedata.js b/doc/html/navtreedata.js
new file mode 100644
index 0000000000000000000000000000000000000000..d236198d1a6cc4db626d108c35e75a4873368670
--- /dev/null
+++ b/doc/html/navtreedata.js
@@ -0,0 +1,77 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+*/
+var NAVTREE =
+[
+  [ "SOIL C++", "index.html", [
+    [ "Development setup", "index.html#autotoc_md1", [
+      [ "Dependencies", "index.html#autotoc_md2", null ],
+      [ "Windows", "index.html#autotoc_md3", null ],
+      [ "Linux", "index.html#autotoc_md4", null ]
+    ] ],
+    [ "Implement device conform to the unified interface", "index.html#autotoc_md5", null ],
+    [ "Known Issues and Warnings", "index.html#autotoc_md6", null ],
+    [ "Todo List", "todo.html", null ],
+    [ "Namespaces", "namespaces.html", [
+      [ "Namespace List", "namespaces.html", "namespaces_dup" ],
+      [ "Namespace Members", "namespacemembers.html", [
+        [ "All", "namespacemembers.html", null ],
+        [ "Functions", "namespacemembers_func.html", null ],
+        [ "Typedefs", "namespacemembers_type.html", null ]
+      ] ]
+    ] ],
+    [ "Classes", "annotated.html", [
+      [ "Class List", "annotated.html", "annotated_dup" ],
+      [ "Class Index", "classes.html", null ],
+      [ "Class Hierarchy", "hierarchy.html", "hierarchy" ],
+      [ "Class Members", "functions.html", [
+        [ "All", "functions.html", "functions_dup" ],
+        [ "Functions", "functions_func.html", "functions_func" ],
+        [ "Variables", "functions_vars.html", null ],
+        [ "Typedefs", "functions_type.html", null ],
+        [ "Related Functions", "functions_rela.html", null ]
+      ] ]
+    ] ],
+    [ "Files", "files.html", [
+      [ "File List", "files.html", "files_dup" ],
+      [ "File Members", "globals.html", [
+        [ "All", "globals.html", null ],
+        [ "Functions", "globals_func.html", null ],
+        [ "Typedefs", "globals_type.html", null ],
+        [ "Macros", "globals_defs.html", null ]
+      ] ]
+    ] ]
+  ] ]
+];
+
+var NAVTREEINDEX =
+[
+"_broadcast_8cpp.html",
+"class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac",
+"class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f",
+"json__helpers_8cpp.html#aae694c8a60db24c08de0a3a22ef12a40"
+];
+
+var SYNCONMSG = 'click to disable panel synchronisation';
+var SYNCOFFMSG = 'click to enable panel synchronisation';
\ No newline at end of file
diff --git a/doc/html/navtreeindex0.js b/doc/html/navtreeindex0.js
new file mode 100644
index 0000000000000000000000000000000000000000..a5db7faa17e79d0cf8f4fe2281e6049301d98d5b
--- /dev/null
+++ b/doc/html/navtreeindex0.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX0 =
+{
+"_broadcast_8cpp.html":[6,0,0,5,0],
+"_broadcast_8cpp_source.html":[6,0,0,5,0],
+"_broadcast_8h.html":[6,0,0,5,1],
+"_broadcast_8h_source.html":[6,0,0,5,1],
+"_container_8cpp.html":[6,0,0,3,1],
+"_container_8cpp_source.html":[6,0,0,3,1],
+"_container_8h.html":[6,0,0,3,2],
+"_container_8h_source.html":[6,0,0,3,2],
+"_element_8cpp.html":[6,0,0,3,3],
+"_element_8cpp_source.html":[6,0,0,3,3],
+"_element_8h.html":[6,0,0,3,4],
+"_element_8h.html#acc4b84d1cba2fafd495c35ebaeae1b96":[6,0,0,3,4,1],
+"_element_8h_source.html":[6,0,0,3,4],
+"_enum_8cpp.html":[6,0,0,3,5],
+"_enum_8cpp_source.html":[6,0,0,3,5],
+"_enum_8h.html":[6,0,0,3,6],
+"_enum_8h_source.html":[6,0,0,3,6],
+"_exception_8cpp.html":[6,0,0,5,5],
+"_exception_8cpp_source.html":[6,0,0,5,5],
+"_exception_8h.html":[6,0,0,5,6],
+"_exception_8h_source.html":[6,0,0,5,6],
+"_figure_8cpp.html":[6,0,0,3,7],
+"_figure_8cpp.html#a2c60fe17aef5a333bceb59cbcbef54c0":[6,0,0,3,7,0],
+"_figure_8cpp.html#a30e419f20fa7f6edd5cd20a93ad810ea":[6,0,0,3,7,1],
+"_figure_8cpp.html#a879dfa5f8bb335421b721c57145b622e":[6,0,0,3,7,2],
+"_figure_8cpp_source.html":[6,0,0,3,7],
+"_figure_8h.html":[6,0,0,3,8],
+"_figure_8h.html#a034d9e6f234755509cc20b01b506f761":[6,0,0,3,8,2],
+"_figure_8h.html#a1e904aedc828f75201ffc0452ff28c03":[6,0,0,3,8,4],
+"_figure_8h.html#a3656e92123956c8afcfbe545eef81eb7":[6,0,0,3,8,6],
+"_figure_8h.html#a485afdb40b0c76b73cbbc0da177cf8e3":[6,0,0,3,8,1],
+"_figure_8h.html#a863aac9ac9eb4396135f86bd9bc29bad":[6,0,0,3,8,3],
+"_figure_8h.html#a980491413d86c50ced57a8345c8f63ed":[6,0,0,3,8,5],
+"_figure_8h.html#aa16db0f32c1f6a992261e1747be93097":[6,0,0,3,8,7],
+"_figure_8h.html#aa97c25e5a3e597eea65e13ac0ce85416":[6,0,0,3,8,8],
+"_figure_8h_source.html":[6,0,0,3,8],
+"_function_8cpp.html":[6,0,0,3,9],
+"_function_8cpp_source.html":[6,0,0,3,9],
+"_function_8h.html":[6,0,0,3,10],
+"_function_8h_source.html":[6,0,0,3,10],
+"_hasher_8cpp.html":[6,0,0,2,1],
+"_hasher_8cpp_source.html":[6,0,0,2,1],
+"_hasher_8h.html":[6,0,0,2,2],
+"_hasher_8h_source.html":[6,0,0,2,2],
+"_local_exception_8cpp.html":[6,0,0,0,3],
+"_local_exception_8cpp_source.html":[6,0,0,0,3],
+"_local_exception_8h.html":[6,0,0,0,4],
+"_local_exception_8h_source.html":[6,0,0,0,4],
+"_m_q_t_t_2_configuration_8cpp.html":[6,0,0,0,0],
+"_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d":[6,0,0,0,0,0],
+"_m_q_t_t_2_configuration_8cpp_source.html":[6,0,0,0,0],
+"_m_q_t_t_2_configuration_8h.html":[6,0,0,0,1],
+"_m_q_t_t_2_configuration_8h_source.html":[6,0,0,0,1],
+"_m_q_t_t_2constants_8h.html":[6,0,0,0,2],
+"_m_q_t_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748":[6,0,0,0,2,0],
+"_m_q_t_t_2constants_8h_source.html":[6,0,0,0,2],
+"_message_container_8h.html":[6,0,0,0,5],
+"_message_container_8h_source.html":[6,0,0,0,5],
+"_object_8cpp.html":[6,0,0,3,13],
+"_object_8cpp_source.html":[6,0,0,3,13],
+"_object_8h.html":[6,0,0,3,14],
+"_object_8h_source.html":[6,0,0,3,14],
+"_parameter_8cpp.html":[6,0,0,3,15],
+"_parameter_8cpp_source.html":[6,0,0,3,15],
+"_parameter_8h.html":[6,0,0,3,16],
+"_parameter_8h_source.html":[6,0,0,3,16],
+"_publisher_8cpp.html":[6,0,0,0,6],
+"_publisher_8cpp.html#a7448c142e0c36065fc7e625cd4b6b045":[6,0,0,0,6,0],
+"_publisher_8cpp_source.html":[6,0,0,0,6],
+"_publisher_8h.html":[6,0,0,0,7],
+"_publisher_8h_source.html":[6,0,0,0,7],
+"_r_e_s_t_2_types_8h.html":[6,0,0,1,5],
+"_r_e_s_t_2_types_8h.html#a28a83748614f1c141821ce4b9da83d3f":[6,0,0,1,5,1],
+"_r_e_s_t_2_types_8h.html#a317431a644c9db16a1657ecc77677a11":[6,0,0,1,5,0],
+"_r_e_s_t_2_types_8h.html#ab1754212af3bb8edc420a97cffb176ea":[6,0,0,1,5,2],
+"_r_e_s_t_2_types_8h.html#af603c787079c0b8cacc07b6be6ae5e95":[6,0,0,1,5,4],
+"_r_e_s_t_2_types_8h.html#af7f55b32590882bc9b905c78799fabdf":[6,0,0,1,5,3],
+"_r_e_s_t_2_types_8h_source.html":[6,0,0,1,5],
+"_r_e_s_t_2constants_8h.html":[6,0,0,1,0],
+"_r_e_s_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748":[6,0,0,1,0,0],
+"_r_e_s_t_2constants_8h_source.html":[6,0,0,1,0],
+"_range_8cpp.html":[6,0,0,3,17],
+"_range_8cpp_source.html":[6,0,0,3,17],
+"_range_8h.html":[6,0,0,3,18],
+"_range_8h_source.html":[6,0,0,3,18],
+"_resource_8cpp.html":[6,0,0,1,1],
+"_resource_8cpp_source.html":[6,0,0,1,1],
+"_resource_8h.html":[6,0,0,1,2],
+"_resource_8h_source.html":[6,0,0,1,2],
+"_s_i_g_n_2constants_8h.html":[6,0,0,2,0],
+"_s_i_g_n_2constants_8h.html#ac50762666aa00bd3a4308158510f1748":[6,0,0,2,0,0],
+"_s_i_g_n_2constants_8h_source.html":[6,0,0,2,0],
+"_s_o_i_l_2_types_8h.html":[6,0,0,3,22],
+"_s_o_i_l_2_types_8h.html#a088b157f218c9c844ae77c2c07f1b328":[6,0,0,3,22,6],
+"_s_o_i_l_2_types_8h.html#a1691ac525df63feb4f180fcc32f307f1":[6,0,0,3,22,2],
+"_s_o_i_l_2_types_8h.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097":[6,0,0,3,22,3],
+"_s_o_i_l_2_types_8h.html#a69374c360d593ed3cd4df6f3ebb40643":[6,0,0,3,22,5],
+"_s_o_i_l_2_types_8h.html#a738722655e044a443e338fde0f97e9a0":[6,0,0,3,22,1],
+"_s_o_i_l_2_types_8h.html#a79f0d9e5821444f0265d9edf1e37f237":[6,0,0,3,22,0],
+"_s_o_i_l_2_types_8h.html#aef76c04a3939438dd7454193a3d56384":[6,0,0,3,22,4],
+"_s_o_i_l_2_types_8h_source.html":[6,0,0,3,22],
+"_s_o_i_l_2constants_8h.html":[6,0,0,3,0],
+"_s_o_i_l_2constants_8h.html#ac50762666aa00bd3a4308158510f1748":[6,0,0,3,0,0],
+"_s_o_i_l_2constants_8h_source.html":[6,0,0,3,0],
+"_server_8cpp.html":[6,0,0,1,3],
+"_server_8cpp_source.html":[6,0,0,1,3],
+"_server_8h.html":[6,0,0,1,4],
+"_server_8h_source.html":[6,0,0,1,4],
+"_signer_8cpp.html":[6,0,0,2,3],
+"_signer_8cpp_source.html":[6,0,0,2,3],
+"_signer_8h.html":[6,0,0,2,4],
+"_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a":[6,0,0,2,4,1],
+"_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce":[6,0,0,2,4,2],
+"_signer_8h_source.html":[6,0,0,2,4],
+"_time_8cpp.html":[6,0,0,3,19],
+"_time_8cpp_source.html":[6,0,0,3,19],
+"_time_8h.html":[6,0,0,3,20],
+"_time_8h.html#a3b4ec3441b90255cca35259c5e4a9321":[6,0,0,3,20,1],
+"_time_8h.html#adc8de2e2651ccc2e7c03e8289cd64c2b":[6,0,0,3,20,2],
+"_time_8h_source.html":[6,0,0,3,20],
+"_types_8cpp.html":[6,0,0,3,21],
+"_types_8cpp_source.html":[6,0,0,3,21],
+"_u_d_p_2_configuration_8cpp.html":[6,0,0,5,2],
+"_u_d_p_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d":[6,0,0,5,2,0],
+"_u_d_p_2_configuration_8cpp_source.html":[6,0,0,5,2],
+"_u_d_p_2_configuration_8h.html":[6,0,0,5,3],
+"_u_d_p_2_configuration_8h_source.html":[6,0,0,5,3],
+"_u_d_p_2constants_8h.html":[6,0,0,5,4],
+"_u_d_p_2constants_8h_source.html":[6,0,0,5,4],
+"_variable_8cpp.html":[6,0,0,3,23],
+"_variable_8cpp_source.html":[6,0,0,3,23],
+"_variable_8h.html":[6,0,0,3,24],
+"_variable_8h_source.html":[6,0,0,3,24],
+"annotated.html":[5,0],
+"class_h_t_t_p_1_1_resource.html":[5,0,0,0],
+"class_h_t_t_p_1_1_resource.html":[4,0,0,0],
+"class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5":[5,0,0,0,1],
+"class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5":[4,0,0,0,1],
+"class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c":[4,0,0,0,11],
+"class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c":[5,0,0,0,11],
+"class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf":[4,0,0,0,10],
+"class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf":[5,0,0,0,10],
+"class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0":[4,0,0,0,12],
+"class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0":[5,0,0,0,12],
+"class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc":[5,0,0,0,0],
+"class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc":[4,0,0,0,0],
+"class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169":[4,0,0,0,3],
+"class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169":[5,0,0,0,3],
+"class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5":[5,0,0,0,7],
+"class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5":[4,0,0,0,7],
+"class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752":[4,0,0,0,13],
+"class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752":[5,0,0,0,13],
+"class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6":[5,0,0,0,14],
+"class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6":[4,0,0,0,14],
+"class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb":[4,0,0,0,2],
+"class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb":[5,0,0,0,2],
+"class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800":[4,0,0,0,5],
+"class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800":[5,0,0,0,5],
+"class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4":[4,0,0,0,8],
+"class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4":[5,0,0,0,8],
+"class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af":[4,0,0,0,4],
+"class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af":[5,0,0,0,4],
+"class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589":[4,0,0,0,6],
+"class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589":[5,0,0,0,6],
+"class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533":[4,0,0,0,9],
+"class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533":[5,0,0,0,9],
+"class_h_t_t_p_1_1_server.html":[5,0,0,1],
+"class_h_t_t_p_1_1_server.html":[4,0,0,1],
+"class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238":[5,0,0,1,5],
+"class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238":[4,0,0,1,5],
+"class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a":[4,0,0,1,3],
+"class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a":[5,0,0,1,3],
+"class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759":[5,0,0,1,1],
+"class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759":[4,0,0,1,1],
+"class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0":[5,0,0,1,0],
+"class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0":[4,0,0,1,0],
+"class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83":[4,0,0,1,2],
+"class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83":[5,0,0,1,2],
+"class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486":[5,0,0,1,4],
+"class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486":[4,0,0,1,4],
+"class_m_q_t_t_1_1_configuration.html":[4,0,1,0],
+"class_m_q_t_t_1_1_configuration.html":[5,0,1,0],
+"class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3":[4,0,1,0,0],
+"class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3":[5,0,1,0,0],
+"class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574":[4,0,1,0,13],
+"class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574":[5,0,1,0,13],
+"class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5":[4,0,1,0,7],
+"class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5":[5,0,1,0,7],
+"class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b":[5,0,1,0,9],
+"class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b":[4,0,1,0,9],
+"class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06":[4,0,1,0,8],
+"class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06":[5,0,1,0,8],
+"class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe":[4,0,1,0,14],
+"class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe":[5,0,1,0,14],
+"class_m_q_t_t_1_1_configuration.html#a76525cfc37fb8ddc692db93fd6fb5e6f":[4,0,1,0,1],
+"class_m_q_t_t_1_1_configuration.html#a76525cfc37fb8ddc692db93fd6fb5e6f":[5,0,1,0,1],
+"class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be":[4,0,1,0,5],
+"class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be":[5,0,1,0,5],
+"class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1":[4,0,1,0,12],
+"class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1":[5,0,1,0,12],
+"class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7":[5,0,1,0,10],
+"class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7":[4,0,1,0,10],
+"class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d":[4,0,1,0,4],
+"class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d":[5,0,1,0,4],
+"class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78":[4,0,1,0,16],
+"class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78":[5,0,1,0,16],
+"class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097":[5,0,1,0,17],
+"class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097":[4,0,1,0,17],
+"class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04":[4,0,1,0,3],
+"class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04":[5,0,1,0,3],
+"class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52":[4,0,1,0,6],
+"class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52":[5,0,1,0,6],
+"class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b":[4,0,1,0,11],
+"class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b":[5,0,1,0,11],
+"class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338":[4,0,1,0,15],
+"class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338":[5,0,1,0,15],
+"class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458":[5,0,1,0,2],
+"class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458":[4,0,1,0,2],
+"class_m_q_t_t_1_1_exception.html":[4,0,1,1],
+"class_m_q_t_t_1_1_exception.html":[5,0,1,1],
+"class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f":[4,0,1,1,0],
+"class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f":[5,0,1,1,0],
+"class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1":[5,0,1,1,3],
+"class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1":[4,0,1,1,3],
+"class_m_q_t_t_1_1_exception.html#acc088fa326f26d0ea21aa7bf250eeeae":[4,0,1,1,1],
+"class_m_q_t_t_1_1_exception.html#acc088fa326f26d0ea21aa7bf250eeeae":[5,0,1,1,1],
+"class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202":[4,0,1,1,2],
+"class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202":[5,0,1,1,2],
+"class_m_q_t_t_1_1_publisher.html":[4,0,1,3],
+"class_m_q_t_t_1_1_publisher.html":[5,0,1,3],
+"class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0":[4,0,1,3,3],
+"class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0":[5,0,1,3,3],
+"class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08":[5,0,1,3,10],
+"class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08":[4,0,1,3,10],
+"class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd":[4,0,1,3,7],
+"class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd":[5,0,1,3,7],
+"class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15":[4,0,1,3,2],
+"class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15":[5,0,1,3,2],
+"class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe":[4,0,1,3,8],
+"class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe":[5,0,1,3,8],
+"class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801":[5,0,1,3,12],
+"class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801":[4,0,1,3,12],
+"class_m_q_t_t_1_1_publisher.html#a6096485cddc28d316dd37cd32de809a7":[5,0,1,3,9],
+"class_m_q_t_t_1_1_publisher.html#a6096485cddc28d316dd37cd32de809a7":[4,0,1,3,9],
+"class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205":[5,0,1,3,1],
+"class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205":[4,0,1,3,1],
+"class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d":[4,0,1,3,11],
+"class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d":[5,0,1,3,11],
+"class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d":[4,0,1,3,6],
+"class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d":[5,0,1,3,6]
+};
diff --git a/doc/html/navtreeindex1.js b/doc/html/navtreeindex1.js
new file mode 100644
index 0000000000000000000000000000000000000000..26b8328841b5e5285cabb1a0bd178c6a5b22a8b1
--- /dev/null
+++ b/doc/html/navtreeindex1.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX1 =
+{
+"class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac":[4,0,1,3,0],
+"class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac":[5,0,1,3,0],
+"class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e":[4,0,1,3,5],
+"class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e":[5,0,1,3,5],
+"class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93":[4,0,1,3,4],
+"class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93":[5,0,1,3,4],
+"class_s_i_g_n_1_1_hasher.html":[5,0,2,0],
+"class_s_i_g_n_1_1_hasher.html":[4,0,3,0],
+"class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960":[5,0,2,0,2],
+"class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960":[4,0,3,0,2],
+"class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d":[5,0,2,0,5],
+"class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d":[4,0,3,0,5],
+"class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3":[5,0,2,0,1],
+"class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3":[4,0,3,0,1],
+"class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f":[5,0,2,0,3],
+"class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f":[4,0,3,0,3],
+"class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b":[4,0,3,0,0],
+"class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b":[5,0,2,0,0],
+"class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3":[5,0,2,0,4],
+"class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3":[4,0,3,0,4],
+"class_s_i_g_n_1_1_signer.html":[5,0,2,1],
+"class_s_i_g_n_1_1_signer.html":[4,0,3,1],
+"class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f":[5,0,2,1,4],
+"class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f":[4,0,3,1,4],
+"class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925":[4,0,3,1,2],
+"class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925":[5,0,2,1,2],
+"class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4":[4,0,3,1,3],
+"class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4":[5,0,2,1,3],
+"class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d":[4,0,3,1,1],
+"class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d":[5,0,2,1,1],
+"class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794":[4,0,3,1,0],
+"class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794":[5,0,2,1,0],
+"class_s_o_i_l_1_1_container.html":[4,0,4,0],
+"class_s_o_i_l_1_1_container.html":[5,0,3,0],
+"class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b":[4,0,4,0,2],
+"class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b":[5,0,3,0,2],
+"class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a":[5,0,3,0,10],
+"class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a":[4,0,4,0,10],
+"class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39":[5,0,3,0,9],
+"class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39":[4,0,4,0,9],
+"class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38":[4,0,4,0,8],
+"class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38":[5,0,3,0,8],
+"class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030":[4,0,4,0,6],
+"class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030":[5,0,3,0,6],
+"class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2":[4,0,4,0,3],
+"class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2":[5,0,3,0,3],
+"class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310":[4,0,4,0,5],
+"class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310":[5,0,3,0,5],
+"class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f":[5,0,3,0,1],
+"class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f":[4,0,4,0,1],
+"class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce":[4,0,4,0,0],
+"class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce":[5,0,3,0,0],
+"class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050":[5,0,3,0,4],
+"class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050":[4,0,4,0,4],
+"class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a":[4,0,4,0,7],
+"class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a":[5,0,3,0,7],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html":[5,0,3,1],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html":[4,0,4,1],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a55089fd352f89f4248ea546a365aecc7":[4,0,4,1,2],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a55089fd352f89f4248ea546a365aecc7":[5,0,3,1,2],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04":[5,0,3,1,0],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04":[4,0,4,1,0],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa274a79ce54cb7ce0e384790332c6dfa":[4,0,4,1,1],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa274a79ce54cb7ce0e384790332c6dfa":[5,0,3,1,1],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750":[5,0,3,1,4],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750":[4,0,4,1,4],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74":[4,0,4,1,7],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74":[5,0,3,1,7],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675":[5,0,3,1,3],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675":[4,0,4,1,3],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338":[4,0,4,1,10],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338":[5,0,3,1,10],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be":[4,0,4,1,9],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be":[5,0,3,1,9],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509":[4,0,4,1,8],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509":[5,0,3,1,8],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e":[4,0,4,1,5],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e":[5,0,3,1,5],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b":[4,0,4,1,6],
+"class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b":[5,0,3,1,6],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html":[5,0,3,2],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html":[4,0,4,2],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d":[5,0,3,2,3],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d":[4,0,4,2,3],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8":[5,0,3,2,0],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8":[4,0,4,2,0],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1":[5,0,3,2,5],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1":[4,0,4,2,5],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e":[5,0,3,2,4],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e":[4,0,4,2,4],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480":[5,0,3,2,10],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480":[4,0,4,2,10],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724":[5,0,3,2,8],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724":[4,0,4,2,8],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647":[5,0,3,2,6],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647":[4,0,4,2,6],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ad9bd44996d34de087f4d8e52e3d087bd":[4,0,4,2,1],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ad9bd44996d34de087f4d8e52e3d087bd":[5,0,3,2,1],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b":[5,0,3,2,9],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b":[4,0,4,2,9],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34":[5,0,3,2,7],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34":[4,0,4,2,7],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aeeba9a7d45fc949532443d3f6184cb29":[5,0,3,2,2],
+"class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aeeba9a7d45fc949532443d3f6184cb29":[4,0,4,2,2],
+"class_s_o_i_l_1_1_element.html":[5,0,3,3],
+"class_s_o_i_l_1_1_element.html":[4,0,4,3],
+"class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0":[5,0,3,3,8],
+"class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0":[4,0,4,3,8],
+"class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2":[4,0,4,3,6],
+"class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2":[5,0,3,3,6],
+"class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239":[5,0,3,3,14],
+"class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239":[4,0,4,3,14],
+"class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab":[4,0,4,3,1],
+"class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab":[5,0,3,3,1],
+"class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b":[5,0,3,3,11],
+"class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b":[4,0,4,3,11],
+"class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf":[5,0,3,3,17],
+"class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf":[4,0,4,3,17],
+"class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb":[5,0,3,3,3],
+"class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb":[4,0,4,3,3],
+"class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d":[5,0,3,3,4],
+"class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d":[4,0,4,3,4],
+"class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104":[5,0,3,3,24],
+"class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104":[4,0,4,3,24],
+"class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3":[4,0,4,3,10],
+"class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3":[5,0,3,3,10],
+"class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3":[4,0,4,3,2],
+"class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3":[5,0,3,3,2],
+"class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a":[5,0,3,3,16],
+"class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a":[4,0,4,3,16],
+"class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49":[4,0,4,3,12],
+"class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49":[5,0,3,3,12],
+"class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7":[5,0,3,3,9],
+"class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7":[4,0,4,3,9],
+"class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9":[5,0,3,3,18],
+"class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9":[4,0,4,3,18],
+"class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e":[5,0,3,3,7],
+"class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e":[4,0,4,3,7],
+"class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb":[4,0,4,3,5],
+"class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb":[5,0,3,3,5],
+"class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce":[4,0,4,3,13],
+"class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce":[5,0,3,3,13],
+"class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d":[4,0,4,3,21],
+"class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d":[5,0,3,3,21],
+"class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652":[4,0,4,3,0],
+"class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652":[5,0,3,3,0],
+"class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f":[5,0,3,3,15],
+"class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f":[4,0,4,3,15],
+"class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8":[4,0,4,3,20],
+"class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8":[5,0,3,3,20],
+"class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b":[4,0,4,3,22],
+"class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b":[5,0,3,3,22],
+"class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c":[4,0,4,3,19],
+"class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c":[5,0,3,3,19],
+"class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30":[4,0,4,3,23],
+"class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30":[5,0,3,3,23],
+"class_s_o_i_l_1_1_enum.html":[5,0,3,4],
+"class_s_o_i_l_1_1_enum.html":[4,0,4,4],
+"class_s_o_i_l_1_1_enum.html#a18e004d4a882a61c94a902a3330014e2":[4,0,4,4,9],
+"class_s_o_i_l_1_1_enum.html#a18e004d4a882a61c94a902a3330014e2":[5,0,3,4,9],
+"class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41":[4,0,4,4,8],
+"class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41":[5,0,3,4,8],
+"class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1":[5,0,3,4,0],
+"class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1":[4,0,4,4,0],
+"class_s_o_i_l_1_1_enum.html#a2809b4d4200d001b62a5d3bd5d1aa04c":[5,0,3,4,6],
+"class_s_o_i_l_1_1_enum.html#a2809b4d4200d001b62a5d3bd5d1aa04c":[4,0,4,4,6],
+"class_s_o_i_l_1_1_enum.html#a30718fd8e647815e78b1a0b63d878fd8":[4,0,4,4,1],
+"class_s_o_i_l_1_1_enum.html#a30718fd8e647815e78b1a0b63d878fd8":[5,0,3,4,1],
+"class_s_o_i_l_1_1_enum.html#a8bb7c616cb01a03df35a73a4dd5edd34":[5,0,3,4,2],
+"class_s_o_i_l_1_1_enum.html#a8bb7c616cb01a03df35a73a4dd5edd34":[4,0,4,4,2],
+"class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f":[5,0,3,4,7],
+"class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f":[4,0,4,4,7],
+"class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867":[5,0,3,4,3],
+"class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867":[4,0,4,4,3],
+"class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0":[5,0,3,4,5],
+"class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0":[4,0,4,4,5],
+"class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a":[5,0,3,4,4],
+"class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a":[4,0,4,4,4],
+"class_s_o_i_l_1_1_figure.html":[4,0,4,5],
+"class_s_o_i_l_1_1_figure.html":[5,0,3,5],
+"class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0":[4,0,4,5,1],
+"class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0":[5,0,3,5,1],
+"class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9":[5,0,3,5,9],
+"class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9":[4,0,4,5,9],
+"class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec":[5,0,3,5,5],
+"class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec":[4,0,4,5,5],
+"class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67":[4,0,4,5,15],
+"class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67":[5,0,3,5,15],
+"class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883":[5,0,3,5,10],
+"class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883":[4,0,4,5,10],
+"class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da":[4,0,4,5,2],
+"class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da":[5,0,3,5,2],
+"class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b":[4,0,4,5,6],
+"class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b":[5,0,3,5,6],
+"class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac":[4,0,4,5,0],
+"class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac":[5,0,3,5,0],
+"class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c":[4,0,4,5,14],
+"class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c":[5,0,3,5,14],
+"class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b":[4,0,4,5,16],
+"class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b":[5,0,3,5,16],
+"class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566":[4,0,4,5,3],
+"class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566":[5,0,3,5,3],
+"class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712":[4,0,4,5,13],
+"class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712":[5,0,3,5,13],
+"class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e":[4,0,4,5,8],
+"class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e":[5,0,3,5,8],
+"class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937":[4,0,4,5,4],
+"class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937":[5,0,3,5,4],
+"class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20":[5,0,3,5,11],
+"class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20":[4,0,4,5,11],
+"class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0":[5,0,3,5,12],
+"class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0":[4,0,4,5,12],
+"class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9":[4,0,4,5,7],
+"class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9":[5,0,3,5,7],
+"class_s_o_i_l_1_1_function.html":[4,0,4,6],
+"class_s_o_i_l_1_1_function.html":[5,0,3,6],
+"class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260":[4,0,4,6,10],
+"class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260":[5,0,3,6,10],
+"class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46":[4,0,4,6,9],
+"class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46":[5,0,3,6,9],
+"class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b":[4,0,4,6,8],
+"class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b":[5,0,3,6,8],
+"class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88":[5,0,3,6,6],
+"class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88":[4,0,4,6,6],
+"class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9":[5,0,3,6,5],
+"class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9":[4,0,4,6,5],
+"class_s_o_i_l_1_1_function.html#a6e6b923ef2cd3c534e831719ac6bbdb0":[5,0,3,6,2],
+"class_s_o_i_l_1_1_function.html#a6e6b923ef2cd3c534e831719ac6bbdb0":[4,0,4,6,2],
+"class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d":[5,0,3,6,3],
+"class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d":[4,0,4,6,3],
+"class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec":[5,0,3,6,1],
+"class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec":[4,0,4,6,1],
+"class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680":[4,0,4,6,4],
+"class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680":[5,0,3,6,4],
+"class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b":[4,0,4,6,7],
+"class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b":[5,0,3,6,7],
+"class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1":[4,0,4,6,0],
+"class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1":[5,0,3,6,0],
+"class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e":[4,0,4,6,11],
+"class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e":[5,0,3,6,11],
+"class_s_o_i_l_1_1_object.html":[4,0,4,7],
+"class_s_o_i_l_1_1_object.html":[5,0,3,7],
+"class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde":[4,0,4,7,7],
+"class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde":[5,0,3,7,7],
+"class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225":[4,0,4,7,3],
+"class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225":[5,0,3,7,3],
+"class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7":[5,0,3,7,2],
+"class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7":[4,0,4,7,2],
+"class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108":[5,0,3,7,8],
+"class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108":[4,0,4,7,8]
+};
diff --git a/doc/html/navtreeindex2.js b/doc/html/navtreeindex2.js
new file mode 100644
index 0000000000000000000000000000000000000000..e8a61e5a02f011e37c2c713e6cc5e496a1070d98
--- /dev/null
+++ b/doc/html/navtreeindex2.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX2 =
+{
+"class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f":[4,0,4,7,5],
+"class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f":[5,0,3,7,5],
+"class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e":[5,0,3,7,6],
+"class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e":[4,0,4,7,6],
+"class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57":[4,0,4,7,1],
+"class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57":[5,0,3,7,1],
+"class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978":[5,0,3,7,4],
+"class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978":[4,0,4,7,4],
+"class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd":[5,0,3,7,0],
+"class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd":[4,0,4,7,0],
+"class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3":[4,0,4,7,9],
+"class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3":[5,0,3,7,9],
+"class_s_o_i_l_1_1_parameter.html":[4,0,4,8],
+"class_s_o_i_l_1_1_parameter.html":[5,0,3,8],
+"class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad":[4,0,4,8,2],
+"class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad":[5,0,3,8,2],
+"class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5":[4,0,4,8,1],
+"class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5":[5,0,3,8,1],
+"class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08":[4,0,4,8,6],
+"class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08":[5,0,3,8,6],
+"class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d":[4,0,4,8,7],
+"class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d":[5,0,3,8,7],
+"class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4":[5,0,3,8,0],
+"class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4":[4,0,4,8,0],
+"class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf":[5,0,3,8,5],
+"class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf":[4,0,4,8,5],
+"class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9":[4,0,4,8,4],
+"class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9":[5,0,3,8,4],
+"class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad":[4,0,4,8,3],
+"class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad":[5,0,3,8,3],
+"class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627":[5,0,3,8,8],
+"class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627":[4,0,4,8,8],
+"class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841":[5,0,3,8,10],
+"class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841":[4,0,4,8,10],
+"class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c":[5,0,3,8,9],
+"class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c":[4,0,4,8,9],
+"class_s_o_i_l_1_1_range.html":[5,0,3,9],
+"class_s_o_i_l_1_1_range.html":[4,0,4,9],
+"class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade":[4,0,4,9,5],
+"class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade":[5,0,3,9,5],
+"class_s_o_i_l_1_1_range.html#a7f49766e22783da9259eee242663581b":[4,0,4,9,2],
+"class_s_o_i_l_1_1_range.html#a7f49766e22783da9259eee242663581b":[5,0,3,9,2],
+"class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e":[5,0,3,9,0],
+"class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e":[4,0,4,9,0],
+"class_s_o_i_l_1_1_range.html#a97c8857f5b22eb87ca35c1c21a1bd814":[5,0,3,9,1],
+"class_s_o_i_l_1_1_range.html#a97c8857f5b22eb87ca35c1c21a1bd814":[4,0,4,9,1],
+"class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53":[4,0,4,9,4],
+"class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53":[5,0,3,9,4],
+"class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b":[4,0,4,9,3],
+"class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b":[5,0,3,9,3],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html":[5,0,3,10],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html":[4,0,4,10],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b":[5,0,3,10,4],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b":[4,0,4,10,4],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38":[5,0,3,10,0],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38":[4,0,4,10,0],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#abd3d86c944aa61089231909a8d24e7f8":[5,0,3,10,1],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#abd3d86c944aa61089231909a8d24e7f8":[4,0,4,10,1],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c":[5,0,3,10,2],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c":[4,0,4,10,2],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3":[4,0,4,10,5],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3":[5,0,3,10,5],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#afd07b4bbc51b9b69f1ad8798fcc77fa6":[5,0,3,10,3],
+"class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#afd07b4bbc51b9b69f1ad8798fcc77fa6":[4,0,4,10,3],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html":[4,0,4,11],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html":[5,0,3,11],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a030f2f9b3f2e56f0e832956e069226d2":[4,0,4,11,4],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a030f2f9b3f2e56f0e832956e069226d2":[5,0,3,11,4],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a280aacb2fb5b4ad22c866a83671967c5":[4,0,4,11,3],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a280aacb2fb5b4ad22c866a83671967c5":[5,0,3,11,3],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a635b0935b69730c81232c9f26267e5ec":[5,0,3,11,0],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a635b0935b69730c81232c9f26267e5ec":[4,0,4,11,0],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a940f37a4449075b3d335deb546644df1":[4,0,4,11,1],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a940f37a4449075b3d335deb546644df1":[5,0,3,11,1],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ad5847bdeceb2dcf632de0e7c0c3bc73f":[5,0,3,11,5],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ad5847bdeceb2dcf632de0e7c0c3bc73f":[4,0,4,11,5],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ae8c03e56fc933a95c0fec0d69b81da55":[4,0,4,11,2],
+"class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ae8c03e56fc933a95c0fec0d69b81da55":[5,0,3,11,2],
+"class_s_o_i_l_1_1_time.html":[5,0,3,12],
+"class_s_o_i_l_1_1_time.html":[4,0,4,12],
+"class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda":[4,0,4,12,8],
+"class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda":[5,0,3,12,8],
+"class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325":[4,0,4,12,4],
+"class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325":[5,0,3,12,4],
+"class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16":[4,0,4,12,3],
+"class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16":[5,0,3,12,3],
+"class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf":[4,0,4,12,0],
+"class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf":[5,0,3,12,0],
+"class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f":[5,0,3,12,7],
+"class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f":[4,0,4,12,7],
+"class_s_o_i_l_1_1_time.html#a7e51f091b04752599a4086ea3b0856f4":[5,0,3,12,1],
+"class_s_o_i_l_1_1_time.html#a7e51f091b04752599a4086ea3b0856f4":[4,0,4,12,1],
+"class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d":[5,0,3,12,5],
+"class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d":[4,0,4,12,5],
+"class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa":[5,0,3,12,9],
+"class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa":[4,0,4,12,9],
+"class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993":[5,0,3,12,6],
+"class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993":[4,0,4,12,6],
+"class_s_o_i_l_1_1_time.html#ac84bbf33a7816b4502795d68a5e62486":[5,0,3,12,2],
+"class_s_o_i_l_1_1_time.html#ac84bbf33a7816b4502795d68a5e62486":[4,0,4,12,2],
+"class_s_o_i_l_1_1_variable.html":[5,0,3,13],
+"class_s_o_i_l_1_1_variable.html":[4,0,4,13],
+"class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e":[4,0,4,13,11],
+"class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e":[5,0,3,13,11],
+"class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe":[5,0,3,13,4],
+"class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe":[4,0,4,13,4],
+"class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3":[5,0,3,13,18],
+"class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3":[4,0,4,13,18],
+"class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06":[4,0,4,13,8],
+"class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06":[5,0,3,13,8],
+"class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4":[4,0,4,13,10],
+"class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4":[5,0,3,13,10],
+"class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68":[5,0,3,13,14],
+"class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68":[4,0,4,13,14],
+"class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05":[5,0,3,13,0],
+"class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05":[4,0,4,13,0],
+"class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72":[4,0,4,13,5],
+"class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72":[5,0,3,13,5],
+"class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d":[4,0,4,13,7],
+"class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d":[5,0,3,13,7],
+"class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f":[4,0,4,13,6],
+"class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f":[5,0,3,13,6],
+"class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7":[5,0,3,13,9],
+"class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7":[4,0,4,13,9],
+"class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb":[4,0,4,13,15],
+"class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb":[5,0,3,13,15],
+"class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7":[5,0,3,13,3],
+"class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7":[4,0,4,13,3],
+"class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e":[4,0,4,13,13],
+"class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e":[5,0,3,13,13],
+"class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a":[5,0,3,13,2],
+"class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a":[4,0,4,13,2],
+"class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639":[5,0,3,13,16],
+"class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639":[4,0,4,13,16],
+"class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa":[5,0,3,13,1],
+"class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa":[4,0,4,13,1],
+"class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247":[5,0,3,13,12],
+"class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247":[4,0,4,13,12],
+"class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9":[5,0,3,13,17],
+"class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9":[4,0,4,13,17],
+"class_u_d_p_1_1_broadcast.html":[5,0,4,0],
+"class_u_d_p_1_1_broadcast.html":[4,0,5,0],
+"class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92":[4,0,5,0,4],
+"class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92":[5,0,4,0,4],
+"class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7":[5,0,4,0,0],
+"class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7":[4,0,5,0,0],
+"class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1":[5,0,4,0,3],
+"class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1":[4,0,5,0,3],
+"class_u_d_p_1_1_broadcast.html#a43e3f6b55707430a2eb698c41d181f6d":[4,0,5,0,6],
+"class_u_d_p_1_1_broadcast.html#a43e3f6b55707430a2eb698c41d181f6d":[5,0,4,0,6],
+"class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de":[4,0,5,0,7],
+"class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de":[5,0,4,0,7],
+"class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45":[5,0,4,0,5],
+"class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45":[4,0,5,0,5],
+"class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f":[5,0,4,0,1],
+"class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f":[4,0,5,0,1],
+"class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b":[5,0,4,0,2],
+"class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b":[4,0,5,0,2],
+"class_u_d_p_1_1_configuration.html":[5,0,4,1],
+"class_u_d_p_1_1_configuration.html":[4,0,5,1],
+"class_u_d_p_1_1_configuration.html#a16a012d0744f694e3f9f9865ce89c624":[5,0,4,1,2],
+"class_u_d_p_1_1_configuration.html#a16a012d0744f694e3f9f9865ce89c624":[4,0,5,1,2],
+"class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053":[5,0,4,1,0],
+"class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053":[4,0,5,1,0],
+"class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55":[4,0,5,1,4],
+"class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55":[5,0,4,1,4],
+"class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada":[5,0,4,1,3],
+"class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada":[4,0,5,1,3],
+"class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed":[5,0,4,1,1],
+"class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed":[4,0,5,1,1],
+"class_u_d_p_1_1_exception.html":[5,0,4,2],
+"class_u_d_p_1_1_exception.html":[4,0,5,2],
+"class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1":[4,0,5,2,0],
+"class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1":[5,0,4,2,0],
+"class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0":[4,0,5,2,1],
+"class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0":[5,0,4,2,1],
+"classes.html":[5,1],
+"dir_5c48c3ba762084c368f706b319e3221b.html":[6,0,0,2],
+"dir_68267d1309a1af8e8297ef4c3efbcdba.html":[6,0,0],
+"dir_80eb279d1f03cba0b7c8d3c4072fe319.html":[6,0,0,3],
+"dir_97e9162b5eba51ba7b47a8e5d05863f3.html":[6,0,0,0],
+"dir_a41816149b1851ca69b3e9aaedcc5381.html":[6,0,0,5],
+"dir_fad39c6a80d5b10502d8b8402de358e3.html":[6,0,0,4],
+"dir_fd8c6ed2afcc9d9b88b85c637913cdaa.html":[6,0,0,1],
+"files.html":[6,0],
+"functions.html":[5,3,0],
+"functions.html":[5,3,0,0],
+"functions_b.html":[5,3,0,1],
+"functions_c.html":[5,3,0,2],
+"functions_d.html":[5,3,0,3],
+"functions_e.html":[5,3,0,4],
+"functions_f.html":[5,3,0,5],
+"functions_func.html":[5,3,1,0],
+"functions_func.html":[5,3,1],
+"functions_func_b.html":[5,3,1,1],
+"functions_func_c.html":[5,3,1,2],
+"functions_func_d.html":[5,3,1,3],
+"functions_func_e.html":[5,3,1,4],
+"functions_func_f.html":[5,3,1,5],
+"functions_func_h.html":[5,3,1,6],
+"functions_func_i.html":[5,3,1,7],
+"functions_func_j.html":[5,3,1,8],
+"functions_func_m.html":[5,3,1,9],
+"functions_func_n.html":[5,3,1,10],
+"functions_func_o.html":[5,3,1,11],
+"functions_func_p.html":[5,3,1,12],
+"functions_func_r.html":[5,3,1,13],
+"functions_func_s.html":[5,3,1,14],
+"functions_func_t.html":[5,3,1,15],
+"functions_func_u.html":[5,3,1,16],
+"functions_func_v.html":[5,3,1,17],
+"functions_func_w.html":[5,3,1,18],
+"functions_func_~.html":[5,3,1,19],
+"functions_h.html":[5,3,0,6],
+"functions_i.html":[5,3,0,7],
+"functions_j.html":[5,3,0,8],
+"functions_k.html":[5,3,0,9],
+"functions_m.html":[5,3,0,10],
+"functions_n.html":[5,3,0,11],
+"functions_o.html":[5,3,0,12],
+"functions_p.html":[5,3,0,13],
+"functions_q.html":[5,3,0,14],
+"functions_r.html":[5,3,0,15],
+"functions_rela.html":[5,3,4],
+"functions_s.html":[5,3,0,16],
+"functions_t.html":[5,3,0,17],
+"functions_type.html":[5,3,3],
+"functions_u.html":[5,3,0,18],
+"functions_v.html":[5,3,0,19],
+"functions_vars.html":[5,3,2],
+"functions_w.html":[5,3,0,20],
+"functions_~.html":[5,3,0,21],
+"globals.html":[6,1,0],
+"globals_defs.html":[6,1,3],
+"globals_func.html":[6,1,1],
+"globals_type.html":[6,1,2],
+"hierarchy.html":[5,2],
+"index.html":[],
+"index.html#autotoc_md1":[0],
+"index.html#autotoc_md2":[0,0],
+"index.html#autotoc_md3":[0,1],
+"index.html#autotoc_md4":[0,2],
+"index.html#autotoc_md5":[1],
+"index.html#autotoc_md6":[2],
+"json__helpers_8cpp.html":[6,0,0,3,11],
+"json__helpers_8cpp.html#a10a05ce00d314258ffb9c6b536c1bf95":[6,0,0,3,11,2],
+"json__helpers_8cpp.html#a434c4f67044a7cc0f874ef0f5bf55b22":[6,0,0,3,11,3],
+"json__helpers_8cpp.html#a682bf7d67c51ddd6da804bfd2416d99d":[6,0,0,3,11,5],
+"json__helpers_8cpp.html#a6ae5f67d92f7f1c13b8c5f816640b887":[6,0,0,3,11,1],
+"json__helpers_8cpp.html#a9769894e25cf77bdd6aaea440439d6c6":[6,0,0,3,11,6]
+};
diff --git a/doc/html/navtreeindex3.js b/doc/html/navtreeindex3.js
new file mode 100644
index 0000000000000000000000000000000000000000..87ee0dadf142819e51b2a9b3dd02f1874d78d4b0
--- /dev/null
+++ b/doc/html/navtreeindex3.js
@@ -0,0 +1,88 @@
+var NAVTREEINDEX3 =
+{
+"json__helpers_8cpp.html#aae694c8a60db24c08de0a3a22ef12a40":[6,0,0,3,11,0],
+"json__helpers_8cpp.html#ab40adce50ce6a2a1da1f33a133e674b8":[6,0,0,3,11,4],
+"json__helpers_8cpp_source.html":[6,0,0,3,11],
+"json__helpers_8h.html":[6,0,0,3,12],
+"json__helpers_8h.html#a02992988be78a7ab33f587f28f9d77ee":[6,0,0,3,12,7],
+"json__helpers_8h.html#a104dd24cc9e4f3291cd6f6cd4ef9a962":[6,0,0,3,12,11],
+"json__helpers_8h.html#a10e716692b430aae80488a4eb82c7711":[6,0,0,3,12,14],
+"json__helpers_8h.html#a2c15040c8f4602cc146655bf71293721":[6,0,0,3,12,4],
+"json__helpers_8h.html#a57872750dce21dba7ad0597f87c45556":[6,0,0,3,12,8],
+"json__helpers_8h.html#a5b6625a4bf4d20d486a4258a17462ef9":[6,0,0,3,12,15],
+"json__helpers_8h.html#a6cb86f8e799f4d035ef321becf44d6e2":[6,0,0,3,12,6],
+"json__helpers_8h.html#a7a19e241bb85fab8d5669742af038a6b":[6,0,0,3,12,5],
+"json__helpers_8h.html#a80e0cc86c7756c3f9b4ccf338cd146bd":[6,0,0,3,12,13],
+"json__helpers_8h.html#a82671406aa31a367c38dcad31d359b92":[6,0,0,3,12,0],
+"json__helpers_8h.html#a86cf6d407ececca2487dcbe521978d21":[6,0,0,3,12,2],
+"json__helpers_8h.html#aa5865fafee3cc8f7eeba8269f24c86ec":[6,0,0,3,12,10],
+"json__helpers_8h.html#aaff67634d006fd7dca3fffb14b28dd8e":[6,0,0,3,12,1],
+"json__helpers_8h.html#ad66a788615277edb2f3e7077d89cd942":[6,0,0,3,12,12],
+"json__helpers_8h.html#ada5ccc8aa10b097eea146a1b2d720e95":[6,0,0,3,12,3],
+"json__helpers_8h.html#adaab1a60ee0b36f8537055549511ba7b":[6,0,0,3,12,9],
+"json__helpers_8h_source.html":[6,0,0,3,12],
+"main_8cpp.html":[6,0,0,4,0],
+"main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627":[6,0,0,4,0,0],
+"main_8cpp_source.html":[6,0,0,4,0],
+"namespace_h_t_t_p.html":[4,0,0],
+"namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f":[4,0,0,3],
+"namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11":[4,0,0,2],
+"namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea":[4,0,0,4],
+"namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95":[4,0,0,6],
+"namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf":[4,0,0,5],
+"namespace_m_q_t_t.html":[4,0,1],
+"namespace_s_i_g_n.html":[4,0,3],
+"namespace_s_o_i_l.html":[4,0,4],
+"namespace_s_o_i_l.html#a02992988be78a7ab33f587f28f9d77ee":[4,0,4,39],
+"namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761":[4,0,4,22],
+"namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328":[4,0,4,20],
+"namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962":[4,0,4,43],
+"namespace_s_o_i_l.html#a10e716692b430aae80488a4eb82c7711":[4,0,4,46],
+"namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1":[4,0,4,16],
+"namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097":[4,0,4,17],
+"namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03":[4,0,4,24],
+"namespace_s_o_i_l.html#a2c15040c8f4602cc146655bf71293721":[4,0,4,36],
+"namespace_s_o_i_l.html#a3656e92123956c8afcfbe545eef81eb7":[4,0,4,26],
+"namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321":[4,0,4,30],
+"namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3":[4,0,4,21],
+"namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556":[4,0,4,40],
+"namespace_s_o_i_l.html#a5b6625a4bf4d20d486a4258a17462ef9":[4,0,4,47],
+"namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643":[4,0,4,19],
+"namespace_s_o_i_l.html#a6cb86f8e799f4d035ef321becf44d6e2":[4,0,4,38],
+"namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0":[4,0,4,15],
+"namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237":[4,0,4,14],
+"namespace_s_o_i_l.html#a7a19e241bb85fab8d5669742af038a6b":[4,0,4,37],
+"namespace_s_o_i_l.html#a80e0cc86c7756c3f9b4ccf338cd146bd":[4,0,4,45],
+"namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92":[4,0,4,32],
+"namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad":[4,0,4,23],
+"namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21":[4,0,4,34],
+"namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed":[4,0,4,25],
+"namespace_s_o_i_l.html#aa16db0f32c1f6a992261e1747be93097":[4,0,4,27],
+"namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec":[4,0,4,42],
+"namespace_s_o_i_l.html#aa97c25e5a3e597eea65e13ac0ce85416":[4,0,4,28],
+"namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e":[4,0,4,33],
+"namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96":[4,0,4,29],
+"namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942":[4,0,4,44],
+"namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95":[4,0,4,35],
+"namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b":[4,0,4,41],
+"namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b":[4,0,4,31],
+"namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384":[4,0,4,18],
+"namespace_u_d_p.html":[4,0,5],
+"namespacemembers.html":[4,1,0],
+"namespacemembers_func.html":[4,1,1],
+"namespacemembers_type.html":[4,1,2],
+"namespacemqtt.html":[4,0,2],
+"namespaces.html":[4,0],
+"pages.html":[],
+"struct_m_q_t_t_1_1_message_container.html":[5,0,1,2],
+"struct_m_q_t_t_1_1_message_container.html":[4,0,1,2],
+"struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0":[5,0,1,2,1],
+"struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0":[4,0,1,2,1],
+"struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da":[5,0,1,2,0],
+"struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da":[4,0,1,2,0],
+"struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79":[5,0,1,2,3],
+"struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79":[4,0,1,2,3],
+"struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9":[5,0,1,2,2],
+"struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9":[4,0,1,2,2],
+"todo.html":[3]
+};
diff --git a/doc/html/open.png b/doc/html/open.png
new file mode 100644
index 0000000000000000000000000000000000000000..30f75c7efe2dd0c9e956e35b69777a02751f048b
Binary files /dev/null and b/doc/html/open.png differ
diff --git a/doc/html/pages.html b/doc/html/pages.html
new file mode 100644
index 0000000000000000000000000000000000000000..e20fdb45f689f7a6327445beb52787412938ed27
--- /dev/null
+++ b/doc/html/pages.html
@@ -0,0 +1,103 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Related Pages</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('pages.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Related Pages</div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all related documentation pages:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="todo.html" target="_self">Todo List</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/resize.js b/doc/html/resize.js
new file mode 100644
index 0000000000000000000000000000000000000000..7fe30d10b7ffcc42300b38b34456d8827f9b6415
--- /dev/null
+++ b/doc/html/resize.js
@@ -0,0 +1,150 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+ */
+function initResizable()
+{
+  var cookie_namespace = 'doxygen';
+  var sidenav,navtree,content,header,collapsed,collapsedWidth=0,barWidth=6,desktop_vp=768,titleHeight;
+
+  function readCookie(cookie)
+  {
+    var myCookie = cookie_namespace+"_"+cookie+"=";
+    if (document.cookie) {
+      var index = document.cookie.indexOf(myCookie);
+      if (index != -1) {
+        var valStart = index + myCookie.length;
+        var valEnd = document.cookie.indexOf(";", valStart);
+        if (valEnd == -1) {
+          valEnd = document.cookie.length;
+        }
+        var val = document.cookie.substring(valStart, valEnd);
+        return val;
+      }
+    }
+    return 0;
+  }
+
+  function writeCookie(cookie, val, expiration)
+  {
+    if (val==undefined) return;
+    if (expiration == null) {
+      var date = new Date();
+      date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week
+      expiration = date.toGMTString();
+    }
+    document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; SameSite=Lax; expires=" + expiration+"; path=/";
+  }
+
+  function resizeWidth()
+  {
+    var windowWidth = $(window).width() + "px";
+    var sidenavWidth = $(sidenav).outerWidth();
+    content.css({marginLeft:parseInt(sidenavWidth)+"px"});
+    writeCookie('width',sidenavWidth-barWidth, null);
+  }
+
+  function restoreWidth(navWidth)
+  {
+    var windowWidth = $(window).width() + "px";
+    content.css({marginLeft:parseInt(navWidth)+barWidth+"px"});
+    sidenav.css({width:navWidth + "px"});
+  }
+
+  function resizeHeight()
+  {
+    var headerHeight = header.outerHeight();
+    var footerHeight = footer.outerHeight();
+    var windowHeight = $(window).height();
+    var contentHeight,navtreeHeight,sideNavHeight;
+    if (typeof page_layout==='undefined' || page_layout==0) { /* DISABLE_INDEX=NO */
+      contentHeight = windowHeight - headerHeight - footerHeight;
+      navtreeHeight = contentHeight;
+      sideNavHeight = contentHeight;
+    } else if (page_layout==1) { /* DISABLE_INDEX=YES */
+      contentHeight = windowHeight - footerHeight;
+      navtreeHeight = windowHeight - headerHeight;
+      sideNavHeight = windowHeight;
+    }
+    content.css({height:contentHeight + "px"});
+    navtree.css({height:navtreeHeight + "px"});
+    sidenav.css({height:sideNavHeight + "px"});
+    var width=$(window).width();
+    if (width!=collapsedWidth) {
+      if (width<desktop_vp && collapsedWidth>=desktop_vp) {
+        if (!collapsed) {
+          collapseExpand();
+        }
+      } else if (width>desktop_vp && collapsedWidth<desktop_vp) {
+        if (collapsed) {
+          collapseExpand();
+        }
+      }
+      collapsedWidth=width;
+    }
+    if (location.hash.slice(1)) {
+      (document.getElementById(location.hash.slice(1))||document.body).scrollIntoView();
+    }
+  }
+
+  function collapseExpand()
+  {
+    if (sidenav.width()>0) {
+      restoreWidth(0);
+      collapsed=true;
+    }
+    else {
+      var width = readCookie('width');
+      if (width>200 && width<$(window).width()) { restoreWidth(width); } else { restoreWidth(200); }
+      collapsed=false;
+    }
+  }
+
+  header  = $("#top");
+  sidenav = $("#side-nav");
+  content = $("#doc-content");
+  navtree = $("#nav-tree");
+  footer  = $("#nav-path");
+  $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } });
+  $(sidenav).resizable({ minWidth: 0 });
+  $(window).resize(function() { resizeHeight(); });
+  var device = navigator.userAgent.toLowerCase();
+  var touch_device = device.match(/(iphone|ipod|ipad|android)/);
+  if (touch_device) { /* wider split bar for touch only devices */
+    $(sidenav).css({ paddingRight:'20px' });
+    $('.ui-resizable-e').css({ width:'20px' });
+    $('#nav-sync').css({ right:'34px' });
+    barWidth=20;
+  }
+  var width = readCookie('width');
+  if (width) { restoreWidth(width); } else { resizeWidth(); }
+  resizeHeight();
+  var url = location.href;
+  var i=url.indexOf("#");
+  if (i>=0) window.location.hash=url.substr(i);
+  var _preventDefault = function(evt) { evt.preventDefault(); };
+  $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault);
+  $(".ui-resizable-handle").dblclick(collapseExpand);
+  $(window).on('load',resizeHeight);
+}
+/* @license-end */
diff --git a/doc/html/search/all_0.html b/doc/html/search/all_0.html
new file mode 100644
index 0000000000000000000000000000000000000000..c36c9af5df03a06c039f5b0aad5ad1820e9f37c1
--- /dev/null
+++ b/doc/html/search/all_0.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_0.js b/doc/html/search/all_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..437f1c9e848e95859442d9d91e8d57020499107f
--- /dev/null
+++ b/doc/html/search/all_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['_5fwin32_5fwinnt_0',['_WIN32_WINNT',['../_m_q_t_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748',1,'_WIN32_WINNT():&#160;constants.h'],['../_r_e_s_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748',1,'_WIN32_WINNT():&#160;constants.h'],['../_s_i_g_n_2constants_8h.html#ac50762666aa00bd3a4308158510f1748',1,'_WIN32_WINNT():&#160;constants.h'],['../_s_o_i_l_2constants_8h.html#ac50762666aa00bd3a4308158510f1748',1,'_WIN32_WINNT():&#160;constants.h']]]
+];
diff --git a/doc/html/search/all_1.html b/doc/html/search/all_1.html
new file mode 100644
index 0000000000000000000000000000000000000000..91cfe8acb81ce91ab2d728bcd8f92fd4957e8e47
--- /dev/null
+++ b/doc/html/search/all_1.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_1.js b/doc/html/search/all_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..b12c594a38e8e9234cfa7c866b67e93b3f9d9299
--- /dev/null
+++ b/doc/html/search/all_1.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+  ['add_0',['add',['../class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83',1,'HTTP::Server::add()'],['../class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb',1,'SOIL::Element::add(std::string uuid, std::shared_ptr&lt; Element &gt; child)'],['../class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3',1,'SOIL::Element::add(std::string uuid, Element *child)']]],
+  ['add_5fargument_1',['add_argument',['../class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d',1,'SOIL::Function::add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range&lt; T &gt; range=SOIL::Range&lt; T &gt;(), std::string ontology=&quot;&quot;)'],['../class_s_o_i_l_1_1_function.html#a6e6b923ef2cd3c534e831719ac6bbdb0',1,'SOIL::Function::add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range&lt; T &gt; range, const Container&lt; T, x, y &gt; &amp;default_value, std::string ontology=&quot;&quot;)']]],
+  ['add_5fclient_2',['add_client',['../class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b',1,'UDP::Broadcast']]],
+  ['add_5freturn_3',['add_return',['../class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680',1,'SOIL::Function']]],
+  ['allowed_5fmethods_4',['allowed_methods',['../class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0',1,'HTTP::Resource']]],
+  ['allowed_5forigins_5',['allowed_origins',['../class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752',1,'HTTP::Resource']]],
+  ['apply_5fheaders_6',['apply_headers',['../class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb',1,'HTTP::Resource']]],
+  ['at_7',['at',['../class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2',1,'SOIL::Container::at()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d',1,'SOIL::Container&lt; T, x, -1 &gt;::at()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675',1,'SOIL::Container&lt; T, -1, -1 &gt;::at()']]]
+];
diff --git a/doc/html/search/all_10.html b/doc/html/search/all_10.html
new file mode 100644
index 0000000000000000000000000000000000000000..765f5848749b3f44d007773f6794f56425626ee7
--- /dev/null
+++ b/doc/html/search/all_10.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_10.js b/doc/html/search/all_10.js
new file mode 100644
index 0000000000000000000000000000000000000000..6f3926d1ad6d86fe8e36c13e6568e19e36134ae7
--- /dev/null
+++ b/doc/html/search/all_10.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['qos_0',['qos',['../struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0',1,'MQTT::MessageContainer']]]
+];
diff --git a/doc/html/search/all_11.html b/doc/html/search/all_11.html
new file mode 100644
index 0000000000000000000000000000000000000000..e2183ee42060e4a18ce2212b45ba949203afee2e
--- /dev/null
+++ b/doc/html/search/all_11.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_11.js b/doc/html/search/all_11.js
new file mode 100644
index 0000000000000000000000000000000000000000..48d67e3c7c8e2eae69e43b458f853e31689ffe33
--- /dev/null
+++ b/doc/html/search/all_11.js
@@ -0,0 +1,24 @@
+var searchData=
+[
+  ['range_0',['range',['../class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712',1,'SOIL::Figure']]],
+  ['range_1',['Range',['../class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e',1,'SOIL::Range::Range()'],['../class_s_o_i_l_1_1_range.html#a97c8857f5b22eb87ca35c1c21a1bd814',1,'SOIL::Range::Range(T low, T high)'],['../class_s_o_i_l_1_1_range.html#a7f49766e22783da9259eee242663581b',1,'SOIL::Range::Range(std::vector&lt; T &gt; limits)'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a635b0935b69730c81232c9f26267e5ec',1,'SOIL::Range&lt; std::string &gt;::Range()'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a940f37a4449075b3d335deb546644df1',1,'SOIL::Range&lt; std::string &gt;::Range(size_t low, size_t high)'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ae8c03e56fc933a95c0fec0d69b81da55',1,'SOIL::Range&lt; std::string &gt;::Range(std::vector&lt; size_t &gt; limits)'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38',1,'SOIL::Range&lt; ENUM &gt;::Range()'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#abd3d86c944aa61089231909a8d24e7f8',1,'SOIL::Range&lt; ENUM &gt;::Range(std::vector&lt; std::string &gt; choices)'],['../class_s_o_i_l_1_1_range.html',1,'SOIL::Range&lt; T &gt;']]],
+  ['range_2ecpp_2',['Range.cpp',['../_range_8cpp.html',1,'']]],
+  ['range_2eh_3',['Range.h',['../_range_8h.html',1,'']]],
+  ['range_3c_20enum_20_3e_4',['Range&lt; ENUM &gt;',['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html',1,'SOIL']]],
+  ['range_3c_20std_3a_3astring_20_3e_5',['Range&lt; std::string &gt;',['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html',1,'SOIL']]],
+  ['read_6',['read',['../class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b',1,'SOIL::Figure::read()'],['../class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde',1,'SOIL::Object::read()'],['../class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d',1,'SOIL::Parameter::read()'],['../class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7',1,'SOIL::Variable::read()']]],
+  ['readme_2emd_7',['README.md',['../_r_e_a_d_m_e_8md.html',1,'']]],
+  ['reconnect_8',['reconnect',['../class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08',1,'MQTT::Publisher']]],
+  ['remove_9',['remove',['../class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238',1,'HTTP::Server::remove()'],['../class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f',1,'SOIL::Element::remove()'],['../class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108',1,'SOIL::Object::remove()']]],
+  ['remove_5fclient_10',['remove_client',['../class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92',1,'UDP::Broadcast']]],
+  ['request_11',['Request',['../namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea',1,'HTTP']]],
+  ['request_5finfo_12',['request_info',['../class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad',1,'HTTP::Resource']]],
+  ['reset_13',['reset',['../class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3',1,'SIGN::Hasher']]],
+  ['resource_14',['Resource',['../class_h_t_t_p_1_1_resource.html',1,'HTTP::Resource'],['../class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc',1,'HTTP::Resource::Resource()']]],
+  ['resource_2ecpp_15',['Resource.cpp',['../_resource_8cpp.html',1,'']]],
+  ['resource_2eh_16',['Resource.h',['../_resource_8h.html',1,'']]],
+  ['response_17',['Response',['../namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf',1,'HTTP']]],
+  ['retain_18',['retain',['../struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9',1,'MQTT::MessageContainer']]],
+  ['rfc3339_19',['rfc3339',['../class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d',1,'SOIL::Time']]],
+  ['root_20',['root',['../class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574',1,'MQTT::Configuration']]]
+];
diff --git a/doc/html/search/all_12.html b/doc/html/search/all_12.html
new file mode 100644
index 0000000000000000000000000000000000000000..9b9621ccb316d3a5f65a87d5a231575016aea0ab
--- /dev/null
+++ b/doc/html/search/all_12.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_12.js b/doc/html/search/all_12.js
new file mode 100644
index 0000000000000000000000000000000000000000..7c61fd053779e45b059fb0053c143320a7f484e3
--- /dev/null
+++ b/doc/html/search/all_12.js
@@ -0,0 +1,42 @@
+var searchData=
+[
+  ['datatype_3c_20soil_3a_3aenum_20_3e_0',['datatype&lt; SOIL::ENUM &gt;',['../_figure_8cpp.html#a2c60fe17aef5a333bceb59cbcbef54c0',1,'Figure.cpp']]],
+  ['datatype_3c_20soil_3a_3atime_20_3e_1',['datatype&lt; SOIL::TIME &gt;',['../_figure_8cpp.html#a30e419f20fa7f6edd5cd20a93ad810ea',1,'Figure.cpp']]],
+  ['datatype_3c_20std_3a_3astring_20_3e_2',['datatype&lt; std::string &gt;',['../_figure_8cpp.html#a879dfa5f8bb335421b721c57145b622e',1,'Figure.cpp']]],
+  ['selected_3',['selected',['../class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f',1,'SOIL::Enum']]],
+  ['self_4',['self',['../class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30',1,'SOIL::Element']]],
+  ['send_5',['send',['../class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45',1,'UDP::Broadcast::send(std::string message)'],['../class_u_d_p_1_1_broadcast.html#a43e3f6b55707430a2eb698c41d181f6d',1,'UDP::Broadcast::send(std::vector&lt; std::string &gt; messages)']]],
+  ['serialize_6',['serialize',['../class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993',1,'SOIL::Time']]],
+  ['serialize_5fdimensions_7',['serialize_dimensions',['../class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a',1,'SOIL::Container::serialize_dimensions()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34',1,'SOIL::Container&lt; T, x, -1 &gt;::serialize_dimensions()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74',1,'SOIL::Container&lt; T, -1, -1 &gt;::serialize_dimensions()']]],
+  ['serialize_5fvalue_8',['serialize_value',['../class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38',1,'SOIL::Container::serialize_value()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724',1,'SOIL::Container&lt; T, x, -1 &gt;::serialize_value()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509',1,'SOIL::Container&lt; T, -1, -1 &gt;::serialize_value()']]],
+  ['server_9',['Server',['../class_h_t_t_p_1_1_server.html',1,'HTTP::Server'],['../class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0',1,'HTTP::Server::Server()']]],
+  ['server_2ecpp_10',['Server.cpp',['../_server_8cpp.html',1,'']]],
+  ['server_2eh_11',['Server.h',['../_server_8h.html',1,'']]],
+  ['set_12',['set',['../class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41',1,'SOIL::Enum::set(int value)'],['../class_s_o_i_l_1_1_enum.html#a18e004d4a882a61c94a902a3330014e2',1,'SOIL::Enum::set(std::string value)']]],
+  ['set_5fbuffer_13',['set_buffer',['../class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d',1,'MQTT::Publisher']]],
+  ['set_5fcovariance_14',['set_covariance',['../class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4',1,'SOIL::Variable']]],
+  ['set_5fnull_15',['set_null',['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be',1,'SOIL::Container&lt; T, -1, -1 &gt;::set_null()'],['../class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f',1,'SOIL::Time::set_null()'],['../class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39',1,'SOIL::Container::set_null()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b',1,'SOIL::Container&lt; T, x, -1 &gt;::set_null()']]],
+  ['set_5frange_16',['set_range',['../class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9',1,'SOIL::Figure']]],
+  ['set_5froot_5ftopic_17',['set_root_topic',['../class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801',1,'MQTT::Publisher']]],
+  ['set_5ftime_18',['set_time',['../class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e',1,'SOIL::Figure']]],
+  ['set_5fvalue_19',['set_value',['../class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9',1,'SOIL::Figure']]],
+  ['sha256_20',['sha256',['../class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044',1,'SIGN::Hasher::sha256()'],['../class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e',1,'SOIL::Variable::sha256()']]],
+  ['sign_21',['SIGN',['../namespace_s_i_g_n.html',1,'']]],
+  ['sign_22',['sign',['../class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f',1,'SIGN::Signer::sign()'],['../class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247',1,'SOIL::Variable::sign()']]],
+  ['signer_23',['Signer',['../class_s_i_g_n_1_1_signer.html',1,'SIGN::Signer'],['../class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794',1,'SIGN::Signer::Signer()']]],
+  ['signer_2ecpp_24',['Signer.cpp',['../_signer_8cpp.html',1,'']]],
+  ['signer_2eh_25',['Signer.h',['../_signer_8h.html',1,'']]],
+  ['size_26',['size',['../class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d',1,'SIGN::Hasher']]],
+  ['soil_27',['SOIL',['../namespace_s_o_i_l.html',1,'']]],
+  ['soil_20c_2b_2b_28',['SOIL C++',['../index.html',1,'']]],
+  ['ssl_29',['ssl',['../class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe',1,'MQTT::Configuration']]],
+  ['status_30',['Status',['../namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95',1,'HTTP']]],
+  ['string_31',['STRING',['../namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643',1,'SOIL']]],
+  ['to_5fjson_3c_20soil_3a_3abool_20_3e_32',['to_json&lt; SOIL::BOOL &gt;',['../json__helpers_8cpp.html#aae694c8a60db24c08de0a3a22ef12a40',1,'json_helpers.cpp']]],
+  ['to_5fjson_3c_20soil_3a_3aenum_20_3e_33',['to_json&lt; SOIL::ENUM &gt;',['../json__helpers_8cpp.html#a6ae5f67d92f7f1c13b8c5f816640b887',1,'json_helpers.cpp']]],
+  ['to_5fjson_3c_20soil_3a_3atime_20_3e_34',['to_json&lt; SOIL::TIME &gt;',['../json__helpers_8cpp.html#a10a05ce00d314258ffb9c6b536c1bf95',1,'json_helpers.cpp']]],
+  ['to_5fjson_3c_20std_3a_3astring_20_3e_35',['to_json&lt; std::string &gt;',['../json__helpers_8cpp.html#a434c4f67044a7cc0f874ef0f5bf55b22',1,'json_helpers.cpp']]],
+  ['to_5fvalue_3c_20soil_3a_3aenum_20_3e_36',['to_value&lt; SOIL::ENUM &gt;',['../json__helpers_8cpp.html#ab40adce50ce6a2a1da1f33a133e674b8',1,'json_helpers.cpp']]],
+  ['to_5fvalue_3c_20soil_3a_3atime_20_3e_37',['to_value&lt; SOIL::TIME &gt;',['../json__helpers_8cpp.html#a682bf7d67c51ddd6da804bfd2416d99d',1,'json_helpers.cpp']]],
+  ['to_5fvalue_3c_20std_3a_3astring_20_3e_38',['to_value&lt; std::string &gt;',['../json__helpers_8cpp.html#a9769894e25cf77bdd6aaea440439d6c6',1,'json_helpers.cpp']]]
+];
diff --git a/doc/html/search/all_13.html b/doc/html/search/all_13.html
new file mode 100644
index 0000000000000000000000000000000000000000..4acb7f9143edf47fa195068c06d2de1ffa201802
--- /dev/null
+++ b/doc/html/search/all_13.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_13.js b/doc/html/search/all_13.js
new file mode 100644
index 0000000000000000000000000000000000000000..419fb9092906791e1634a7a96fec8ba28c1aa1bb
--- /dev/null
+++ b/doc/html/search/all_13.js
@@ -0,0 +1,28 @@
+var searchData=
+[
+  ['time_0',['Time',['../class_s_o_i_l_1_1_time.html',1,'SOIL::Time'],['../class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf',1,'SOIL::Time::Time()'],['../class_s_o_i_l_1_1_time.html#a7e51f091b04752599a4086ea3b0856f4',1,'SOIL::Time::Time(std::string value)'],['../class_s_o_i_l_1_1_time.html#ac84bbf33a7816b4502795d68a5e62486',1,'SOIL::Time::Time(boost::posix_time::ptime value)']]],
+  ['time_1',['time',['../class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c',1,'SOIL::Figure']]],
+  ['time_2',['TIME',['../namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328',1,'SOIL']]],
+  ['time_2ecpp_3',['Time.cpp',['../_time_8cpp.html',1,'']]],
+  ['time_2eh_4',['Time.h',['../_time_8h.html',1,'']]],
+  ['to_5fjson_5',['to_json',['../namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92',1,'SOIL']]],
+  ['to_5fjson_3c_20double_20_3e_6',['to_json&lt; double &gt;',['../namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e',1,'SOIL']]],
+  ['to_5fjson_3c_20int_20_3e_7',['to_json&lt; int &gt;',['../namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21',1,'SOIL']]],
+  ['to_5fjson_3c_20int64_5ft_20_3e_8',['to_json&lt; int64_t &gt;',['../namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95',1,'SOIL']]],
+  ['to_5fjson_3c_20soil_3a_3abool_20_3e_9',['to_json&lt; SOIL::BOOL &gt;',['../namespace_s_o_i_l.html#a2c15040c8f4602cc146655bf71293721',1,'SOIL']]],
+  ['to_5fjson_3c_20soil_3a_3aenum_20_3e_10',['to_json&lt; SOIL::ENUM &gt;',['../namespace_s_o_i_l.html#a7a19e241bb85fab8d5669742af038a6b',1,'SOIL']]],
+  ['to_5fjson_3c_20soil_3a_3atime_20_3e_11',['to_json&lt; SOIL::TIME &gt;',['../namespace_s_o_i_l.html#a6cb86f8e799f4d035ef321becf44d6e2',1,'SOIL']]],
+  ['to_5fjson_3c_20std_3a_3astring_20_3e_12',['to_json&lt; std::string &gt;',['../namespace_s_o_i_l.html#a02992988be78a7ab33f587f28f9d77ee',1,'SOIL']]],
+  ['to_5fvalue_13',['to_value',['../namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556',1,'SOIL']]],
+  ['to_5fvalue_3c_20bool_20_3e_14',['to_value&lt; bool &gt;',['../namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b',1,'SOIL']]],
+  ['to_5fvalue_3c_20double_20_3e_15',['to_value&lt; double &gt;',['../namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec',1,'SOIL']]],
+  ['to_5fvalue_3c_20int_20_3e_16',['to_value&lt; int &gt;',['../namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962',1,'SOIL']]],
+  ['to_5fvalue_3c_20int64_5ft_20_3e_17',['to_value&lt; int64_t &gt;',['../namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942',1,'SOIL']]],
+  ['to_5fvalue_3c_20soil_3a_3aenum_20_3e_18',['to_value&lt; SOIL::ENUM &gt;',['../namespace_s_o_i_l.html#a80e0cc86c7756c3f9b4ccf338cd146bd',1,'SOIL']]],
+  ['to_5fvalue_3c_20soil_3a_3atime_20_3e_19',['to_value&lt; SOIL::TIME &gt;',['../namespace_s_o_i_l.html#a10e716692b430aae80488a4eb82c7711',1,'SOIL']]],
+  ['to_5fvalue_3c_20std_3a_3astring_20_3e_20',['to_value&lt; std::string &gt;',['../namespace_s_o_i_l.html#a5b6625a4bf4d20d486a4258a17462ef9',1,'SOIL']]],
+  ['todo_20list_21',['Todo List',['../todo.html',1,'']]],
+  ['topic_22',['topic',['../struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79',1,'MQTT::MessageContainer']]],
+  ['types_2ecpp_23',['Types.cpp',['../_types_8cpp.html',1,'']]],
+  ['types_2eh_24',['Types.h',['../_r_e_s_t_2_types_8h.html',1,'(Global Namespace)'],['../_s_o_i_l_2_types_8h.html',1,'(Global Namespace)']]]
+];
diff --git a/doc/html/search/all_14.html b/doc/html/search/all_14.html
new file mode 100644
index 0000000000000000000000000000000000000000..abb790c0ef2561af25b25f3de15a8b1fcaef8e99
--- /dev/null
+++ b/doc/html/search/all_14.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_14.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_14.js b/doc/html/search/all_14.js
new file mode 100644
index 0000000000000000000000000000000000000000..b66a9bdab38c9af73ec965ac3f61f9f711f08f5a
--- /dev/null
+++ b/doc/html/search/all_14.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+  ['udp_0',['UDP',['../namespace_u_d_p.html',1,'']]],
+  ['unit_1',['unit',['../class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67',1,'SOIL::Figure']]],
+  ['update_2',['update',['../class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883',1,'SOIL::Figure::update()'],['../class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e',1,'SOIL::Variable::update()']]],
+  ['uri_3',['uri',['../class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04',1,'MQTT::Configuration']]],
+  ['use_5fcount_4',['use_count',['../class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de',1,'UDP::Broadcast']]],
+  ['username_5',['username',['../class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338',1,'MQTT::Configuration']]],
+  ['utc_5fnow_6',['utc_now',['../class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208',1,'SOIL::Time']]],
+  ['uuid_7',['uuid',['../class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104',1,'SOIL::Element']]]
+];
diff --git a/doc/html/search/all_15.html b/doc/html/search/all_15.html
new file mode 100644
index 0000000000000000000000000000000000000000..33e250bb172253b3234f4eca689aaa2ee1382752
--- /dev/null
+++ b/doc/html/search/all_15.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_15.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_15.js b/doc/html/search/all_15.js
new file mode 100644
index 0000000000000000000000000000000000000000..78463692f0939180c032f1346e4bb2a28bac303c
--- /dev/null
+++ b/doc/html/search/all_15.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['value_0',['value',['../class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b',1,'SOIL::Figure']]],
+  ['variable_1',['Variable',['../class_s_o_i_l_1_1_variable.html',1,'SOIL::Variable&lt; T, x, y &gt;'],['../class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05',1,'SOIL::Variable::Variable()']]],
+  ['variable_2ecpp_2',['Variable.cpp',['../_variable_8cpp.html',1,'']]],
+  ['variable_2eh_3',['Variable.h',['../_variable_8h.html',1,'']]],
+  ['verify_4',['verify',['../class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78',1,'MQTT::Configuration']]]
+];
diff --git a/doc/html/search/all_16.html b/doc/html/search/all_16.html
new file mode 100644
index 0000000000000000000000000000000000000000..de305d99eca1b51559d353868ce77dfbf914310e
--- /dev/null
+++ b/doc/html/search/all_16.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_16.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_16.js b/doc/html/search/all_16.js
new file mode 100644
index 0000000000000000000000000000000000000000..f76477c7095411b5ee0b9ba9d35a80d6845c9179
--- /dev/null
+++ b/doc/html/search/all_16.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['websocket_0',['websocket',['../class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097',1,'MQTT::Configuration']]],
+  ['wjson_1',['wjson',['../class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a',1,'SOIL::Container::wjson()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480',1,'SOIL::Container&lt; T, x, -1 &gt;::wjson()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338',1,'SOIL::Container&lt; T, -1, -1 &gt;::wjson()'],['../class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a',1,'SOIL::Element::wjson()'],['../class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20',1,'SOIL::Figure::wjson()'],['../class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e',1,'SOIL::Function::wjson()'],['../class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3',1,'SOIL::Object::wjson()'],['../class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627',1,'SOIL::Parameter::wjson()'],['../class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade',1,'SOIL::Range::wjson()'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ad5847bdeceb2dcf632de0e7c0c3bc73f',1,'SOIL::Range&lt; std::string &gt;::wjson()'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3',1,'SOIL::Range&lt; ENUM &gt;::wjson()'],['../class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68',1,'SOIL::Variable::wjson()']]],
+  ['write_2',['write',['../class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0',1,'SOIL::Figure::write()'],['../class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c',1,'SOIL::Parameter::write()'],['../class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb',1,'SOIL::Variable::write()']]]
+];
diff --git a/doc/html/search/all_17.html b/doc/html/search/all_17.html
new file mode 100644
index 0000000000000000000000000000000000000000..48229a00c9fa1c2b585af63cdb3fa7a16c1379d7
--- /dev/null
+++ b/doc/html/search/all_17.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_17.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_17.js b/doc/html/search/all_17.js
new file mode 100644
index 0000000000000000000000000000000000000000..2dcbc46fbc6dce908ba777e8ff4eea739ddbd55c
--- /dev/null
+++ b/doc/html/search/all_17.js
@@ -0,0 +1,20 @@
+var searchData=
+[
+  ['_7ebroadcast_0',['~Broadcast',['../class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f',1,'UDP::Broadcast']]],
+  ['_7econfiguration_1',['~Configuration',['../class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458',1,'MQTT::Configuration::~Configuration()'],['../class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada',1,'UDP::Configuration::~Configuration()']]],
+  ['_7eelement_2',['~Element',['../class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab',1,'SOIL::Element']]],
+  ['_7eenum_3',['~Enum',['../class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867',1,'SOIL::Enum']]],
+  ['_7eexception_4',['~Exception',['../class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202',1,'MQTT::Exception::~Exception()'],['../class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0',1,'UDP::Exception::~Exception()']]],
+  ['_7efigure_5',['~Figure',['../class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0',1,'SOIL::Figure']]],
+  ['_7efunction_6',['~Function',['../class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec',1,'SOIL::Function']]],
+  ['_7ehasher_7',['~Hasher',['../class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3',1,'SIGN::Hasher']]],
+  ['_7eobject_8',['~Object',['../class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57',1,'SOIL::Object']]],
+  ['_7eparameter_9',['~Parameter',['../class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5',1,'SOIL::Parameter']]],
+  ['_7epublisher_10',['~Publisher',['../class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205',1,'MQTT::Publisher']]],
+  ['_7erange_11',['~Range',['../class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b',1,'SOIL::Range::~Range()'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a280aacb2fb5b4ad22c866a83671967c5',1,'SOIL::Range&lt; std::string &gt;::~Range()'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c',1,'SOIL::Range&lt; ENUM &gt;::~Range()']]],
+  ['_7eresource_12',['~Resource',['../class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5',1,'HTTP::Resource']]],
+  ['_7eserver_13',['~Server',['../class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759',1,'HTTP::Server']]],
+  ['_7esigner_14',['~Signer',['../class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d',1,'SIGN::Signer']]],
+  ['_7etime_15',['~Time',['../class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16',1,'SOIL::Time']]],
+  ['_7evariable_16',['~Variable',['../class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa',1,'SOIL::Variable']]]
+];
diff --git a/doc/html/search/all_2.html b/doc/html/search/all_2.html
new file mode 100644
index 0000000000000000000000000000000000000000..259dde4f558788f897651107a3cac5a30ff0a199
--- /dev/null
+++ b/doc/html/search/all_2.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_2.js b/doc/html/search/all_2.js
new file mode 100644
index 0000000000000000000000000000000000000000..f2a3e940218511a16461f55e1b376047b1e3dd1c
--- /dev/null
+++ b/doc/html/search/all_2.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['bool_0',['BOOL',['../namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237',1,'SOIL']]],
+  ['broadcast_1',['Broadcast',['../class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7',1,'UDP::Broadcast::Broadcast()'],['../class_u_d_p_1_1_broadcast.html',1,'UDP::Broadcast']]],
+  ['broadcast_2ecpp_2',['Broadcast.cpp',['../_broadcast_8cpp.html',1,'']]],
+  ['broadcast_2eh_3',['Broadcast.h',['../_broadcast_8h.html',1,'']]],
+  ['bytes_4',['bytes',['../class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a',1,'SOIL::Variable']]]
+];
diff --git a/doc/html/search/all_3.html b/doc/html/search/all_3.html
new file mode 100644
index 0000000000000000000000000000000000000000..1e60c949497a80822b795f563a9debd01c68f1b7
--- /dev/null
+++ b/doc/html/search/all_3.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_3.js b/doc/html/search/all_3.js
new file mode 100644
index 0000000000000000000000000000000000000000..d3db66afadf80107162b1dbaa5f2bb27e525513a
--- /dev/null
+++ b/doc/html/search/all_3.js
@@ -0,0 +1,30 @@
+var searchData=
+[
+  ['cast_0',['cast',['../class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d',1,'SOIL::Element::cast()'],['../class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da',1,'SOIL::Figure::cast()']]],
+  ['certificate_5fauthority_1',['certificate_authority',['../class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d',1,'MQTT::Configuration']]],
+  ['check_2',['check',['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#afd07b4bbc51b9b69f1ad8798fcc77fa6',1,'SOIL::Range&lt; ENUM &gt;::check()'],['../class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53',1,'SOIL::Range::check()'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a030f2f9b3f2e56f0e832956e069226d2',1,'SOIL::Range&lt; std::string &gt;::check()'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b',1,'SOIL::Range&lt; ENUM &gt;::check()']]],
+  ['check_5frange_3',['check_range',['../class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050',1,'SOIL::Container::check_range()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e',1,'SOIL::Container&lt; T, x, -1 &gt;::check_range()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750',1,'SOIL::Container&lt; T, -1, -1 &gt;::check_range()'],['../class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566',1,'SOIL::Figure::check_range()']]],
+  ['children_4',['children',['../class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf',1,'SOIL::Element']]],
+  ['choices_5',['choices',['../class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a',1,'SOIL::Enum']]],
+  ['clean_5fsession_6',['clean_session',['../class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be',1,'MQTT::Configuration']]],
+  ['clients_7',['clients',['../class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55',1,'UDP::Configuration']]],
+  ['close_8',['close',['../class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a',1,'HTTP::Server']]],
+  ['code_9',['code',['../class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1',1,'MQTT::Exception']]],
+  ['configuration_10',['Configuration',['../class_u_d_p_1_1_configuration.html#a16a012d0744f694e3f9f9865ce89c624',1,'UDP::Configuration::Configuration(std::string filename)'],['../class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed',1,'UDP::Configuration::Configuration()'],['../class_m_q_t_t_1_1_configuration.html#a76525cfc37fb8ddc692db93fd6fb5e6f',1,'MQTT::Configuration::Configuration(std::string filename)'],['../class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3',1,'MQTT::Configuration::Configuration()'],['../class_m_q_t_t_1_1_configuration.html',1,'MQTT::Configuration'],['../class_u_d_p_1_1_configuration.html',1,'UDP::Configuration']]],
+  ['configuration_2ecpp_11',['Configuration.cpp',['../_m_q_t_t_2_configuration_8cpp.html',1,'(Global Namespace)'],['../_u_d_p_2_configuration_8cpp.html',1,'(Global Namespace)']]],
+  ['configuration_2eh_12',['Configuration.h',['../_m_q_t_t_2_configuration_8h.html',1,'(Global Namespace)'],['../_u_d_p_2_configuration_8h.html',1,'(Global Namespace)']]],
+  ['configure_13',['configure',['../class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15',1,'MQTT::Publisher::configure()'],['../class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1',1,'UDP::Broadcast::configure()']]],
+  ['connect_14',['connect',['../class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93',1,'MQTT::Publisher::connect(MQTT::Configuration configuration)'],['../class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0',1,'MQTT::Publisher::connect()']]],
+  ['connection_5ftimeout_5fs_15',['connection_timeout_s',['../class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52',1,'MQTT::Configuration']]],
+  ['constant_16',['constant',['../class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841',1,'SOIL::Parameter']]],
+  ['constants_2eh_17',['constants.h',['../_u_d_p_2constants_8h.html',1,'(Global Namespace)'],['../_s_o_i_l_2constants_8h.html',1,'(Global Namespace)'],['../_s_i_g_n_2constants_8h.html',1,'(Global Namespace)'],['../_r_e_s_t_2constants_8h.html',1,'(Global Namespace)'],['../_m_q_t_t_2constants_8h.html',1,'(Global Namespace)']]],
+  ['container_18',['Container',['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8',1,'SOIL::Container&lt; T, x, -1 &gt;::Container()'],['../class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b',1,'SOIL::Container::Container(HTTP::Json json)'],['../class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f',1,'SOIL::Container::Container(const std::vector&lt; std::vector&lt; T &gt; &gt; &amp;value)'],['../class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce',1,'SOIL::Container::Container()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ad9bd44996d34de087f4d8e52e3d087bd',1,'SOIL::Container&lt; T, x, -1 &gt;::Container(const std::vector&lt; T &gt; &amp;value)'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aeeba9a7d45fc949532443d3f6184cb29',1,'SOIL::Container&lt; T, x, -1 &gt;::Container(HTTP::Json json)'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04',1,'SOIL::Container&lt; T, -1, -1 &gt;::Container()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa274a79ce54cb7ce0e384790332c6dfa',1,'SOIL::Container&lt; T, -1, -1 &gt;::Container(const T &amp;value)'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a55089fd352f89f4248ea546a365aecc7',1,'SOIL::Container&lt; T, -1, -1 &gt;::Container(HTTP::Json json)'],['../class_s_o_i_l_1_1_container.html',1,'SOIL::Container&lt; T, x, y &gt;']]],
+  ['container_2ecpp_19',['Container.cpp',['../_container_8cpp.html',1,'']]],
+  ['container_2eh_20',['Container.h',['../_container_8h.html',1,'']]],
+  ['container_3c_20t_2c_20_2d1_2c_20_2d1_20_3e_21',['Container&lt; T, -1, -1 &gt;',['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html',1,'SOIL']]],
+  ['container_3c_20t_2c_20x_2c_20_2d1_20_3e_22',['Container&lt; T, x, -1 &gt;',['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html',1,'SOIL']]],
+  ['container_3c_20t_2c_20x_2c_20y_20_3e_23',['Container&lt; T, x, y &gt;',['../class_s_o_i_l_1_1_container.html',1,'SOIL']]],
+  ['content_5ftype_24',['content_type',['../class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6',1,'HTTP::Resource']]],
+  ['covariance_25',['covariance',['../class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639',1,'SOIL::Variable']]],
+  ['create_26',['create',['../class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6',1,'SOIL::Function::create()'],['../class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30',1,'SOIL::Object::create()'],['../class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad',1,'SOIL::Parameter::create()'],['../class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231',1,'SOIL::Variable::create()']]]
+];
diff --git a/doc/html/search/all_4.html b/doc/html/search/all_4.html
new file mode 100644
index 0000000000000000000000000000000000000000..08f1aede537690538df94f929557b57747d4b2d1
--- /dev/null
+++ b/doc/html/search/all_4.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_4.js b/doc/html/search/all_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..b52f6c5645ac9e0df8ec5a6013bd109a722c1e76
--- /dev/null
+++ b/doc/html/search/all_4.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+  ['datatype_0',['datatype',['../namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3',1,'SOIL']]],
+  ['datatype_3c_20bool_20_3e_1',['datatype&lt; bool &gt;',['../namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761',1,'SOIL']]],
+  ['datatype_3c_20double_20_3e_2',['datatype&lt; double &gt;',['../namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad',1,'SOIL']]],
+  ['datatype_3c_20int_20_3e_3',['datatype&lt; int &gt;',['../namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03',1,'SOIL']]],
+  ['datatype_3c_20int64_5ft_20_3e_4',['datatype&lt; int64_t &gt;',['../namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed',1,'SOIL']]],
+  ['datatype_3c_20soil_3a_3aenum_20_3e_5',['datatype&lt; SOIL::ENUM &gt;',['../namespace_s_o_i_l.html#a3656e92123956c8afcfbe545eef81eb7',1,'SOIL']]],
+  ['datatype_3c_20soil_3a_3atime_20_3e_6',['datatype&lt; SOIL::TIME &gt;',['../namespace_s_o_i_l.html#aa16db0f32c1f6a992261e1747be93097',1,'SOIL']]],
+  ['datatype_3c_20std_3a_3astring_20_3e_7',['datatype&lt; std::string &gt;',['../namespace_s_o_i_l.html#aa97c25e5a3e597eea65e13ac0ce85416',1,'SOIL']]],
+  ['description_8',['description',['../class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9',1,'SOIL::Element']]],
+  ['dimension_9',['DIMENSION',['../namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0',1,'SOIL']]],
+  ['disconnect_10',['disconnect',['../class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e',1,'MQTT::Publisher']]],
+  ['double_11',['DOUBLE',['../namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1',1,'SOIL']]]
+];
diff --git a/doc/html/search/all_5.html b/doc/html/search/all_5.html
new file mode 100644
index 0000000000000000000000000000000000000000..0d85fcc86ab111ae8efad4210dc48b20a8eda4b1
--- /dev/null
+++ b/doc/html/search/all_5.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_5.js b/doc/html/search/all_5.js
new file mode 100644
index 0000000000000000000000000000000000000000..448f75b9bd3581a07242721b77d369be652d8e9e
--- /dev/null
+++ b/doc/html/search/all_5.js
@@ -0,0 +1,16 @@
+var searchData=
+[
+  ['element_0',['Element',['../class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652',1,'SOIL::Element::Element()'],['../class_s_o_i_l_1_1_element.html',1,'SOIL::Element']]],
+  ['element_2ecpp_1',['Element.cpp',['../_element_8cpp.html',1,'']]],
+  ['element_2eh_2',['Element.h',['../_element_8h.html',1,'']]],
+  ['enum_3',['Enum',['../class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1',1,'SOIL::Enum::Enum()'],['../class_s_o_i_l_1_1_enum.html#a30718fd8e647815e78b1a0b63d878fd8',1,'SOIL::Enum::Enum(std::string value)'],['../class_s_o_i_l_1_1_enum.html#a8bb7c616cb01a03df35a73a4dd5edd34',1,'SOIL::Enum::Enum(std::string value, std::vector&lt; std::string &gt; choices)']]],
+  ['enum_4',['ENUM',['../namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097',1,'SOIL']]],
+  ['enum_5',['Enum',['../class_s_o_i_l_1_1_enum.html',1,'SOIL']]],
+  ['enum_2ecpp_6',['Enum.cpp',['../_enum_8cpp.html',1,'']]],
+  ['enum_2eh_7',['Enum.h',['../_enum_8h.html',1,'']]],
+  ['evp_5fmd_5fctx_8',['EVP_MD_CTX',['../_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a',1,'Signer.h']]],
+  ['evp_5fpkey_9',['EVP_PKEY',['../_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce',1,'Signer.h']]],
+  ['exception_10',['Exception',['../class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f',1,'MQTT::Exception::Exception(const char *message=&quot;&quot;, int code=0)'],['../class_m_q_t_t_1_1_exception.html#acc088fa326f26d0ea21aa7bf250eeeae',1,'MQTT::Exception::Exception(const std::exception &amp;exc)'],['../class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1',1,'UDP::Exception::Exception()'],['../class_m_q_t_t_1_1_exception.html',1,'MQTT::Exception'],['../class_u_d_p_1_1_exception.html',1,'UDP::Exception']]],
+  ['exception_2ecpp_11',['Exception.cpp',['../_exception_8cpp.html',1,'']]],
+  ['exception_2eh_12',['Exception.h',['../_exception_8h.html',1,'']]]
+];
diff --git a/doc/html/search/all_6.html b/doc/html/search/all_6.html
new file mode 100644
index 0000000000000000000000000000000000000000..7e088b86260d7df1418b3c2a963cb192429621e8
--- /dev/null
+++ b/doc/html/search/all_6.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_6.js b/doc/html/search/all_6.js
new file mode 100644
index 0000000000000000000000000000000000000000..61b804dc907f8d87db7d8791480478163fad9e71
--- /dev/null
+++ b/doc/html/search/all_6.js
@@ -0,0 +1,12 @@
+var searchData=
+[
+  ['figure_0',['Figure',['../class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac',1,'SOIL::Figure::Figure()'],['../class_s_o_i_l_1_1_figure.html',1,'SOIL::Figure&lt; T, x, y &gt;']]],
+  ['figure_2ecpp_1',['Figure.cpp',['../_figure_8cpp.html',1,'']]],
+  ['figure_2eh_2',['Figure.h',['../_figure_8h.html',1,'']]],
+  ['figure_3c_20t_2c_20_2d1_2c_20_2d1_20_3e_3',['Figure&lt; T, -1, -1 &gt;',['../class_s_o_i_l_1_1_figure.html',1,'SOIL']]],
+  ['fingerprint_4',['fingerprint',['../class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7',1,'SOIL::Variable']]],
+  ['fqid_5',['fqid',['../class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb',1,'SOIL::Element']]],
+  ['function_6',['Function',['../class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1',1,'SOIL::Function::Function()'],['../class_s_o_i_l_1_1_function.html',1,'SOIL::Function']]],
+  ['function_2ecpp_7',['Function.cpp',['../_function_8cpp.html',1,'']]],
+  ['function_2eh_8',['Function.h',['../_function_8h.html',1,'']]]
+];
diff --git a/doc/html/search/all_7.html b/doc/html/search/all_7.html
new file mode 100644
index 0000000000000000000000000000000000000000..d2b18254064e1d75b6045cbc296e4cc1f81652c6
--- /dev/null
+++ b/doc/html/search/all_7.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_7.js b/doc/html/search/all_7.js
new file mode 100644
index 0000000000000000000000000000000000000000..7031f6eea45223fbb255d712e9c2c6314b344a94
--- /dev/null
+++ b/doc/html/search/all_7.js
@@ -0,0 +1,18 @@
+var searchData=
+[
+  ['handle_0',['handle',['../class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169',1,'HTTP::Resource::handle()'],['../class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2',1,'SOIL::Element::handle()']]],
+  ['handle_5fdelete_1',['handle_delete',['../class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af',1,'HTTP::Resource::handle_delete()'],['../class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7',1,'SOIL::Object::handle_delete()']]],
+  ['handle_5fexception_2',['handle_exception',['../class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800',1,'HTTP::Resource']]],
+  ['handle_5fget_3',['handle_get',['../class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589',1,'HTTP::Resource::handle_get()'],['../class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9',1,'SOIL::Function::handle_get()'],['../class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225',1,'SOIL::Object::handle_get()'],['../class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad',1,'SOIL::Parameter::handle_get()'],['../class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe',1,'SOIL::Variable::handle_get()']]],
+  ['handle_5fhead_4',['handle_head',['../class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5',1,'HTTP::Resource']]],
+  ['handle_5foptions_5',['handle_options',['../class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4',1,'HTTP::Resource::handle_options()'],['../class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72',1,'SOIL::Variable::handle_options()']]],
+  ['handle_5fpatch_6',['handle_patch',['../class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533',1,'HTTP::Resource::handle_patch()'],['../class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad',1,'SOIL::Parameter::handle_patch()']]],
+  ['handle_5fpost_7',['handle_post',['../class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf',1,'HTTP::Resource::handle_post()'],['../class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88',1,'SOIL::Function::handle_post()']]],
+  ['handle_5fput_8',['handle_put',['../class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c',1,'HTTP::Resource::handle_put()'],['../class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978',1,'SOIL::Object::handle_put()']]],
+  ['hash_9',['hash',['../class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9',1,'SOIL::Variable::hash()'],['../class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960',1,'SIGN::Hasher::hash()']]],
+  ['hasher_10',['Hasher',['../class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b',1,'SIGN::Hasher::Hasher()'],['../class_s_i_g_n_1_1_hasher.html',1,'SIGN::Hasher']]],
+  ['hasher_2ecpp_11',['Hasher.cpp',['../_hasher_8cpp.html',1,'']]],
+  ['hasher_2eh_12',['Hasher.h',['../_hasher_8h.html',1,'']]],
+  ['host_13',['host',['../class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5',1,'MQTT::Configuration']]],
+  ['http_14',['HTTP',['../namespace_h_t_t_p.html',1,'']]]
+];
diff --git a/doc/html/search/all_8.html b/doc/html/search/all_8.html
new file mode 100644
index 0000000000000000000000000000000000000000..f4e3a2aa74f0f9c6d6885df0fd09aa8371d1b1dc
--- /dev/null
+++ b/doc/html/search/all_8.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_8.js b/doc/html/search/all_8.js
new file mode 100644
index 0000000000000000000000000000000000000000..21db691d2f8dfbdc37b2da66daca957c01411ac3
--- /dev/null
+++ b/doc/html/search/all_8.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+  ['index_0',['index',['../class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0',1,'SOIL::Enum::index() const'],['../class_s_o_i_l_1_1_enum.html#a2809b4d4200d001b62a5d3bd5d1aa04c',1,'SOIL::Enum::index(std::string value) const']]],
+  ['insert_1',['insert',['../class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0',1,'SOIL::Element::insert(std::string uuid, std::shared_ptr&lt; Element &gt; child)'],['../class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e',1,'SOIL::Element::insert(std::string uuid, Element *child)'],['../class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f',1,'SOIL::Object::insert()']]],
+  ['int_2',['INT',['../namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384',1,'SOIL']]],
+  ['invoke_3',['invoke',['../class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b',1,'SOIL::Function']]],
+  ['is_5fconnected_4',['is_connected',['../class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d',1,'MQTT::Publisher']]],
+  ['is_5ffunction_5',['is_function',['../class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7',1,'SOIL::Element']]],
+  ['is_5fnull_6',['is_null',['../class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310',1,'SOIL::Container::is_null()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1',1,'SOIL::Container&lt; T, x, -1 &gt;::is_null()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e',1,'SOIL::Container&lt; T, -1, -1 &gt;::is_null()'],['../class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325',1,'SOIL::Time::is_null()']]],
+  ['is_5fobject_7',['is_object',['../class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3',1,'SOIL::Element']]],
+  ['is_5fparameter_8',['is_parameter',['../class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b',1,'SOIL::Element']]],
+  ['is_5fvariable_9',['is_variable',['../class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49',1,'SOIL::Element']]],
+  ['iterator_10',['iterator',['../class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053',1,'UDP::Configuration']]]
+];
diff --git a/doc/html/search/all_9.html b/doc/html/search/all_9.html
new file mode 100644
index 0000000000000000000000000000000000000000..89177a8261688d41702f6ba05d8ad0beb5b9bdf6
--- /dev/null
+++ b/doc/html/search/all_9.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_9.js b/doc/html/search/all_9.js
new file mode 100644
index 0000000000000000000000000000000000000000..a2fdc00b24fd275ecac28f3e417fd0f3a306bba3
--- /dev/null
+++ b/doc/html/search/all_9.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['json_0',['json',['../class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce',1,'SOIL::Element']]],
+  ['json_1',['Json',['../namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11',1,'HTTP']]],
+  ['json_2',['json',['../_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d',1,'json():&#160;Configuration.cpp'],['../_u_d_p_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d',1,'json():&#160;Configuration.cpp']]],
+  ['json_5fhelpers_2ecpp_3',['json_helpers.cpp',['../json__helpers_8cpp.html',1,'']]],
+  ['json_5fhelpers_2eh_4',['json_helpers.h',['../json__helpers_8h.html',1,'']]]
+];
diff --git a/doc/html/search/all_a.html b/doc/html/search/all_a.html
new file mode 100644
index 0000000000000000000000000000000000000000..1f90b7a7b6207a8ff643dc1abd4dd5f2b47e72a7
--- /dev/null
+++ b/doc/html/search/all_a.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_a.js b/doc/html/search/all_a.js
new file mode 100644
index 0000000000000000000000000000000000000000..113f8b601e0435b9c4038a254ab1d53d23936a61
--- /dev/null
+++ b/doc/html/search/all_a.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['keep_5falive_0',['keep_alive',['../class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06',1,'MQTT::Configuration']]]
+];
diff --git a/doc/html/search/all_b.html b/doc/html/search/all_b.html
new file mode 100644
index 0000000000000000000000000000000000000000..b7ad6e6d50f3da6ffb31a47a063cb9f6a9c73c77
--- /dev/null
+++ b/doc/html/search/all_b.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_b.js b/doc/html/search/all_b.js
new file mode 100644
index 0000000000000000000000000000000000000000..40b8c31e05497436806b07beb52d2877b1f2a740
--- /dev/null
+++ b/doc/html/search/all_b.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['localexception_2ecpp_0',['LocalException.cpp',['../_local_exception_8cpp.html',1,'']]],
+  ['localexception_2eh_1',['LocalException.h',['../_local_exception_8h.html',1,'']]]
+];
diff --git a/doc/html/search/all_c.html b/doc/html/search/all_c.html
new file mode 100644
index 0000000000000000000000000000000000000000..829c9170eeb645b4d4bd92f0df8eea8480e41116
--- /dev/null
+++ b/doc/html/search/all_c.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_c.js b/doc/html/search/all_c.js
new file mode 100644
index 0000000000000000000000000000000000000000..6eda962ef0fdb5b06908614b9f3046f3cee47555
--- /dev/null
+++ b/doc/html/search/all_c.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+  ['main_0',['main',['../main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627',1,'main.cpp']]],
+  ['main_2ecpp_1',['main.cpp',['../main_8cpp.html',1,'']]],
+  ['make_5fargument_2',['make_argument',['../class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b',1,'SOIL::Function']]],
+  ['make_5freturn_3',['make_return',['../class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46',1,'SOIL::Function']]],
+  ['message_4',['message',['../struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da',1,'MQTT::MessageContainer']]],
+  ['messagecontainer_5',['MessageContainer',['../struct_m_q_t_t_1_1_message_container.html',1,'MQTT']]],
+  ['messagecontainer_2eh_6',['MessageContainer.h',['../_message_container_8h.html',1,'']]],
+  ['methods_7',['Methods',['../namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f',1,'HTTP']]],
+  ['min_5fdelay_5fms_8',['min_delay_ms',['../class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b',1,'MQTT::Configuration::min_delay_ms()'],['../class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd',1,'MQTT::Publisher::min_delay_ms()']]],
+  ['mqtt_9',['MQTT',['../namespace_m_q_t_t.html',1,'']]],
+  ['mqtt_10',['mqtt',['../namespacemqtt.html',1,'mqtt'],['../class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9',1,'SOIL::Parameter::mqtt()'],['../class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f',1,'SOIL::Variable::mqtt()']]],
+  ['mutex_11',['mutex',['../class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c',1,'SOIL::Element']]]
+];
diff --git a/doc/html/search/all_d.html b/doc/html/search/all_d.html
new file mode 100644
index 0000000000000000000000000000000000000000..d32b28eb8563de62b2c6460e9c7beff93e43cb3e
--- /dev/null
+++ b/doc/html/search/all_d.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_d.js b/doc/html/search/all_d.js
new file mode 100644
index 0000000000000000000000000000000000000000..742ff19ee170e89d8c338506012d114a2fe60355
--- /dev/null
+++ b/doc/html/search/all_d.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['name_0',['name',['../class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8',1,'SOIL::Element::name()'],['../class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925',1,'SIGN::Signer::name()']]],
+  ['nonce_1',['nonce',['../class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3',1,'SOIL::Variable']]],
+  ['null_5fdeleter_2',['null_deleter',['../namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96',1,'SOIL']]]
+];
diff --git a/doc/html/search/all_e.html b/doc/html/search/all_e.html
new file mode 100644
index 0000000000000000000000000000000000000000..ce450a29654c50c759a156f35201bf04958caea6
--- /dev/null
+++ b/doc/html/search/all_e.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_e.js b/doc/html/search/all_e.js
new file mode 100644
index 0000000000000000000000000000000000000000..3d093465a8b116d2312d108eddd4059750a13f1c
--- /dev/null
+++ b/doc/html/search/all_e.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+  ['object_0',['Object',['../class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd',1,'SOIL::Object::Object()'],['../class_s_o_i_l_1_1_object.html',1,'SOIL::Object']]],
+  ['object_2ecpp_1',['Object.cpp',['../_object_8cpp.html',1,'']]],
+  ['object_2eh_2',['Object.h',['../_object_8h.html',1,'']]],
+  ['ontology_3',['ontology',['../class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d',1,'SOIL::Element']]],
+  ['open_4',['open',['../class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486',1,'HTTP::Server']]],
+  ['openssl_5fversion_5',['openssl_version',['../class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4',1,'SIGN::Signer']]],
+  ['operator_2a_6',['operator*',['../class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030',1,'SOIL::Container::operator*()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647',1,'SOIL::Container&lt; T, x, -1 &gt;::operator*()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b',1,'SOIL::Container&lt; T, -1, -1 &gt;::operator*()'],['../class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937',1,'SOIL::Figure::operator*()']]],
+  ['operator_3c_3d_7',['operator&lt;=',['../class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda',1,'SOIL::Time::operator&lt;=()'],['../namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321',1,'SOIL::operator&lt;=()']]],
+  ['operator_3d_8',['operator=',['../class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec',1,'SOIL::Figure::operator=()'],['../class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf',1,'SOIL::Parameter::operator=()'],['../class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d',1,'SOIL::Variable::operator=()']]],
+  ['operator_3e_3d_9',['operator&gt;=',['../class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa',1,'SOIL::Time::operator&gt;=()'],['../namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b',1,'SOIL::operator&gt;=()']]],
+  ['operator_5b_5d_10',['operator[]',['../class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239',1,'SOIL::Element']]]
+];
diff --git a/doc/html/search/all_f.html b/doc/html/search/all_f.html
new file mode 100644
index 0000000000000000000000000000000000000000..59cfe49cd10e24c872d0501e8a7fb3cd4c85c2cf
--- /dev/null
+++ b/doc/html/search/all_f.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/all_f.js b/doc/html/search/all_f.js
new file mode 100644
index 0000000000000000000000000000000000000000..a23fee8e86dd1962a4d956bdad956c44f4125351
--- /dev/null
+++ b/doc/html/search/all_f.js
@@ -0,0 +1,18 @@
+var searchData=
+[
+  ['paho_5fmqtt_5fimports_0',['PAHO_MQTT_IMPORTS',['../_publisher_8cpp.html#a7448c142e0c36065fc7e625cd4b6b045',1,'Publisher.cpp']]],
+  ['parameter_1',['Parameter',['../class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4',1,'SOIL::Parameter::Parameter()'],['../class_s_o_i_l_1_1_parameter.html',1,'SOIL::Parameter&lt; T, x, y &gt;']]],
+  ['parameter_2ecpp_2',['Parameter.cpp',['../_parameter_8cpp.html',1,'']]],
+  ['parameter_2eh_3',['Parameter.h',['../_parameter_8h.html',1,'']]],
+  ['parent_4',['parent',['../class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b',1,'SOIL::Element']]],
+  ['password_5',['password',['../class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7',1,'MQTT::Configuration']]],
+  ['path_6',['path',['../class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b',1,'MQTT::Configuration']]],
+  ['port_7',['port',['../class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1',1,'MQTT::Configuration']]],
+  ['print_8',['print',['../class_s_i_g_n_1_1_hasher.html#a5bd6f0f8915dab9870ca8eb8a4d39a10',1,'SIGN::Hasher']]],
+  ['ptr_9',['ptr',['../class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260',1,'SOIL::Function::ptr()'],['../class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e',1,'SOIL::Object::ptr()'],['../class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08',1,'SOIL::Parameter::ptr()'],['../class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06',1,'SOIL::Variable::ptr()']]],
+  ['publish_10',['publish',['../class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe',1,'MQTT::Publisher::publish(std::string topic, std::string message, int qos, bool retain)'],['../class_m_q_t_t_1_1_publisher.html#a6096485cddc28d316dd37cd32de809a7',1,'MQTT::Publisher::publish(std::vector&lt; std::string &gt; topics, std::vector&lt; std::string &gt; messages, int qos, bool retain)']]],
+  ['publisher_11',['Publisher',['../class_m_q_t_t_1_1_publisher.html',1,'MQTT::Publisher'],['../class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac',1,'MQTT::Publisher::Publisher()']]],
+  ['publisher_2ecpp_12',['Publisher.cpp',['../_publisher_8cpp.html',1,'']]],
+  ['publisher_2eh_13',['Publisher.h',['../_publisher_8h.html',1,'']]],
+  ['push_5fback_14',['push_back',['../class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f',1,'SIGN::Hasher']]]
+];
diff --git a/doc/html/search/classes_0.html b/doc/html/search/classes_0.html
new file mode 100644
index 0000000000000000000000000000000000000000..8361bcdc4229f9f448849b428f06b9ebe52aaf96
--- /dev/null
+++ b/doc/html/search/classes_0.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_0.js b/doc/html/search/classes_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..430372c0fe903bedaa6e6abaa83617a13d889bb9
--- /dev/null
+++ b/doc/html/search/classes_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['broadcast_0',['Broadcast',['../class_u_d_p_1_1_broadcast.html',1,'UDP']]]
+];
diff --git a/doc/html/search/classes_1.html b/doc/html/search/classes_1.html
new file mode 100644
index 0000000000000000000000000000000000000000..3c668dea2c666f12d7800429cd018cfd276ae6cb
--- /dev/null
+++ b/doc/html/search/classes_1.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_1.js b/doc/html/search/classes_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..e966a42260e7f4e8123b791a0f2a68c24125453d
--- /dev/null
+++ b/doc/html/search/classes_1.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['configuration_0',['Configuration',['../class_m_q_t_t_1_1_configuration.html',1,'MQTT::Configuration'],['../class_u_d_p_1_1_configuration.html',1,'UDP::Configuration']]],
+  ['container_1',['Container',['../class_s_o_i_l_1_1_container.html',1,'SOIL']]],
+  ['container_3c_20t_2c_20_2d1_2c_20_2d1_20_3e_2',['Container&lt; T, -1, -1 &gt;',['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html',1,'SOIL']]],
+  ['container_3c_20t_2c_20x_2c_20_2d1_20_3e_3',['Container&lt; T, x, -1 &gt;',['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html',1,'SOIL']]],
+  ['container_3c_20t_2c_20x_2c_20y_20_3e_4',['Container&lt; T, x, y &gt;',['../class_s_o_i_l_1_1_container.html',1,'SOIL']]]
+];
diff --git a/doc/html/search/classes_2.html b/doc/html/search/classes_2.html
new file mode 100644
index 0000000000000000000000000000000000000000..868c17276ee2680b246c28531ced78463999421e
--- /dev/null
+++ b/doc/html/search/classes_2.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_2.js b/doc/html/search/classes_2.js
new file mode 100644
index 0000000000000000000000000000000000000000..bee75823a4dcee492f4bb7f0d537d716094ff7b1
--- /dev/null
+++ b/doc/html/search/classes_2.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['element_0',['Element',['../class_s_o_i_l_1_1_element.html',1,'SOIL']]],
+  ['enum_1',['Enum',['../class_s_o_i_l_1_1_enum.html',1,'SOIL']]],
+  ['exception_2',['Exception',['../class_m_q_t_t_1_1_exception.html',1,'MQTT::Exception'],['../class_u_d_p_1_1_exception.html',1,'UDP::Exception']]]
+];
diff --git a/doc/html/search/classes_3.html b/doc/html/search/classes_3.html
new file mode 100644
index 0000000000000000000000000000000000000000..995d5d2332fcba858bf0677131d2e4fcd2432ec2
--- /dev/null
+++ b/doc/html/search/classes_3.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_3.js b/doc/html/search/classes_3.js
new file mode 100644
index 0000000000000000000000000000000000000000..284bdceac303b2e327acd2399e1899d1ef7b6b36
--- /dev/null
+++ b/doc/html/search/classes_3.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['figure_0',['Figure',['../class_s_o_i_l_1_1_figure.html',1,'SOIL']]],
+  ['figure_3c_20t_2c_20_2d1_2c_20_2d1_20_3e_1',['Figure&lt; T, -1, -1 &gt;',['../class_s_o_i_l_1_1_figure.html',1,'SOIL']]],
+  ['function_2',['Function',['../class_s_o_i_l_1_1_function.html',1,'SOIL']]]
+];
diff --git a/doc/html/search/classes_4.html b/doc/html/search/classes_4.html
new file mode 100644
index 0000000000000000000000000000000000000000..b61a53a8613572943ecc0a1896f540a81b800a5b
--- /dev/null
+++ b/doc/html/search/classes_4.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_4.js b/doc/html/search/classes_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..85b85593ac737396df6a964431672ffd5f1a6aef
--- /dev/null
+++ b/doc/html/search/classes_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['hasher_0',['Hasher',['../class_s_i_g_n_1_1_hasher.html',1,'SIGN']]]
+];
diff --git a/doc/html/search/classes_5.html b/doc/html/search/classes_5.html
new file mode 100644
index 0000000000000000000000000000000000000000..004dd4b792c8206589ea54f4b0e09f8ec7ba70f8
--- /dev/null
+++ b/doc/html/search/classes_5.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_5.js b/doc/html/search/classes_5.js
new file mode 100644
index 0000000000000000000000000000000000000000..b59f2d4f4fcd56bcf92faee3fbd9e8e5bffdc10d
--- /dev/null
+++ b/doc/html/search/classes_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['messagecontainer_0',['MessageContainer',['../struct_m_q_t_t_1_1_message_container.html',1,'MQTT']]]
+];
diff --git a/doc/html/search/classes_6.html b/doc/html/search/classes_6.html
new file mode 100644
index 0000000000000000000000000000000000000000..21bf0198e8c87fd94e8b651e402513a80c94ab9a
--- /dev/null
+++ b/doc/html/search/classes_6.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_6.js b/doc/html/search/classes_6.js
new file mode 100644
index 0000000000000000000000000000000000000000..c4ed42ffc8503d9bf2e59ecfedd8019b9ce1ad87
--- /dev/null
+++ b/doc/html/search/classes_6.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['object_0',['Object',['../class_s_o_i_l_1_1_object.html',1,'SOIL']]]
+];
diff --git a/doc/html/search/classes_7.html b/doc/html/search/classes_7.html
new file mode 100644
index 0000000000000000000000000000000000000000..0e9445152874e899e7a9b7ba9322cca30f9e520c
--- /dev/null
+++ b/doc/html/search/classes_7.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_7.js b/doc/html/search/classes_7.js
new file mode 100644
index 0000000000000000000000000000000000000000..61e73a2f02acd8893b95ea274c3f7c138db6396a
--- /dev/null
+++ b/doc/html/search/classes_7.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['parameter_0',['Parameter',['../class_s_o_i_l_1_1_parameter.html',1,'SOIL']]],
+  ['publisher_1',['Publisher',['../class_m_q_t_t_1_1_publisher.html',1,'MQTT']]]
+];
diff --git a/doc/html/search/classes_8.html b/doc/html/search/classes_8.html
new file mode 100644
index 0000000000000000000000000000000000000000..4dfdb1c45c453ec2ceb1ceb01a35da6c645c84a9
--- /dev/null
+++ b/doc/html/search/classes_8.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_8.js b/doc/html/search/classes_8.js
new file mode 100644
index 0000000000000000000000000000000000000000..5c72c1ed32e3fbef63e382348a42cd61e41044ae
--- /dev/null
+++ b/doc/html/search/classes_8.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['range_0',['Range',['../class_s_o_i_l_1_1_range.html',1,'SOIL']]],
+  ['range_3c_20enum_20_3e_1',['Range&lt; ENUM &gt;',['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html',1,'SOIL']]],
+  ['range_3c_20std_3a_3astring_20_3e_2',['Range&lt; std::string &gt;',['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html',1,'SOIL']]],
+  ['resource_3',['Resource',['../class_h_t_t_p_1_1_resource.html',1,'HTTP']]]
+];
diff --git a/doc/html/search/classes_9.html b/doc/html/search/classes_9.html
new file mode 100644
index 0000000000000000000000000000000000000000..1cd66a9be409e7625ab5ba991f767128b83ecee5
--- /dev/null
+++ b/doc/html/search/classes_9.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_9.js b/doc/html/search/classes_9.js
new file mode 100644
index 0000000000000000000000000000000000000000..fc2622a62a18ef9c7e0b13b8626fa47dc3637856
--- /dev/null
+++ b/doc/html/search/classes_9.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['server_0',['Server',['../class_h_t_t_p_1_1_server.html',1,'HTTP']]],
+  ['signer_1',['Signer',['../class_s_i_g_n_1_1_signer.html',1,'SIGN']]]
+];
diff --git a/doc/html/search/classes_a.html b/doc/html/search/classes_a.html
new file mode 100644
index 0000000000000000000000000000000000000000..f4608c0b68cab7ef4af0d7ad22e43d40583d956b
--- /dev/null
+++ b/doc/html/search/classes_a.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_a.js b/doc/html/search/classes_a.js
new file mode 100644
index 0000000000000000000000000000000000000000..6408994ffd13ec69436a76d7bd45cf1ba65f17b8
--- /dev/null
+++ b/doc/html/search/classes_a.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['time_0',['Time',['../class_s_o_i_l_1_1_time.html',1,'SOIL']]]
+];
diff --git a/doc/html/search/classes_b.html b/doc/html/search/classes_b.html
new file mode 100644
index 0000000000000000000000000000000000000000..d9949ca9ea9fff592e993b950a04ef494fd6c09a
--- /dev/null
+++ b/doc/html/search/classes_b.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/classes_b.js b/doc/html/search/classes_b.js
new file mode 100644
index 0000000000000000000000000000000000000000..39c2784697cb9c09b2b92428de3a470a8d99d319
--- /dev/null
+++ b/doc/html/search/classes_b.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['variable_0',['Variable',['../class_s_o_i_l_1_1_variable.html',1,'SOIL']]]
+];
diff --git a/doc/html/search/close.svg b/doc/html/search/close.svg
new file mode 100644
index 0000000000000000000000000000000000000000..a933eea1a26b0c7ada7cd0053522238923996df1
--- /dev/null
+++ b/doc/html/search/close.svg
@@ -0,0 +1,31 @@
+<?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"
+   viewBox="0 0 11 11"
+   height="11"
+   width="11"
+   id="svg2"
+   version="1.1">
+  <metadata
+     id="metadata8">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs6" />
+  <path
+     id="path12"
+     d="M 5.5 0.5 A 5 5 0 0 0 0.5 5.5 A 5 5 0 0 0 5.5 10.5 A 5 5 0 0 0 10.5 5.5 A 5 5 0 0 0 5.5 0.5 z M 3.5820312 3 A 0.58291923 0.58291923 0 0 1 4 3.1757812 L 5.5 4.6757812 L 7 3.1757812 A 0.58291923 0.58291923 0 0 1 7.4003906 3 A 0.58291923 0.58291923 0 0 1 7.8242188 4 L 6.3242188 5.5 L 7.8242188 7 A 0.58291923 0.58291923 0 1 1 7 7.8242188 L 5.5 6.3242188 L 4 7.8242188 A 0.58291923 0.58291923 0 1 1 3.1757812 7 L 4.6757812 5.5 L 3.1757812 4 A 0.58291923 0.58291923 0 0 1 3.5820312 3 z "
+     style="stroke-width:1.09870648;fill:#bababa;fill-opacity:1" />
+</svg>
diff --git a/doc/html/search/defines_0.html b/doc/html/search/defines_0.html
new file mode 100644
index 0000000000000000000000000000000000000000..fd147dbfcc8c1bed925f5456ad71ce4497a8a26f
--- /dev/null
+++ b/doc/html/search/defines_0.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/defines_0.js b/doc/html/search/defines_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..437f1c9e848e95859442d9d91e8d57020499107f
--- /dev/null
+++ b/doc/html/search/defines_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['_5fwin32_5fwinnt_0',['_WIN32_WINNT',['../_m_q_t_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748',1,'_WIN32_WINNT():&#160;constants.h'],['../_r_e_s_t_2constants_8h.html#ac50762666aa00bd3a4308158510f1748',1,'_WIN32_WINNT():&#160;constants.h'],['../_s_i_g_n_2constants_8h.html#ac50762666aa00bd3a4308158510f1748',1,'_WIN32_WINNT():&#160;constants.h'],['../_s_o_i_l_2constants_8h.html#ac50762666aa00bd3a4308158510f1748',1,'_WIN32_WINNT():&#160;constants.h']]]
+];
diff --git a/doc/html/search/defines_1.html b/doc/html/search/defines_1.html
new file mode 100644
index 0000000000000000000000000000000000000000..517e9fc41297ba74aff4d062c55cd8967e85207a
--- /dev/null
+++ b/doc/html/search/defines_1.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/defines_1.js b/doc/html/search/defines_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..2b2d0dd5b7638c3f6d94eb13d9526642c3802b11
--- /dev/null
+++ b/doc/html/search/defines_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['paho_5fmqtt_5fimports_0',['PAHO_MQTT_IMPORTS',['../_publisher_8cpp.html#a7448c142e0c36065fc7e625cd4b6b045',1,'Publisher.cpp']]]
+];
diff --git a/doc/html/search/files_0.html b/doc/html/search/files_0.html
new file mode 100644
index 0000000000000000000000000000000000000000..da83704e2c1cf2e150332a68acdfb0cc92f123b5
--- /dev/null
+++ b/doc/html/search/files_0.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_0.js b/doc/html/search/files_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..481e40fe6827bd8d42e621d4daea1d134ceaa4c3
--- /dev/null
+++ b/doc/html/search/files_0.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['broadcast_2ecpp_0',['Broadcast.cpp',['../_broadcast_8cpp.html',1,'']]],
+  ['broadcast_2eh_1',['Broadcast.h',['../_broadcast_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_1.html b/doc/html/search/files_1.html
new file mode 100644
index 0000000000000000000000000000000000000000..f7e1582a25b3562b0925ff6a558fa6d72a09627a
--- /dev/null
+++ b/doc/html/search/files_1.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_1.js b/doc/html/search/files_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..ecea1990a85e95b801ac2fad9ac2adbb1f74af14
--- /dev/null
+++ b/doc/html/search/files_1.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['configuration_2ecpp_0',['Configuration.cpp',['../_m_q_t_t_2_configuration_8cpp.html',1,'(Global Namespace)'],['../_u_d_p_2_configuration_8cpp.html',1,'(Global Namespace)']]],
+  ['configuration_2eh_1',['Configuration.h',['../_m_q_t_t_2_configuration_8h.html',1,'(Global Namespace)'],['../_u_d_p_2_configuration_8h.html',1,'(Global Namespace)']]],
+  ['constants_2eh_2',['constants.h',['../_m_q_t_t_2constants_8h.html',1,'(Global Namespace)'],['../_r_e_s_t_2constants_8h.html',1,'(Global Namespace)'],['../_s_i_g_n_2constants_8h.html',1,'(Global Namespace)'],['../_s_o_i_l_2constants_8h.html',1,'(Global Namespace)'],['../_u_d_p_2constants_8h.html',1,'(Global Namespace)']]],
+  ['container_2ecpp_3',['Container.cpp',['../_container_8cpp.html',1,'']]],
+  ['container_2eh_4',['Container.h',['../_container_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_2.html b/doc/html/search/files_2.html
new file mode 100644
index 0000000000000000000000000000000000000000..99aca62000fee73d235b6538d8f929fd73a72451
--- /dev/null
+++ b/doc/html/search/files_2.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_2.js b/doc/html/search/files_2.js
new file mode 100644
index 0000000000000000000000000000000000000000..96ededdf5a3e3a27e6544a96514a6fbe43545e49
--- /dev/null
+++ b/doc/html/search/files_2.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+  ['element_2ecpp_0',['Element.cpp',['../_element_8cpp.html',1,'']]],
+  ['element_2eh_1',['Element.h',['../_element_8h.html',1,'']]],
+  ['enum_2ecpp_2',['Enum.cpp',['../_enum_8cpp.html',1,'']]],
+  ['enum_2eh_3',['Enum.h',['../_enum_8h.html',1,'']]],
+  ['exception_2ecpp_4',['Exception.cpp',['../_exception_8cpp.html',1,'']]],
+  ['exception_2eh_5',['Exception.h',['../_exception_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_3.html b/doc/html/search/files_3.html
new file mode 100644
index 0000000000000000000000000000000000000000..25e128c8a07da15dc224b7f477f9ee7b4aa3803d
--- /dev/null
+++ b/doc/html/search/files_3.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_3.js b/doc/html/search/files_3.js
new file mode 100644
index 0000000000000000000000000000000000000000..7504360a142ce890b039ad78126c595853254856
--- /dev/null
+++ b/doc/html/search/files_3.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['figure_2ecpp_0',['Figure.cpp',['../_figure_8cpp.html',1,'']]],
+  ['figure_2eh_1',['Figure.h',['../_figure_8h.html',1,'']]],
+  ['function_2ecpp_2',['Function.cpp',['../_function_8cpp.html',1,'']]],
+  ['function_2eh_3',['Function.h',['../_function_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_4.html b/doc/html/search/files_4.html
new file mode 100644
index 0000000000000000000000000000000000000000..3c8ba6eaf0e1c6624125207c254f77cea83ce356
--- /dev/null
+++ b/doc/html/search/files_4.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_4.js b/doc/html/search/files_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..395bd282e28483edf773341a35721168eaa2a57c
--- /dev/null
+++ b/doc/html/search/files_4.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['hasher_2ecpp_0',['Hasher.cpp',['../_hasher_8cpp.html',1,'']]],
+  ['hasher_2eh_1',['Hasher.h',['../_hasher_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_5.html b/doc/html/search/files_5.html
new file mode 100644
index 0000000000000000000000000000000000000000..7ff9613b6a661ae0a1754bb8c0f70cca6258c5f6
--- /dev/null
+++ b/doc/html/search/files_5.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_5.js b/doc/html/search/files_5.js
new file mode 100644
index 0000000000000000000000000000000000000000..4bd0767764b9aeec37594f4ea0f74949be495838
--- /dev/null
+++ b/doc/html/search/files_5.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['json_5fhelpers_2ecpp_0',['json_helpers.cpp',['../json__helpers_8cpp.html',1,'']]],
+  ['json_5fhelpers_2eh_1',['json_helpers.h',['../json__helpers_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_6.html b/doc/html/search/files_6.html
new file mode 100644
index 0000000000000000000000000000000000000000..cdd711bd6012917ff85445b149d5f16183b0b88d
--- /dev/null
+++ b/doc/html/search/files_6.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_6.js b/doc/html/search/files_6.js
new file mode 100644
index 0000000000000000000000000000000000000000..40b8c31e05497436806b07beb52d2877b1f2a740
--- /dev/null
+++ b/doc/html/search/files_6.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['localexception_2ecpp_0',['LocalException.cpp',['../_local_exception_8cpp.html',1,'']]],
+  ['localexception_2eh_1',['LocalException.h',['../_local_exception_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_7.html b/doc/html/search/files_7.html
new file mode 100644
index 0000000000000000000000000000000000000000..590e76ac462577bd8b1bf1801d6849038d2de061
--- /dev/null
+++ b/doc/html/search/files_7.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_7.js b/doc/html/search/files_7.js
new file mode 100644
index 0000000000000000000000000000000000000000..a90af30074e551ea65cebca60459b146a87bd1b6
--- /dev/null
+++ b/doc/html/search/files_7.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['main_2ecpp_0',['main.cpp',['../main_8cpp.html',1,'']]],
+  ['messagecontainer_2eh_1',['MessageContainer.h',['../_message_container_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_8.html b/doc/html/search/files_8.html
new file mode 100644
index 0000000000000000000000000000000000000000..5f47b07ebf57142f1f6d6e37d8a22b6292518282
--- /dev/null
+++ b/doc/html/search/files_8.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_8.js b/doc/html/search/files_8.js
new file mode 100644
index 0000000000000000000000000000000000000000..e51efa4ca71fe953435ed90fdd15645e6c5e7db4
--- /dev/null
+++ b/doc/html/search/files_8.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['object_2ecpp_0',['Object.cpp',['../_object_8cpp.html',1,'']]],
+  ['object_2eh_1',['Object.h',['../_object_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_9.html b/doc/html/search/files_9.html
new file mode 100644
index 0000000000000000000000000000000000000000..954127a41cceeab5e38559e65f9b2c4434ebd7e5
--- /dev/null
+++ b/doc/html/search/files_9.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_9.js b/doc/html/search/files_9.js
new file mode 100644
index 0000000000000000000000000000000000000000..69eaa3888474fdc4678d03e9319e64a5d5e748ca
--- /dev/null
+++ b/doc/html/search/files_9.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['parameter_2ecpp_0',['Parameter.cpp',['../_parameter_8cpp.html',1,'']]],
+  ['parameter_2eh_1',['Parameter.h',['../_parameter_8h.html',1,'']]],
+  ['publisher_2ecpp_2',['Publisher.cpp',['../_publisher_8cpp.html',1,'']]],
+  ['publisher_2eh_3',['Publisher.h',['../_publisher_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_a.html b/doc/html/search/files_a.html
new file mode 100644
index 0000000000000000000000000000000000000000..5b90468c1eca6416d5adc9bbb4ce558391dc5a39
--- /dev/null
+++ b/doc/html/search/files_a.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_a.js b/doc/html/search/files_a.js
new file mode 100644
index 0000000000000000000000000000000000000000..75abcda820da3c8607c506f36784fc914acb2c10
--- /dev/null
+++ b/doc/html/search/files_a.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['range_2ecpp_0',['Range.cpp',['../_range_8cpp.html',1,'']]],
+  ['range_2eh_1',['Range.h',['../_range_8h.html',1,'']]],
+  ['readme_2emd_2',['README.md',['../_r_e_a_d_m_e_8md.html',1,'']]],
+  ['resource_2ecpp_3',['Resource.cpp',['../_resource_8cpp.html',1,'']]],
+  ['resource_2eh_4',['Resource.h',['../_resource_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_b.html b/doc/html/search/files_b.html
new file mode 100644
index 0000000000000000000000000000000000000000..4d14150ab64e3dde888eca983b158be0cf9c96a2
--- /dev/null
+++ b/doc/html/search/files_b.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_b.js b/doc/html/search/files_b.js
new file mode 100644
index 0000000000000000000000000000000000000000..2ef30be48edef7b22419814a87f456278515820d
--- /dev/null
+++ b/doc/html/search/files_b.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['server_2ecpp_0',['Server.cpp',['../_server_8cpp.html',1,'']]],
+  ['server_2eh_1',['Server.h',['../_server_8h.html',1,'']]],
+  ['signer_2ecpp_2',['Signer.cpp',['../_signer_8cpp.html',1,'']]],
+  ['signer_2eh_3',['Signer.h',['../_signer_8h.html',1,'']]]
+];
diff --git a/doc/html/search/files_c.html b/doc/html/search/files_c.html
new file mode 100644
index 0000000000000000000000000000000000000000..e9bf7b2d987f5cd5d0f0fe918568b034631733f3
--- /dev/null
+++ b/doc/html/search/files_c.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_c.js b/doc/html/search/files_c.js
new file mode 100644
index 0000000000000000000000000000000000000000..79bd35413059104145fe98aebe9b91e2a9ded54a
--- /dev/null
+++ b/doc/html/search/files_c.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['time_2ecpp_0',['Time.cpp',['../_time_8cpp.html',1,'']]],
+  ['time_2eh_1',['Time.h',['../_time_8h.html',1,'']]],
+  ['types_2ecpp_2',['Types.cpp',['../_types_8cpp.html',1,'']]],
+  ['types_2eh_3',['Types.h',['../_r_e_s_t_2_types_8h.html',1,'(Global Namespace)'],['../_s_o_i_l_2_types_8h.html',1,'(Global Namespace)']]]
+];
diff --git a/doc/html/search/files_d.html b/doc/html/search/files_d.html
new file mode 100644
index 0000000000000000000000000000000000000000..0b6fc38d7ca4ac9c624911a3a5a2b782a8661f71
--- /dev/null
+++ b/doc/html/search/files_d.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/files_d.js b/doc/html/search/files_d.js
new file mode 100644
index 0000000000000000000000000000000000000000..5dcb9d39f6fe9894dd988c3a679c2d99280684da
--- /dev/null
+++ b/doc/html/search/files_d.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['variable_2ecpp_0',['Variable.cpp',['../_variable_8cpp.html',1,'']]],
+  ['variable_2eh_1',['Variable.h',['../_variable_8h.html',1,'']]]
+];
diff --git a/doc/html/search/functions_0.html b/doc/html/search/functions_0.html
new file mode 100644
index 0000000000000000000000000000000000000000..2d2d9501b8264f2c9986c569bce735dc851f7b81
--- /dev/null
+++ b/doc/html/search/functions_0.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_0.js b/doc/html/search/functions_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..379bb16608070bf1c4e8fdc21cf2b2c9b8019620
--- /dev/null
+++ b/doc/html/search/functions_0.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+  ['add_0',['add',['../class_h_t_t_p_1_1_server.html#abb452f50d7c5660ee204e47e20066c83',1,'HTTP::Server::add()'],['../class_s_o_i_l_1_1_element.html#a682f8e3123f99f13545db06e15a896bb',1,'SOIL::Element::add(std::string uuid, std::shared_ptr&lt; Element &gt; child)'],['../class_s_o_i_l_1_1_element.html#a90aba7aaad7c5e9695b239480e95cea3',1,'SOIL::Element::add(std::string uuid, Element *child)']]],
+  ['add_5fargument_1',['add_argument',['../class_s_o_i_l_1_1_function.html#a7705b93afa26a8a3d3012d88a9fea04d',1,'SOIL::Function::add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range&lt; T &gt; range=SOIL::Range&lt; T &gt;(), std::string ontology=&quot;&quot;)'],['../class_s_o_i_l_1_1_function.html#a6e6b923ef2cd3c534e831719ac6bbdb0',1,'SOIL::Function::add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range&lt; T &gt; range, const Container&lt; T, x, y &gt; &amp;default_value, std::string ontology=&quot;&quot;)']]],
+  ['add_5fclient_2',['add_client',['../class_u_d_p_1_1_broadcast.html#ab4a1b3beb24edbadae5701c0d3c66c3b',1,'UDP::Broadcast']]],
+  ['add_5freturn_3',['add_return',['../class_s_o_i_l_1_1_function.html#ac3753d06d5d191ed95e63df56f51f680',1,'SOIL::Function']]],
+  ['apply_5fheaders_4',['apply_headers',['../class_h_t_t_p_1_1_resource.html#aa65b75aa0006d4dc26b92dc6ae8017eb',1,'HTTP::Resource']]],
+  ['at_5',['at',['../class_s_o_i_l_1_1_container.html#a893d008aed36e88dac38fbb0c5497ac2',1,'SOIL::Container::at()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a03f102c86faf01d5caef3972ff54463d',1,'SOIL::Container&lt; T, x, -1 &gt;::at()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab6644e2d6aa2ecc1027ce821a384e675',1,'SOIL::Container&lt; T, -1, -1 &gt;::at()']]]
+];
diff --git a/doc/html/search/functions_1.html b/doc/html/search/functions_1.html
new file mode 100644
index 0000000000000000000000000000000000000000..3b96b900640578b26092be36db07b7fdda51619d
--- /dev/null
+++ b/doc/html/search/functions_1.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_1.js b/doc/html/search/functions_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..4304cfa227cdb19e93f979f3bda42c09c9b22d9f
--- /dev/null
+++ b/doc/html/search/functions_1.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['broadcast_0',['Broadcast',['../class_u_d_p_1_1_broadcast.html#a1b28acbf05f00ee1a23e5f148c952ac7',1,'UDP::Broadcast']]],
+  ['bytes_1',['bytes',['../class_s_o_i_l_1_1_variable.html#ab7eac644327edcff9e211b45e1905d2a',1,'SOIL::Variable']]]
+];
diff --git a/doc/html/search/functions_10.html b/doc/html/search/functions_10.html
new file mode 100644
index 0000000000000000000000000000000000000000..f0fe4893f214bec148646768560bca281d50007b
--- /dev/null
+++ b/doc/html/search/functions_10.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_10.js b/doc/html/search/functions_10.js
new file mode 100644
index 0000000000000000000000000000000000000000..8f8cf4e81b543cc636af08b8659184ff899a830e
--- /dev/null
+++ b/doc/html/search/functions_10.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['update_0',['update',['../class_s_o_i_l_1_1_figure.html#a65998054544cd71fdb47c0b1b956e883',1,'SOIL::Figure::update()'],['../class_s_o_i_l_1_1_variable.html#ab1c36ffeef15739332ebd39c3c63184e',1,'SOIL::Variable::update()']]],
+  ['uri_1',['uri',['../class_m_q_t_t_1_1_configuration.html#ac4b05210a99b650da641d3966266ec04',1,'MQTT::Configuration']]],
+  ['use_5fcount_2',['use_count',['../class_u_d_p_1_1_broadcast.html#a909590437de40c1fdff2b8a2c3c934de',1,'UDP::Broadcast']]],
+  ['utc_5fnow_3',['utc_now',['../class_s_o_i_l_1_1_time.html#ae06629b296dcd9b01b6019101a020208',1,'SOIL::Time']]]
+];
diff --git a/doc/html/search/functions_11.html b/doc/html/search/functions_11.html
new file mode 100644
index 0000000000000000000000000000000000000000..fb95b058217481c6484af4289157abf59ac1c08a
--- /dev/null
+++ b/doc/html/search/functions_11.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_11.js b/doc/html/search/functions_11.js
new file mode 100644
index 0000000000000000000000000000000000000000..9b62f46c113f7e2d225fe1d0aca991226838b9f2
--- /dev/null
+++ b/doc/html/search/functions_11.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['variable_0',['Variable',['../class_s_o_i_l_1_1_variable.html#a42d3242d0f2619bbedbe54473e5bde05',1,'SOIL::Variable']]]
+];
diff --git a/doc/html/search/functions_12.html b/doc/html/search/functions_12.html
new file mode 100644
index 0000000000000000000000000000000000000000..292fd4a7a5a646ee7665cee91b75ca750dca5604
--- /dev/null
+++ b/doc/html/search/functions_12.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_12.js b/doc/html/search/functions_12.js
new file mode 100644
index 0000000000000000000000000000000000000000..b001bc794e496edced118f2d7d0c968d3d520bc7
--- /dev/null
+++ b/doc/html/search/functions_12.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['wjson_0',['wjson',['../class_s_o_i_l_1_1_container.html#a197355701a388b65d7ea327ddd45024a',1,'SOIL::Container::wjson()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a795ada1b50ab3659a27fe96e40745480',1,'SOIL::Container&lt; T, x, -1 &gt;::wjson()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#abab8884727d8470a1d6a151f11800338',1,'SOIL::Container&lt; T, -1, -1 &gt;::wjson()'],['../class_s_o_i_l_1_1_element.html#a9dd8b98ea77291d638408b123e68536a',1,'SOIL::Element::wjson()'],['../class_s_o_i_l_1_1_figure.html#aca02467b79b6d4a9590553b612876b20',1,'SOIL::Figure::wjson()'],['../class_s_o_i_l_1_1_function.html#add97197a51b3c44f9eb873a23329983e',1,'SOIL::Function::wjson()'],['../class_s_o_i_l_1_1_object.html#aebb0f522c4ced342fbd33cb377eeb4b3',1,'SOIL::Object::wjson()'],['../class_s_o_i_l_1_1_parameter.html#aec2434faa57778dbc8783ec77a86d627',1,'SOIL::Parameter::wjson()'],['../class_s_o_i_l_1_1_range.html#a65b2542daa4ce48d6738533e6e417ade',1,'SOIL::Range::wjson()'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ad5847bdeceb2dcf632de0e7c0c3bc73f',1,'SOIL::Range&lt; std::string &gt;::wjson()'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#acb0783d3e05740740715a4fb8948a2d3',1,'SOIL::Range&lt; ENUM &gt;::wjson()'],['../class_s_o_i_l_1_1_variable.html#a37198446b18018989419984f3ec82c68',1,'SOIL::Variable::wjson()']]],
+  ['write_1',['write',['../class_s_o_i_l_1_1_figure.html#af07e6f343402f0f9280ede65d4b26fa0',1,'SOIL::Figure::write()'],['../class_s_o_i_l_1_1_parameter.html#af378abd9212084ebb270383d3cd4300c',1,'SOIL::Parameter::write()'],['../class_s_o_i_l_1_1_variable.html#a9b112a792be9ae8647bc58fd4e28c5bb',1,'SOIL::Variable::write()']]]
+];
diff --git a/doc/html/search/functions_13.html b/doc/html/search/functions_13.html
new file mode 100644
index 0000000000000000000000000000000000000000..5fcdf9c98f68664983516e3a1bbcfbe886b77923
--- /dev/null
+++ b/doc/html/search/functions_13.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_13.js b/doc/html/search/functions_13.js
new file mode 100644
index 0000000000000000000000000000000000000000..2dcbc46fbc6dce908ba777e8ff4eea739ddbd55c
--- /dev/null
+++ b/doc/html/search/functions_13.js
@@ -0,0 +1,20 @@
+var searchData=
+[
+  ['_7ebroadcast_0',['~Broadcast',['../class_u_d_p_1_1_broadcast.html#aa7e94761b0526d1fc1dac158b841377f',1,'UDP::Broadcast']]],
+  ['_7econfiguration_1',['~Configuration',['../class_m_q_t_t_1_1_configuration.html#af3d0a9c0e14065afc259ad219a4e4458',1,'MQTT::Configuration::~Configuration()'],['../class_u_d_p_1_1_configuration.html#accb7231b058bddbcde4345ee13cc7ada',1,'UDP::Configuration::~Configuration()']]],
+  ['_7eelement_2',['~Element',['../class_s_o_i_l_1_1_element.html#a4acd9dc20ed4e0926da2ba7e4a5af7ab',1,'SOIL::Element']]],
+  ['_7eenum_3',['~Enum',['../class_s_o_i_l_1_1_enum.html#ac25e85a1e15c6d2eb25565d6a362d867',1,'SOIL::Enum']]],
+  ['_7eexception_4',['~Exception',['../class_m_q_t_t_1_1_exception.html#ae4bb6d8901509f35649da27f9e681202',1,'MQTT::Exception::~Exception()'],['../class_u_d_p_1_1_exception.html#a825ce3fc0f996f9de64b075bad9bc7e0',1,'UDP::Exception::~Exception()']]],
+  ['_7efigure_5',['~Figure',['../class_s_o_i_l_1_1_figure.html#a1f20334aa82abbb7d0e9d2322e5683d0',1,'SOIL::Figure']]],
+  ['_7efunction_6',['~Function',['../class_s_o_i_l_1_1_function.html#a8082d73f3dcb5567775dc2db5c291aec',1,'SOIL::Function']]],
+  ['_7ehasher_7',['~Hasher',['../class_s_i_g_n_1_1_hasher.html#a582f222aea5015de7faceba2bab99bc3',1,'SIGN::Hasher']]],
+  ['_7eobject_8',['~Object',['../class_s_o_i_l_1_1_object.html#ab0d8fb2cb9e32c16ea631ed93e7a5d57',1,'SOIL::Object']]],
+  ['_7eparameter_9',['~Parameter',['../class_s_o_i_l_1_1_parameter.html#a3c7401cb8d13756cc70d1df4e16db2e5',1,'SOIL::Parameter']]],
+  ['_7epublisher_10',['~Publisher',['../class_m_q_t_t_1_1_publisher.html#a60b4c5ff7ca2bfee4b13ac00d954c205',1,'MQTT::Publisher']]],
+  ['_7erange_11',['~Range',['../class_s_o_i_l_1_1_range.html#ae371a8bd8d3c27d3e77b4e563084b19b',1,'SOIL::Range::~Range()'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a280aacb2fb5b4ad22c866a83671967c5',1,'SOIL::Range&lt; std::string &gt;::~Range()'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ac783001a590c29c1b9f128d3ad293c2c',1,'SOIL::Range&lt; ENUM &gt;::~Range()']]],
+  ['_7eresource_12',['~Resource',['../class_h_t_t_p_1_1_resource.html#a188f4a9d639f416317a9f5a6992e6ec5',1,'HTTP::Resource']]],
+  ['_7eserver_13',['~Server',['../class_h_t_t_p_1_1_server.html#aaea152f2562b0c0c4f16bfdc5472a759',1,'HTTP::Server']]],
+  ['_7esigner_14',['~Signer',['../class_s_i_g_n_1_1_signer.html#ae312cab4c8479a9a4a56f90257ab8e7d',1,'SIGN::Signer']]],
+  ['_7etime_15',['~Time',['../class_s_o_i_l_1_1_time.html#a5fe6292ab3b05d9107c6884dfbb5da16',1,'SOIL::Time']]],
+  ['_7evariable_16',['~Variable',['../class_s_o_i_l_1_1_variable.html#abb8683a103f7eed6be691c6057312baa',1,'SOIL::Variable']]]
+];
diff --git a/doc/html/search/functions_2.html b/doc/html/search/functions_2.html
new file mode 100644
index 0000000000000000000000000000000000000000..1f16d2ae5184fba68c7d645678ed43bd9b86a0b9
--- /dev/null
+++ b/doc/html/search/functions_2.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_2.js b/doc/html/search/functions_2.js
new file mode 100644
index 0000000000000000000000000000000000000000..c1b94c10265883b0506d398d3c523fe53bef3f1b
--- /dev/null
+++ b/doc/html/search/functions_2.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+  ['cast_0',['cast',['../class_s_o_i_l_1_1_element.html#a6ef3653a14ca3245c529684e939b122d',1,'SOIL::Element::cast()'],['../class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da',1,'SOIL::Figure::cast()']]],
+  ['check_1',['check',['../class_s_o_i_l_1_1_range.html#a98473208bab6e8563fef085b9c71cd53',1,'SOIL::Range::check()'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a030f2f9b3f2e56f0e832956e069226d2',1,'SOIL::Range&lt; std::string &gt;::check()'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#a4099d35a82c3b57745d3c4d0165f590b',1,'SOIL::Range&lt; ENUM &gt;::check(const std::string &amp;value)'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#afd07b4bbc51b9b69f1ad8798fcc77fa6',1,'SOIL::Range&lt; ENUM &gt;::check(const SOIL::ENUM &amp;value)']]],
+  ['check_5frange_2',['check_range',['../class_s_o_i_l_1_1_container.html#ad1574e37bb9696fdee3986964e77f050',1,'SOIL::Container::check_range()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a4afd624980020d58d536fecd24a3a64e',1,'SOIL::Container&lt; T, x, -1 &gt;::check_range()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa74985ed06251ca010f9250d05fa9750',1,'SOIL::Container&lt; T, -1, -1 &gt;::check_range()'],['../class_s_o_i_l_1_1_figure.html#aaf9b99da1c712f54d758c492830a7566',1,'SOIL::Figure::check_range()']]],
+  ['choices_3',['choices',['../class_s_o_i_l_1_1_enum.html#ad670fac86700dfca33f3fe79cc27602a',1,'SOIL::Enum']]],
+  ['close_4',['close',['../class_h_t_t_p_1_1_server.html#a9f24bc848a91d7d8a7e084b102de4e7a',1,'HTTP::Server']]],
+  ['code_5',['code',['../class_m_q_t_t_1_1_exception.html#aa34f052cb61f915550c92b17621b58b1',1,'MQTT::Exception']]],
+  ['configuration_6',['Configuration',['../class_m_q_t_t_1_1_configuration.html#a00eedbeafcfe5ce10df76e8ac20ac6f3',1,'MQTT::Configuration::Configuration()'],['../class_m_q_t_t_1_1_configuration.html#a76525cfc37fb8ddc692db93fd6fb5e6f',1,'MQTT::Configuration::Configuration(std::string filename)'],['../class_u_d_p_1_1_configuration.html#ad8e8aaa5d502e7688ff6b08b50a523ed',1,'UDP::Configuration::Configuration()'],['../class_u_d_p_1_1_configuration.html#a16a012d0744f694e3f9f9865ce89c624',1,'UDP::Configuration::Configuration(std::string filename)']]],
+  ['configure_7',['configure',['../class_m_q_t_t_1_1_publisher.html#a2904eace56884e6d996113707a729a15',1,'MQTT::Publisher::configure()'],['../class_u_d_p_1_1_broadcast.html#a4083638acba927342d411db85d6fe9a1',1,'UDP::Broadcast::configure()']]],
+  ['connect_8',['connect',['../class_m_q_t_t_1_1_publisher.html#acb20d6b57d5a4e5285f35aa19e42ba93',1,'MQTT::Publisher::connect(MQTT::Configuration configuration)'],['../class_m_q_t_t_1_1_publisher.html#a027fef266eed826037e4188766f165f0',1,'MQTT::Publisher::connect()']]],
+  ['container_9',['Container',['../class_s_o_i_l_1_1_container.html#ac329fc28b401a84de21b5f298e9236ce',1,'SOIL::Container::Container()'],['../class_s_o_i_l_1_1_container.html#a8c515f73d9000e53db8478a8836c1d1f',1,'SOIL::Container::Container(const std::vector&lt; std::vector&lt; T &gt; &gt; &amp;value)'],['../class_s_o_i_l_1_1_container.html#a00d0e2ac641857eac06d5d833c28229b',1,'SOIL::Container::Container(HTTP::Json json)'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a0cf0460b6035095a9fb4ac40fc0d56c8',1,'SOIL::Container&lt; T, x, -1 &gt;::Container()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ad9bd44996d34de087f4d8e52e3d087bd',1,'SOIL::Container&lt; T, x, -1 &gt;::Container(const std::vector&lt; T &gt; &amp;value)'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aeeba9a7d45fc949532443d3f6184cb29',1,'SOIL::Container&lt; T, x, -1 &gt;::Container(HTTP::Json json)'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a621f4d118ab910a12f01986158db4b04',1,'SOIL::Container&lt; T, -1, -1 &gt;::Container()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aa274a79ce54cb7ce0e384790332c6dfa',1,'SOIL::Container&lt; T, -1, -1 &gt;::Container(const T &amp;value)'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#a55089fd352f89f4248ea546a365aecc7',1,'SOIL::Container&lt; T, -1, -1 &gt;::Container(HTTP::Json json)']]],
+  ['create_10',['create',['../class_s_o_i_l_1_1_function.html#a50cf5e875bee2f192e04271642175bf6',1,'SOIL::Function::create()'],['../class_s_o_i_l_1_1_object.html#a4ce4f8d21682f894c34f447d2a62cd30',1,'SOIL::Object::create()'],['../class_s_o_i_l_1_1_parameter.html#ae6326c41af3bca1b02f8d8dcca05ecad',1,'SOIL::Parameter::create()'],['../class_s_o_i_l_1_1_variable.html#a421f6aeaee92e362e455edcbe6b58231',1,'SOIL::Variable::create()']]]
+];
diff --git a/doc/html/search/functions_3.html b/doc/html/search/functions_3.html
new file mode 100644
index 0000000000000000000000000000000000000000..0b37ee2fd4caa62576473f815508a98e8d1adb08
--- /dev/null
+++ b/doc/html/search/functions_3.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_3.js b/doc/html/search/functions_3.js
new file mode 100644
index 0000000000000000000000000000000000000000..d406b9c3d07d5685537ebadacb9bd2c03ebb0372
--- /dev/null
+++ b/doc/html/search/functions_3.js
@@ -0,0 +1,12 @@
+var searchData=
+[
+  ['datatype_0',['datatype',['../namespace_s_o_i_l.html#a485afdb40b0c76b73cbbc0da177cf8e3',1,'SOIL']]],
+  ['datatype_3c_20bool_20_3e_1',['datatype&lt; bool &gt;',['../namespace_s_o_i_l.html#a034d9e6f234755509cc20b01b506f761',1,'SOIL']]],
+  ['datatype_3c_20double_20_3e_2',['datatype&lt; double &gt;',['../namespace_s_o_i_l.html#a863aac9ac9eb4396135f86bd9bc29bad',1,'SOIL']]],
+  ['datatype_3c_20int_20_3e_3',['datatype&lt; int &gt;',['../namespace_s_o_i_l.html#a1e904aedc828f75201ffc0452ff28c03',1,'SOIL']]],
+  ['datatype_3c_20int64_5ft_20_3e_4',['datatype&lt; int64_t &gt;',['../namespace_s_o_i_l.html#a980491413d86c50ced57a8345c8f63ed',1,'SOIL']]],
+  ['datatype_3c_20soil_3a_3aenum_20_3e_5',['datatype&lt; SOIL::ENUM &gt;',['../namespace_s_o_i_l.html#a3656e92123956c8afcfbe545eef81eb7',1,'SOIL']]],
+  ['datatype_3c_20soil_3a_3atime_20_3e_6',['datatype&lt; SOIL::TIME &gt;',['../namespace_s_o_i_l.html#aa16db0f32c1f6a992261e1747be93097',1,'SOIL']]],
+  ['datatype_3c_20std_3a_3astring_20_3e_7',['datatype&lt; std::string &gt;',['../namespace_s_o_i_l.html#aa97c25e5a3e597eea65e13ac0ce85416',1,'SOIL']]],
+  ['disconnect_8',['disconnect',['../class_m_q_t_t_1_1_publisher.html#ac3a08d98f8387d2859c500c982bb243e',1,'MQTT::Publisher']]]
+];
diff --git a/doc/html/search/functions_4.html b/doc/html/search/functions_4.html
new file mode 100644
index 0000000000000000000000000000000000000000..0eaf2b4a578a789de96bc114e9bda8fe7dbc9263
--- /dev/null
+++ b/doc/html/search/functions_4.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_4.js b/doc/html/search/functions_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..d3a50a68e6637980a3d3fb223ad7f061e488ddf9
--- /dev/null
+++ b/doc/html/search/functions_4.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['element_0',['Element',['../class_s_o_i_l_1_1_element.html#ae31b32fb944a138ac955e07a5be9d652',1,'SOIL::Element']]],
+  ['enum_1',['Enum',['../class_s_o_i_l_1_1_enum.html#a21bc467860d215a091d9f0d09b7223a1',1,'SOIL::Enum::Enum()'],['../class_s_o_i_l_1_1_enum.html#a30718fd8e647815e78b1a0b63d878fd8',1,'SOIL::Enum::Enum(std::string value)'],['../class_s_o_i_l_1_1_enum.html#a8bb7c616cb01a03df35a73a4dd5edd34',1,'SOIL::Enum::Enum(std::string value, std::vector&lt; std::string &gt; choices)']]],
+  ['exception_2',['Exception',['../class_m_q_t_t_1_1_exception.html#aa2e20db284b3c4825824d421dfc3694f',1,'MQTT::Exception::Exception(const char *message=&quot;&quot;, int code=0)'],['../class_m_q_t_t_1_1_exception.html#acc088fa326f26d0ea21aa7bf250eeeae',1,'MQTT::Exception::Exception(const std::exception &amp;exc)'],['../class_u_d_p_1_1_exception.html#a303fac04b1c83a4c5f8119344b6d8ec1',1,'UDP::Exception::Exception()']]]
+];
diff --git a/doc/html/search/functions_5.html b/doc/html/search/functions_5.html
new file mode 100644
index 0000000000000000000000000000000000000000..eaa2769758b6057c6527dd9842108139d928f623
--- /dev/null
+++ b/doc/html/search/functions_5.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_5.js b/doc/html/search/functions_5.js
new file mode 100644
index 0000000000000000000000000000000000000000..37c2d77b287c27f09db869aef6aa4ab760ab1969
--- /dev/null
+++ b/doc/html/search/functions_5.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['figure_0',['Figure',['../class_s_o_i_l_1_1_figure.html#a8da920bd367b9a6ee8b70fcfa1f709ac',1,'SOIL::Figure']]],
+  ['fingerprint_1',['fingerprint',['../class_s_o_i_l_1_1_variable.html#aaeba9a89d6c0b950246fff61ac221fa7',1,'SOIL::Variable']]],
+  ['fqid_2',['fqid',['../class_s_o_i_l_1_1_element.html#ad0dff9864321178e13df316f1b317bcb',1,'SOIL::Element']]],
+  ['function_3',['Function',['../class_s_o_i_l_1_1_function.html#add2a16248e512d8efe813f2a27df73b1',1,'SOIL::Function']]]
+];
diff --git a/doc/html/search/functions_6.html b/doc/html/search/functions_6.html
new file mode 100644
index 0000000000000000000000000000000000000000..25d1cc812f77634a431b8b3f23975de626796c51
--- /dev/null
+++ b/doc/html/search/functions_6.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_6.js b/doc/html/search/functions_6.js
new file mode 100644
index 0000000000000000000000000000000000000000..a91c229305d9abb214084036abd5a3635ff00e4b
--- /dev/null
+++ b/doc/html/search/functions_6.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+  ['handle_0',['handle',['../class_h_t_t_p_1_1_resource.html#a742c093a9caba778c16592c424c4a169',1,'HTTP::Resource::handle()'],['../class_s_o_i_l_1_1_element.html#a0f046d3e28928e07013a07b7e5b8e5a2',1,'SOIL::Element::handle()']]],
+  ['handle_5fdelete_1',['handle_delete',['../class_h_t_t_p_1_1_resource.html#ae0d3b5ab1757e069f38c55e2d5ecc3af',1,'HTTP::Resource::handle_delete()'],['../class_s_o_i_l_1_1_object.html#a4e237fb0358f5adaea25f2ac95b8b5e7',1,'SOIL::Object::handle_delete()']]],
+  ['handle_5fexception_2',['handle_exception',['../class_h_t_t_p_1_1_resource.html#aad145d8d9ff6e9b1d0044b7e26678800',1,'HTTP::Resource']]],
+  ['handle_5fget_3',['handle_get',['../class_h_t_t_p_1_1_resource.html#ae6913253b8e38f0f4eed9903058ae589',1,'HTTP::Resource::handle_get()'],['../class_s_o_i_l_1_1_function.html#a636a905c115a1686caef9815c5b1aac9',1,'SOIL::Function::handle_get()'],['../class_s_o_i_l_1_1_object.html#a24b2c5323d9f5f0651d48d3d319eb225',1,'SOIL::Object::handle_get()'],['../class_s_o_i_l_1_1_parameter.html#a37602b6b8f95595a78b70a9b0eb865ad',1,'SOIL::Parameter::handle_get()'],['../class_s_o_i_l_1_1_variable.html#a10c29b035a567af07850dd1f27e218fe',1,'SOIL::Variable::handle_get()']]],
+  ['handle_5fhead_4',['handle_head',['../class_h_t_t_p_1_1_resource.html#a812b69953a8704e2528165c7d79012a5',1,'HTTP::Resource']]],
+  ['handle_5foptions_5',['handle_options',['../class_h_t_t_p_1_1_resource.html#abc5c8dc34053d3b02eae489f5c1afda4',1,'HTTP::Resource::handle_options()'],['../class_s_o_i_l_1_1_variable.html#a62d80e5cd14d377d3bea90e6332b0b72',1,'SOIL::Variable::handle_options()']]],
+  ['handle_5fpatch_6',['handle_patch',['../class_h_t_t_p_1_1_resource.html#aec711995a2b463d35443e66e4eb70533',1,'HTTP::Resource::handle_patch()'],['../class_s_o_i_l_1_1_parameter.html#ac58916de16e381e40123bf9633a151ad',1,'SOIL::Parameter::handle_patch()']]],
+  ['handle_5fpost_7',['handle_post',['../class_h_t_t_p_1_1_resource.html#a3af3a05ec6058b8a8e058ceebe1d7ddf',1,'HTTP::Resource::handle_post()'],['../class_s_o_i_l_1_1_function.html#a5d0ba47fb669127afcbea1a3d192fe88',1,'SOIL::Function::handle_post()']]],
+  ['handle_5fput_8',['handle_put',['../class_h_t_t_p_1_1_resource.html#a21b1e78bdca84f9fd04fd026a0c3ea9c',1,'HTTP::Resource::handle_put()'],['../class_s_o_i_l_1_1_object.html#ac6614134cf7d4c7caaaae13fac999978',1,'SOIL::Object::handle_put()']]],
+  ['hash_9',['hash',['../class_s_i_g_n_1_1_hasher.html#a00cfd65d186d606a4fc1572812315960',1,'SIGN::Hasher']]],
+  ['hasher_10',['Hasher',['../class_s_i_g_n_1_1_hasher.html#a8c2a89d646c15f8da4c091ae843ae06b',1,'SIGN::Hasher']]]
+];
diff --git a/doc/html/search/functions_7.html b/doc/html/search/functions_7.html
new file mode 100644
index 0000000000000000000000000000000000000000..b6392eaae0ecb30cf72430252a6e12a87fa0f64b
--- /dev/null
+++ b/doc/html/search/functions_7.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_7.js b/doc/html/search/functions_7.js
new file mode 100644
index 0000000000000000000000000000000000000000..34c0eb56b340cfe30226dba01ec7b72c24759995
--- /dev/null
+++ b/doc/html/search/functions_7.js
@@ -0,0 +1,12 @@
+var searchData=
+[
+  ['index_0',['index',['../class_s_o_i_l_1_1_enum.html#ac84d64e172ea5cbecf0e441c787872e0',1,'SOIL::Enum::index() const'],['../class_s_o_i_l_1_1_enum.html#a2809b4d4200d001b62a5d3bd5d1aa04c',1,'SOIL::Enum::index(std::string value) const']]],
+  ['insert_1',['insert',['../class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0',1,'SOIL::Element::insert(std::string uuid, std::shared_ptr&lt; Element &gt; child)'],['../class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e',1,'SOIL::Element::insert(std::string uuid, Element *child)'],['../class_s_o_i_l_1_1_object.html#a5dabf727c8256928d1f019520a34be1f',1,'SOIL::Object::insert()']]],
+  ['invoke_2',['invoke',['../class_s_o_i_l_1_1_function.html#ac4d8391f2f588a467502f0bf9c8c7c7b',1,'SOIL::Function']]],
+  ['is_5fconnected_3',['is_connected',['../class_m_q_t_t_1_1_publisher.html#a725aac90d42d1b9e09e25d3e3347575d',1,'MQTT::Publisher']]],
+  ['is_5ffunction_4',['is_function',['../class_s_o_i_l_1_1_element.html#aaa82810e11265c4a890246f633fe4fc7',1,'SOIL::Element']]],
+  ['is_5fnull_5',['is_null',['../class_s_o_i_l_1_1_container.html#a8ae9246ee94ebe4a82f7dad7e02ff310',1,'SOIL::Container::is_null()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#a44119ac58622a2aa98cf92018826def1',1,'SOIL::Container&lt; T, x, -1 &gt;::is_null()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae5184ac1f1d1292b4cb72c28b3b3442e',1,'SOIL::Container&lt; T, -1, -1 &gt;::is_null()'],['../class_s_o_i_l_1_1_time.html#a5248a0ed5db231883fd8d1ee34ab2325',1,'SOIL::Time::is_null()']]],
+  ['is_5fobject_6',['is_object',['../class_s_o_i_l_1_1_element.html#a8bd2f333fbe5c1b51218512c3ef8c9b3',1,'SOIL::Element']]],
+  ['is_5fparameter_7',['is_parameter',['../class_s_o_i_l_1_1_element.html#a4c20dd71ee68dd4823e32aa3868f337b',1,'SOIL::Element']]],
+  ['is_5fvariable_8',['is_variable',['../class_s_o_i_l_1_1_element.html#aa035b89c623428f7d93b8b1da0ce1e49',1,'SOIL::Element']]]
+];
diff --git a/doc/html/search/functions_8.html b/doc/html/search/functions_8.html
new file mode 100644
index 0000000000000000000000000000000000000000..ecf6a8922258f0f8654656ccd7111b19805bb72a
--- /dev/null
+++ b/doc/html/search/functions_8.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_8.js b/doc/html/search/functions_8.js
new file mode 100644
index 0000000000000000000000000000000000000000..6d35229544d8695ff34f027609aa3f2ee33f92e2
--- /dev/null
+++ b/doc/html/search/functions_8.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['json_0',['json',['../class_s_o_i_l_1_1_element.html#ad55fc11662301ce186e593852a9425ce',1,'SOIL::Element']]]
+];
diff --git a/doc/html/search/functions_9.html b/doc/html/search/functions_9.html
new file mode 100644
index 0000000000000000000000000000000000000000..cd70e2b74af32eecb30a71fc48ffa59c54fea97f
--- /dev/null
+++ b/doc/html/search/functions_9.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_9.js b/doc/html/search/functions_9.js
new file mode 100644
index 0000000000000000000000000000000000000000..dc38991b52a6c312abe5451d2893ae515b2076d7
--- /dev/null
+++ b/doc/html/search/functions_9.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['main_0',['main',['../main_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627',1,'main.cpp']]],
+  ['make_5fargument_1',['make_argument',['../class_s_o_i_l_1_1_function.html#a542306cc71842ef1fe4b13597a5b7d1b',1,'SOIL::Function']]],
+  ['make_5freturn_2',['make_return',['../class_s_o_i_l_1_1_function.html#a4cdaaf26db414f721aa0c79aaa38cd46',1,'SOIL::Function']]],
+  ['min_5fdelay_5fms_3',['min_delay_ms',['../class_m_q_t_t_1_1_publisher.html#a23f69f0d29a0f7e98d0ed2c0a74c47bd',1,'MQTT::Publisher']]],
+  ['mqtt_4',['mqtt',['../class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9',1,'SOIL::Parameter::mqtt()'],['../class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f',1,'SOIL::Variable::mqtt()']]]
+];
diff --git a/doc/html/search/functions_a.html b/doc/html/search/functions_a.html
new file mode 100644
index 0000000000000000000000000000000000000000..d2a3de90ea5fc5089e05ecf31539837ddd6472d3
--- /dev/null
+++ b/doc/html/search/functions_a.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_a.js b/doc/html/search/functions_a.js
new file mode 100644
index 0000000000000000000000000000000000000000..ae401cae660bf9479d25effa397edce7a834029d
--- /dev/null
+++ b/doc/html/search/functions_a.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['name_0',['name',['../class_s_i_g_n_1_1_signer.html#a6b83d99b55d005f7ae32a3e18a9d5925',1,'SIGN::Signer']]],
+  ['null_5fdeleter_1',['null_deleter',['../namespace_s_o_i_l.html#acc4b84d1cba2fafd495c35ebaeae1b96',1,'SOIL']]]
+];
diff --git a/doc/html/search/functions_b.html b/doc/html/search/functions_b.html
new file mode 100644
index 0000000000000000000000000000000000000000..e6f34bb216b0025401c6744396515b65eb1f49f2
--- /dev/null
+++ b/doc/html/search/functions_b.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_b.js b/doc/html/search/functions_b.js
new file mode 100644
index 0000000000000000000000000000000000000000..16b323f2f0c8f6c62b3352fddf047a9859ccfb27
--- /dev/null
+++ b/doc/html/search/functions_b.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+  ['object_0',['Object',['../class_s_o_i_l_1_1_object.html#ac821d8158a2c4214b15cb1d9be8954dd',1,'SOIL::Object']]],
+  ['open_1',['open',['../class_h_t_t_p_1_1_server.html#aec1277227e7f17a1115e6d868a07b486',1,'HTTP::Server']]],
+  ['openssl_5fversion_2',['openssl_version',['../class_s_i_g_n_1_1_signer.html#a8fbad2b5e76a6333dfa7fd537a5600e4',1,'SIGN::Signer']]],
+  ['operator_2a_3',['operator*',['../class_s_o_i_l_1_1_container.html#a6483504f2c37393c0fdde77e39f5a030',1,'SOIL::Container::operator*()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ac0d511ffb0f1398cbb9b88a9974ca647',1,'SOIL::Container&lt; T, x, -1 &gt;::operator*()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#aead4f92e330d6791b664af81b3f1942b',1,'SOIL::Container&lt; T, -1, -1 &gt;::operator*()'],['../class_s_o_i_l_1_1_figure.html#abb3fe4e331a9a5f2f53b011309d6c937',1,'SOIL::Figure::operator*()']]],
+  ['operator_3c_3d_4',['operator&lt;=',['../namespace_s_o_i_l.html#a3b4ec3441b90255cca35259c5e4a9321',1,'SOIL']]],
+  ['operator_3d_5',['operator=',['../class_s_o_i_l_1_1_figure.html#a4e4d6c93a559d5e18178de9a79b472ec',1,'SOIL::Figure::operator=()'],['../class_s_o_i_l_1_1_parameter.html#a905eb12cd0e50cf245f2003643602acf',1,'SOIL::Parameter::operator=()'],['../class_s_o_i_l_1_1_variable.html#a85828d5d8162aff4c496c782a432b55d',1,'SOIL::Variable::operator=()']]],
+  ['operator_3e_3d_6',['operator&gt;=',['../namespace_s_o_i_l.html#adc8de2e2651ccc2e7c03e8289cd64c2b',1,'SOIL']]],
+  ['operator_5b_5d_7',['operator[]',['../class_s_o_i_l_1_1_element.html#a4704591e187b8bf5344979d095703239',1,'SOIL::Element']]]
+];
diff --git a/doc/html/search/functions_c.html b/doc/html/search/functions_c.html
new file mode 100644
index 0000000000000000000000000000000000000000..87b4ce265d02e3e82a419eeb0d118365d5f5c44d
--- /dev/null
+++ b/doc/html/search/functions_c.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_c.js b/doc/html/search/functions_c.js
new file mode 100644
index 0000000000000000000000000000000000000000..8da64dfd349d15265aedabd701073c43adde3d42
--- /dev/null
+++ b/doc/html/search/functions_c.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+  ['parameter_0',['Parameter',['../class_s_o_i_l_1_1_parameter.html#a698d4320aa3e34bf080f9e416fb12ce4',1,'SOIL::Parameter']]],
+  ['print_1',['print',['../class_s_i_g_n_1_1_hasher.html#a5bd6f0f8915dab9870ca8eb8a4d39a10',1,'SIGN::Hasher']]],
+  ['ptr_2',['ptr',['../class_s_o_i_l_1_1_function.html#a3fb541cbb68722263ff8d7ab9628a260',1,'SOIL::Function::ptr()'],['../class_s_o_i_l_1_1_object.html#a98e9761c2be5e2acdfe673f48259172e',1,'SOIL::Object::ptr()'],['../class_s_o_i_l_1_1_parameter.html#a3ee4708c79c724f7905eecb9e2b2cc08',1,'SOIL::Parameter::ptr()'],['../class_s_o_i_l_1_1_variable.html#a22c13c0c69fca4f40a3b25285e746e06',1,'SOIL::Variable::ptr()']]],
+  ['publish_3',['publish',['../class_m_q_t_t_1_1_publisher.html#a45246cdc54d4972c4639018549605bbe',1,'MQTT::Publisher::publish(std::string topic, std::string message, int qos, bool retain)'],['../class_m_q_t_t_1_1_publisher.html#a6096485cddc28d316dd37cd32de809a7',1,'MQTT::Publisher::publish(std::vector&lt; std::string &gt; topics, std::vector&lt; std::string &gt; messages, int qos, bool retain)']]],
+  ['publisher_4',['Publisher',['../class_m_q_t_t_1_1_publisher.html#a9cf2cb13cc906810ce3f403c4ce646ac',1,'MQTT::Publisher']]],
+  ['push_5fback_5',['push_back',['../class_s_i_g_n_1_1_hasher.html#a5deae136de825a30bf627ec80a967a3f',1,'SIGN::Hasher']]]
+];
diff --git a/doc/html/search/functions_d.html b/doc/html/search/functions_d.html
new file mode 100644
index 0000000000000000000000000000000000000000..ada2b8170cc96b937fdfd5ec8359444025d1576d
--- /dev/null
+++ b/doc/html/search/functions_d.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_d.js b/doc/html/search/functions_d.js
new file mode 100644
index 0000000000000000000000000000000000000000..ebaaf7825f57ac31109be7caa28370b6623d8574
--- /dev/null
+++ b/doc/html/search/functions_d.js
@@ -0,0 +1,12 @@
+var searchData=
+[
+  ['range_0',['Range',['../class_s_o_i_l_1_1_range.html#a958a4969a97f2eb69c9732c66dc3393e',1,'SOIL::Range::Range()'],['../class_s_o_i_l_1_1_range.html#a97c8857f5b22eb87ca35c1c21a1bd814',1,'SOIL::Range::Range(T low, T high)'],['../class_s_o_i_l_1_1_range.html#a7f49766e22783da9259eee242663581b',1,'SOIL::Range::Range(std::vector&lt; T &gt; limits)'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a635b0935b69730c81232c9f26267e5ec',1,'SOIL::Range&lt; std::string &gt;::Range()'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#a940f37a4449075b3d335deb546644df1',1,'SOIL::Range&lt; std::string &gt;::Range(size_t low, size_t high)'],['../class_s_o_i_l_1_1_range_3_01std_1_1string_01_4.html#ae8c03e56fc933a95c0fec0d69b81da55',1,'SOIL::Range&lt; std::string &gt;::Range(std::vector&lt; size_t &gt; limits)'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#ab17c214a8c1af57e06e292b19ce1ae38',1,'SOIL::Range&lt; ENUM &gt;::Range()'],['../class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4.html#abd3d86c944aa61089231909a8d24e7f8',1,'SOIL::Range&lt; ENUM &gt;::Range(std::vector&lt; std::string &gt; choices)']]],
+  ['read_1',['read',['../class_s_o_i_l_1_1_figure.html#a6dc0dda3c135fb3512486192a52e0f8b',1,'SOIL::Figure::read()'],['../class_s_o_i_l_1_1_object.html#a0d2c97d0d9a71ec307211897d596bbde',1,'SOIL::Object::read()'],['../class_s_o_i_l_1_1_parameter.html#a57567b4cfe6b370e9af7c3ef6f10be6d',1,'SOIL::Parameter::read()'],['../class_s_o_i_l_1_1_variable.html#a95274da091367dba743e0cf0052b4dd7',1,'SOIL::Variable::read()']]],
+  ['reconnect_2',['reconnect',['../class_m_q_t_t_1_1_publisher.html#a10e8765c67285d1b9a969c531d091e08',1,'MQTT::Publisher']]],
+  ['remove_3',['remove',['../class_h_t_t_p_1_1_server.html#a2017a683878ebf7d90ad3a62c3516238',1,'HTTP::Server::remove()'],['../class_s_o_i_l_1_1_element.html#ae32f6b04a96ff98acfe29f884177f22f',1,'SOIL::Element::remove()'],['../class_s_o_i_l_1_1_object.html#a5480dbba0b410666dd030006e86b1108',1,'SOIL::Object::remove()']]],
+  ['remove_5fclient_4',['remove_client',['../class_u_d_p_1_1_broadcast.html#a093abc49c309116a4674e2264b352c92',1,'UDP::Broadcast']]],
+  ['request_5finfo_5',['request_info',['../class_h_t_t_p_1_1_resource.html#a4d76365792fb2684cc05a36ee2573dad',1,'HTTP::Resource']]],
+  ['reset_6',['reset',['../class_s_i_g_n_1_1_hasher.html#ac1a37929a88ca5eab2bba5d39105bdf3',1,'SIGN::Hasher']]],
+  ['resource_7',['Resource',['../class_h_t_t_p_1_1_resource.html#a5d1c2122fd6f7ea51c03c3b5cb45f2fc',1,'HTTP::Resource']]],
+  ['rfc3339_8',['rfc3339',['../class_s_o_i_l_1_1_time.html#a8b1d27ee800ce3dddeb38356c5edb86d',1,'SOIL::Time']]]
+];
diff --git a/doc/html/search/functions_e.html b/doc/html/search/functions_e.html
new file mode 100644
index 0000000000000000000000000000000000000000..129771500f387d8130741ce1d7a2d8b795ff2be3
--- /dev/null
+++ b/doc/html/search/functions_e.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_e.js b/doc/html/search/functions_e.js
new file mode 100644
index 0000000000000000000000000000000000000000..ffd51ab376377b63a0f9b3edd4d71612d931f3a5
--- /dev/null
+++ b/doc/html/search/functions_e.js
@@ -0,0 +1,31 @@
+var searchData=
+[
+  ['datatype_3c_20soil_3a_3aenum_20_3e_0',['datatype&lt; SOIL::ENUM &gt;',['../_figure_8cpp.html#a2c60fe17aef5a333bceb59cbcbef54c0',1,'Figure.cpp']]],
+  ['datatype_3c_20soil_3a_3atime_20_3e_1',['datatype&lt; SOIL::TIME &gt;',['../_figure_8cpp.html#a30e419f20fa7f6edd5cd20a93ad810ea',1,'Figure.cpp']]],
+  ['datatype_3c_20std_3a_3astring_20_3e_2',['datatype&lt; std::string &gt;',['../_figure_8cpp.html#a879dfa5f8bb335421b721c57145b622e',1,'Figure.cpp']]],
+  ['selected_3',['selected',['../class_s_o_i_l_1_1_enum.html#aa02862d7713c094d7ae5819eab23765f',1,'SOIL::Enum']]],
+  ['send_4',['send',['../class_u_d_p_1_1_broadcast.html#a9c923c64d3e48d85c3e91db348ffaa45',1,'UDP::Broadcast::send(std::string message)'],['../class_u_d_p_1_1_broadcast.html#a43e3f6b55707430a2eb698c41d181f6d',1,'UDP::Broadcast::send(std::vector&lt; std::string &gt; messages)']]],
+  ['serialize_5',['serialize',['../class_s_o_i_l_1_1_time.html#abf817530c975ea5bfce48be781a55993',1,'SOIL::Time']]],
+  ['serialize_5fdimensions_6',['serialize_dimensions',['../class_s_o_i_l_1_1_container.html#adc3f75677472910832a714f472c00d5a',1,'SOIL::Container::serialize_dimensions()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae65685172c0bcfc9d437accc2b194d34',1,'SOIL::Container&lt; T, x, -1 &gt;::serialize_dimensions()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ab568a07a3075826eb277cc7392510f74',1,'SOIL::Container&lt; T, -1, -1 &gt;::serialize_dimensions()']]],
+  ['serialize_5fvalue_7',['serialize_value',['../class_s_o_i_l_1_1_container.html#a5bb5198238af5ed6058e2f77ddb15f38',1,'SOIL::Container::serialize_value()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#aaeb96652a1ee684921d9ff91be93b724',1,'SOIL::Container&lt; T, x, -1 &gt;::serialize_value()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ae43038fa9aa3b9fbe4dd37e782008509',1,'SOIL::Container&lt; T, -1, -1 &gt;::serialize_value()']]],
+  ['server_8',['Server',['../class_h_t_t_p_1_1_server.html#ab739ee20c13e7d2e3979b67d39fc1ea0',1,'HTTP::Server']]],
+  ['set_9',['set',['../class_s_o_i_l_1_1_enum.html#a20887b8fedec14630adfda595d117a41',1,'SOIL::Enum::set(int value)'],['../class_s_o_i_l_1_1_enum.html#a18e004d4a882a61c94a902a3330014e2',1,'SOIL::Enum::set(std::string value)']]],
+  ['set_5fbuffer_10',['set_buffer',['../class_m_q_t_t_1_1_publisher.html#a6a1dfbd4bc21455ac307e73c4aefda3d',1,'MQTT::Publisher']]],
+  ['set_5fcovariance_11',['set_covariance',['../class_s_o_i_l_1_1_variable.html#a2bdfc0ecf346e6544ba897f86a5fa1e4',1,'SOIL::Variable']]],
+  ['set_5fnull_12',['set_null',['../class_s_o_i_l_1_1_container.html#a386c1992526628067cad3295763e6e39',1,'SOIL::Container::set_null()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4.html#ae25249aadcd39ed98369b62f69d9cf9b',1,'SOIL::Container&lt; T, x, -1 &gt;::set_null()'],['../class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4.html#ac2430a1362863511e7766b1e552c74be',1,'SOIL::Container&lt; T, -1, -1 &gt;::set_null()'],['../class_s_o_i_l_1_1_time.html#a78fdd7cac3e6ce1141080c35efd5f95f',1,'SOIL::Time::set_null()']]],
+  ['set_5frange_13',['set_range',['../class_s_o_i_l_1_1_figure.html#af096fd3a66cdc35d18a1cbbf637dddf9',1,'SOIL::Figure']]],
+  ['set_5froot_5ftopic_14',['set_root_topic',['../class_m_q_t_t_1_1_publisher.html#a4af13f0d9c7dd02c7eb707122d551801',1,'MQTT::Publisher']]],
+  ['set_5ftime_15',['set_time',['../class_s_o_i_l_1_1_figure.html#ab47f2268fb3f31960ab7bc8473974b3e',1,'SOIL::Figure']]],
+  ['set_5fvalue_16',['set_value',['../class_s_o_i_l_1_1_figure.html#a358a1060f3f04ea4aa1cb0b7705af4d9',1,'SOIL::Figure']]],
+  ['sha256_17',['sha256',['../class_s_i_g_n_1_1_hasher.html#a1478050616af6fac27055b9a5190a044',1,'SIGN::Hasher::sha256()'],['../class_s_o_i_l_1_1_variable.html#a04574823a93f387d4d1aaa4a7087f22e',1,'SOIL::Variable::sha256()']]],
+  ['sign_18',['sign',['../class_s_i_g_n_1_1_signer.html#a0315eec3c80b3238ee64e26115de9f0f',1,'SIGN::Signer::sign()'],['../class_s_o_i_l_1_1_variable.html#adf66dfb35361158c8c05cc5ed81bd247',1,'SOIL::Variable::sign()']]],
+  ['signer_19',['Signer',['../class_s_i_g_n_1_1_signer.html#aeb36266abd34f99a53482713be5b7794',1,'SIGN::Signer']]],
+  ['size_20',['size',['../class_s_i_g_n_1_1_hasher.html#a4f80bf765513cdff089a634599cc534d',1,'SIGN::Hasher']]],
+  ['to_5fjson_3c_20soil_3a_3abool_20_3e_21',['to_json&lt; SOIL::BOOL &gt;',['../json__helpers_8cpp.html#aae694c8a60db24c08de0a3a22ef12a40',1,'json_helpers.cpp']]],
+  ['to_5fjson_3c_20soil_3a_3aenum_20_3e_22',['to_json&lt; SOIL::ENUM &gt;',['../json__helpers_8cpp.html#a6ae5f67d92f7f1c13b8c5f816640b887',1,'json_helpers.cpp']]],
+  ['to_5fjson_3c_20soil_3a_3atime_20_3e_23',['to_json&lt; SOIL::TIME &gt;',['../json__helpers_8cpp.html#a10a05ce00d314258ffb9c6b536c1bf95',1,'json_helpers.cpp']]],
+  ['to_5fjson_3c_20std_3a_3astring_20_3e_24',['to_json&lt; std::string &gt;',['../json__helpers_8cpp.html#a434c4f67044a7cc0f874ef0f5bf55b22',1,'json_helpers.cpp']]],
+  ['to_5fvalue_3c_20soil_3a_3aenum_20_3e_25',['to_value&lt; SOIL::ENUM &gt;',['../json__helpers_8cpp.html#ab40adce50ce6a2a1da1f33a133e674b8',1,'json_helpers.cpp']]],
+  ['to_5fvalue_3c_20soil_3a_3atime_20_3e_26',['to_value&lt; SOIL::TIME &gt;',['../json__helpers_8cpp.html#a682bf7d67c51ddd6da804bfd2416d99d',1,'json_helpers.cpp']]],
+  ['to_5fvalue_3c_20std_3a_3astring_20_3e_27',['to_value&lt; std::string &gt;',['../json__helpers_8cpp.html#a9769894e25cf77bdd6aaea440439d6c6',1,'json_helpers.cpp']]]
+];
diff --git a/doc/html/search/functions_f.html b/doc/html/search/functions_f.html
new file mode 100644
index 0000000000000000000000000000000000000000..d2ae3cf586dc5684f53d70412d39c2ca127ba1c6
--- /dev/null
+++ b/doc/html/search/functions_f.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/functions_f.js b/doc/html/search/functions_f.js
new file mode 100644
index 0000000000000000000000000000000000000000..4d8508dd84d66cc5e2b7e3871d93b119922733e8
--- /dev/null
+++ b/doc/html/search/functions_f.js
@@ -0,0 +1,20 @@
+var searchData=
+[
+  ['time_0',['Time',['../class_s_o_i_l_1_1_time.html#a60eb480cb5dca0fbcd090b2e85e7ebaf',1,'SOIL::Time::Time()'],['../class_s_o_i_l_1_1_time.html#a7e51f091b04752599a4086ea3b0856f4',1,'SOIL::Time::Time(std::string value)'],['../class_s_o_i_l_1_1_time.html#ac84bbf33a7816b4502795d68a5e62486',1,'SOIL::Time::Time(boost::posix_time::ptime value)']]],
+  ['to_5fjson_1',['to_json',['../namespace_s_o_i_l.html#a82671406aa31a367c38dcad31d359b92',1,'SOIL']]],
+  ['to_5fjson_3c_20double_20_3e_2',['to_json&lt; double &gt;',['../namespace_s_o_i_l.html#aaff67634d006fd7dca3fffb14b28dd8e',1,'SOIL']]],
+  ['to_5fjson_3c_20int_20_3e_3',['to_json&lt; int &gt;',['../namespace_s_o_i_l.html#a86cf6d407ececca2487dcbe521978d21',1,'SOIL']]],
+  ['to_5fjson_3c_20int64_5ft_20_3e_4',['to_json&lt; int64_t &gt;',['../namespace_s_o_i_l.html#ada5ccc8aa10b097eea146a1b2d720e95',1,'SOIL']]],
+  ['to_5fjson_3c_20soil_3a_3abool_20_3e_5',['to_json&lt; SOIL::BOOL &gt;',['../namespace_s_o_i_l.html#a2c15040c8f4602cc146655bf71293721',1,'SOIL']]],
+  ['to_5fjson_3c_20soil_3a_3aenum_20_3e_6',['to_json&lt; SOIL::ENUM &gt;',['../namespace_s_o_i_l.html#a7a19e241bb85fab8d5669742af038a6b',1,'SOIL']]],
+  ['to_5fjson_3c_20soil_3a_3atime_20_3e_7',['to_json&lt; SOIL::TIME &gt;',['../namespace_s_o_i_l.html#a6cb86f8e799f4d035ef321becf44d6e2',1,'SOIL']]],
+  ['to_5fjson_3c_20std_3a_3astring_20_3e_8',['to_json&lt; std::string &gt;',['../namespace_s_o_i_l.html#a02992988be78a7ab33f587f28f9d77ee',1,'SOIL']]],
+  ['to_5fvalue_9',['to_value',['../namespace_s_o_i_l.html#a57872750dce21dba7ad0597f87c45556',1,'SOIL']]],
+  ['to_5fvalue_3c_20bool_20_3e_10',['to_value&lt; bool &gt;',['../namespace_s_o_i_l.html#adaab1a60ee0b36f8537055549511ba7b',1,'SOIL']]],
+  ['to_5fvalue_3c_20double_20_3e_11',['to_value&lt; double &gt;',['../namespace_s_o_i_l.html#aa5865fafee3cc8f7eeba8269f24c86ec',1,'SOIL']]],
+  ['to_5fvalue_3c_20int_20_3e_12',['to_value&lt; int &gt;',['../namespace_s_o_i_l.html#a104dd24cc9e4f3291cd6f6cd4ef9a962',1,'SOIL']]],
+  ['to_5fvalue_3c_20int64_5ft_20_3e_13',['to_value&lt; int64_t &gt;',['../namespace_s_o_i_l.html#ad66a788615277edb2f3e7077d89cd942',1,'SOIL']]],
+  ['to_5fvalue_3c_20soil_3a_3aenum_20_3e_14',['to_value&lt; SOIL::ENUM &gt;',['../namespace_s_o_i_l.html#a80e0cc86c7756c3f9b4ccf338cd146bd',1,'SOIL']]],
+  ['to_5fvalue_3c_20soil_3a_3atime_20_3e_15',['to_value&lt; SOIL::TIME &gt;',['../namespace_s_o_i_l.html#a10e716692b430aae80488a4eb82c7711',1,'SOIL']]],
+  ['to_5fvalue_3c_20std_3a_3astring_20_3e_16',['to_value&lt; std::string &gt;',['../namespace_s_o_i_l.html#a5b6625a4bf4d20d486a4258a17462ef9',1,'SOIL']]]
+];
diff --git a/doc/html/search/mag_sel.svg b/doc/html/search/mag_sel.svg
new file mode 100644
index 0000000000000000000000000000000000000000..03626f64a02be69e427a4a9f29a99052ccd235a1
--- /dev/null
+++ b/doc/html/search/mag_sel.svg
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<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="svg2"
+   width="20"
+   height="19"
+   viewBox="0 0 20 19"
+   sodipodi:docname="mag_sel.svg"
+   inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)">
+  <metadata
+     id="metadata8">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs6" />
+  <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="2096"
+     id="namedview4"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:zoom="32"
+     inkscape:cx="5.9792688"
+     inkscape:cy="1.1436277"
+     inkscape:window-x="1920"
+     inkscape:window-y="27"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="svg2" />
+  <circle
+     style="fill:#000000;fill-opacity:0;stroke:#656565;stroke-width:1.4;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+     id="path4611"
+     cx="5.5"
+     cy="8.5"
+     r="3.5" />
+  <path
+     style="fill:#656565;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="M 11,7 13.5,10 16,7 Z"
+     id="path4609"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="cccc" />
+  <path
+     style="fill:none;stroke:#656565;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+     d="m 8.1085854,11.109059 2.7823556,2.782356"
+     id="path4630"
+     inkscape:connector-curvature="0" />
+</svg>
diff --git a/doc/html/search/namespaces_0.html b/doc/html/search/namespaces_0.html
new file mode 100644
index 0000000000000000000000000000000000000000..c6a0d245ceb8a92b93dbf9b72e6b0e891e5ed487
--- /dev/null
+++ b/doc/html/search/namespaces_0.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="namespaces_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/namespaces_0.js b/doc/html/search/namespaces_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..a19083fd8ce931089287a511a65d6181f9c77308
--- /dev/null
+++ b/doc/html/search/namespaces_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['http_0',['HTTP',['../namespace_h_t_t_p.html',1,'']]]
+];
diff --git a/doc/html/search/namespaces_1.html b/doc/html/search/namespaces_1.html
new file mode 100644
index 0000000000000000000000000000000000000000..4bf428c6f3071383ce4f867ad3cf0ec9fd6b8aa1
--- /dev/null
+++ b/doc/html/search/namespaces_1.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="namespaces_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/namespaces_1.js b/doc/html/search/namespaces_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..19cac9663f5637bdbbc1c6f0431b10bbddf5a0bd
--- /dev/null
+++ b/doc/html/search/namespaces_1.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['mqtt_0',['MQTT',['../namespace_m_q_t_t.html',1,'']]],
+  ['mqtt_1',['mqtt',['../namespacemqtt.html',1,'']]]
+];
diff --git a/doc/html/search/namespaces_2.html b/doc/html/search/namespaces_2.html
new file mode 100644
index 0000000000000000000000000000000000000000..c7ad8a0392771c66a89107b80e2c7e1fae9cbd12
--- /dev/null
+++ b/doc/html/search/namespaces_2.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="namespaces_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/namespaces_2.js b/doc/html/search/namespaces_2.js
new file mode 100644
index 0000000000000000000000000000000000000000..a1dde0736b7c7958b717bb5d001f5936bcfe5bfa
--- /dev/null
+++ b/doc/html/search/namespaces_2.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['sign_0',['SIGN',['../namespace_s_i_g_n.html',1,'']]],
+  ['soil_1',['SOIL',['../namespace_s_o_i_l.html',1,'']]]
+];
diff --git a/doc/html/search/namespaces_3.html b/doc/html/search/namespaces_3.html
new file mode 100644
index 0000000000000000000000000000000000000000..8e9e21906389978d6a167eda5345408c21a71bdb
--- /dev/null
+++ b/doc/html/search/namespaces_3.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="namespaces_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/namespaces_3.js b/doc/html/search/namespaces_3.js
new file mode 100644
index 0000000000000000000000000000000000000000..ef9830f17f1bce27168e4520e6e8b09ea05796ac
--- /dev/null
+++ b/doc/html/search/namespaces_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['udp_0',['UDP',['../namespace_u_d_p.html',1,'']]]
+];
diff --git a/doc/html/search/nomatches.html b/doc/html/search/nomatches.html
new file mode 100644
index 0000000000000000000000000000000000000000..2b9360b6bd700092477e10cf056de3f8967dd808
--- /dev/null
+++ b/doc/html/search/nomatches.html
@@ -0,0 +1,13 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="NoMatches">No Matches</div>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/pages_0.html b/doc/html/search/pages_0.html
new file mode 100644
index 0000000000000000000000000000000000000000..e53c280ea3becba73a242c4f8e648f3b2de3833d
--- /dev/null
+++ b/doc/html/search/pages_0.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/pages_0.js b/doc/html/search/pages_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..d2765101a16940aeeea8f1b3f1f27bbfe070dd74
--- /dev/null
+++ b/doc/html/search/pages_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['soil_20c_2b_2b_0',['SOIL C++',['../index.html',1,'']]]
+];
diff --git a/doc/html/search/pages_1.html b/doc/html/search/pages_1.html
new file mode 100644
index 0000000000000000000000000000000000000000..73d9bb19073807aefbd208abaa48355402ea6190
--- /dev/null
+++ b/doc/html/search/pages_1.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/pages_1.js b/doc/html/search/pages_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..83220efb8184352b723a76cb69237c2a9efe5d3e
--- /dev/null
+++ b/doc/html/search/pages_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['todo_20list_0',['Todo List',['../todo.html',1,'']]]
+];
diff --git a/doc/html/search/related_0.html b/doc/html/search/related_0.html
new file mode 100644
index 0000000000000000000000000000000000000000..28d304b27e9f45c7078d232e3a731018f09c473e
--- /dev/null
+++ b/doc/html/search/related_0.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="related_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/related_0.js b/doc/html/search/related_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..c2c487296b43ed0b109464510dd75cdbcd21a3f0
--- /dev/null
+++ b/doc/html/search/related_0.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['operator_3c_3d_0',['operator&lt;=',['../class_s_o_i_l_1_1_time.html#a155e5f5e05694a584161bcc064d57eda',1,'SOIL::Time']]],
+  ['operator_3e_3d_1',['operator&gt;=',['../class_s_o_i_l_1_1_time.html#abe58e5fa4fc2cb986785a751fa6807aa',1,'SOIL::Time']]]
+];
diff --git a/doc/html/search/search.css b/doc/html/search/search.css
new file mode 100644
index 0000000000000000000000000000000000000000..648a792f5eaf28a4075a5fbc3c971d7f327c2148
--- /dev/null
+++ b/doc/html/search/search.css
@@ -0,0 +1,263 @@
+/*---------------- Search Box */
+
+#MSearchBox {
+    white-space : nowrap;
+    background: white;
+    border-radius: 0.65em;
+    box-shadow: inset 0.5px 0.5px 3px 0px #555;
+    z-index: 102;
+}
+
+#MSearchBox .left {
+    display: inline-block;
+    vertical-align: middle;
+    height: 1.4em;
+}
+
+#MSearchSelect {
+    display: inline-block;
+    vertical-align: middle;
+    height: 19px;
+    padding: 0 0 0 0.3em;
+    margin: 0;
+}
+
+#MSearchField {
+    display: inline-block;
+    vertical-align: middle;
+    width: 7.5em;
+    height: 19px;
+    margin: 0 0.15em;
+    padding: 0;
+    line-height: 1em;
+    border:none;
+    color: #909090;
+    outline: none;
+    font-family: Arial, Verdana, sans-serif;
+    -webkit-border-radius: 0px;
+    border-radius: 0px;
+    background: none;
+}
+
+@media(hover: none) {
+    /* to avoid zooming on iOS */
+    #MSearchField {
+        font-size: 16px;
+    }
+}
+
+#MSearchBox .right {
+    display: inline-block;
+    vertical-align: middle;
+    width: 1.4em;
+    height: 1.4em;
+}
+
+#MSearchClose {
+    display: none;
+    font-size: inherit;
+    background : none;
+    border: none;
+    margin: 0;
+    padding: 0;
+    outline: none;
+
+}
+
+#MSearchCloseImg {
+    height: 1.4em;
+    padding: 0.3em;
+    margin: 0;
+}
+
+.MSearchBoxActive #MSearchField {
+    color: #000000;
+}
+
+#main-menu > li:last-child {
+    /* This <li> object is the parent of the search bar */
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 36px;
+    margin-right: 1em;
+}
+
+/*---------------- Search filter selection */
+
+#MSearchSelectWindow {
+    display: none;
+    position: absolute;
+    left: 0; top: 0;
+    border: 1px solid #90A5CE;
+    background-color: #F9FAFC;
+    z-index: 10001;
+    padding-top: 4px;
+    padding-bottom: 4px;
+    -moz-border-radius: 4px;
+    -webkit-border-top-left-radius: 4px;
+    -webkit-border-top-right-radius: 4px;
+    -webkit-border-bottom-left-radius: 4px;
+    -webkit-border-bottom-right-radius: 4px;
+    -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+.SelectItem {
+    font: 8pt Arial, Verdana, sans-serif;
+    padding-left:  2px;
+    padding-right: 12px;
+    border: 0px;
+}
+
+span.SelectionMark {
+    margin-right: 4px;
+    font-family: monospace;
+    outline-style: none;
+    text-decoration: none;
+}
+
+a.SelectItem {
+    display: block;
+    outline-style: none;
+    color: #000000; 
+    text-decoration: none;
+    padding-left:   6px;
+    padding-right: 12px;
+}
+
+a.SelectItem:focus,
+a.SelectItem:active {
+    color: #000000; 
+    outline-style: none;
+    text-decoration: none;
+}
+
+a.SelectItem:hover {
+    color: #FFFFFF;
+    background-color: #3D578C;
+    outline-style: none;
+    text-decoration: none;
+    cursor: pointer;
+    display: block;
+}
+
+/*---------------- Search results window */
+
+iframe#MSearchResults {
+    /*width: 60ex;*/
+    height: 15em;
+}
+
+#MSearchResultsWindow {
+    display: none;
+    position: absolute;
+    left: 0; top: 0;
+    border: 1px solid #000;
+    background-color: #EEF1F7;
+    z-index:10000;
+}
+
+/* ----------------------------------- */
+
+
+#SRIndex {
+    clear:both; 
+    padding-bottom: 15px;
+}
+
+.SREntry {
+    font-size: 10pt;
+    padding-left: 1ex;
+}
+
+.SRPage .SREntry {
+    font-size: 8pt;
+    padding: 1px 5px;
+}
+
+body.SRPage {
+    margin: 5px 2px;
+}
+
+.SRChildren {
+    padding-left: 3ex; padding-bottom: .5em 
+}
+
+.SRPage .SRChildren {
+    display: none;
+}
+
+.SRSymbol {
+    font-weight: bold; 
+    color: #425E97;
+    font-family: Arial, Verdana, sans-serif;
+    text-decoration: none;
+    outline: none;
+}
+
+a.SRScope {
+    display: block;
+    color: #425E97; 
+    font-family: Arial, Verdana, sans-serif;
+    text-decoration: none;
+    outline: none;
+}
+
+a.SRSymbol:focus, a.SRSymbol:active,
+a.SRScope:focus, a.SRScope:active {
+    text-decoration: underline;
+}
+
+span.SRScope {
+    padding-left: 4px;
+    font-family: Arial, Verdana, sans-serif;
+}
+
+.SRPage .SRStatus {
+    padding: 2px 5px;
+    font-size: 8pt;
+    font-style: italic;
+    font-family: Arial, Verdana, sans-serif;
+}
+
+.SRResult {
+    display: none;
+}
+
+div.searchresults {
+    margin-left: 10px;
+    margin-right: 10px;
+}
+
+/*---------------- External search page results */
+
+.searchresult {
+    background-color: #F0F3F8;
+}
+
+.pages b {
+   color: white;
+   padding: 5px 5px 3px 5px;
+   background-image: url("../tab_a.png");
+   background-repeat: repeat-x;
+   text-shadow: 0 1px 1px #000000;
+}
+
+.pages {
+    line-height: 17px;
+    margin-left: 4px;
+    text-decoration: none;
+}
+
+.hl {
+    font-weight: bold;
+}
+
+#searchresults {
+    margin-bottom: 20px;
+}
+
+.searchpages {
+    margin-top: 10px;
+}
+
diff --git a/doc/html/search/search.js b/doc/html/search/search.js
new file mode 100644
index 0000000000000000000000000000000000000000..ac8055d132672a99f1d748b2a1503e497326863d
--- /dev/null
+++ b/doc/html/search/search.js
@@ -0,0 +1,794 @@
+/*
+ @licstart  The following is the entire license notice for the JavaScript code in this file.
+
+ The MIT License (MIT)
+
+ Copyright (C) 1997-2020 by Dimitri van Heesch
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+ and associated documentation files (the "Software"), to deal in the Software without restriction,
+ including without limitation the rights to use, copy, modify, merge, publish, distribute,
+ sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all copies or
+ substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+ BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ @licend  The above is the entire license notice for the JavaScript code in this file
+ */
+function convertToId(search)
+{
+  var result = '';
+  for (i=0;i<search.length;i++)
+  {
+    var c = search.charAt(i);
+    var cn = c.charCodeAt(0);
+    if (c.match(/[a-z0-9\u0080-\uFFFF]/))
+    {
+      result+=c;
+    }
+    else if (cn<16)
+    {
+      result+="_0"+cn.toString(16);
+    }
+    else
+    {
+      result+="_"+cn.toString(16);
+    }
+  }
+  return result;
+}
+
+function getXPos(item)
+{
+  var x = 0;
+  if (item.offsetWidth)
+  {
+    while (item && item!=document.body)
+    {
+      x   += item.offsetLeft;
+      item = item.offsetParent;
+    }
+  }
+  return x;
+}
+
+function getYPos(item)
+{
+  var y = 0;
+  if (item.offsetWidth)
+  {
+     while (item && item!=document.body)
+     {
+       y   += item.offsetTop;
+       item = item.offsetParent;
+     }
+  }
+  return y;
+}
+
+/* A class handling everything associated with the search panel.
+
+   Parameters:
+   name - The name of the global variable that will be
+          storing this instance.  Is needed to be able to set timeouts.
+   resultPath - path to use for external files
+*/
+function SearchBox(name, resultsPath, label, extension)
+{
+  if (!name || !resultsPath) {  alert("Missing parameters to SearchBox."); }
+  if (!extension || extension == "") { extension = ".html"; }
+
+  // ---------- Instance variables
+  this.name                  = name;
+  this.resultsPath           = resultsPath;
+  this.keyTimeout            = 0;
+  this.keyTimeoutLength      = 500;
+  this.closeSelectionTimeout = 300;
+  this.lastSearchValue       = "";
+  this.lastResultsPage       = "";
+  this.hideTimeout           = 0;
+  this.searchIndex           = 0;
+  this.searchActive          = false;
+  this.searchLabel           = label;
+  this.extension             = extension;
+
+  // ----------- DOM Elements
+
+  this.DOMSearchField = function()
+  {  return document.getElementById("MSearchField");  }
+
+  this.DOMSearchSelect = function()
+  {  return document.getElementById("MSearchSelect");  }
+
+  this.DOMSearchSelectWindow = function()
+  {  return document.getElementById("MSearchSelectWindow");  }
+
+  this.DOMPopupSearchResults = function()
+  {  return document.getElementById("MSearchResults");  }
+
+  this.DOMPopupSearchResultsWindow = function()
+  {  return document.getElementById("MSearchResultsWindow");  }
+
+  this.DOMSearchClose = function()
+  {  return document.getElementById("MSearchClose"); }
+
+  this.DOMSearchBox = function()
+  {  return document.getElementById("MSearchBox");  }
+
+  // ------------ Event Handlers
+
+  // Called when focus is added or removed from the search field.
+  this.OnSearchFieldFocus = function(isActive)
+  {
+    this.Activate(isActive);
+  }
+
+  this.OnSearchSelectShow = function()
+  {
+    var searchSelectWindow = this.DOMSearchSelectWindow();
+    var searchField        = this.DOMSearchSelect();
+
+    var left = getXPos(searchField);
+    var top  = getYPos(searchField);
+    top += searchField.offsetHeight;
+
+    // show search selection popup
+    searchSelectWindow.style.display='block';
+    searchSelectWindow.style.left =  left + 'px';
+    searchSelectWindow.style.top  =  top  + 'px';
+
+    // stop selection hide timer
+    if (this.hideTimeout)
+    {
+      clearTimeout(this.hideTimeout);
+      this.hideTimeout=0;
+    }
+    return false; // to avoid "image drag" default event
+  }
+
+  this.OnSearchSelectHide = function()
+  {
+    this.hideTimeout = setTimeout(this.name +".CloseSelectionWindow()",
+                                  this.closeSelectionTimeout);
+  }
+
+  // Called when the content of the search field is changed.
+  this.OnSearchFieldChange = function(evt)
+  {
+    if (this.keyTimeout) // kill running timer
+    {
+      clearTimeout(this.keyTimeout);
+      this.keyTimeout = 0;
+    }
+
+    var e  = (evt) ? evt : window.event; // for IE
+    if (e.keyCode==40 || e.keyCode==13)
+    {
+      if (e.shiftKey==1)
+      {
+        this.OnSearchSelectShow();
+        var win=this.DOMSearchSelectWindow();
+        for (i=0;i<win.childNodes.length;i++)
+        {
+          var child = win.childNodes[i]; // get span within a
+          if (child.className=='SelectItem')
+          {
+            child.focus();
+            return;
+          }
+        }
+        return;
+      }
+      else
+      {
+        window.frames.MSearchResults.postMessage("take_focus", "*");
+      }
+    }
+    else if (e.keyCode==27) // Escape out of the search field
+    {
+      this.DOMSearchField().blur();
+      this.DOMPopupSearchResultsWindow().style.display = 'none';
+      this.DOMSearchClose().style.display = 'none';
+      this.lastSearchValue = '';
+      this.Activate(false);
+      return;
+    }
+
+    // strip whitespaces
+    var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+
+    if (searchValue != this.lastSearchValue) // search value has changed
+    {
+      if (searchValue != "") // non-empty search
+      {
+        // set timer for search update
+        this.keyTimeout = setTimeout(this.name + '.Search()',
+                                     this.keyTimeoutLength);
+      }
+      else // empty search field
+      {
+        this.DOMPopupSearchResultsWindow().style.display = 'none';
+        this.DOMSearchClose().style.display = 'none';
+        this.lastSearchValue = '';
+      }
+    }
+  }
+
+  this.SelectItemCount = function(id)
+  {
+    var count=0;
+    var win=this.DOMSearchSelectWindow();
+    for (i=0;i<win.childNodes.length;i++)
+    {
+      var child = win.childNodes[i]; // get span within a
+      if (child.className=='SelectItem')
+      {
+        count++;
+      }
+    }
+    return count;
+  }
+
+  this.SelectItemSet = function(id)
+  {
+    var i,j=0;
+    var win=this.DOMSearchSelectWindow();
+    for (i=0;i<win.childNodes.length;i++)
+    {
+      var child = win.childNodes[i]; // get span within a
+      if (child.className=='SelectItem')
+      {
+        var node = child.firstChild;
+        if (j==id)
+        {
+          node.innerHTML='&#8226;';
+        }
+        else
+        {
+          node.innerHTML='&#160;';
+        }
+        j++;
+      }
+    }
+  }
+
+  // Called when an search filter selection is made.
+  // set item with index id as the active item
+  this.OnSelectItem = function(id)
+  {
+    this.searchIndex = id;
+    this.SelectItemSet(id);
+    var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+    if (searchValue!="" && this.searchActive) // something was found -> do a search
+    {
+      this.Search();
+    }
+  }
+
+  this.OnSearchSelectKey = function(evt)
+  {
+    var e = (evt) ? evt : window.event; // for IE
+    if (e.keyCode==40 && this.searchIndex<this.SelectItemCount()) // Down
+    {
+      this.searchIndex++;
+      this.OnSelectItem(this.searchIndex);
+    }
+    else if (e.keyCode==38 && this.searchIndex>0) // Up
+    {
+      this.searchIndex--;
+      this.OnSelectItem(this.searchIndex);
+    }
+    else if (e.keyCode==13 || e.keyCode==27)
+    {
+      this.OnSelectItem(this.searchIndex);
+      this.CloseSelectionWindow();
+      this.DOMSearchField().focus();
+    }
+    return false;
+  }
+
+  // --------- Actions
+
+  // Closes the results window.
+  this.CloseResultsWindow = function()
+  {
+    this.DOMPopupSearchResultsWindow().style.display = 'none';
+    this.DOMSearchClose().style.display = 'none';
+    this.Activate(false);
+  }
+
+  this.CloseSelectionWindow = function()
+  {
+    this.DOMSearchSelectWindow().style.display = 'none';
+  }
+
+  // Performs a search.
+  this.Search = function()
+  {
+    this.keyTimeout = 0;
+
+    // strip leading whitespace
+    var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
+
+    var code = searchValue.toLowerCase().charCodeAt(0);
+    var idxChar = searchValue.substr(0, 1).toLowerCase();
+    if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair
+    {
+      idxChar = searchValue.substr(0, 2);
+    }
+
+    var resultsPage;
+    var resultsPageWithSearch;
+    var hasResultsPage;
+
+    var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
+    if (idx!=-1)
+    {
+       var hexCode=idx.toString(16);
+       resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + this.extension;
+       resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
+       hasResultsPage = true;
+    }
+    else // nothing available for this search term
+    {
+       resultsPage = this.resultsPath + '/nomatches' + this.extension;
+       resultsPageWithSearch = resultsPage;
+       hasResultsPage = false;
+    }
+
+    window.frames.MSearchResults.location = resultsPageWithSearch;
+    var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
+
+    if (domPopupSearchResultsWindow.style.display!='block')
+    {
+       var domSearchBox = this.DOMSearchBox();
+       this.DOMSearchClose().style.display = 'inline-block';
+       var domPopupSearchResults = this.DOMPopupSearchResults();
+       var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth;
+       var top  = getYPos(domSearchBox) + 20;  // domSearchBox.offsetHeight + 1;
+       domPopupSearchResultsWindow.style.display = 'block';
+       left -= domPopupSearchResults.offsetWidth;
+       var maxWidth = document.body.clientWidth;
+       var width = 400;
+       if (left<10) left=10;
+       if (width+left+8>maxWidth) width=maxWidth-left-8;
+       domPopupSearchResultsWindow.style.top     = top  + 'px';
+       domPopupSearchResultsWindow.style.left    = left + 'px';
+       domPopupSearchResultsWindow.style.width   = width + 'px';
+    }
+
+    this.lastSearchValue = searchValue;
+    this.lastResultsPage = resultsPage;
+  }
+
+  // -------- Activation Functions
+
+  // Activates or deactivates the search panel, resetting things to
+  // their default values if necessary.
+  this.Activate = function(isActive)
+  {
+    if (isActive || // open it
+        this.DOMPopupSearchResultsWindow().style.display == 'block'
+       )
+    {
+      this.DOMSearchBox().className = 'MSearchBoxActive';
+
+      var searchField = this.DOMSearchField();
+
+      if (searchField.value == this.searchLabel) // clear "Search" term upon entry
+      {
+        searchField.value = '';
+        this.searchActive = true;
+      }
+    }
+    else if (!isActive) // directly remove the panel
+    {
+      this.DOMSearchBox().className = 'MSearchBoxInactive';
+      this.DOMSearchField().value   = this.searchLabel;
+      this.searchActive             = false;
+      this.lastSearchValue          = ''
+      this.lastResultsPage          = '';
+    }
+  }
+}
+
+// -----------------------------------------------------------------------
+
+// The class that handles everything on the search results page.
+function SearchResults(name)
+{
+    // The number of matches from the last run of <Search()>.
+    this.lastMatchCount = 0;
+    this.lastKey = 0;
+    this.repeatOn = false;
+
+    // Toggles the visibility of the passed element ID.
+    this.FindChildElement = function(id)
+    {
+      var parentElement = document.getElementById(id);
+      var element = parentElement.firstChild;
+
+      while (element && element!=parentElement)
+      {
+        if (element.nodeName.toLowerCase() == 'div' && element.className == 'SRChildren')
+        {
+          return element;
+        }
+
+        if (element.nodeName.toLowerCase() == 'div' && element.hasChildNodes())
+        {
+           element = element.firstChild;
+        }
+        else if (element.nextSibling)
+        {
+           element = element.nextSibling;
+        }
+        else
+        {
+          do
+          {
+            element = element.parentNode;
+          }
+          while (element && element!=parentElement && !element.nextSibling);
+
+          if (element && element!=parentElement)
+          {
+            element = element.nextSibling;
+          }
+        }
+      }
+    }
+
+    this.Toggle = function(id)
+    {
+      var element = this.FindChildElement(id);
+      if (element)
+      {
+        if (element.style.display == 'block')
+        {
+          element.style.display = 'none';
+        }
+        else
+        {
+          element.style.display = 'block';
+        }
+      }
+    }
+
+    // Searches for the passed string.  If there is no parameter,
+    // it takes it from the URL query.
+    //
+    // Always returns true, since other documents may try to call it
+    // and that may or may not be possible.
+    this.Search = function(search)
+    {
+      if (!search) // get search word from URL
+      {
+        search = window.location.search;
+        search = search.substring(1);  // Remove the leading '?'
+        search = unescape(search);
+      }
+
+      search = search.replace(/^ +/, ""); // strip leading spaces
+      search = search.replace(/ +$/, ""); // strip trailing spaces
+      search = search.toLowerCase();
+      search = convertToId(search);
+
+      var resultRows = document.getElementsByTagName("div");
+      var matches = 0;
+
+      var i = 0;
+      while (i < resultRows.length)
+      {
+        var row = resultRows.item(i);
+        if (row.className == "SRResult")
+        {
+          var rowMatchName = row.id.toLowerCase();
+          rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
+
+          if (search.length<=rowMatchName.length &&
+             rowMatchName.substr(0, search.length)==search)
+          {
+            row.style.display = 'block';
+            matches++;
+          }
+          else
+          {
+            row.style.display = 'none';
+          }
+        }
+        i++;
+      }
+      document.getElementById("Searching").style.display='none';
+      if (matches == 0) // no results
+      {
+        document.getElementById("NoMatches").style.display='block';
+      }
+      else // at least one result
+      {
+        document.getElementById("NoMatches").style.display='none';
+      }
+      this.lastMatchCount = matches;
+      return true;
+    }
+
+    // return the first item with index index or higher that is visible
+    this.NavNext = function(index)
+    {
+      var focusItem;
+      while (1)
+      {
+        var focusName = 'Item'+index;
+        focusItem = document.getElementById(focusName);
+        if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
+        {
+          break;
+        }
+        else if (!focusItem) // last element
+        {
+          break;
+        }
+        focusItem=null;
+        index++;
+      }
+      return focusItem;
+    }
+
+    this.NavPrev = function(index)
+    {
+      var focusItem;
+      while (1)
+      {
+        var focusName = 'Item'+index;
+        focusItem = document.getElementById(focusName);
+        if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
+        {
+          break;
+        }
+        else if (!focusItem) // last element
+        {
+          break;
+        }
+        focusItem=null;
+        index--;
+      }
+      return focusItem;
+    }
+
+    this.ProcessKeys = function(e)
+    {
+      if (e.type == "keydown")
+      {
+        this.repeatOn = false;
+        this.lastKey = e.keyCode;
+      }
+      else if (e.type == "keypress")
+      {
+        if (!this.repeatOn)
+        {
+          if (this.lastKey) this.repeatOn = true;
+          return false; // ignore first keypress after keydown
+        }
+      }
+      else if (e.type == "keyup")
+      {
+        this.lastKey = 0;
+        this.repeatOn = false;
+      }
+      return this.lastKey!=0;
+    }
+
+    this.Nav = function(evt,itemIndex)
+    {
+      var e  = (evt) ? evt : window.event; // for IE
+      if (e.keyCode==13) return true;
+      if (!this.ProcessKeys(e)) return false;
+
+      if (this.lastKey==38) // Up
+      {
+        var newIndex = itemIndex-1;
+        var focusItem = this.NavPrev(newIndex);
+        if (focusItem)
+        {
+          var child = this.FindChildElement(focusItem.parentNode.parentNode.id);
+          if (child && child.style.display == 'block') // children visible
+          {
+            var n=0;
+            var tmpElem;
+            while (1) // search for last child
+            {
+              tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
+              if (tmpElem)
+              {
+                focusItem = tmpElem;
+              }
+              else // found it!
+              {
+                break;
+              }
+              n++;
+            }
+          }
+        }
+        if (focusItem)
+        {
+          focusItem.focus();
+        }
+        else // return focus to search field
+        {
+           parent.document.getElementById("MSearchField").focus();
+        }
+      }
+      else if (this.lastKey==40) // Down
+      {
+        var newIndex = itemIndex+1;
+        var focusItem;
+        var item = document.getElementById('Item'+itemIndex);
+        var elem = this.FindChildElement(item.parentNode.parentNode.id);
+        if (elem && elem.style.display == 'block') // children visible
+        {
+          focusItem = document.getElementById('Item'+itemIndex+'_c0');
+        }
+        if (!focusItem) focusItem = this.NavNext(newIndex);
+        if (focusItem)  focusItem.focus();
+      }
+      else if (this.lastKey==39) // Right
+      {
+        var item = document.getElementById('Item'+itemIndex);
+        var elem = this.FindChildElement(item.parentNode.parentNode.id);
+        if (elem) elem.style.display = 'block';
+      }
+      else if (this.lastKey==37) // Left
+      {
+        var item = document.getElementById('Item'+itemIndex);
+        var elem = this.FindChildElement(item.parentNode.parentNode.id);
+        if (elem) elem.style.display = 'none';
+      }
+      else if (this.lastKey==27) // Escape
+      {
+        parent.searchBox.CloseResultsWindow();
+        parent.document.getElementById("MSearchField").focus();
+      }
+      else if (this.lastKey==13) // Enter
+      {
+        return true;
+      }
+      return false;
+    }
+
+    this.NavChild = function(evt,itemIndex,childIndex)
+    {
+      var e  = (evt) ? evt : window.event; // for IE
+      if (e.keyCode==13) return true;
+      if (!this.ProcessKeys(e)) return false;
+
+      if (this.lastKey==38) // Up
+      {
+        if (childIndex>0)
+        {
+          var newIndex = childIndex-1;
+          document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
+        }
+        else // already at first child, jump to parent
+        {
+          document.getElementById('Item'+itemIndex).focus();
+        }
+      }
+      else if (this.lastKey==40) // Down
+      {
+        var newIndex = childIndex+1;
+        var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
+        if (!elem) // last child, jump to parent next parent
+        {
+          elem = this.NavNext(itemIndex+1);
+        }
+        if (elem)
+        {
+          elem.focus();
+        }
+      }
+      else if (this.lastKey==27) // Escape
+      {
+        parent.searchBox.CloseResultsWindow();
+        parent.document.getElementById("MSearchField").focus();
+      }
+      else if (this.lastKey==13) // Enter
+      {
+        return true;
+      }
+      return false;
+    }
+}
+
+function setKeyActions(elem,action)
+{
+  elem.setAttribute('onkeydown',action);
+  elem.setAttribute('onkeypress',action);
+  elem.setAttribute('onkeyup',action);
+}
+
+function setClassAttr(elem,attr)
+{
+  elem.setAttribute('class',attr);
+  elem.setAttribute('className',attr);
+}
+
+function createResults()
+{
+  var results = document.getElementById("SRResults");
+  for (var e=0; e<searchData.length; e++)
+  {
+    var id = searchData[e][0];
+    var srResult = document.createElement('div');
+    srResult.setAttribute('id','SR_'+id);
+    setClassAttr(srResult,'SRResult');
+    var srEntry = document.createElement('div');
+    setClassAttr(srEntry,'SREntry');
+    var srLink = document.createElement('a');
+    srLink.setAttribute('id','Item'+e);
+    setKeyActions(srLink,'return searchResults.Nav(event,'+e+')');
+    setClassAttr(srLink,'SRSymbol');
+    srLink.innerHTML = searchData[e][1][0];
+    srEntry.appendChild(srLink);
+    if (searchData[e][1].length==2) // single result
+    {
+      srLink.setAttribute('href',searchData[e][1][1][0]);
+      srLink.setAttribute('onclick','parent.searchBox.CloseResultsWindow()');
+      if (searchData[e][1][1][1])
+      {
+       srLink.setAttribute('target','_parent');
+      }
+      var srScope = document.createElement('span');
+      setClassAttr(srScope,'SRScope');
+      srScope.innerHTML = searchData[e][1][1][2];
+      srEntry.appendChild(srScope);
+    }
+    else // multiple results
+    {
+      srLink.setAttribute('href','javascript:searchResults.Toggle("SR_'+id+'")');
+      var srChildren = document.createElement('div');
+      setClassAttr(srChildren,'SRChildren');
+      for (var c=0; c<searchData[e][1].length-1; c++)
+      {
+        var srChild = document.createElement('a');
+        srChild.setAttribute('id','Item'+e+'_c'+c);
+        setKeyActions(srChild,'return searchResults.NavChild(event,'+e+','+c+')');
+        setClassAttr(srChild,'SRScope');
+        srChild.setAttribute('href',searchData[e][1][c+1][0]);
+        srChild.setAttribute('onclick','parent.searchBox.CloseResultsWindow()');
+        if (searchData[e][1][c+1][1])
+        {
+         srChild.setAttribute('target','_parent');
+        }
+        srChild.innerHTML = searchData[e][1][c+1][2];
+        srChildren.appendChild(srChild);
+      }
+      srEntry.appendChild(srChildren);
+    }
+    srResult.appendChild(srEntry);
+    results.appendChild(srResult);
+  }
+}
+
+function init_search()
+{
+  var results = document.getElementById("MSearchSelectWindow");
+  for (var key in indexSectionLabels)
+  {
+    var link = document.createElement('a');
+    link.setAttribute('class','SelectItem');
+    link.setAttribute('onclick','searchBox.OnSelectItem('+key+')');
+    link.href='javascript:void(0)';
+    link.innerHTML='<span class="SelectionMark">&#160;</span>'+indexSectionLabels[key];
+    results.appendChild(link);
+  }
+  searchBox.OnSelectItem(0);
+}
+/* @license-end */
diff --git a/doc/html/search/search_l.png b/doc/html/search/search_l.png
new file mode 100644
index 0000000000000000000000000000000000000000..fd5f7daa41a4c79b4ae9bea5aa7bdfb94e14084b
Binary files /dev/null and b/doc/html/search/search_l.png differ
diff --git a/doc/html/search/search_m.png b/doc/html/search/search_m.png
new file mode 100644
index 0000000000000000000000000000000000000000..b429a16ba641960da1e52e5da85dc80fd82635c8
Binary files /dev/null and b/doc/html/search/search_m.png differ
diff --git a/doc/html/search/search_r.png b/doc/html/search/search_r.png
new file mode 100644
index 0000000000000000000000000000000000000000..1af5d21ee13e070d7600f1c4657fde843b953a69
Binary files /dev/null and b/doc/html/search/search_r.png differ
diff --git a/doc/html/search/searchdata.js b/doc/html/search/searchdata.js
new file mode 100644
index 0000000000000000000000000000000000000000..1f643c2458068674da5a7eadad819a4e81b0a8c0
--- /dev/null
+++ b/doc/html/search/searchdata.js
@@ -0,0 +1,42 @@
+var indexSectionsWithContent =
+{
+  0: "_abcdefhijklmnopqrstuvw~",
+  1: "bcefhmoprstv",
+  2: "hmsu",
+  3: "bcefhjlmoprstv",
+  4: "abcdefhijmnoprstuvw~",
+  5: "acdhkmnopqrstuvw",
+  6: "bdeijmrst",
+  7: "o",
+  8: "_p",
+  9: "st"
+};
+
+var indexSectionNames =
+{
+  0: "all",
+  1: "classes",
+  2: "namespaces",
+  3: "files",
+  4: "functions",
+  5: "variables",
+  6: "typedefs",
+  7: "related",
+  8: "defines",
+  9: "pages"
+};
+
+var indexSectionLabels =
+{
+  0: "All",
+  1: "Classes",
+  2: "Namespaces",
+  3: "Files",
+  4: "Functions",
+  5: "Variables",
+  6: "Typedefs",
+  7: "Friends",
+  8: "Macros",
+  9: "Pages"
+};
+
diff --git a/doc/html/search/typedefs_0.html b/doc/html/search/typedefs_0.html
new file mode 100644
index 0000000000000000000000000000000000000000..882b2a191cd9c5cc25827bbc5c0e19460e0c58e9
--- /dev/null
+++ b/doc/html/search/typedefs_0.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/typedefs_0.js b/doc/html/search/typedefs_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..08bb9c49be6f5675d722ea6ddb3c3d4e0670d832
--- /dev/null
+++ b/doc/html/search/typedefs_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['bool_0',['BOOL',['../namespace_s_o_i_l.html#a79f0d9e5821444f0265d9edf1e37f237',1,'SOIL']]]
+];
diff --git a/doc/html/search/typedefs_1.html b/doc/html/search/typedefs_1.html
new file mode 100644
index 0000000000000000000000000000000000000000..54ce58e15260fca9fadc933b54a18092d38e2bc7
--- /dev/null
+++ b/doc/html/search/typedefs_1.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/typedefs_1.js b/doc/html/search/typedefs_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..81d40a2f5524e6e19e857b6d67de2af14d402f52
--- /dev/null
+++ b/doc/html/search/typedefs_1.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['dimension_0',['DIMENSION',['../namespace_s_o_i_l.html#a738722655e044a443e338fde0f97e9a0',1,'SOIL']]],
+  ['double_1',['DOUBLE',['../namespace_s_o_i_l.html#a1691ac525df63feb4f180fcc32f307f1',1,'SOIL']]]
+];
diff --git a/doc/html/search/typedefs_2.html b/doc/html/search/typedefs_2.html
new file mode 100644
index 0000000000000000000000000000000000000000..9fc36bdf96654f43fa413173c36843a878475e5f
--- /dev/null
+++ b/doc/html/search/typedefs_2.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/typedefs_2.js b/doc/html/search/typedefs_2.js
new file mode 100644
index 0000000000000000000000000000000000000000..e2f67e10cf41dae96073f5e52a21d764ef328e06
--- /dev/null
+++ b/doc/html/search/typedefs_2.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['enum_0',['ENUM',['../namespace_s_o_i_l.html#a1d5fe6676b3cd6aef4b24e9c4ba4f097',1,'SOIL']]],
+  ['evp_5fmd_5fctx_1',['EVP_MD_CTX',['../_signer_8h.html#a11ccc869c9ea1749e6fe88f44826b56a',1,'Signer.h']]],
+  ['evp_5fpkey_2',['EVP_PKEY',['../_signer_8h.html#a2fca4fef9e4c7a2a739b1ea04acb56ce',1,'Signer.h']]]
+];
diff --git a/doc/html/search/typedefs_3.html b/doc/html/search/typedefs_3.html
new file mode 100644
index 0000000000000000000000000000000000000000..05938a1845b9396d130eaf022a29e034ee2f87e8
--- /dev/null
+++ b/doc/html/search/typedefs_3.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/typedefs_3.js b/doc/html/search/typedefs_3.js
new file mode 100644
index 0000000000000000000000000000000000000000..0bbefca55c21f034f983d7e74fd4f5232e748271
--- /dev/null
+++ b/doc/html/search/typedefs_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['int_0',['INT',['../namespace_s_o_i_l.html#aef76c04a3939438dd7454193a3d56384',1,'SOIL']]],
+  ['iterator_1',['iterator',['../class_u_d_p_1_1_configuration.html#a2f1e39379df27d5d6f81987dcade6053',1,'UDP::Configuration']]]
+];
diff --git a/doc/html/search/typedefs_4.html b/doc/html/search/typedefs_4.html
new file mode 100644
index 0000000000000000000000000000000000000000..db3b023d027d1fac96f4717c5bbe04633eaee089
--- /dev/null
+++ b/doc/html/search/typedefs_4.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/typedefs_4.js b/doc/html/search/typedefs_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..f4fa0aad1d7d9400c7681a9362da594305da4abb
--- /dev/null
+++ b/doc/html/search/typedefs_4.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['json_0',['Json',['../namespace_h_t_t_p.html#a317431a644c9db16a1657ecc77677a11',1,'HTTP']]],
+  ['json_1',['json',['../_m_q_t_t_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d',1,'json():&#160;Configuration.cpp'],['../_u_d_p_2_configuration_8cpp.html#ab701e3ac61a85b337ec5c1abaad6742d',1,'json():&#160;Configuration.cpp']]]
+];
diff --git a/doc/html/search/typedefs_5.html b/doc/html/search/typedefs_5.html
new file mode 100644
index 0000000000000000000000000000000000000000..66f92948586e66a7f689556bf4a7637e71bc2738
--- /dev/null
+++ b/doc/html/search/typedefs_5.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/typedefs_5.js b/doc/html/search/typedefs_5.js
new file mode 100644
index 0000000000000000000000000000000000000000..2d1dee7d8f2941dec025d885da9c7ee21cadd61a
--- /dev/null
+++ b/doc/html/search/typedefs_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['methods_0',['Methods',['../namespace_h_t_t_p.html#a28a83748614f1c141821ce4b9da83d3f',1,'HTTP']]]
+];
diff --git a/doc/html/search/typedefs_6.html b/doc/html/search/typedefs_6.html
new file mode 100644
index 0000000000000000000000000000000000000000..c23af7c89f6e8e6200011b9347d33a6ec213dff3
--- /dev/null
+++ b/doc/html/search/typedefs_6.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/typedefs_6.js b/doc/html/search/typedefs_6.js
new file mode 100644
index 0000000000000000000000000000000000000000..672bde5d7d67dbf3d72d658c17e0672fc9433ce4
--- /dev/null
+++ b/doc/html/search/typedefs_6.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['request_0',['Request',['../namespace_h_t_t_p.html#ab1754212af3bb8edc420a97cffb176ea',1,'HTTP']]],
+  ['response_1',['Response',['../namespace_h_t_t_p.html#af7f55b32590882bc9b905c78799fabdf',1,'HTTP']]]
+];
diff --git a/doc/html/search/typedefs_7.html b/doc/html/search/typedefs_7.html
new file mode 100644
index 0000000000000000000000000000000000000000..252b90bcf5d79eb822c6100495f670c31d8a660b
--- /dev/null
+++ b/doc/html/search/typedefs_7.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/typedefs_7.js b/doc/html/search/typedefs_7.js
new file mode 100644
index 0000000000000000000000000000000000000000..ff17ec4ef08e30b3f426b65d21df3b6d74b3ffce
--- /dev/null
+++ b/doc/html/search/typedefs_7.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['status_0',['Status',['../namespace_h_t_t_p.html#af603c787079c0b8cacc07b6be6ae5e95',1,'HTTP']]],
+  ['string_1',['STRING',['../namespace_s_o_i_l.html#a69374c360d593ed3cd4df6f3ebb40643',1,'SOIL']]]
+];
diff --git a/doc/html/search/typedefs_8.html b/doc/html/search/typedefs_8.html
new file mode 100644
index 0000000000000000000000000000000000000000..2e018fba8b0017d703e6e6c968add2386a146247
--- /dev/null
+++ b/doc/html/search/typedefs_8.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/typedefs_8.js b/doc/html/search/typedefs_8.js
new file mode 100644
index 0000000000000000000000000000000000000000..3d9e620b61bb9886cd002559463901e86941700f
--- /dev/null
+++ b/doc/html/search/typedefs_8.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['time_0',['TIME',['../namespace_s_o_i_l.html#a088b157f218c9c844ae77c2c07f1b328',1,'SOIL']]]
+];
diff --git a/doc/html/search/variables_0.html b/doc/html/search/variables_0.html
new file mode 100644
index 0000000000000000000000000000000000000000..950bfc5f7f110f7850a35532677436aa70480eb7
--- /dev/null
+++ b/doc/html/search/variables_0.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_0.js b/doc/html/search/variables_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..0122f4eb1309bb1f19d27acbe6a40cac531ecde0
--- /dev/null
+++ b/doc/html/search/variables_0.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['allowed_5fmethods_0',['allowed_methods',['../class_h_t_t_p_1_1_resource.html#a4a78094cb756c0886c787f93462621c0',1,'HTTP::Resource']]],
+  ['allowed_5forigins_1',['allowed_origins',['../class_h_t_t_p_1_1_resource.html#a8cb354f4fa7e6d76bdd748f50728b752',1,'HTTP::Resource']]]
+];
diff --git a/doc/html/search/variables_1.html b/doc/html/search/variables_1.html
new file mode 100644
index 0000000000000000000000000000000000000000..fed58a5d0f0db7912acd39e53173c37764390968
--- /dev/null
+++ b/doc/html/search/variables_1.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_1.js b/doc/html/search/variables_1.js
new file mode 100644
index 0000000000000000000000000000000000000000..e70f028ea0a51227c4be003167c0d1671188c2c2
--- /dev/null
+++ b/doc/html/search/variables_1.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+  ['certificate_5fauthority_0',['certificate_authority',['../class_m_q_t_t_1_1_configuration.html#aa943275c72ea7cc94bd9de56c0dfaa9d',1,'MQTT::Configuration']]],
+  ['children_1',['children',['../class_s_o_i_l_1_1_element.html#a4fa228a217778ee48c592fe0272aaacf',1,'SOIL::Element']]],
+  ['clean_5fsession_2',['clean_session',['../class_m_q_t_t_1_1_configuration.html#a8e47ba510961e85709038796c458b0be',1,'MQTT::Configuration']]],
+  ['clients_3',['clients',['../class_u_d_p_1_1_configuration.html#a320ba9474ff76cbc5626d667a4388a55',1,'UDP::Configuration']]],
+  ['connection_5ftimeout_5fs_4',['connection_timeout_s',['../class_m_q_t_t_1_1_configuration.html#ad33e07f1c8389126541445253cbfff52',1,'MQTT::Configuration']]],
+  ['constant_5',['constant',['../class_s_o_i_l_1_1_parameter.html#aed57214457012af12a859669e182e841',1,'SOIL::Parameter']]],
+  ['content_5ftype_6',['content_type',['../class_h_t_t_p_1_1_resource.html#a9d14fee20d1db0e8bd76e6f151e606e6',1,'HTTP::Resource']]],
+  ['covariance_7',['covariance',['../class_s_o_i_l_1_1_variable.html#abaafa5ebe21c155fc27800d22275d639',1,'SOIL::Variable']]]
+];
diff --git a/doc/html/search/variables_2.html b/doc/html/search/variables_2.html
new file mode 100644
index 0000000000000000000000000000000000000000..761c194ae2cde7532c866cb6f9ff99cc6d964e95
--- /dev/null
+++ b/doc/html/search/variables_2.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_2.js b/doc/html/search/variables_2.js
new file mode 100644
index 0000000000000000000000000000000000000000..2ed923473e41ff3e52f63cf7eafa811afecb8574
--- /dev/null
+++ b/doc/html/search/variables_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['description_0',['description',['../class_s_o_i_l_1_1_element.html#aaef3cdce55ced857a81ba285afc92ed9',1,'SOIL::Element']]]
+];
diff --git a/doc/html/search/variables_3.html b/doc/html/search/variables_3.html
new file mode 100644
index 0000000000000000000000000000000000000000..78bfe03b2ef16ef3ff8862996a4cb0b1da5c0fdd
--- /dev/null
+++ b/doc/html/search/variables_3.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_3.js b/doc/html/search/variables_3.js
new file mode 100644
index 0000000000000000000000000000000000000000..3fab2ce6ca63c2cf057dedbb3dbc9f2a1842a79f
--- /dev/null
+++ b/doc/html/search/variables_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['hash_0',['hash',['../class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9',1,'SOIL::Variable']]],
+  ['host_1',['host',['../class_m_q_t_t_1_1_configuration.html#a4298d9cf83be4dcae422d98471ab1df5',1,'MQTT::Configuration']]]
+];
diff --git a/doc/html/search/variables_4.html b/doc/html/search/variables_4.html
new file mode 100644
index 0000000000000000000000000000000000000000..4d608da1ef74a5f3bac18e982897b74b80a3365e
--- /dev/null
+++ b/doc/html/search/variables_4.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_4.js b/doc/html/search/variables_4.js
new file mode 100644
index 0000000000000000000000000000000000000000..113f8b601e0435b9c4038a254ab1d53d23936a61
--- /dev/null
+++ b/doc/html/search/variables_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['keep_5falive_0',['keep_alive',['../class_m_q_t_t_1_1_configuration.html#a62add1ea6d5351e35a6c829ecdb41e06',1,'MQTT::Configuration']]]
+];
diff --git a/doc/html/search/variables_5.html b/doc/html/search/variables_5.html
new file mode 100644
index 0000000000000000000000000000000000000000..6342402d4ab2f4b761fdb9ca86c7b4c04f62f8d1
--- /dev/null
+++ b/doc/html/search/variables_5.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_5.js b/doc/html/search/variables_5.js
new file mode 100644
index 0000000000000000000000000000000000000000..fe254f698cff0f8a0e8a4628779e5bb40dce10b4
--- /dev/null
+++ b/doc/html/search/variables_5.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['message_0',['message',['../struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da',1,'MQTT::MessageContainer']]],
+  ['min_5fdelay_5fms_1',['min_delay_ms',['../class_m_q_t_t_1_1_configuration.html#a45ece5471e689eda8ee1c1e15acfc03b',1,'MQTT::Configuration']]],
+  ['mutex_2',['mutex',['../class_s_o_i_l_1_1_element.html#afc29676fd98e4c6b7ab004514c175b7c',1,'SOIL::Element']]]
+];
diff --git a/doc/html/search/variables_6.html b/doc/html/search/variables_6.html
new file mode 100644
index 0000000000000000000000000000000000000000..80db039f26ec604d3f4642624d6005a6c6273d2a
--- /dev/null
+++ b/doc/html/search/variables_6.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_6.js b/doc/html/search/variables_6.js
new file mode 100644
index 0000000000000000000000000000000000000000..75cd0ae8bc2b5c436512db5090eaa94bc20a9a2f
--- /dev/null
+++ b/doc/html/search/variables_6.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['name_0',['name',['../class_s_o_i_l_1_1_element.html#ae80d2c6c5f2577aa5a8489f2c0c352e8',1,'SOIL::Element']]],
+  ['nonce_1',['nonce',['../class_s_o_i_l_1_1_variable.html#a159b3f2994697e91aeaef8649376aee3',1,'SOIL::Variable']]]
+];
diff --git a/doc/html/search/variables_7.html b/doc/html/search/variables_7.html
new file mode 100644
index 0000000000000000000000000000000000000000..bf8eb384e17e6719db9394da9a4b58039bf37643
--- /dev/null
+++ b/doc/html/search/variables_7.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_7.js b/doc/html/search/variables_7.js
new file mode 100644
index 0000000000000000000000000000000000000000..6f734f908e1c11342dc451c3b4fec66a8ac3bdaa
--- /dev/null
+++ b/doc/html/search/variables_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['ontology_0',['ontology',['../class_s_o_i_l_1_1_element.html#ad89fecb69de794e7b918767d5f21027d',1,'SOIL::Element']]]
+];
diff --git a/doc/html/search/variables_8.html b/doc/html/search/variables_8.html
new file mode 100644
index 0000000000000000000000000000000000000000..92a55e9a94f96d6a9585856a713a02f99ff5074d
--- /dev/null
+++ b/doc/html/search/variables_8.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_8.js b/doc/html/search/variables_8.js
new file mode 100644
index 0000000000000000000000000000000000000000..1399be9b2d2cac89e99b3daa86d7fe9b52361655
--- /dev/null
+++ b/doc/html/search/variables_8.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+  ['parent_0',['parent',['../class_s_o_i_l_1_1_element.html#af1992c267233cec3b17bc70038d1d84b',1,'SOIL::Element']]],
+  ['password_1',['password',['../class_m_q_t_t_1_1_configuration.html#a9c5a0645489d20461749953881ba7ab7',1,'MQTT::Configuration']]],
+  ['path_2',['path',['../class_m_q_t_t_1_1_configuration.html#ae61824192da779011f60eded6903db9b',1,'MQTT::Configuration']]],
+  ['port_3',['port',['../class_m_q_t_t_1_1_configuration.html#a92b3b5ff34fcfc3f72a28559275f78d1',1,'MQTT::Configuration']]]
+];
diff --git a/doc/html/search/variables_9.html b/doc/html/search/variables_9.html
new file mode 100644
index 0000000000000000000000000000000000000000..1aec773575ecea83d4e5c760c72dbad2c6e0a8dd
--- /dev/null
+++ b/doc/html/search/variables_9.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_9.js b/doc/html/search/variables_9.js
new file mode 100644
index 0000000000000000000000000000000000000000..6f3926d1ad6d86fe8e36c13e6568e19e36134ae7
--- /dev/null
+++ b/doc/html/search/variables_9.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['qos_0',['qos',['../struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0',1,'MQTT::MessageContainer']]]
+];
diff --git a/doc/html/search/variables_a.html b/doc/html/search/variables_a.html
new file mode 100644
index 0000000000000000000000000000000000000000..8090d16bc8584dc02e39ad0c6805ae4eb6837c44
--- /dev/null
+++ b/doc/html/search/variables_a.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_a.js b/doc/html/search/variables_a.js
new file mode 100644
index 0000000000000000000000000000000000000000..b58b897e5e262f87b171cb65bfc1fe34a0657d0e
--- /dev/null
+++ b/doc/html/search/variables_a.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['range_0',['range',['../class_s_o_i_l_1_1_figure.html#ab431dcf967cbfb8591b9128257595712',1,'SOIL::Figure']]],
+  ['retain_1',['retain',['../struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9',1,'MQTT::MessageContainer']]],
+  ['root_2',['root',['../class_m_q_t_t_1_1_configuration.html#a365e6700bb8b4d43539de661490b7574',1,'MQTT::Configuration']]]
+];
diff --git a/doc/html/search/variables_b.html b/doc/html/search/variables_b.html
new file mode 100644
index 0000000000000000000000000000000000000000..5ceb53fb7117daeeff728bf6cdd06d0fccf7e16d
--- /dev/null
+++ b/doc/html/search/variables_b.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_b.js b/doc/html/search/variables_b.js
new file mode 100644
index 0000000000000000000000000000000000000000..36fa4ad11249e52e1d72b90f31549fa9c72c00aa
--- /dev/null
+++ b/doc/html/search/variables_b.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['self_0',['self',['../class_s_o_i_l_1_1_element.html#afcdcd6ceb94c7d14b0fce99461bb5e30',1,'SOIL::Element']]],
+  ['ssl_1',['ssl',['../class_m_q_t_t_1_1_configuration.html#a73f639dad1b94cc09de808519a7855fe',1,'MQTT::Configuration']]]
+];
diff --git a/doc/html/search/variables_c.html b/doc/html/search/variables_c.html
new file mode 100644
index 0000000000000000000000000000000000000000..5dbea70b2e6783ce062ff0c661176dcee1f3ded4
--- /dev/null
+++ b/doc/html/search/variables_c.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_c.js b/doc/html/search/variables_c.js
new file mode 100644
index 0000000000000000000000000000000000000000..a51d186ef4ac46c5b90436002c3c4cbcb39e5460
--- /dev/null
+++ b/doc/html/search/variables_c.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['time_0',['time',['../class_s_o_i_l_1_1_figure.html#a8f320356ea837f06e439b74c2a22e81c',1,'SOIL::Figure']]],
+  ['topic_1',['topic',['../struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79',1,'MQTT::MessageContainer']]]
+];
diff --git a/doc/html/search/variables_d.html b/doc/html/search/variables_d.html
new file mode 100644
index 0000000000000000000000000000000000000000..e7cd3a31c678ba3708c959d6e02579799abd55d8
--- /dev/null
+++ b/doc/html/search/variables_d.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_d.js b/doc/html/search/variables_d.js
new file mode 100644
index 0000000000000000000000000000000000000000..1831c4878e92d8664bd67be61bc7396cf60af32a
--- /dev/null
+++ b/doc/html/search/variables_d.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+  ['unit_0',['unit',['../class_s_o_i_l_1_1_figure.html#a627d9d3386a719a6612ec3068812ea67',1,'SOIL::Figure']]],
+  ['username_1',['username',['../class_m_q_t_t_1_1_configuration.html#ae75c1ab7297f4cf3f25e31ec056df338',1,'MQTT::Configuration']]],
+  ['uuid_2',['uuid',['../class_s_o_i_l_1_1_element.html#a8676609fe497118147e31b25958d5104',1,'SOIL::Element']]]
+];
diff --git a/doc/html/search/variables_e.html b/doc/html/search/variables_e.html
new file mode 100644
index 0000000000000000000000000000000000000000..b2e6719cf3fef0e38d9c91d22756b4500d1b636a
--- /dev/null
+++ b/doc/html/search/variables_e.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_e.js b/doc/html/search/variables_e.js
new file mode 100644
index 0000000000000000000000000000000000000000..81b1c74e1ebb01b894335242017acbf17c8e8712
--- /dev/null
+++ b/doc/html/search/variables_e.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['value_0',['value',['../class_s_o_i_l_1_1_figure.html#a97c7e2488708c155d366e2cdc1934c3b',1,'SOIL::Figure']]],
+  ['verify_1',['verify',['../class_m_q_t_t_1_1_configuration.html#ab5887b09a89a934dcda3493f17dccd78',1,'MQTT::Configuration']]]
+];
diff --git a/doc/html/search/variables_f.html b/doc/html/search/variables_f.html
new file mode 100644
index 0000000000000000000000000000000000000000..fe0144591eed3c0d3af3adeb692c707094c5af4b
--- /dev/null
+++ b/doc/html/search/variables_f.html
@@ -0,0 +1,37 @@
+<!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><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+createResults();
+/* @license-end */
+</script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+window.addEventListener("message", function(event) {
+  if (event.data == "take_focus") {
+    var elem = searchResults.NavNext(0);
+    if (elem) elem.focus();
+  }
+});
+/* @license-end */
+</script>
+</div>
+</body>
+</html>
diff --git a/doc/html/search/variables_f.js b/doc/html/search/variables_f.js
new file mode 100644
index 0000000000000000000000000000000000000000..f7d73050f7c87fe60d1300e0865e8011ce8b232e
--- /dev/null
+++ b/doc/html/search/variables_f.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['websocket_0',['websocket',['../class_m_q_t_t_1_1_configuration.html#ac23db9e2e0f174a59f294a4a5139a097',1,'MQTT::Configuration']]]
+];
diff --git a/doc/html/splitbar.png b/doc/html/splitbar.png
new file mode 100644
index 0000000000000000000000000000000000000000..fe895f2c58179b471a22d8320b39a4bd7312ec8e
Binary files /dev/null and b/doc/html/splitbar.png differ
diff --git a/doc/html/struct_m_q_t_t_1_1_message_container-members.html b/doc/html/struct_m_q_t_t_1_1_message_container-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..bdd568b81d99c4ba0eb24d536a5db411c85c1d2e
--- /dev/null
+++ b/doc/html/struct_m_q_t_t_1_1_message_container-members.html
@@ -0,0 +1,105 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('struct_m_q_t_t_1_1_message_container.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">MQTT::MessageContainer Member List</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="struct_m_q_t_t_1_1_message_container.html">MQTT::MessageContainer</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">message</a></td><td class="entry"><a class="el" href="struct_m_q_t_t_1_1_message_container.html">MQTT::MessageContainer</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0">qos</a></td><td class="entry"><a class="el" href="struct_m_q_t_t_1_1_message_container.html">MQTT::MessageContainer</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9">retain</a></td><td class="entry"><a class="el" href="struct_m_q_t_t_1_1_message_container.html">MQTT::MessageContainer</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79">topic</a></td><td class="entry"><a class="el" href="struct_m_q_t_t_1_1_message_container.html">MQTT::MessageContainer</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/struct_m_q_t_t_1_1_message_container.html b/doc/html/struct_m_q_t_t_1_1_message_container.html
new file mode 100644
index 0000000000000000000000000000000000000000..833bbbcb8503ff2112d94a4e1259db0c2e90e1da
--- /dev/null
+++ b/doc/html/struct_m_q_t_t_1_1_message_container.html
@@ -0,0 +1,199 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: MQTT::MessageContainer Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('struct_m_q_t_t_1_1_message_container.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-attribs">Public Attributes</a> &#124;
+<a href="struct_m_q_t_t_1_1_message_container-members.html">List of all members</a>  </div>
+  <div class="headertitle"><div class="title">MQTT::MessageContainer Struct Reference</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Internal <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message struct.  
+ <a href="struct_m_q_t_t_1_1_message_container.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_message_container_8h_source.html">MessageContainer.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
+Public Attributes</h2></td></tr>
+<tr class="memitem:aaef0655958e79f05f192d205fd1d3c79"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79">topic</a></td></tr>
+<tr class="memdesc:aaef0655958e79f05f192d205fd1d3c79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Message Topic.  <a href="struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79">More...</a><br /></td></tr>
+<tr class="separator:aaef0655958e79f05f192d205fd1d3c79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a563ac8f9dd9878dcc56ac46e9df171da"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">message</a></td></tr>
+<tr class="memdesc:a563ac8f9dd9878dcc56ac46e9df171da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Message.  <a href="struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da">More...</a><br /></td></tr>
+<tr class="separator:a563ac8f9dd9878dcc56ac46e9df171da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2624104fd87f5343692fba4181c8c1f0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0">qos</a></td></tr>
+<tr class="memdesc:a2624104fd87f5343692fba4181c8c1f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Quality of Service.  <a href="struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0">More...</a><br /></td></tr>
+<tr class="separator:a2624104fd87f5343692fba4181c8c1f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1400f50c4a851e4b991e368c3e9bee9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9">retain</a></td></tr>
+<tr class="memdesc:af1400f50c4a851e4b991e368c3e9bee9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retain Flag.  <a href="struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9">More...</a><br /></td></tr>
+<tr class="separator:af1400f50c4a851e4b991e368c3e9bee9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p >Struct to manage <a class="el" href="namespace_m_q_t_t.html">MQTT</a> message data internally using standard strings. </p>
+
+<p class="definition">Definition at line <a class="el" href="_message_container_8h_source.html#l00010">10</a> of file <a class="el" href="_message_container_8h_source.html">MessageContainer.h</a>.</p>
+</div><h2 class="groupheader">Member Data Documentation</h2>
+<a id="a563ac8f9dd9878dcc56ac46e9df171da" name="a563ac8f9dd9878dcc56ac46e9df171da"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a563ac8f9dd9878dcc56ac46e9df171da">&#9670;&nbsp;</a></span>message</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string MQTT::MessageContainer::message</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Primary content of the messsage to send. </p>
+
+<p class="definition">Definition at line <a class="el" href="_message_container_8h_source.html#l00024">24</a> of file <a class="el" href="_message_container_8h_source.html">MessageContainer.h</a>.</p>
+
+</div>
+</div>
+<a id="a2624104fd87f5343692fba4181c8c1f0" name="a2624104fd87f5343692fba4181c8c1f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2624104fd87f5343692fba4181c8c1f0">&#9670;&nbsp;</a></span>qos</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int MQTT::MessageContainer::qos</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p ><a class="el" href="namespace_m_q_t_t.html">MQTT</a> Quality of service level to choose for the message. Check the <a class="el" href="namespace_m_q_t_t.html">MQTT</a> specifications for the exact behaviours of 0, 1, and 2 in conjuncation with message retention. </p>
+
+<p class="definition">Definition at line <a class="el" href="_message_container_8h_source.html#l00032">32</a> of file <a class="el" href="_message_container_8h_source.html">MessageContainer.h</a>.</p>
+
+</div>
+</div>
+<a id="af1400f50c4a851e4b991e368c3e9bee9" name="af1400f50c4a851e4b991e368c3e9bee9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af1400f50c4a851e4b991e368c3e9bee9">&#9670;&nbsp;</a></span>retain</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool MQTT::MessageContainer::retain</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Flag whether to retain the message on the broker after disconnection. </p>
+
+<p class="definition">Definition at line <a class="el" href="_message_container_8h_source.html#l00039">39</a> of file <a class="el" href="_message_container_8h_source.html">MessageContainer.h</a>.</p>
+
+</div>
+</div>
+<a id="aaef0655958e79f05f192d205fd1d3c79" name="aaef0655958e79f05f192d205fd1d3c79"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaef0655958e79f05f192d205fd1d3c79">&#9670;&nbsp;</a></span>topic</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::string MQTT::MessageContainer::topic</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p >Topic to which the message shall be sent. </p>
+
+<p class="definition">Definition at line <a class="el" href="_message_container_8h_source.html#l00017">17</a> of file <a class="el" href="_message_container_8h_source.html">MessageContainer.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/MQTT/<a class="el" href="_message_container_8h_source.html">MessageContainer.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="namespace_m_q_t_t.html">MQTT</a></li><li class="navelem"><a class="el" href="struct_m_q_t_t_1_1_message_container.html">MessageContainer</a></li>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/html/struct_m_q_t_t_1_1_message_container.js b/doc/html/struct_m_q_t_t_1_1_message_container.js
new file mode 100644
index 0000000000000000000000000000000000000000..e51e7b1422dd87ba4eae4ea2f7165077ec95d6d5
--- /dev/null
+++ b/doc/html/struct_m_q_t_t_1_1_message_container.js
@@ -0,0 +1,7 @@
+var struct_m_q_t_t_1_1_message_container =
+[
+    [ "message", "struct_m_q_t_t_1_1_message_container.html#a563ac8f9dd9878dcc56ac46e9df171da", null ],
+    [ "qos", "struct_m_q_t_t_1_1_message_container.html#a2624104fd87f5343692fba4181c8c1f0", null ],
+    [ "retain", "struct_m_q_t_t_1_1_message_container.html#af1400f50c4a851e4b991e368c3e9bee9", null ],
+    [ "topic", "struct_m_q_t_t_1_1_message_container.html#aaef0655958e79f05f192d205fd1d3c79", null ]
+];
\ No newline at end of file
diff --git a/doc/html/sync_off.png b/doc/html/sync_off.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b443fc62892114406e3d399421b2a881b897acc
Binary files /dev/null and b/doc/html/sync_off.png differ
diff --git a/doc/html/sync_on.png b/doc/html/sync_on.png
new file mode 100644
index 0000000000000000000000000000000000000000..e08320fb64e6fa33b573005ed6d8fe294e19db76
Binary files /dev/null and b/doc/html/sync_on.png differ
diff --git a/doc/html/tab_a.png b/doc/html/tab_a.png
new file mode 100644
index 0000000000000000000000000000000000000000..3b725c41c5a527a3a3e40097077d0e206a681247
Binary files /dev/null and b/doc/html/tab_a.png differ
diff --git a/doc/html/tab_b.png b/doc/html/tab_b.png
new file mode 100644
index 0000000000000000000000000000000000000000..e2b4a8638cb3496a016eaed9e16ffc12846dea18
Binary files /dev/null and b/doc/html/tab_b.png differ
diff --git a/doc/html/tab_h.png b/doc/html/tab_h.png
new file mode 100644
index 0000000000000000000000000000000000000000..fd5cb705488e60fcf30f56fcc951dee74f3b095b
Binary files /dev/null and b/doc/html/tab_h.png differ
diff --git a/doc/html/tab_s.png b/doc/html/tab_s.png
new file mode 100644
index 0000000000000000000000000000000000000000..ab478c95b67371d700a20869f7de1ddd73522d50
Binary files /dev/null and b/doc/html/tab_s.png differ
diff --git a/doc/html/tabs.css b/doc/html/tabs.css
new file mode 100644
index 0000000000000000000000000000000000000000..00d1c602496431b8bbd41230f33a0208bf756651
--- /dev/null
+++ b/doc/html/tabs.css
@@ -0,0 +1 @@
+.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.main-menu-btn{position:relative;display:inline-block;width:36px;height:36px;text-indent:36px;margin-left:8px;white-space:nowrap;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0)}.main-menu-btn-icon,.main-menu-btn-icon:before,.main-menu-btn-icon:after{position:absolute;top:50%;left:2px;height:2px;width:24px;background:#666;-webkit-transition:all .25s;transition:all .25s}.main-menu-btn-icon:before{content:'';top:-7px;left:0}.main-menu-btn-icon:after{content:'';top:7px;left:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon{height:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before{top:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after{top:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}#main-menu-state{position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(1px,1px,1px,1px)}#main-menu-state:not(:checked) ~ #main-menu{display:none}#main-menu-state:checked ~ #main-menu{display:block}@media(min-width:768px){.main-menu-btn{position:absolute;top:-99999px}#main-menu-state:not(:checked) ~ #main-menu{display:block}}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0 1px 1px rgba(255,255,255,0.9);color:#283a5d;outline:0}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a span.sub-arrow:before{display:block;content:'+'}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283a5d transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;-moz-border-radius:0 !important;-webkit-border-radius:0;border-radius:0 !important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a:hover span.sub-arrow{border-color:white transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0 !important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent white}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}}
\ No newline at end of file
diff --git a/doc/html/todo.html b/doc/html/todo.html
new file mode 100644
index 0000000000000000000000000000000000000000..39487a9672a8ade46c28a55b256137e923ff9101
--- /dev/null
+++ b/doc/html/todo.html
@@ -0,0 +1,125 @@
+<!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=11"/>
+<meta name="generator" content="Doxygen 1.9.3"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>SOIL C++: Todo List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">SOIL C++
+   </div>
+   <div id="projectbrief">C++ Unified Device Interface</div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.9.3 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search",'Search','.html');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(document).ready(function(){initNavTree('todo.html',''); initResizable(); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div><div class="header">
+  <div class="headertitle"><div class="title">Todo List </div></div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><dl class="reflist">
+<dt>Class <a class="el" href="class_h_t_t_p_1_1_server.html">HTTP::Server</a>  </dt>
+<dd><a class="anchor" id="_todo000002"></a>cpprestsdk is now in maintenance mode, if this library shall be in the very long term, a substitute may need to be found.  </dd>
+<dt>Class <a class="el" href="class_m_q_t_t_1_1_publisher.html">MQTT::Publisher</a>  </dt>
+<dd><a class="anchor" id="_todo000001"></a>Implement support for authenticating with client certificates.  </dd>
+<dt>Member <a class="el" href="class_s_o_i_l_1_1_element.html#a06d51f457b4412d64c3980a377fbc9f0">SOIL::Element::insert</a>  (std::string uuid, std::shared_ptr&lt; Element &gt; child)</dt>
+<dd><a class="anchor" id="_todo000003"></a>Remove in future versions.  </dd>
+<dt>Member <a class="el" href="class_s_o_i_l_1_1_element.html#ad0d80de0520ce5366067512e07068e1e">SOIL::Element::insert</a>  (std::string uuid, <a class="el" href="class_s_o_i_l_1_1_element.html" title="SOIL Base Element.">Element</a> *child)</dt>
+<dd><a class="anchor" id="_todo000004"></a>Remove in future versions. This version takes a raw pointer (as e.g. returned by <code>new</code>) and internally makes a shared pointer.  </dd>
+<dt>Member <a class="el" href="class_s_o_i_l_1_1_enum.html#a30718fd8e647815e78b1a0b63d878fd8">SOIL::Enum::Enum</a>  (std::string value)</dt>
+<dd><a class="anchor" id="_todo000005"></a>Check whether this constructor is still meaningful in future releases. Usage is not recommended.  </dd>
+<dt>Member <a class="el" href="class_s_o_i_l_1_1_figure.html#a6cebd6af4116112bb244b1444aa3a1da">SOIL::Figure&lt; T, x, y &gt;::cast</a>  (T value)</dt>
+<dd><a class="anchor" id="_todo000006"></a>This function seems error prone in the multidimensional case.  </dd>
+<dt>Class <a class="el" href="class_s_o_i_l_1_1_object.html">SOIL::Object</a>  </dt>
+<dd><a class="anchor" id="_todo000007"></a>The <a class="el" href="namespace_h_t_t_p.html">HTTP</a> handlers may be moved to protected if <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">HTTP::Server</a> is declared as friend class. Currently this is not done to alllow for greater flexibility.  </dd>
+<dt>Class <a class="el" href="class_s_o_i_l_1_1_parameter.html">SOIL::Parameter&lt; T, x, y &gt;</a>  </dt>
+<dd><a class="anchor" id="_todo000008"></a>The <a class="el" href="namespace_h_t_t_p.html">HTTP</a> handlers may be moved to protected if <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">HTTP::Server</a> is declared as friend class. Currently this is not done to alllow for greater flexibility.  </dd>
+<dt>Member <a class="el" href="class_s_o_i_l_1_1_parameter.html#aadc9c63027042e0e834b183698e964b9">SOIL::Parameter&lt; T, x, y &gt;::mqtt</a>  (std::shared_ptr&lt; MQTT::Publisher &gt; publisher, int qos=0, bool retain=false)</dt>
+<dd><a class="anchor" id="_todo000009"></a>Currently the implementation of this function is redundant in <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>. It is deliberately not moved to <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a> as different implementations may occur in the future, but would be a valid option.  </dd>
+<dt>Class <a class="el" href="class_s_o_i_l_1_1_variable.html">SOIL::Variable&lt; T, x, y &gt;</a>  </dt>
+<dd><a class="anchor" id="_todo000011"></a>The <a class="el" href="namespace_h_t_t_p.html">HTTP</a> handlers may be moved to protected if <a class="el" href="class_h_t_t_p_1_1_server.html" title="HTPP Server.">HTTP::Server</a> is declared as friend class. Currently this is not done to alllow for greater flexibility.  </dd>
+<dt>Member <a class="el" href="class_s_o_i_l_1_1_variable.html#ae5349b85d820a6204f44af04b528f6a9">SOIL::Variable&lt; T, x, y &gt;::hash</a>  </dt>
+<dd><a class="anchor" id="_todo000012"></a>This is still error prone across different languages and platforms as endianess and memory layout need to be considered.  </dd>
+<dt>Member <a class="el" href="class_s_o_i_l_1_1_variable.html#a8ef20bb80d404cba203ebe64a9c3296f">SOIL::Variable&lt; T, x, y &gt;::mqtt</a>  (std::shared_ptr&lt; MQTT::Publisher &gt; publisher, int qos=0, bool retain=false)</dt>
+<dd><a class="anchor" id="_todo000013"></a>Currently the implementation of this function is redundant in <a class="el" href="class_s_o_i_l_1_1_variable.html" title="Variable Class.">Variable</a> and <a class="el" href="class_s_o_i_l_1_1_parameter.html" title="Parameter Class.">Parameter</a>. It is deliberately not moved to <a class="el" href="class_s_o_i_l_1_1_figure.html" title="Intermediate class for Variable and Parameter that derives from Element.">Figure</a> as different implementations may occur in the future, but would be a valid option. </dd>
+</dl>
+</div></div><!-- contents -->
+</div><!-- PageDoc -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/doc/latex/refman.pdf b/doc/latex/refman.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..2905d15a983e6b9d7b8db2fda826758c8882b817
--- /dev/null
+++ b/doc/latex/refman.pdf
@@ -0,0 +1,116075 @@
+%PDF-1.5
+%����
+1 0 obj
+<< /S /GoTo /D (chapter.1) >>
+endobj
+4 0 obj
+(\376\377\0001\000\040\000S\000O\000I\000L\000\040\000C\000+\000+)
+endobj
+5 0 obj
+<< /S /GoTo /D (section.1.1) >>
+endobj
+8 0 obj
+(\376\377\0001\000.\0001\000\040\000D\000e\000v\000e\000l\000o\000p\000m\000e\000n\000t\000\040\000s\000e\000t\000u\000p)
+endobj
+9 0 obj
+<< /S /GoTo /D (subsection.1.1.1) >>
+endobj
+12 0 obj
+(\376\377\0001\000.\0001\000.\0001\000\040\000D\000e\000p\000e\000n\000d\000e\000n\000c\000i\000e\000s)
+endobj
+13 0 obj
+<< /S /GoTo /D (subsection.1.1.2) >>
+endobj
+16 0 obj
+(\376\377\0001\000.\0001\000.\0002\000\040\000W\000i\000n\000d\000o\000w\000s)
+endobj
+17 0 obj
+<< /S /GoTo /D (subsection.1.1.3) >>
+endobj
+20 0 obj
+(\376\377\0001\000.\0001\000.\0003\000\040\000L\000i\000n\000u\000x)
+endobj
+21 0 obj
+<< /S /GoTo /D (section.1.2) >>
+endobj
+24 0 obj
+(\376\377\0001\000.\0002\000\040\000I\000m\000p\000l\000e\000m\000e\000n\000t\000\040\000d\000e\000v\000i\000c\000e\000\040\000c\000o\000n\000f\000o\000r\000m\000\040\000t\000o\000\040\000t\000h\000e\000\040\000u\000n\000i\000f\000i\000e\000d\000\040\000i\000n\000t\000e\000r\000f\000a\000c\000e)
+endobj
+25 0 obj
+<< /S /GoTo /D (section.1.3) >>
+endobj
+28 0 obj
+(\376\377\0001\000.\0003\000\040\000K\000n\000o\000w\000n\000\040\000I\000s\000s\000u\000e\000s\000\040\000a\000n\000d\000\040\000W\000a\000r\000n\000i\000n\000g\000s)
+endobj
+29 0 obj
+<< /S /GoTo /D (chapter.2) >>
+endobj
+32 0 obj
+(\376\377\0002\000\040\000T\000o\000d\000o\000\040\000L\000i\000s\000t)
+endobj
+33 0 obj
+<< /S /GoTo /D (chapter.3) >>
+endobj
+36 0 obj
+(\376\377\0003\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000I\000n\000d\000e\000x)
+endobj
+37 0 obj
+<< /S /GoTo /D (section.3.1) >>
+endobj
+40 0 obj
+(\376\377\0003\000.\0001\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000L\000i\000s\000t)
+endobj
+41 0 obj
+<< /S /GoTo /D (chapter.4) >>
+endobj
+44 0 obj
+(\376\377\0004\000\040\000H\000i\000e\000r\000a\000r\000c\000h\000i\000c\000a\000l\000\040\000I\000n\000d\000e\000x)
+endobj
+45 0 obj
+<< /S /GoTo /D (section.4.1) >>
+endobj
+48 0 obj
+(\376\377\0004\000.\0001\000\040\000C\000l\000a\000s\000s\000\040\000H\000i\000e\000r\000a\000r\000c\000h\000y)
+endobj
+49 0 obj
+<< /S /GoTo /D (chapter.5) >>
+endobj
+52 0 obj
+(\376\377\0005\000\040\000C\000l\000a\000s\000s\000\040\000I\000n\000d\000e\000x)
+endobj
+53 0 obj
+<< /S /GoTo /D (section.5.1) >>
+endobj
+56 0 obj
+(\376\377\0005\000.\0001\000\040\000C\000l\000a\000s\000s\000\040\000L\000i\000s\000t)
+endobj
+57 0 obj
+<< /S /GoTo /D (chapter.6) >>
+endobj
+60 0 obj
+(\376\377\0006\000\040\000F\000i\000l\000e\000\040\000I\000n\000d\000e\000x)
+endobj
+61 0 obj
+<< /S /GoTo /D (section.6.1) >>
+endobj
+64 0 obj
+(\376\377\0006\000.\0001\000\040\000F\000i\000l\000e\000\040\000L\000i\000s\000t)
+endobj
+65 0 obj
+<< /S /GoTo /D (chapter.7) >>
+endobj
+68 0 obj
+(\376\377\0007\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+69 0 obj
+<< /S /GoTo /D (section.7.1) >>
+endobj
+72 0 obj
+(\376\377\0007\000.\0001\000\040\000H\000T\000T\000P\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+73 0 obj
+<< /S /GoTo /D (subsection.7.1.1) >>
+endobj
+76 0 obj
+(\376\377\0007\000.\0001\000.\0001\000\040\000T\000y\000p\000e\000d\000e\000f\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+77 0 obj
+<< /S /GoTo /D (subsubsection.7.1.1.1) >>
+endobj
+80 0 obj
+(\376\377\0007\000.\0001\000.\0001\000.\0001\000\040\000J\000s\000o\000n)
+endobj
+81 0 obj
+<< /S /GoTo /D (subsubsection.7.1.1.2) >>
+endobj
+84 0 obj
+(\376\377\0007\000.\0001\000.\0001\000.\0002\000\040\000M\000e\000t\000h\000o\000d\000s)
+endobj
+85 0 obj
+<< /S /GoTo /D (subsubsection.7.1.1.3) >>
+endobj
+88 0 obj
+(\376\377\0007\000.\0001\000.\0001\000.\0003\000\040\000R\000e\000q\000u\000e\000s\000t)
+endobj
+89 0 obj
+<< /S /GoTo /D (subsubsection.7.1.1.4) >>
+endobj
+92 0 obj
+(\376\377\0007\000.\0001\000.\0001\000.\0004\000\040\000R\000e\000s\000p\000o\000n\000s\000e)
+endobj
+93 0 obj
+<< /S /GoTo /D (subsubsection.7.1.1.5) >>
+endobj
+96 0 obj
+(\376\377\0007\000.\0001\000.\0001\000.\0005\000\040\000S\000t\000a\000t\000u\000s)
+endobj
+97 0 obj
+<< /S /GoTo /D (section.7.2) >>
+endobj
+100 0 obj
+(\376\377\0007\000.\0002\000\040\000M\000Q\000T\000T\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+101 0 obj
+<< /S /GoTo /D (section.7.3) >>
+endobj
+104 0 obj
+(\376\377\0007\000.\0003\000\040\000m\000q\000t\000t\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+105 0 obj
+<< /S /GoTo /D (section.7.4) >>
+endobj
+108 0 obj
+(\376\377\0007\000.\0004\000\040\000S\000I\000G\000N\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+109 0 obj
+<< /S /GoTo /D (section.7.5) >>
+endobj
+112 0 obj
+(\376\377\0007\000.\0005\000\040\000S\000O\000I\000L\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+113 0 obj
+<< /S /GoTo /D (subsection.7.5.1) >>
+endobj
+116 0 obj
+(\376\377\0007\000.\0005\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+117 0 obj
+<< /S /GoTo /D (subsection.7.5.2) >>
+endobj
+120 0 obj
+(\376\377\0007\000.\0005\000.\0002\000\040\000T\000y\000p\000e\000d\000e\000f\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+121 0 obj
+<< /S /GoTo /D (subsubsection.7.5.2.1) >>
+endobj
+124 0 obj
+(\376\377\0007\000.\0005\000.\0002\000.\0001\000\040\000B\000O\000O\000L)
+endobj
+125 0 obj
+<< /S /GoTo /D (subsubsection.7.5.2.2) >>
+endobj
+128 0 obj
+(\376\377\0007\000.\0005\000.\0002\000.\0002\000\040\000D\000I\000M\000E\000N\000S\000I\000O\000N)
+endobj
+129 0 obj
+<< /S /GoTo /D (subsubsection.7.5.2.3) >>
+endobj
+132 0 obj
+(\376\377\0007\000.\0005\000.\0002\000.\0003\000\040\000D\000O\000U\000B\000L\000E)
+endobj
+133 0 obj
+<< /S /GoTo /D (subsubsection.7.5.2.4) >>
+endobj
+136 0 obj
+(\376\377\0007\000.\0005\000.\0002\000.\0004\000\040\000E\000N\000U\000M)
+endobj
+137 0 obj
+<< /S /GoTo /D (subsubsection.7.5.2.5) >>
+endobj
+140 0 obj
+(\376\377\0007\000.\0005\000.\0002\000.\0005\000\040\000I\000N\000T)
+endobj
+141 0 obj
+<< /S /GoTo /D (subsubsection.7.5.2.6) >>
+endobj
+144 0 obj
+(\376\377\0007\000.\0005\000.\0002\000.\0006\000\040\000S\000T\000R\000I\000N\000G)
+endobj
+145 0 obj
+<< /S /GoTo /D (subsubsection.7.5.2.7) >>
+endobj
+148 0 obj
+(\376\377\0007\000.\0005\000.\0002\000.\0007\000\040\000T\000I\000M\000E)
+endobj
+149 0 obj
+<< /S /GoTo /D (subsection.7.5.3) >>
+endobj
+152 0 obj
+(\376\377\0007\000.\0005\000.\0003\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+153 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.1) >>
+endobj
+156 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\000\040\000d\000a\000t\000a\000t\000y\000p\000e\000\050\000\051)
+endobj
+157 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.2) >>
+endobj
+160 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0002\000\040\000d\000a\000t\000a\000t\000y\000p\000e\000<\000\040\000b\000o\000o\000l\000\040\000>\000\050\000\051)
+endobj
+161 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.3) >>
+endobj
+164 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0003\000\040\000d\000a\000t\000a\000t\000y\000p\000e\000<\000\040\000d\000o\000u\000b\000l\000e\000\040\000>\000\050\000\051)
+endobj
+165 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.4) >>
+endobj
+168 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0004\000\040\000d\000a\000t\000a\000t\000y\000p\000e\000<\000\040\000i\000n\000t\000\040\000>\000\050\000\051)
+endobj
+169 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.5) >>
+endobj
+172 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0005\000\040\000d\000a\000t\000a\000t\000y\000p\000e\000<\000\040\000i\000n\000t\0006\0004\000\137\000t\000\040\000>\000\050\000\051)
+endobj
+173 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.6) >>
+endobj
+176 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0006\000\040\000d\000a\000t\000a\000t\000y\000p\000e\000<\000\040\000S\000O\000I\000L\000:\000:\000E\000N\000U\000M\000\040\000>\000\050\000\051)
+endobj
+177 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.7) >>
+endobj
+180 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0007\000\040\000d\000a\000t\000a\000t\000y\000p\000e\000<\000\040\000S\000O\000I\000L\000:\000:\000T\000I\000M\000E\000\040\000>\000\050\000\051)
+endobj
+181 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.8) >>
+endobj
+184 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0008\000\040\000d\000a\000t\000a\000t\000y\000p\000e\000<\000\040\000s\000t\000d\000:\000:\000s\000t\000r\000i\000n\000g\000\040\000>\000\050\000\051)
+endobj
+185 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.9) >>
+endobj
+188 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0009\000\040\000n\000u\000l\000l\000\137\000d\000e\000l\000e\000t\000e\000r\000\050\000\051)
+endobj
+189 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.10) >>
+endobj
+192 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\0000\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000<\000=\000\050\000\051)
+endobj
+193 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.11) >>
+endobj
+196 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\0001\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000>\000=\000\050\000\051)
+endobj
+197 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.12) >>
+endobj
+200 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\0002\000\040\000t\000o\000\137\000j\000s\000o\000n\000\050\000\051)
+endobj
+201 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.13) >>
+endobj
+204 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\0003\000\040\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000d\000o\000u\000b\000l\000e\000\040\000>\000\050\000\051)
+endobj
+205 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.14) >>
+endobj
+208 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\0004\000\040\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000i\000n\000t\000\040\000>\000\050\000\051)
+endobj
+209 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.15) >>
+endobj
+212 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\0005\000\040\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000i\000n\000t\0006\0004\000\137\000t\000\040\000>\000\050\000\051)
+endobj
+213 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.16) >>
+endobj
+216 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\0006\000\040\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000S\000O\000I\000L\000:\000:\000B\000O\000O\000L\000\040\000>\000\050\000\051)
+endobj
+217 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.17) >>
+endobj
+220 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\0007\000\040\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000S\000O\000I\000L\000:\000:\000E\000N\000U\000M\000\040\000>\000\050\000\051)
+endobj
+221 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.18) >>
+endobj
+224 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\0008\000\040\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000S\000O\000I\000L\000:\000:\000T\000I\000M\000E\000\040\000>\000\050\000\051)
+endobj
+225 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.19) >>
+endobj
+228 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0001\0009\000\040\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000s\000t\000d\000:\000:\000s\000t\000r\000i\000n\000g\000\040\000>\000\050\000\051)
+endobj
+229 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.20) >>
+endobj
+232 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0002\0000\000\040\000t\000o\000\137\000v\000a\000l\000u\000e\000\050\000\051)
+endobj
+233 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.21) >>
+endobj
+236 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0002\0001\000\040\000t\000o\000\137\000v\000a\000l\000u\000e\000<\000\040\000b\000o\000o\000l\000\040\000>\000\050\000\051)
+endobj
+237 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.22) >>
+endobj
+240 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0002\0002\000\040\000t\000o\000\137\000v\000a\000l\000u\000e\000<\000\040\000d\000o\000u\000b\000l\000e\000\040\000>\000\050\000\051)
+endobj
+241 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.23) >>
+endobj
+244 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0002\0003\000\040\000t\000o\000\137\000v\000a\000l\000u\000e\000<\000\040\000i\000n\000t\000\040\000>\000\050\000\051)
+endobj
+245 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.24) >>
+endobj
+248 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0002\0004\000\040\000t\000o\000\137\000v\000a\000l\000u\000e\000<\000\040\000i\000n\000t\0006\0004\000\137\000t\000\040\000>\000\050\000\051)
+endobj
+249 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.25) >>
+endobj
+252 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0002\0005\000\040\000t\000o\000\137\000v\000a\000l\000u\000e\000<\000\040\000S\000O\000I\000L\000:\000:\000E\000N\000U\000M\000\040\000>\000\050\000\051)
+endobj
+253 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.26) >>
+endobj
+256 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0002\0006\000\040\000t\000o\000\137\000v\000a\000l\000u\000e\000<\000\040\000S\000O\000I\000L\000:\000:\000T\000I\000M\000E\000\040\000>\000\050\000\051)
+endobj
+257 0 obj
+<< /S /GoTo /D (subsubsection.7.5.3.27) >>
+endobj
+260 0 obj
+(\376\377\0007\000.\0005\000.\0003\000.\0002\0007\000\040\000t\000o\000\137\000v\000a\000l\000u\000e\000<\000\040\000s\000t\000d\000:\000:\000s\000t\000r\000i\000n\000g\000\040\000>\000\050\000\051)
+endobj
+261 0 obj
+<< /S /GoTo /D (section.7.6) >>
+endobj
+264 0 obj
+(\376\377\0007\000.\0006\000\040\000U\000D\000P\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+265 0 obj
+<< /S /GoTo /D (chapter.8) >>
+endobj
+268 0 obj
+(\376\377\0008\000\040\000C\000l\000a\000s\000s\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+269 0 obj
+<< /S /GoTo /D (section.8.1) >>
+endobj
+272 0 obj
+(\376\377\0008\000.\0001\000\040\000U\000D\000P\000:\000:\000B\000r\000o\000a\000d\000c\000a\000s\000t\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+273 0 obj
+<< /S /GoTo /D (subsection.8.1.1) >>
+endobj
+276 0 obj
+(\376\377\0008\000.\0001\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+277 0 obj
+<< /S /GoTo /D (subsection.8.1.2) >>
+endobj
+280 0 obj
+(\376\377\0008\000.\0001\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+281 0 obj
+<< /S /GoTo /D (subsubsection.8.1.2.1) >>
+endobj
+284 0 obj
+(\376\377\0008\000.\0001\000.\0002\000.\0001\000\040\000B\000r\000o\000a\000d\000c\000a\000s\000t\000\050\000\051)
+endobj
+285 0 obj
+<< /S /GoTo /D (subsubsection.8.1.2.2) >>
+endobj
+288 0 obj
+(\376\377\0008\000.\0001\000.\0002\000.\0002\000\040\000\040\000B\000r\000o\000a\000d\000c\000a\000s\000t\000\050\000\051)
+endobj
+289 0 obj
+<< /S /GoTo /D (subsection.8.1.3) >>
+endobj
+292 0 obj
+(\376\377\0008\000.\0001\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+293 0 obj
+<< /S /GoTo /D (subsubsection.8.1.3.1) >>
+endobj
+296 0 obj
+(\376\377\0008\000.\0001\000.\0003\000.\0001\000\040\000a\000d\000d\000\137\000c\000l\000i\000e\000n\000t\000\050\000\051)
+endobj
+297 0 obj
+<< /S /GoTo /D (subsubsection.8.1.3.2) >>
+endobj
+300 0 obj
+(\376\377\0008\000.\0001\000.\0003\000.\0002\000\040\000c\000o\000n\000f\000i\000g\000u\000r\000e\000\050\000\051)
+endobj
+301 0 obj
+<< /S /GoTo /D (subsubsection.8.1.3.3) >>
+endobj
+304 0 obj
+(\376\377\0008\000.\0001\000.\0003\000.\0003\000\040\000r\000e\000m\000o\000v\000e\000\137\000c\000l\000i\000e\000n\000t\000\050\000\051)
+endobj
+305 0 obj
+<< /S /GoTo /D (subsubsection.8.1.3.4) >>
+endobj
+308 0 obj
+(\376\377\0008\000.\0001\000.\0003\000.\0004\000\040\000s\000e\000n\000d\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+309 0 obj
+<< /S /GoTo /D (subsubsection.8.1.3.5) >>
+endobj
+312 0 obj
+(\376\377\0008\000.\0001\000.\0003\000.\0005\000\040\000s\000e\000n\000d\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+313 0 obj
+<< /S /GoTo /D (subsubsection.8.1.3.6) >>
+endobj
+316 0 obj
+(\376\377\0008\000.\0001\000.\0003\000.\0006\000\040\000u\000s\000e\000\137\000c\000o\000u\000n\000t\000\050\000\051)
+endobj
+317 0 obj
+<< /S /GoTo /D (section.8.2) >>
+endobj
+320 0 obj
+(\376\377\0008\000.\0002\000\040\000M\000Q\000T\000T\000:\000:\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+321 0 obj
+<< /S /GoTo /D (subsection.8.2.1) >>
+endobj
+324 0 obj
+(\376\377\0008\000.\0002\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+325 0 obj
+<< /S /GoTo /D (subsection.8.2.2) >>
+endobj
+328 0 obj
+(\376\377\0008\000.\0002\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+329 0 obj
+<< /S /GoTo /D (subsubsection.8.2.2.1) >>
+endobj
+332 0 obj
+(\376\377\0008\000.\0002\000.\0002\000.\0001\000\040\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+333 0 obj
+<< /S /GoTo /D (subsubsection.8.2.2.2) >>
+endobj
+336 0 obj
+(\376\377\0008\000.\0002\000.\0002\000.\0002\000\040\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+337 0 obj
+<< /S /GoTo /D (subsubsection.8.2.2.3) >>
+endobj
+340 0 obj
+(\376\377\0008\000.\0002\000.\0002\000.\0003\000\040\000\040\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000\050\000\051)
+endobj
+341 0 obj
+<< /S /GoTo /D (subsection.8.2.3) >>
+endobj
+344 0 obj
+(\376\377\0008\000.\0002\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+345 0 obj
+<< /S /GoTo /D (subsubsection.8.2.3.1) >>
+endobj
+348 0 obj
+(\376\377\0008\000.\0002\000.\0003\000.\0001\000\040\000u\000r\000i\000\050\000\051)
+endobj
+349 0 obj
+<< /S /GoTo /D (subsection.8.2.4) >>
+endobj
+352 0 obj
+(\376\377\0008\000.\0002\000.\0004\000\040\000M\000e\000m\000b\000e\000r\000\040\000D\000a\000t\000a\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+353 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.1) >>
+endobj
+356 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0001\000\040\000c\000e\000r\000t\000i\000f\000i\000c\000a\000t\000e\000\137\000a\000u\000t\000h\000o\000r\000i\000t\000y)
+endobj
+357 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.2) >>
+endobj
+360 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0002\000\040\000c\000l\000e\000a\000n\000\137\000s\000e\000s\000s\000i\000o\000n)
+endobj
+361 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.3) >>
+endobj
+364 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0003\000\040\000c\000o\000n\000n\000e\000c\000t\000i\000o\000n\000\137\000t\000i\000m\000e\000o\000u\000t\000\137\000s)
+endobj
+365 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.4) >>
+endobj
+368 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0004\000\040\000h\000o\000s\000t)
+endobj
+369 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.5) >>
+endobj
+372 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0005\000\040\000k\000e\000e\000p\000\137\000a\000l\000i\000v\000e)
+endobj
+373 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.6) >>
+endobj
+376 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0006\000\040\000m\000i\000n\000\137\000d\000e\000l\000a\000y\000\137\000m\000s)
+endobj
+377 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.7) >>
+endobj
+380 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0007\000\040\000p\000a\000s\000s\000w\000o\000r\000d)
+endobj
+381 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.8) >>
+endobj
+384 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0008\000\040\000p\000a\000t\000h)
+endobj
+385 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.9) >>
+endobj
+388 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0009\000\040\000p\000o\000r\000t)
+endobj
+389 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.10) >>
+endobj
+392 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0001\0000\000\040\000r\000o\000o\000t)
+endobj
+393 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.11) >>
+endobj
+396 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0001\0001\000\040\000s\000s\000l)
+endobj
+397 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.12) >>
+endobj
+400 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0001\0002\000\040\000u\000s\000e\000r\000n\000a\000m\000e)
+endobj
+401 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.13) >>
+endobj
+404 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0001\0003\000\040\000v\000e\000r\000i\000f\000y)
+endobj
+405 0 obj
+<< /S /GoTo /D (subsubsection.8.2.4.14) >>
+endobj
+408 0 obj
+(\376\377\0008\000.\0002\000.\0004\000.\0001\0004\000\040\000w\000e\000b\000s\000o\000c\000k\000e\000t)
+endobj
+409 0 obj
+<< /S /GoTo /D (section.8.3) >>
+endobj
+412 0 obj
+(\376\377\0008\000.\0003\000\040\000U\000D\000P\000:\000:\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+413 0 obj
+<< /S /GoTo /D (subsection.8.3.1) >>
+endobj
+416 0 obj
+(\376\377\0008\000.\0003\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+417 0 obj
+<< /S /GoTo /D (subsection.8.3.2) >>
+endobj
+420 0 obj
+(\376\377\0008\000.\0003\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000T\000y\000p\000e\000d\000e\000f\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+421 0 obj
+<< /S /GoTo /D (subsubsection.8.3.2.1) >>
+endobj
+424 0 obj
+(\376\377\0008\000.\0003\000.\0002\000.\0001\000\040\000i\000t\000e\000r\000a\000t\000o\000r)
+endobj
+425 0 obj
+<< /S /GoTo /D (subsection.8.3.3) >>
+endobj
+428 0 obj
+(\376\377\0008\000.\0003\000.\0003\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+429 0 obj
+<< /S /GoTo /D (subsubsection.8.3.3.1) >>
+endobj
+432 0 obj
+(\376\377\0008\000.\0003\000.\0003\000.\0001\000\040\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+433 0 obj
+<< /S /GoTo /D (subsubsection.8.3.3.2) >>
+endobj
+436 0 obj
+(\376\377\0008\000.\0003\000.\0003\000.\0002\000\040\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+437 0 obj
+<< /S /GoTo /D (subsubsection.8.3.3.3) >>
+endobj
+440 0 obj
+(\376\377\0008\000.\0003\000.\0003\000.\0003\000\040\000\040\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000\050\000\051)
+endobj
+441 0 obj
+<< /S /GoTo /D (subsection.8.3.4) >>
+endobj
+444 0 obj
+(\376\377\0008\000.\0003\000.\0004\000\040\000M\000e\000m\000b\000e\000r\000\040\000D\000a\000t\000a\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+445 0 obj
+<< /S /GoTo /D (subsubsection.8.3.4.1) >>
+endobj
+448 0 obj
+(\376\377\0008\000.\0003\000.\0004\000.\0001\000\040\000c\000l\000i\000e\000n\000t\000s)
+endobj
+449 0 obj
+<< /S /GoTo /D (section.8.4) >>
+endobj
+452 0 obj
+(\376\377\0008\000.\0004\000\040\000S\000O\000I\000L\000:\000:\000C\000o\000n\000t\000a\000i\000n\000e\000r\000<\000\040\000T\000,\000\040\000x\000,\000\040\000y\000\040\000>\000\040\000C\000l\000a\000s\000s\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+453 0 obj
+<< /S /GoTo /D (subsection.8.4.1) >>
+endobj
+456 0 obj
+(\376\377\0008\000.\0004\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+457 0 obj
+<< /S /GoTo /D (subsection.8.4.2) >>
+endobj
+460 0 obj
+(\376\377\0008\000.\0004\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+461 0 obj
+<< /S /GoTo /D (subsubsection.8.4.2.1) >>
+endobj
+464 0 obj
+(\376\377\0008\000.\0004\000.\0002\000.\0001\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000\050\000\051\000\040\000[\0001\000/\0003\000])
+endobj
+465 0 obj
+<< /S /GoTo /D (subsubsection.8.4.2.2) >>
+endobj
+468 0 obj
+(\376\377\0008\000.\0004\000.\0002\000.\0002\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000\050\000\051\000\040\000[\0002\000/\0003\000])
+endobj
+469 0 obj
+<< /S /GoTo /D (subsubsection.8.4.2.3) >>
+endobj
+472 0 obj
+(\376\377\0008\000.\0004\000.\0002\000.\0003\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000\050\000\051\000\040\000[\0003\000/\0003\000])
+endobj
+473 0 obj
+<< /S /GoTo /D (subsection.8.4.3) >>
+endobj
+476 0 obj
+(\376\377\0008\000.\0004\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+477 0 obj
+<< /S /GoTo /D (subsubsection.8.4.3.1) >>
+endobj
+480 0 obj
+(\376\377\0008\000.\0004\000.\0003\000.\0001\000\040\000a\000t\000\050\000\051)
+endobj
+481 0 obj
+<< /S /GoTo /D (subsubsection.8.4.3.2) >>
+endobj
+484 0 obj
+(\376\377\0008\000.\0004\000.\0003\000.\0002\000\040\000c\000h\000e\000c\000k\000\137\000r\000a\000n\000g\000e\000\050\000\051)
+endobj
+485 0 obj
+<< /S /GoTo /D (subsubsection.8.4.3.3) >>
+endobj
+488 0 obj
+(\376\377\0008\000.\0004\000.\0003\000.\0003\000\040\000i\000s\000\137\000n\000u\000l\000l\000\050\000\051)
+endobj
+489 0 obj
+<< /S /GoTo /D (subsubsection.8.4.3.4) >>
+endobj
+492 0 obj
+(\376\377\0008\000.\0004\000.\0003\000.\0004\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000*\000\050\000\051)
+endobj
+493 0 obj
+<< /S /GoTo /D (subsubsection.8.4.3.5) >>
+endobj
+496 0 obj
+(\376\377\0008\000.\0004\000.\0003\000.\0005\000\040\000s\000e\000r\000i\000a\000l\000i\000z\000e\000\137\000d\000i\000m\000e\000n\000s\000i\000o\000n\000s\000\050\000\051)
+endobj
+497 0 obj
+<< /S /GoTo /D (subsubsection.8.4.3.6) >>
+endobj
+500 0 obj
+(\376\377\0008\000.\0004\000.\0003\000.\0006\000\040\000s\000e\000r\000i\000a\000l\000i\000z\000e\000\137\000v\000a\000l\000u\000e\000\050\000\051)
+endobj
+501 0 obj
+<< /S /GoTo /D (subsubsection.8.4.3.7) >>
+endobj
+504 0 obj
+(\376\377\0008\000.\0004\000.\0003\000.\0007\000\040\000s\000e\000t\000\137\000n\000u\000l\000l\000\050\000\051)
+endobj
+505 0 obj
+<< /S /GoTo /D (subsubsection.8.4.3.8) >>
+endobj
+508 0 obj
+(\376\377\0008\000.\0004\000.\0003\000.\0008\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+509 0 obj
+<< /S /GoTo /D (section.8.5) >>
+endobj
+512 0 obj
+(\376\377\0008\000.\0005\000\040\000S\000O\000I\000L\000:\000:\000C\000o\000n\000t\000a\000i\000n\000e\000r\000<\000\040\000T\000,\000\040\000-\0001\000,\000\040\000-\0001\000\040\000>\000\040\000C\000l\000a\000s\000s\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+513 0 obj
+<< /S /GoTo /D (subsection.8.5.1) >>
+endobj
+516 0 obj
+(\376\377\0008\000.\0005\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+517 0 obj
+<< /S /GoTo /D (subsection.8.5.2) >>
+endobj
+520 0 obj
+(\376\377\0008\000.\0005\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+521 0 obj
+<< /S /GoTo /D (subsubsection.8.5.2.1) >>
+endobj
+524 0 obj
+(\376\377\0008\000.\0005\000.\0002\000.\0001\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000\050\000\051\000\040\000[\0001\000/\0003\000])
+endobj
+525 0 obj
+<< /S /GoTo /D (subsubsection.8.5.2.2) >>
+endobj
+528 0 obj
+(\376\377\0008\000.\0005\000.\0002\000.\0002\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000\050\000\051\000\040\000[\0002\000/\0003\000])
+endobj
+529 0 obj
+<< /S /GoTo /D (subsubsection.8.5.2.3) >>
+endobj
+532 0 obj
+(\376\377\0008\000.\0005\000.\0002\000.\0003\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000\050\000\051\000\040\000[\0003\000/\0003\000])
+endobj
+533 0 obj
+<< /S /GoTo /D (subsection.8.5.3) >>
+endobj
+536 0 obj
+(\376\377\0008\000.\0005\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+537 0 obj
+<< /S /GoTo /D (subsubsection.8.5.3.1) >>
+endobj
+540 0 obj
+(\376\377\0008\000.\0005\000.\0003\000.\0001\000\040\000a\000t\000\050\000\051)
+endobj
+541 0 obj
+<< /S /GoTo /D (subsubsection.8.5.3.2) >>
+endobj
+544 0 obj
+(\376\377\0008\000.\0005\000.\0003\000.\0002\000\040\000c\000h\000e\000c\000k\000\137\000r\000a\000n\000g\000e\000\050\000\051)
+endobj
+545 0 obj
+<< /S /GoTo /D (subsubsection.8.5.3.3) >>
+endobj
+548 0 obj
+(\376\377\0008\000.\0005\000.\0003\000.\0003\000\040\000i\000s\000\137\000n\000u\000l\000l\000\050\000\051)
+endobj
+549 0 obj
+<< /S /GoTo /D (subsubsection.8.5.3.4) >>
+endobj
+552 0 obj
+(\376\377\0008\000.\0005\000.\0003\000.\0004\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000*\000\050\000\051)
+endobj
+553 0 obj
+<< /S /GoTo /D (subsubsection.8.5.3.5) >>
+endobj
+556 0 obj
+(\376\377\0008\000.\0005\000.\0003\000.\0005\000\040\000s\000e\000r\000i\000a\000l\000i\000z\000e\000\137\000d\000i\000m\000e\000n\000s\000i\000o\000n\000s\000\050\000\051)
+endobj
+557 0 obj
+<< /S /GoTo /D (subsubsection.8.5.3.6) >>
+endobj
+560 0 obj
+(\376\377\0008\000.\0005\000.\0003\000.\0006\000\040\000s\000e\000r\000i\000a\000l\000i\000z\000e\000\137\000v\000a\000l\000u\000e\000\050\000\051)
+endobj
+561 0 obj
+<< /S /GoTo /D (subsubsection.8.5.3.7) >>
+endobj
+564 0 obj
+(\376\377\0008\000.\0005\000.\0003\000.\0007\000\040\000s\000e\000t\000\137\000n\000u\000l\000l\000\050\000\051)
+endobj
+565 0 obj
+<< /S /GoTo /D (subsubsection.8.5.3.8) >>
+endobj
+568 0 obj
+(\376\377\0008\000.\0005\000.\0003\000.\0008\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+569 0 obj
+<< /S /GoTo /D (section.8.6) >>
+endobj
+572 0 obj
+(\376\377\0008\000.\0006\000\040\000S\000O\000I\000L\000:\000:\000C\000o\000n\000t\000a\000i\000n\000e\000r\000<\000\040\000T\000,\000\040\000x\000,\000\040\000-\0001\000\040\000>\000\040\000C\000l\000a\000s\000s\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+573 0 obj
+<< /S /GoTo /D (subsection.8.6.1) >>
+endobj
+576 0 obj
+(\376\377\0008\000.\0006\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+577 0 obj
+<< /S /GoTo /D (subsection.8.6.2) >>
+endobj
+580 0 obj
+(\376\377\0008\000.\0006\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+581 0 obj
+<< /S /GoTo /D (subsubsection.8.6.2.1) >>
+endobj
+584 0 obj
+(\376\377\0008\000.\0006\000.\0002\000.\0001\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000\050\000\051\000\040\000[\0001\000/\0003\000])
+endobj
+585 0 obj
+<< /S /GoTo /D (subsubsection.8.6.2.2) >>
+endobj
+588 0 obj
+(\376\377\0008\000.\0006\000.\0002\000.\0002\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000\050\000\051\000\040\000[\0002\000/\0003\000])
+endobj
+589 0 obj
+<< /S /GoTo /D (subsubsection.8.6.2.3) >>
+endobj
+592 0 obj
+(\376\377\0008\000.\0006\000.\0002\000.\0003\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000\050\000\051\000\040\000[\0003\000/\0003\000])
+endobj
+593 0 obj
+<< /S /GoTo /D (subsection.8.6.3) >>
+endobj
+596 0 obj
+(\376\377\0008\000.\0006\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+597 0 obj
+<< /S /GoTo /D (subsubsection.8.6.3.1) >>
+endobj
+600 0 obj
+(\376\377\0008\000.\0006\000.\0003\000.\0001\000\040\000a\000t\000\050\000\051)
+endobj
+601 0 obj
+<< /S /GoTo /D (subsubsection.8.6.3.2) >>
+endobj
+604 0 obj
+(\376\377\0008\000.\0006\000.\0003\000.\0002\000\040\000c\000h\000e\000c\000k\000\137\000r\000a\000n\000g\000e\000\050\000\051)
+endobj
+605 0 obj
+<< /S /GoTo /D (subsubsection.8.6.3.3) >>
+endobj
+608 0 obj
+(\376\377\0008\000.\0006\000.\0003\000.\0003\000\040\000i\000s\000\137\000n\000u\000l\000l\000\050\000\051)
+endobj
+609 0 obj
+<< /S /GoTo /D (subsubsection.8.6.3.4) >>
+endobj
+612 0 obj
+(\376\377\0008\000.\0006\000.\0003\000.\0004\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000*\000\050\000\051)
+endobj
+613 0 obj
+<< /S /GoTo /D (subsubsection.8.6.3.5) >>
+endobj
+616 0 obj
+(\376\377\0008\000.\0006\000.\0003\000.\0005\000\040\000s\000e\000r\000i\000a\000l\000i\000z\000e\000\137\000d\000i\000m\000e\000n\000s\000i\000o\000n\000s\000\050\000\051)
+endobj
+617 0 obj
+<< /S /GoTo /D (subsubsection.8.6.3.6) >>
+endobj
+620 0 obj
+(\376\377\0008\000.\0006\000.\0003\000.\0006\000\040\000s\000e\000r\000i\000a\000l\000i\000z\000e\000\137\000v\000a\000l\000u\000e\000\050\000\051)
+endobj
+621 0 obj
+<< /S /GoTo /D (subsubsection.8.6.3.7) >>
+endobj
+624 0 obj
+(\376\377\0008\000.\0006\000.\0003\000.\0007\000\040\000s\000e\000t\000\137\000n\000u\000l\000l\000\050\000\051)
+endobj
+625 0 obj
+<< /S /GoTo /D (subsubsection.8.6.3.8) >>
+endobj
+628 0 obj
+(\376\377\0008\000.\0006\000.\0003\000.\0008\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+629 0 obj
+<< /S /GoTo /D (section.8.7) >>
+endobj
+632 0 obj
+(\376\377\0008\000.\0007\000\040\000S\000O\000I\000L\000:\000:\000E\000l\000e\000m\000e\000n\000t\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+633 0 obj
+<< /S /GoTo /D (subsection.8.7.1) >>
+endobj
+636 0 obj
+(\376\377\0008\000.\0007\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+637 0 obj
+<< /S /GoTo /D (subsection.8.7.2) >>
+endobj
+640 0 obj
+(\376\377\0008\000.\0007\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+641 0 obj
+<< /S /GoTo /D (subsubsection.8.7.2.1) >>
+endobj
+644 0 obj
+(\376\377\0008\000.\0007\000.\0002\000.\0001\000\040\000E\000l\000e\000m\000e\000n\000t\000\050\000\051)
+endobj
+645 0 obj
+<< /S /GoTo /D (subsubsection.8.7.2.2) >>
+endobj
+648 0 obj
+(\376\377\0008\000.\0007\000.\0002\000.\0002\000\040\000\040\000E\000l\000e\000m\000e\000n\000t\000\050\000\051)
+endobj
+649 0 obj
+<< /S /GoTo /D (subsection.8.7.3) >>
+endobj
+652 0 obj
+(\376\377\0008\000.\0007\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+653 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.1) >>
+endobj
+656 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0001\000\040\000a\000d\000d\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+657 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.2) >>
+endobj
+660 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0002\000\040\000a\000d\000d\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+661 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.3) >>
+endobj
+664 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0003\000\040\000c\000a\000s\000t\000\050\000\051)
+endobj
+665 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.4) >>
+endobj
+668 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0004\000\040\000f\000q\000i\000d\000\050\000\051)
+endobj
+669 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.5) >>
+endobj
+672 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0005\000\040\000h\000a\000n\000d\000l\000e\000\050\000\051)
+endobj
+673 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.6) >>
+endobj
+676 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0006\000\040\000i\000n\000s\000e\000r\000t\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+677 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.7) >>
+endobj
+680 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0007\000\040\000i\000n\000s\000e\000r\000t\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+681 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.8) >>
+endobj
+684 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0008\000\040\000i\000s\000\137\000f\000u\000n\000c\000t\000i\000o\000n\000\050\000\051)
+endobj
+685 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.9) >>
+endobj
+688 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0009\000\040\000i\000s\000\137\000o\000b\000j\000e\000c\000t\000\050\000\051)
+endobj
+689 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.10) >>
+endobj
+692 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0001\0000\000\040\000i\000s\000\137\000p\000a\000r\000a\000m\000e\000t\000e\000r\000\050\000\051)
+endobj
+693 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.11) >>
+endobj
+696 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0001\0001\000\040\000i\000s\000\137\000v\000a\000r\000i\000a\000b\000l\000e\000\050\000\051)
+endobj
+697 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.12) >>
+endobj
+700 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0001\0002\000\040\000j\000s\000o\000n\000\050\000\051)
+endobj
+701 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.13) >>
+endobj
+704 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0001\0003\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000[\000]\000\050\000\051)
+endobj
+705 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.14) >>
+endobj
+708 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0001\0004\000\040\000r\000e\000m\000o\000v\000e\000\050\000\051)
+endobj
+709 0 obj
+<< /S /GoTo /D (subsubsection.8.7.3.15) >>
+endobj
+712 0 obj
+(\376\377\0008\000.\0007\000.\0003\000.\0001\0005\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+713 0 obj
+<< /S /GoTo /D (subsection.8.7.4) >>
+endobj
+716 0 obj
+(\376\377\0008\000.\0007\000.\0004\000\040\000M\000e\000m\000b\000e\000r\000\040\000D\000a\000t\000a\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+717 0 obj
+<< /S /GoTo /D (subsubsection.8.7.4.1) >>
+endobj
+720 0 obj
+(\376\377\0008\000.\0007\000.\0004\000.\0001\000\040\000c\000h\000i\000l\000d\000r\000e\000n)
+endobj
+721 0 obj
+<< /S /GoTo /D (subsubsection.8.7.4.2) >>
+endobj
+724 0 obj
+(\376\377\0008\000.\0007\000.\0004\000.\0002\000\040\000d\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+725 0 obj
+<< /S /GoTo /D (subsubsection.8.7.4.3) >>
+endobj
+728 0 obj
+(\376\377\0008\000.\0007\000.\0004\000.\0003\000\040\000m\000u\000t\000e\000x)
+endobj
+729 0 obj
+<< /S /GoTo /D (subsubsection.8.7.4.4) >>
+endobj
+732 0 obj
+(\376\377\0008\000.\0007\000.\0004\000.\0004\000\040\000n\000a\000m\000e)
+endobj
+733 0 obj
+<< /S /GoTo /D (subsubsection.8.7.4.5) >>
+endobj
+736 0 obj
+(\376\377\0008\000.\0007\000.\0004\000.\0005\000\040\000o\000n\000t\000o\000l\000o\000g\000y)
+endobj
+737 0 obj
+<< /S /GoTo /D (subsubsection.8.7.4.6) >>
+endobj
+740 0 obj
+(\376\377\0008\000.\0007\000.\0004\000.\0006\000\040\000p\000a\000r\000e\000n\000t)
+endobj
+741 0 obj
+<< /S /GoTo /D (subsubsection.8.7.4.7) >>
+endobj
+744 0 obj
+(\376\377\0008\000.\0007\000.\0004\000.\0007\000\040\000s\000e\000l\000f)
+endobj
+745 0 obj
+<< /S /GoTo /D (subsubsection.8.7.4.8) >>
+endobj
+748 0 obj
+(\376\377\0008\000.\0007\000.\0004\000.\0008\000\040\000u\000u\000i\000d)
+endobj
+749 0 obj
+<< /S /GoTo /D (section.8.8) >>
+endobj
+752 0 obj
+(\376\377\0008\000.\0008\000\040\000S\000O\000I\000L\000:\000:\000E\000n\000u\000m\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+753 0 obj
+<< /S /GoTo /D (subsection.8.8.1) >>
+endobj
+756 0 obj
+(\376\377\0008\000.\0008\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+757 0 obj
+<< /S /GoTo /D (subsection.8.8.2) >>
+endobj
+760 0 obj
+(\376\377\0008\000.\0008\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+761 0 obj
+<< /S /GoTo /D (subsubsection.8.8.2.1) >>
+endobj
+764 0 obj
+(\376\377\0008\000.\0008\000.\0002\000.\0001\000\040\000E\000n\000u\000m\000\050\000\051\000\040\000[\0001\000/\0003\000])
+endobj
+765 0 obj
+<< /S /GoTo /D (subsubsection.8.8.2.2) >>
+endobj
+768 0 obj
+(\376\377\0008\000.\0008\000.\0002\000.\0002\000\040\000E\000n\000u\000m\000\050\000\051\000\040\000[\0002\000/\0003\000])
+endobj
+769 0 obj
+<< /S /GoTo /D (subsubsection.8.8.2.3) >>
+endobj
+772 0 obj
+(\376\377\0008\000.\0008\000.\0002\000.\0003\000\040\000E\000n\000u\000m\000\050\000\051\000\040\000[\0003\000/\0003\000])
+endobj
+773 0 obj
+<< /S /GoTo /D (subsubsection.8.8.2.4) >>
+endobj
+776 0 obj
+(\376\377\0008\000.\0008\000.\0002\000.\0004\000\040\000\040\000E\000n\000u\000m\000\050\000\051)
+endobj
+777 0 obj
+<< /S /GoTo /D (subsection.8.8.3) >>
+endobj
+780 0 obj
+(\376\377\0008\000.\0008\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+781 0 obj
+<< /S /GoTo /D (subsubsection.8.8.3.1) >>
+endobj
+784 0 obj
+(\376\377\0008\000.\0008\000.\0003\000.\0001\000\040\000c\000h\000o\000i\000c\000e\000s\000\050\000\051)
+endobj
+785 0 obj
+<< /S /GoTo /D (subsubsection.8.8.3.2) >>
+endobj
+788 0 obj
+(\376\377\0008\000.\0008\000.\0003\000.\0002\000\040\000i\000n\000d\000e\000x\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+789 0 obj
+<< /S /GoTo /D (subsubsection.8.8.3.3) >>
+endobj
+792 0 obj
+(\376\377\0008\000.\0008\000.\0003\000.\0003\000\040\000i\000n\000d\000e\000x\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+793 0 obj
+<< /S /GoTo /D (subsubsection.8.8.3.4) >>
+endobj
+796 0 obj
+(\376\377\0008\000.\0008\000.\0003\000.\0004\000\040\000s\000e\000l\000e\000c\000t\000e\000d\000\050\000\051)
+endobj
+797 0 obj
+<< /S /GoTo /D (subsubsection.8.8.3.5) >>
+endobj
+800 0 obj
+(\376\377\0008\000.\0008\000.\0003\000.\0005\000\040\000s\000e\000t\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+801 0 obj
+<< /S /GoTo /D (subsubsection.8.8.3.6) >>
+endobj
+804 0 obj
+(\376\377\0008\000.\0008\000.\0003\000.\0006\000\040\000s\000e\000t\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+805 0 obj
+<< /S /GoTo /D (section.8.9) >>
+endobj
+808 0 obj
+(\376\377\0008\000.\0009\000\040\000M\000Q\000T\000T\000:\000:\000E\000x\000c\000e\000p\000t\000i\000o\000n\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+809 0 obj
+<< /S /GoTo /D (subsection.8.9.1) >>
+endobj
+812 0 obj
+(\376\377\0008\000.\0009\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+813 0 obj
+<< /S /GoTo /D (subsection.8.9.2) >>
+endobj
+816 0 obj
+(\376\377\0008\000.\0009\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+817 0 obj
+<< /S /GoTo /D (subsubsection.8.9.2.1) >>
+endobj
+820 0 obj
+(\376\377\0008\000.\0009\000.\0002\000.\0001\000\040\000E\000x\000c\000e\000p\000t\000i\000o\000n\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+821 0 obj
+<< /S /GoTo /D (subsubsection.8.9.2.2) >>
+endobj
+824 0 obj
+(\376\377\0008\000.\0009\000.\0002\000.\0002\000\040\000E\000x\000c\000e\000p\000t\000i\000o\000n\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+825 0 obj
+<< /S /GoTo /D (subsubsection.8.9.2.3) >>
+endobj
+828 0 obj
+(\376\377\0008\000.\0009\000.\0002\000.\0003\000\040\000\040\000E\000x\000c\000e\000p\000t\000i\000o\000n\000\050\000\051)
+endobj
+829 0 obj
+<< /S /GoTo /D (subsection.8.9.3) >>
+endobj
+832 0 obj
+(\376\377\0008\000.\0009\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+833 0 obj
+<< /S /GoTo /D (subsubsection.8.9.3.1) >>
+endobj
+836 0 obj
+(\376\377\0008\000.\0009\000.\0003\000.\0001\000\040\000c\000o\000d\000e\000\050\000\051)
+endobj
+837 0 obj
+<< /S /GoTo /D (section.8.10) >>
+endobj
+840 0 obj
+(\376\377\0008\000.\0001\0000\000\040\000U\000D\000P\000:\000:\000E\000x\000c\000e\000p\000t\000i\000o\000n\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+841 0 obj
+<< /S /GoTo /D (subsection.8.10.1) >>
+endobj
+844 0 obj
+(\376\377\0008\000.\0001\0000\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+845 0 obj
+<< /S /GoTo /D (subsection.8.10.2) >>
+endobj
+848 0 obj
+(\376\377\0008\000.\0001\0000\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+849 0 obj
+<< /S /GoTo /D (subsubsection.8.10.2.1) >>
+endobj
+852 0 obj
+(\376\377\0008\000.\0001\0000\000.\0002\000.\0001\000\040\000E\000x\000c\000e\000p\000t\000i\000o\000n\000\050\000\051)
+endobj
+853 0 obj
+<< /S /GoTo /D (subsubsection.8.10.2.2) >>
+endobj
+856 0 obj
+(\376\377\0008\000.\0001\0000\000.\0002\000.\0002\000\040\000\040\000E\000x\000c\000e\000p\000t\000i\000o\000n\000\050\000\051)
+endobj
+857 0 obj
+<< /S /GoTo /D (section.8.11) >>
+endobj
+860 0 obj
+(\376\377\0008\000.\0001\0001\000\040\000S\000O\000I\000L\000:\000:\000F\000i\000g\000u\000r\000e\000<\000\040\000T\000,\000\040\000x\000,\000\040\000y\000\040\000>\000\040\000C\000l\000a\000s\000s\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+861 0 obj
+<< /S /GoTo /D (subsection.8.11.1) >>
+endobj
+864 0 obj
+(\376\377\0008\000.\0001\0001\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+865 0 obj
+<< /S /GoTo /D (subsection.8.11.2) >>
+endobj
+868 0 obj
+(\376\377\0008\000.\0001\0001\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+869 0 obj
+<< /S /GoTo /D (subsubsection.8.11.2.1) >>
+endobj
+872 0 obj
+(\376\377\0008\000.\0001\0001\000.\0002\000.\0001\000\040\000F\000i\000g\000u\000r\000e\000\050\000\051)
+endobj
+873 0 obj
+<< /S /GoTo /D (subsubsection.8.11.2.2) >>
+endobj
+876 0 obj
+(\376\377\0008\000.\0001\0001\000.\0002\000.\0002\000\040\000\040\000F\000i\000g\000u\000r\000e\000\050\000\051)
+endobj
+877 0 obj
+<< /S /GoTo /D (subsection.8.11.3) >>
+endobj
+880 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+881 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.1) >>
+endobj
+884 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0001\000\040\000c\000a\000s\000t\000\050\000\051)
+endobj
+885 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.2) >>
+endobj
+888 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0002\000\040\000c\000h\000e\000c\000k\000\137\000r\000a\000n\000g\000e\000\050\000\051)
+endobj
+889 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.3) >>
+endobj
+892 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0003\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000*\000\050\000\051)
+endobj
+893 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.4) >>
+endobj
+896 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0004\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000=\000\050\000\051)
+endobj
+897 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.5) >>
+endobj
+900 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0005\000\040\000r\000e\000a\000d\000\050\000\051)
+endobj
+901 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.6) >>
+endobj
+904 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0006\000\040\000s\000e\000t\000\137\000r\000a\000n\000g\000e\000\050\000\051)
+endobj
+905 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.7) >>
+endobj
+908 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0007\000\040\000s\000e\000t\000\137\000t\000i\000m\000e\000\050\000\051)
+endobj
+909 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.8) >>
+endobj
+912 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0008\000\040\000s\000e\000t\000\137\000v\000a\000l\000u\000e\000\050\000\051)
+endobj
+913 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.9) >>
+endobj
+916 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0009\000\040\000u\000p\000d\000a\000t\000e\000\050\000\051)
+endobj
+917 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.10) >>
+endobj
+920 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0001\0000\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+921 0 obj
+<< /S /GoTo /D (subsubsection.8.11.3.11) >>
+endobj
+924 0 obj
+(\376\377\0008\000.\0001\0001\000.\0003\000.\0001\0001\000\040\000w\000r\000i\000t\000e\000\050\000\051)
+endobj
+925 0 obj
+<< /S /GoTo /D (subsection.8.11.4) >>
+endobj
+928 0 obj
+(\376\377\0008\000.\0001\0001\000.\0004\000\040\000M\000e\000m\000b\000e\000r\000\040\000D\000a\000t\000a\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+929 0 obj
+<< /S /GoTo /D (subsubsection.8.11.4.1) >>
+endobj
+932 0 obj
+(\376\377\0008\000.\0001\0001\000.\0004\000.\0001\000\040\000r\000a\000n\000g\000e)
+endobj
+933 0 obj
+<< /S /GoTo /D (subsubsection.8.11.4.2) >>
+endobj
+936 0 obj
+(\376\377\0008\000.\0001\0001\000.\0004\000.\0002\000\040\000t\000i\000m\000e)
+endobj
+937 0 obj
+<< /S /GoTo /D (subsubsection.8.11.4.3) >>
+endobj
+940 0 obj
+(\376\377\0008\000.\0001\0001\000.\0004\000.\0003\000\040\000u\000n\000i\000t)
+endobj
+941 0 obj
+<< /S /GoTo /D (subsubsection.8.11.4.4) >>
+endobj
+944 0 obj
+(\376\377\0008\000.\0001\0001\000.\0004\000.\0004\000\040\000v\000a\000l\000u\000e)
+endobj
+945 0 obj
+<< /S /GoTo /D (section.8.12) >>
+endobj
+948 0 obj
+(\376\377\0008\000.\0001\0002\000\040\000S\000O\000I\000L\000:\000:\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+949 0 obj
+<< /S /GoTo /D (subsection.8.12.1) >>
+endobj
+952 0 obj
+(\376\377\0008\000.\0001\0002\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+953 0 obj
+<< /S /GoTo /D (subsection.8.12.2) >>
+endobj
+956 0 obj
+(\376\377\0008\000.\0001\0002\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+957 0 obj
+<< /S /GoTo /D (subsubsection.8.12.2.1) >>
+endobj
+960 0 obj
+(\376\377\0008\000.\0001\0002\000.\0002\000.\0001\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\050\000\051)
+endobj
+961 0 obj
+<< /S /GoTo /D (subsubsection.8.12.2.2) >>
+endobj
+964 0 obj
+(\376\377\0008\000.\0001\0002\000.\0002\000.\0002\000\040\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\050\000\051)
+endobj
+965 0 obj
+<< /S /GoTo /D (subsection.8.12.3) >>
+endobj
+968 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+969 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.1) >>
+endobj
+972 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0001\000\040\000a\000d\000d\000\137\000a\000r\000g\000u\000m\000e\000n\000t\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+973 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.2) >>
+endobj
+976 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0002\000\040\000a\000d\000d\000\137\000a\000r\000g\000u\000m\000e\000n\000t\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+977 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.3) >>
+endobj
+980 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0003\000\040\000a\000d\000d\000\137\000r\000e\000t\000u\000r\000n\000\050\000\051)
+endobj
+981 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.4) >>
+endobj
+984 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0004\000\040\000c\000r\000e\000a\000t\000e\000\050\000\051)
+endobj
+985 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.5) >>
+endobj
+988 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0005\000\040\000h\000a\000n\000d\000l\000e\000\137\000g\000e\000t\000\050\000\051)
+endobj
+989 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.6) >>
+endobj
+992 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0006\000\040\000h\000a\000n\000d\000l\000e\000\137\000p\000o\000s\000t\000\050\000\051)
+endobj
+993 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.7) >>
+endobj
+996 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0007\000\040\000i\000n\000v\000o\000k\000e\000\050\000\051)
+endobj
+997 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.8) >>
+endobj
+1000 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0008\000\040\000m\000a\000k\000e\000\137\000a\000r\000g\000u\000m\000e\000n\000t\000\050\000\051)
+endobj
+1001 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.9) >>
+endobj
+1004 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0009\000\040\000m\000a\000k\000e\000\137\000r\000e\000t\000u\000r\000n\000\050\000\051)
+endobj
+1005 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.10) >>
+endobj
+1008 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0001\0000\000\040\000p\000t\000r\000\050\000\051)
+endobj
+1009 0 obj
+<< /S /GoTo /D (subsubsection.8.12.3.11) >>
+endobj
+1012 0 obj
+(\376\377\0008\000.\0001\0002\000.\0003\000.\0001\0001\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+1013 0 obj
+<< /S /GoTo /D (section.8.13) >>
+endobj
+1016 0 obj
+(\376\377\0008\000.\0001\0003\000\040\000S\000I\000G\000N\000:\000:\000H\000a\000s\000h\000e\000r\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1017 0 obj
+<< /S /GoTo /D (subsection.8.13.1) >>
+endobj
+1020 0 obj
+(\376\377\0008\000.\0001\0003\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1021 0 obj
+<< /S /GoTo /D (subsection.8.13.2) >>
+endobj
+1024 0 obj
+(\376\377\0008\000.\0001\0003\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1025 0 obj
+<< /S /GoTo /D (subsubsection.8.13.2.1) >>
+endobj
+1028 0 obj
+(\376\377\0008\000.\0001\0003\000.\0002\000.\0001\000\040\000H\000a\000s\000h\000e\000r\000\050\000\051)
+endobj
+1029 0 obj
+<< /S /GoTo /D (subsubsection.8.13.2.2) >>
+endobj
+1032 0 obj
+(\376\377\0008\000.\0001\0003\000.\0002\000.\0002\000\040\000\040\000H\000a\000s\000h\000e\000r\000\050\000\051)
+endobj
+1033 0 obj
+<< /S /GoTo /D (subsection.8.13.3) >>
+endobj
+1036 0 obj
+(\376\377\0008\000.\0001\0003\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1037 0 obj
+<< /S /GoTo /D (subsubsection.8.13.3.1) >>
+endobj
+1040 0 obj
+(\376\377\0008\000.\0001\0003\000.\0003\000.\0001\000\040\000h\000a\000s\000h\000\050\000\051)
+endobj
+1041 0 obj
+<< /S /GoTo /D (subsubsection.8.13.3.2) >>
+endobj
+1044 0 obj
+(\376\377\0008\000.\0001\0003\000.\0003\000.\0002\000\040\000p\000r\000i\000n\000t\000\050\000\051)
+endobj
+1045 0 obj
+<< /S /GoTo /D (subsubsection.8.13.3.3) >>
+endobj
+1048 0 obj
+(\376\377\0008\000.\0001\0003\000.\0003\000.\0003\000\040\000p\000u\000s\000h\000\137\000b\000a\000c\000k\000\050\000\051)
+endobj
+1049 0 obj
+<< /S /GoTo /D (subsubsection.8.13.3.4) >>
+endobj
+1052 0 obj
+(\376\377\0008\000.\0001\0003\000.\0003\000.\0004\000\040\000r\000e\000s\000e\000t\000\050\000\051)
+endobj
+1053 0 obj
+<< /S /GoTo /D (subsubsection.8.13.3.5) >>
+endobj
+1056 0 obj
+(\376\377\0008\000.\0001\0003\000.\0003\000.\0005\000\040\000s\000h\000a\0002\0005\0006\000\050\000\051)
+endobj
+1057 0 obj
+<< /S /GoTo /D (subsubsection.8.13.3.6) >>
+endobj
+1060 0 obj
+(\376\377\0008\000.\0001\0003\000.\0003\000.\0006\000\040\000s\000i\000z\000e\000\050\000\051)
+endobj
+1061 0 obj
+<< /S /GoTo /D (section.8.14) >>
+endobj
+1064 0 obj
+(\376\377\0008\000.\0001\0004\000\040\000M\000Q\000T\000T\000:\000:\000M\000e\000s\000s\000a\000g\000e\000C\000o\000n\000t\000a\000i\000n\000e\000r\000\040\000S\000t\000r\000u\000c\000t\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1065 0 obj
+<< /S /GoTo /D (subsection.8.14.1) >>
+endobj
+1068 0 obj
+(\376\377\0008\000.\0001\0004\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1069 0 obj
+<< /S /GoTo /D (subsection.8.14.2) >>
+endobj
+1072 0 obj
+(\376\377\0008\000.\0001\0004\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000D\000a\000t\000a\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1073 0 obj
+<< /S /GoTo /D (subsubsection.8.14.2.1) >>
+endobj
+1076 0 obj
+(\376\377\0008\000.\0001\0004\000.\0002\000.\0001\000\040\000m\000e\000s\000s\000a\000g\000e)
+endobj
+1077 0 obj
+<< /S /GoTo /D (subsubsection.8.14.2.2) >>
+endobj
+1080 0 obj
+(\376\377\0008\000.\0001\0004\000.\0002\000.\0002\000\040\000q\000o\000s)
+endobj
+1081 0 obj
+<< /S /GoTo /D (subsubsection.8.14.2.3) >>
+endobj
+1084 0 obj
+(\376\377\0008\000.\0001\0004\000.\0002\000.\0003\000\040\000r\000e\000t\000a\000i\000n)
+endobj
+1085 0 obj
+<< /S /GoTo /D (subsubsection.8.14.2.4) >>
+endobj
+1088 0 obj
+(\376\377\0008\000.\0001\0004\000.\0002\000.\0004\000\040\000t\000o\000p\000i\000c)
+endobj
+1089 0 obj
+<< /S /GoTo /D (section.8.15) >>
+endobj
+1092 0 obj
+(\376\377\0008\000.\0001\0005\000\040\000S\000O\000I\000L\000:\000:\000O\000b\000j\000e\000c\000t\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1093 0 obj
+<< /S /GoTo /D (subsection.8.15.1) >>
+endobj
+1096 0 obj
+(\376\377\0008\000.\0001\0005\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1097 0 obj
+<< /S /GoTo /D (subsection.8.15.2) >>
+endobj
+1100 0 obj
+(\376\377\0008\000.\0001\0005\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1101 0 obj
+<< /S /GoTo /D (subsubsection.8.15.2.1) >>
+endobj
+1104 0 obj
+(\376\377\0008\000.\0001\0005\000.\0002\000.\0001\000\040\000O\000b\000j\000e\000c\000t\000\050\000\051)
+endobj
+1105 0 obj
+<< /S /GoTo /D (subsubsection.8.15.2.2) >>
+endobj
+1108 0 obj
+(\376\377\0008\000.\0001\0005\000.\0002\000.\0002\000\040\000\040\000O\000b\000j\000e\000c\000t\000\050\000\051)
+endobj
+1109 0 obj
+<< /S /GoTo /D (subsection.8.15.3) >>
+endobj
+1112 0 obj
+(\376\377\0008\000.\0001\0005\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1113 0 obj
+<< /S /GoTo /D (subsubsection.8.15.3.1) >>
+endobj
+1116 0 obj
+(\376\377\0008\000.\0001\0005\000.\0003\000.\0001\000\040\000c\000r\000e\000a\000t\000e\000\050\000\051)
+endobj
+1117 0 obj
+<< /S /GoTo /D (subsubsection.8.15.3.2) >>
+endobj
+1120 0 obj
+(\376\377\0008\000.\0001\0005\000.\0003\000.\0002\000\040\000h\000a\000n\000d\000l\000e\000\137\000d\000e\000l\000e\000t\000e\000\050\000\051)
+endobj
+1121 0 obj
+<< /S /GoTo /D (subsubsection.8.15.3.3) >>
+endobj
+1124 0 obj
+(\376\377\0008\000.\0001\0005\000.\0003\000.\0003\000\040\000h\000a\000n\000d\000l\000e\000\137\000g\000e\000t\000\050\000\051)
+endobj
+1125 0 obj
+<< /S /GoTo /D (subsubsection.8.15.3.4) >>
+endobj
+1128 0 obj
+(\376\377\0008\000.\0001\0005\000.\0003\000.\0004\000\040\000h\000a\000n\000d\000l\000e\000\137\000p\000u\000t\000\050\000\051)
+endobj
+1129 0 obj
+<< /S /GoTo /D (subsubsection.8.15.3.5) >>
+endobj
+1132 0 obj
+(\376\377\0008\000.\0001\0005\000.\0003\000.\0005\000\040\000i\000n\000s\000e\000r\000t\000\050\000\051)
+endobj
+1133 0 obj
+<< /S /GoTo /D (subsubsection.8.15.3.6) >>
+endobj
+1136 0 obj
+(\376\377\0008\000.\0001\0005\000.\0003\000.\0006\000\040\000p\000t\000r\000\050\000\051)
+endobj
+1137 0 obj
+<< /S /GoTo /D (subsubsection.8.15.3.7) >>
+endobj
+1140 0 obj
+(\376\377\0008\000.\0001\0005\000.\0003\000.\0007\000\040\000r\000e\000a\000d\000\050\000\051)
+endobj
+1141 0 obj
+<< /S /GoTo /D (subsubsection.8.15.3.8) >>
+endobj
+1144 0 obj
+(\376\377\0008\000.\0001\0005\000.\0003\000.\0008\000\040\000r\000e\000m\000o\000v\000e\000\050\000\051)
+endobj
+1145 0 obj
+<< /S /GoTo /D (subsubsection.8.15.3.9) >>
+endobj
+1148 0 obj
+(\376\377\0008\000.\0001\0005\000.\0003\000.\0009\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+1149 0 obj
+<< /S /GoTo /D (section.8.16) >>
+endobj
+1152 0 obj
+(\376\377\0008\000.\0001\0006\000\040\000S\000O\000I\000L\000:\000:\000P\000a\000r\000a\000m\000e\000t\000e\000r\000<\000\040\000T\000,\000\040\000x\000,\000\040\000y\000\040\000>\000\040\000C\000l\000a\000s\000s\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1153 0 obj
+<< /S /GoTo /D (subsection.8.16.1) >>
+endobj
+1156 0 obj
+(\376\377\0008\000.\0001\0006\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1157 0 obj
+<< /S /GoTo /D (subsection.8.16.2) >>
+endobj
+1160 0 obj
+(\376\377\0008\000.\0001\0006\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1161 0 obj
+<< /S /GoTo /D (subsubsection.8.16.2.1) >>
+endobj
+1164 0 obj
+(\376\377\0008\000.\0001\0006\000.\0002\000.\0001\000\040\000P\000a\000r\000a\000m\000e\000t\000e\000r\000\050\000\051)
+endobj
+1165 0 obj
+<< /S /GoTo /D (subsubsection.8.16.2.2) >>
+endobj
+1168 0 obj
+(\376\377\0008\000.\0001\0006\000.\0002\000.\0002\000\040\000\040\000P\000a\000r\000a\000m\000e\000t\000e\000r\000\050\000\051)
+endobj
+1169 0 obj
+<< /S /GoTo /D (subsection.8.16.3) >>
+endobj
+1172 0 obj
+(\376\377\0008\000.\0001\0006\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1173 0 obj
+<< /S /GoTo /D (subsubsection.8.16.3.1) >>
+endobj
+1176 0 obj
+(\376\377\0008\000.\0001\0006\000.\0003\000.\0001\000\040\000c\000r\000e\000a\000t\000e\000\050\000\051)
+endobj
+1177 0 obj
+<< /S /GoTo /D (subsubsection.8.16.3.2) >>
+endobj
+1180 0 obj
+(\376\377\0008\000.\0001\0006\000.\0003\000.\0002\000\040\000h\000a\000n\000d\000l\000e\000\137\000g\000e\000t\000\050\000\051)
+endobj
+1181 0 obj
+<< /S /GoTo /D (subsubsection.8.16.3.3) >>
+endobj
+1184 0 obj
+(\376\377\0008\000.\0001\0006\000.\0003\000.\0003\000\040\000h\000a\000n\000d\000l\000e\000\137\000p\000a\000t\000c\000h\000\050\000\051)
+endobj
+1185 0 obj
+<< /S /GoTo /D (subsubsection.8.16.3.4) >>
+endobj
+1188 0 obj
+(\376\377\0008\000.\0001\0006\000.\0003\000.\0004\000\040\000m\000q\000t\000t\000\050\000\051)
+endobj
+1189 0 obj
+<< /S /GoTo /D (subsubsection.8.16.3.5) >>
+endobj
+1192 0 obj
+(\376\377\0008\000.\0001\0006\000.\0003\000.\0005\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000=\000\050\000\051)
+endobj
+1193 0 obj
+<< /S /GoTo /D (subsubsection.8.16.3.6) >>
+endobj
+1196 0 obj
+(\376\377\0008\000.\0001\0006\000.\0003\000.\0006\000\040\000p\000t\000r\000\050\000\051)
+endobj
+1197 0 obj
+<< /S /GoTo /D (subsubsection.8.16.3.7) >>
+endobj
+1200 0 obj
+(\376\377\0008\000.\0001\0006\000.\0003\000.\0007\000\040\000r\000e\000a\000d\000\050\000\051)
+endobj
+1201 0 obj
+<< /S /GoTo /D (subsubsection.8.16.3.8) >>
+endobj
+1204 0 obj
+(\376\377\0008\000.\0001\0006\000.\0003\000.\0008\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+1205 0 obj
+<< /S /GoTo /D (subsubsection.8.16.3.9) >>
+endobj
+1208 0 obj
+(\376\377\0008\000.\0001\0006\000.\0003\000.\0009\000\040\000w\000r\000i\000t\000e\000\050\000\051)
+endobj
+1209 0 obj
+<< /S /GoTo /D (subsection.8.16.4) >>
+endobj
+1212 0 obj
+(\376\377\0008\000.\0001\0006\000.\0004\000\040\000M\000e\000m\000b\000e\000r\000\040\000D\000a\000t\000a\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1213 0 obj
+<< /S /GoTo /D (subsubsection.8.16.4.1) >>
+endobj
+1216 0 obj
+(\376\377\0008\000.\0001\0006\000.\0004\000.\0001\000\040\000c\000o\000n\000s\000t\000a\000n\000t)
+endobj
+1217 0 obj
+<< /S /GoTo /D (section.8.17) >>
+endobj
+1220 0 obj
+(\376\377\0008\000.\0001\0007\000\040\000M\000Q\000T\000T\000:\000:\000P\000u\000b\000l\000i\000s\000h\000e\000r\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1221 0 obj
+<< /S /GoTo /D (subsection.8.17.1) >>
+endobj
+1224 0 obj
+(\376\377\0008\000.\0001\0007\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1225 0 obj
+<< /S /GoTo /D (subsection.8.17.2) >>
+endobj
+1228 0 obj
+(\376\377\0008\000.\0001\0007\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1229 0 obj
+<< /S /GoTo /D (subsubsection.8.17.2.1) >>
+endobj
+1232 0 obj
+(\376\377\0008\000.\0001\0007\000.\0002\000.\0001\000\040\000P\000u\000b\000l\000i\000s\000h\000e\000r\000\050\000\051)
+endobj
+1233 0 obj
+<< /S /GoTo /D (subsubsection.8.17.2.2) >>
+endobj
+1236 0 obj
+(\376\377\0008\000.\0001\0007\000.\0002\000.\0002\000\040\000\040\000P\000u\000b\000l\000i\000s\000h\000e\000r\000\050\000\051)
+endobj
+1237 0 obj
+<< /S /GoTo /D (subsection.8.17.3) >>
+endobj
+1240 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1241 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.1) >>
+endobj
+1244 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0001\000\040\000c\000o\000n\000f\000i\000g\000u\000r\000e\000\050\000\051)
+endobj
+1245 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.2) >>
+endobj
+1248 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0002\000\040\000c\000o\000n\000n\000e\000c\000t\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+1249 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.3) >>
+endobj
+1252 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0003\000\040\000c\000o\000n\000n\000e\000c\000t\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+1253 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.4) >>
+endobj
+1256 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0004\000\040\000d\000i\000s\000c\000o\000n\000n\000e\000c\000t\000\050\000\051)
+endobj
+1257 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.5) >>
+endobj
+1260 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0005\000\040\000i\000s\000\137\000c\000o\000n\000n\000e\000c\000t\000e\000d\000\050\000\051)
+endobj
+1261 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.6) >>
+endobj
+1264 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0006\000\040\000m\000i\000n\000\137\000d\000e\000l\000a\000y\000\137\000m\000s\000\050\000\051)
+endobj
+1265 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.7) >>
+endobj
+1268 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0007\000\040\000p\000u\000b\000l\000i\000s\000h\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+1269 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.8) >>
+endobj
+1272 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0008\000\040\000p\000u\000b\000l\000i\000s\000h\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+1273 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.9) >>
+endobj
+1276 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0009\000\040\000r\000e\000c\000o\000n\000n\000e\000c\000t\000\050\000\051)
+endobj
+1277 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.10) >>
+endobj
+1280 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0001\0000\000\040\000s\000e\000t\000\137\000b\000u\000f\000f\000e\000r\000\050\000\051)
+endobj
+1281 0 obj
+<< /S /GoTo /D (subsubsection.8.17.3.11) >>
+endobj
+1284 0 obj
+(\376\377\0008\000.\0001\0007\000.\0003\000.\0001\0001\000\040\000s\000e\000t\000\137\000r\000o\000o\000t\000\137\000t\000o\000p\000i\000c\000\050\000\051)
+endobj
+1285 0 obj
+<< /S /GoTo /D (section.8.18) >>
+endobj
+1288 0 obj
+(\376\377\0008\000.\0001\0008\000\040\000S\000O\000I\000L\000:\000:\000R\000a\000n\000g\000e\000<\000\040\000T\000\040\000>\000\040\000C\000l\000a\000s\000s\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1289 0 obj
+<< /S /GoTo /D (subsection.8.18.1) >>
+endobj
+1292 0 obj
+(\376\377\0008\000.\0001\0008\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1293 0 obj
+<< /S /GoTo /D (subsection.8.18.2) >>
+endobj
+1296 0 obj
+(\376\377\0008\000.\0001\0008\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1297 0 obj
+<< /S /GoTo /D (subsubsection.8.18.2.1) >>
+endobj
+1300 0 obj
+(\376\377\0008\000.\0001\0008\000.\0002\000.\0001\000\040\000R\000a\000n\000g\000e\000\050\000\051\000\040\000[\0001\000/\0003\000])
+endobj
+1301 0 obj
+<< /S /GoTo /D (subsubsection.8.18.2.2) >>
+endobj
+1304 0 obj
+(\376\377\0008\000.\0001\0008\000.\0002\000.\0002\000\040\000R\000a\000n\000g\000e\000\050\000\051\000\040\000[\0002\000/\0003\000])
+endobj
+1305 0 obj
+<< /S /GoTo /D (subsubsection.8.18.2.3) >>
+endobj
+1308 0 obj
+(\376\377\0008\000.\0001\0008\000.\0002\000.\0003\000\040\000R\000a\000n\000g\000e\000\050\000\051\000\040\000[\0003\000/\0003\000])
+endobj
+1309 0 obj
+<< /S /GoTo /D (subsubsection.8.18.2.4) >>
+endobj
+1312 0 obj
+(\376\377\0008\000.\0001\0008\000.\0002\000.\0004\000\040\000\040\000R\000a\000n\000g\000e\000\050\000\051)
+endobj
+1313 0 obj
+<< /S /GoTo /D (subsection.8.18.3) >>
+endobj
+1316 0 obj
+(\376\377\0008\000.\0001\0008\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1317 0 obj
+<< /S /GoTo /D (subsubsection.8.18.3.1) >>
+endobj
+1320 0 obj
+(\376\377\0008\000.\0001\0008\000.\0003\000.\0001\000\040\000c\000h\000e\000c\000k\000\050\000\051)
+endobj
+1321 0 obj
+<< /S /GoTo /D (subsubsection.8.18.3.2) >>
+endobj
+1324 0 obj
+(\376\377\0008\000.\0001\0008\000.\0003\000.\0002\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+1325 0 obj
+<< /S /GoTo /D (section.8.19) >>
+endobj
+1328 0 obj
+(\376\377\0008\000.\0001\0009\000\040\000S\000O\000I\000L\000:\000:\000R\000a\000n\000g\000e\000<\000\040\000E\000N\000U\000M\000\040\000>\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1329 0 obj
+<< /S /GoTo /D (subsection.8.19.1) >>
+endobj
+1332 0 obj
+(\376\377\0008\000.\0001\0009\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1333 0 obj
+<< /S /GoTo /D (subsection.8.19.2) >>
+endobj
+1336 0 obj
+(\376\377\0008\000.\0001\0009\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1337 0 obj
+<< /S /GoTo /D (subsubsection.8.19.2.1) >>
+endobj
+1340 0 obj
+(\376\377\0008\000.\0001\0009\000.\0002\000.\0001\000\040\000R\000a\000n\000g\000e\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+1341 0 obj
+<< /S /GoTo /D (subsubsection.8.19.2.2) >>
+endobj
+1344 0 obj
+(\376\377\0008\000.\0001\0009\000.\0002\000.\0002\000\040\000R\000a\000n\000g\000e\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+1345 0 obj
+<< /S /GoTo /D (subsubsection.8.19.2.3) >>
+endobj
+1348 0 obj
+(\376\377\0008\000.\0001\0009\000.\0002\000.\0003\000\040\000\040\000R\000a\000n\000g\000e\000\050\000\051)
+endobj
+1349 0 obj
+<< /S /GoTo /D (subsection.8.19.3) >>
+endobj
+1352 0 obj
+(\376\377\0008\000.\0001\0009\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1353 0 obj
+<< /S /GoTo /D (subsubsection.8.19.3.1) >>
+endobj
+1356 0 obj
+(\376\377\0008\000.\0001\0009\000.\0003\000.\0001\000\040\000c\000h\000e\000c\000k\000\050\000\051\000\040\000[\0001\000/\0002\000])
+endobj
+1357 0 obj
+<< /S /GoTo /D (subsubsection.8.19.3.2) >>
+endobj
+1360 0 obj
+(\376\377\0008\000.\0001\0009\000.\0003\000.\0002\000\040\000c\000h\000e\000c\000k\000\050\000\051\000\040\000[\0002\000/\0002\000])
+endobj
+1361 0 obj
+<< /S /GoTo /D (subsubsection.8.19.3.3) >>
+endobj
+1364 0 obj
+(\376\377\0008\000.\0001\0009\000.\0003\000.\0003\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+1365 0 obj
+<< /S /GoTo /D (section.8.20) >>
+endobj
+1368 0 obj
+(\376\377\0008\000.\0002\0000\000\040\000S\000O\000I\000L\000:\000:\000R\000a\000n\000g\000e\000<\000\040\000s\000t\000d\000:\000:\000s\000t\000r\000i\000n\000g\000\040\000>\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1369 0 obj
+<< /S /GoTo /D (subsection.8.20.1) >>
+endobj
+1372 0 obj
+(\376\377\0008\000.\0002\0000\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1373 0 obj
+<< /S /GoTo /D (subsection.8.20.2) >>
+endobj
+1376 0 obj
+(\376\377\0008\000.\0002\0000\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1377 0 obj
+<< /S /GoTo /D (subsubsection.8.20.2.1) >>
+endobj
+1380 0 obj
+(\376\377\0008\000.\0002\0000\000.\0002\000.\0001\000\040\000R\000a\000n\000g\000e\000\050\000\051\000\040\000[\0001\000/\0003\000])
+endobj
+1381 0 obj
+<< /S /GoTo /D (subsubsection.8.20.2.2) >>
+endobj
+1384 0 obj
+(\376\377\0008\000.\0002\0000\000.\0002\000.\0002\000\040\000R\000a\000n\000g\000e\000\050\000\051\000\040\000[\0002\000/\0003\000])
+endobj
+1385 0 obj
+<< /S /GoTo /D (subsubsection.8.20.2.3) >>
+endobj
+1388 0 obj
+(\376\377\0008\000.\0002\0000\000.\0002\000.\0003\000\040\000R\000a\000n\000g\000e\000\050\000\051\000\040\000[\0003\000/\0003\000])
+endobj
+1389 0 obj
+<< /S /GoTo /D (subsubsection.8.20.2.4) >>
+endobj
+1392 0 obj
+(\376\377\0008\000.\0002\0000\000.\0002\000.\0004\000\040\000\040\000R\000a\000n\000g\000e\000\050\000\051)
+endobj
+1393 0 obj
+<< /S /GoTo /D (subsection.8.20.3) >>
+endobj
+1396 0 obj
+(\376\377\0008\000.\0002\0000\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1397 0 obj
+<< /S /GoTo /D (subsubsection.8.20.3.1) >>
+endobj
+1400 0 obj
+(\376\377\0008\000.\0002\0000\000.\0003\000.\0001\000\040\000c\000h\000e\000c\000k\000\050\000\051)
+endobj
+1401 0 obj
+<< /S /GoTo /D (subsubsection.8.20.3.2) >>
+endobj
+1404 0 obj
+(\376\377\0008\000.\0002\0000\000.\0003\000.\0002\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+1405 0 obj
+<< /S /GoTo /D (section.8.21) >>
+endobj
+1408 0 obj
+(\376\377\0008\000.\0002\0001\000\040\000H\000T\000T\000P\000:\000:\000R\000e\000s\000o\000u\000r\000c\000e\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1409 0 obj
+<< /S /GoTo /D (subsection.8.21.1) >>
+endobj
+1412 0 obj
+(\376\377\0008\000.\0002\0001\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1413 0 obj
+<< /S /GoTo /D (subsection.8.21.2) >>
+endobj
+1416 0 obj
+(\376\377\0008\000.\0002\0001\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1417 0 obj
+<< /S /GoTo /D (subsubsection.8.21.2.1) >>
+endobj
+1420 0 obj
+(\376\377\0008\000.\0002\0001\000.\0002\000.\0001\000\040\000R\000e\000s\000o\000u\000r\000c\000e\000\050\000\051)
+endobj
+1421 0 obj
+<< /S /GoTo /D (subsubsection.8.21.2.2) >>
+endobj
+1424 0 obj
+(\376\377\0008\000.\0002\0001\000.\0002\000.\0002\000\040\000\040\000R\000e\000s\000o\000u\000r\000c\000e\000\050\000\051)
+endobj
+1425 0 obj
+<< /S /GoTo /D (subsection.8.21.3) >>
+endobj
+1428 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1429 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.1) >>
+endobj
+1432 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0001\000\040\000a\000p\000p\000l\000y\000\137\000h\000e\000a\000d\000e\000r\000s\000\050\000\051)
+endobj
+1433 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.2) >>
+endobj
+1436 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0002\000\040\000h\000a\000n\000d\000l\000e\000\050\000\051)
+endobj
+1437 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.3) >>
+endobj
+1440 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0003\000\040\000h\000a\000n\000d\000l\000e\000\137\000d\000e\000l\000e\000t\000e\000\050\000\051)
+endobj
+1441 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.4) >>
+endobj
+1444 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0004\000\040\000h\000a\000n\000d\000l\000e\000\137\000e\000x\000c\000e\000p\000t\000i\000o\000n\000\050\000\051)
+endobj
+1445 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.5) >>
+endobj
+1448 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0005\000\040\000h\000a\000n\000d\000l\000e\000\137\000g\000e\000t\000\050\000\051)
+endobj
+1449 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.6) >>
+endobj
+1452 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0006\000\040\000h\000a\000n\000d\000l\000e\000\137\000h\000e\000a\000d\000\050\000\051)
+endobj
+1453 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.7) >>
+endobj
+1456 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0007\000\040\000h\000a\000n\000d\000l\000e\000\137\000o\000p\000t\000i\000o\000n\000s\000\050\000\051)
+endobj
+1457 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.8) >>
+endobj
+1460 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0008\000\040\000h\000a\000n\000d\000l\000e\000\137\000p\000a\000t\000c\000h\000\050\000\051)
+endobj
+1461 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.9) >>
+endobj
+1464 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0009\000\040\000h\000a\000n\000d\000l\000e\000\137\000p\000o\000s\000t\000\050\000\051)
+endobj
+1465 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.10) >>
+endobj
+1468 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0001\0000\000\040\000h\000a\000n\000d\000l\000e\000\137\000p\000u\000t\000\050\000\051)
+endobj
+1469 0 obj
+<< /S /GoTo /D (subsubsection.8.21.3.11) >>
+endobj
+1472 0 obj
+(\376\377\0008\000.\0002\0001\000.\0003\000.\0001\0001\000\040\000r\000e\000q\000u\000e\000s\000t\000\137\000i\000n\000f\000o\000\050\000\051)
+endobj
+1473 0 obj
+<< /S /GoTo /D (subsection.8.21.4) >>
+endobj
+1476 0 obj
+(\376\377\0008\000.\0002\0001\000.\0004\000\040\000M\000e\000m\000b\000e\000r\000\040\000D\000a\000t\000a\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1477 0 obj
+<< /S /GoTo /D (subsubsection.8.21.4.1) >>
+endobj
+1480 0 obj
+(\376\377\0008\000.\0002\0001\000.\0004\000.\0001\000\040\000a\000l\000l\000o\000w\000e\000d\000\137\000m\000e\000t\000h\000o\000d\000s)
+endobj
+1481 0 obj
+<< /S /GoTo /D (subsubsection.8.21.4.2) >>
+endobj
+1484 0 obj
+(\376\377\0008\000.\0002\0001\000.\0004\000.\0002\000\040\000a\000l\000l\000o\000w\000e\000d\000\137\000o\000r\000i\000g\000i\000n\000s)
+endobj
+1485 0 obj
+<< /S /GoTo /D (subsubsection.8.21.4.3) >>
+endobj
+1488 0 obj
+(\376\377\0008\000.\0002\0001\000.\0004\000.\0003\000\040\000c\000o\000n\000t\000e\000n\000t\000\137\000t\000y\000p\000e)
+endobj
+1489 0 obj
+<< /S /GoTo /D (section.8.22) >>
+endobj
+1492 0 obj
+(\376\377\0008\000.\0002\0002\000\040\000H\000T\000T\000P\000:\000:\000S\000e\000r\000v\000e\000r\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1493 0 obj
+<< /S /GoTo /D (subsection.8.22.1) >>
+endobj
+1496 0 obj
+(\376\377\0008\000.\0002\0002\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1497 0 obj
+<< /S /GoTo /D (subsection.8.22.2) >>
+endobj
+1500 0 obj
+(\376\377\0008\000.\0002\0002\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1501 0 obj
+<< /S /GoTo /D (subsubsection.8.22.2.1) >>
+endobj
+1504 0 obj
+(\376\377\0008\000.\0002\0002\000.\0002\000.\0001\000\040\000S\000e\000r\000v\000e\000r\000\050\000\051)
+endobj
+1505 0 obj
+<< /S /GoTo /D (subsubsection.8.22.2.2) >>
+endobj
+1508 0 obj
+(\376\377\0008\000.\0002\0002\000.\0002\000.\0002\000\040\000\040\000S\000e\000r\000v\000e\000r\000\050\000\051)
+endobj
+1509 0 obj
+<< /S /GoTo /D (subsection.8.22.3) >>
+endobj
+1512 0 obj
+(\376\377\0008\000.\0002\0002\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1513 0 obj
+<< /S /GoTo /D (subsubsection.8.22.3.1) >>
+endobj
+1516 0 obj
+(\376\377\0008\000.\0002\0002\000.\0003\000.\0001\000\040\000a\000d\000d\000\050\000\051)
+endobj
+1517 0 obj
+<< /S /GoTo /D (subsubsection.8.22.3.2) >>
+endobj
+1520 0 obj
+(\376\377\0008\000.\0002\0002\000.\0003\000.\0002\000\040\000c\000l\000o\000s\000e\000\050\000\051)
+endobj
+1521 0 obj
+<< /S /GoTo /D (subsubsection.8.22.3.3) >>
+endobj
+1524 0 obj
+(\376\377\0008\000.\0002\0002\000.\0003\000.\0003\000\040\000o\000p\000e\000n\000\050\000\051)
+endobj
+1525 0 obj
+<< /S /GoTo /D (subsubsection.8.22.3.4) >>
+endobj
+1528 0 obj
+(\376\377\0008\000.\0002\0002\000.\0003\000.\0004\000\040\000r\000e\000m\000o\000v\000e\000\050\000\051)
+endobj
+1529 0 obj
+<< /S /GoTo /D (section.8.23) >>
+endobj
+1532 0 obj
+(\376\377\0008\000.\0002\0003\000\040\000S\000I\000G\000N\000:\000:\000S\000i\000g\000n\000e\000r\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1533 0 obj
+<< /S /GoTo /D (subsection.8.23.1) >>
+endobj
+1536 0 obj
+(\376\377\0008\000.\0002\0003\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1537 0 obj
+<< /S /GoTo /D (subsection.8.23.2) >>
+endobj
+1540 0 obj
+(\376\377\0008\000.\0002\0003\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1541 0 obj
+<< /S /GoTo /D (subsubsection.8.23.2.1) >>
+endobj
+1544 0 obj
+(\376\377\0008\000.\0002\0003\000.\0002\000.\0001\000\040\000S\000i\000g\000n\000e\000r\000\050\000\051)
+endobj
+1545 0 obj
+<< /S /GoTo /D (subsubsection.8.23.2.2) >>
+endobj
+1548 0 obj
+(\376\377\0008\000.\0002\0003\000.\0002\000.\0002\000\040\000\040\000S\000i\000g\000n\000e\000r\000\050\000\051)
+endobj
+1549 0 obj
+<< /S /GoTo /D (subsection.8.23.3) >>
+endobj
+1552 0 obj
+(\376\377\0008\000.\0002\0003\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1553 0 obj
+<< /S /GoTo /D (subsubsection.8.23.3.1) >>
+endobj
+1556 0 obj
+(\376\377\0008\000.\0002\0003\000.\0003\000.\0001\000\040\000n\000a\000m\000e\000\050\000\051)
+endobj
+1557 0 obj
+<< /S /GoTo /D (subsubsection.8.23.3.2) >>
+endobj
+1560 0 obj
+(\376\377\0008\000.\0002\0003\000.\0003\000.\0002\000\040\000o\000p\000e\000n\000s\000s\000l\000\137\000v\000e\000r\000s\000i\000o\000n\000\050\000\051)
+endobj
+1561 0 obj
+<< /S /GoTo /D (subsubsection.8.23.3.3) >>
+endobj
+1564 0 obj
+(\376\377\0008\000.\0002\0003\000.\0003\000.\0003\000\040\000s\000i\000g\000n\000\050\000\051)
+endobj
+1565 0 obj
+<< /S /GoTo /D (section.8.24) >>
+endobj
+1568 0 obj
+(\376\377\0008\000.\0002\0004\000\040\000S\000O\000I\000L\000:\000:\000T\000i\000m\000e\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1569 0 obj
+<< /S /GoTo /D (subsection.8.24.1) >>
+endobj
+1572 0 obj
+(\376\377\0008\000.\0002\0004\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1573 0 obj
+<< /S /GoTo /D (subsection.8.24.2) >>
+endobj
+1576 0 obj
+(\376\377\0008\000.\0002\0004\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1577 0 obj
+<< /S /GoTo /D (subsubsection.8.24.2.1) >>
+endobj
+1580 0 obj
+(\376\377\0008\000.\0002\0004\000.\0002\000.\0001\000\040\000T\000i\000m\000e\000\050\000\051\000\040\000[\0001\000/\0003\000])
+endobj
+1581 0 obj
+<< /S /GoTo /D (subsubsection.8.24.2.2) >>
+endobj
+1584 0 obj
+(\376\377\0008\000.\0002\0004\000.\0002\000.\0002\000\040\000T\000i\000m\000e\000\050\000\051\000\040\000[\0002\000/\0003\000])
+endobj
+1585 0 obj
+<< /S /GoTo /D (subsubsection.8.24.2.3) >>
+endobj
+1588 0 obj
+(\376\377\0008\000.\0002\0004\000.\0002\000.\0003\000\040\000T\000i\000m\000e\000\050\000\051\000\040\000[\0003\000/\0003\000])
+endobj
+1589 0 obj
+<< /S /GoTo /D (subsubsection.8.24.2.4) >>
+endobj
+1592 0 obj
+(\376\377\0008\000.\0002\0004\000.\0002\000.\0004\000\040\000\040\000T\000i\000m\000e\000\050\000\051)
+endobj
+1593 0 obj
+<< /S /GoTo /D (subsection.8.24.3) >>
+endobj
+1596 0 obj
+(\376\377\0008\000.\0002\0004\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1597 0 obj
+<< /S /GoTo /D (subsubsection.8.24.3.1) >>
+endobj
+1600 0 obj
+(\376\377\0008\000.\0002\0004\000.\0003\000.\0001\000\040\000i\000s\000\137\000n\000u\000l\000l\000\050\000\051)
+endobj
+1601 0 obj
+<< /S /GoTo /D (subsubsection.8.24.3.2) >>
+endobj
+1604 0 obj
+(\376\377\0008\000.\0002\0004\000.\0003\000.\0002\000\040\000r\000f\000c\0003\0003\0003\0009\000\050\000\051)
+endobj
+1605 0 obj
+<< /S /GoTo /D (subsubsection.8.24.3.3) >>
+endobj
+1608 0 obj
+(\376\377\0008\000.\0002\0004\000.\0003\000.\0003\000\040\000s\000e\000r\000i\000a\000l\000i\000z\000e\000\050\000\051)
+endobj
+1609 0 obj
+<< /S /GoTo /D (subsubsection.8.24.3.4) >>
+endobj
+1612 0 obj
+(\376\377\0008\000.\0002\0004\000.\0003\000.\0004\000\040\000s\000e\000t\000\137\000n\000u\000l\000l\000\050\000\051)
+endobj
+1613 0 obj
+<< /S /GoTo /D (subsubsection.8.24.3.5) >>
+endobj
+1616 0 obj
+(\376\377\0008\000.\0002\0004\000.\0003\000.\0005\000\040\000u\000t\000c\000\137\000n\000o\000w\000\050\000\051)
+endobj
+1617 0 obj
+<< /S /GoTo /D (subsection.8.24.4) >>
+endobj
+1620 0 obj
+(\376\377\0008\000.\0002\0004\000.\0004\000\040\000F\000r\000i\000e\000n\000d\000s\000\040\000A\000n\000d\000\040\000R\000e\000l\000a\000t\000e\000d\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1621 0 obj
+<< /S /GoTo /D (subsubsection.8.24.4.1) >>
+endobj
+1624 0 obj
+(\376\377\0008\000.\0002\0004\000.\0004\000.\0001\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000<\000=)
+endobj
+1625 0 obj
+<< /S /GoTo /D (subsubsection.8.24.4.2) >>
+endobj
+1628 0 obj
+(\376\377\0008\000.\0002\0004\000.\0004\000.\0002\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000>\000=)
+endobj
+1629 0 obj
+<< /S /GoTo /D (section.8.25) >>
+endobj
+1632 0 obj
+(\376\377\0008\000.\0002\0005\000\040\000S\000O\000I\000L\000:\000:\000V\000a\000r\000i\000a\000b\000l\000e\000<\000\040\000T\000,\000\040\000x\000,\000\040\000y\000\040\000>\000\040\000C\000l\000a\000s\000s\000\040\000T\000e\000m\000p\000l\000a\000t\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1633 0 obj
+<< /S /GoTo /D (subsection.8.25.1) >>
+endobj
+1636 0 obj
+(\376\377\0008\000.\0002\0005\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n)
+endobj
+1637 0 obj
+<< /S /GoTo /D (subsection.8.25.2) >>
+endobj
+1640 0 obj
+(\376\377\0008\000.\0002\0005\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1641 0 obj
+<< /S /GoTo /D (subsubsection.8.25.2.1) >>
+endobj
+1644 0 obj
+(\376\377\0008\000.\0002\0005\000.\0002\000.\0001\000\040\000V\000a\000r\000i\000a\000b\000l\000e\000\050\000\051)
+endobj
+1645 0 obj
+<< /S /GoTo /D (subsubsection.8.25.2.2) >>
+endobj
+1648 0 obj
+(\376\377\0008\000.\0002\0005\000.\0002\000.\0002\000\040\000\040\000V\000a\000r\000i\000a\000b\000l\000e\000\050\000\051)
+endobj
+1649 0 obj
+<< /S /GoTo /D (subsection.8.25.3) >>
+endobj
+1652 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1653 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.1) >>
+endobj
+1656 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0001\000\040\000b\000y\000t\000e\000s\000\050\000\051)
+endobj
+1657 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.2) >>
+endobj
+1660 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0002\000\040\000c\000r\000e\000a\000t\000e\000\050\000\051)
+endobj
+1661 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.3) >>
+endobj
+1664 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0003\000\040\000f\000i\000n\000g\000e\000r\000p\000r\000i\000n\000t\000\050\000\051)
+endobj
+1665 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.4) >>
+endobj
+1668 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0004\000\040\000h\000a\000n\000d\000l\000e\000\137\000g\000e\000t\000\050\000\051)
+endobj
+1669 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.5) >>
+endobj
+1672 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0005\000\040\000h\000a\000n\000d\000l\000e\000\137\000o\000p\000t\000i\000o\000n\000s\000\050\000\051)
+endobj
+1673 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.6) >>
+endobj
+1676 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0006\000\040\000m\000q\000t\000t\000\050\000\051)
+endobj
+1677 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.7) >>
+endobj
+1680 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0007\000\040\000o\000p\000e\000r\000a\000t\000o\000r\000=\000\050\000\051)
+endobj
+1681 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.8) >>
+endobj
+1684 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0008\000\040\000p\000t\000r\000\050\000\051)
+endobj
+1685 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.9) >>
+endobj
+1688 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0009\000\040\000r\000e\000a\000d\000\050\000\051)
+endobj
+1689 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.10) >>
+endobj
+1692 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0001\0000\000\040\000s\000e\000t\000\137\000c\000o\000v\000a\000r\000i\000a\000n\000c\000e\000\050\000\051)
+endobj
+1693 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.11) >>
+endobj
+1696 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0001\0001\000\040\000s\000h\000a\0002\0005\0006\000\050\000\051)
+endobj
+1697 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.12) >>
+endobj
+1700 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0001\0002\000\040\000s\000i\000g\000n\000\050\000\051)
+endobj
+1701 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.13) >>
+endobj
+1704 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0001\0003\000\040\000u\000p\000d\000a\000t\000e\000\050\000\051)
+endobj
+1705 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.14) >>
+endobj
+1708 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0001\0004\000\040\000w\000j\000s\000o\000n\000\050\000\051)
+endobj
+1709 0 obj
+<< /S /GoTo /D (subsubsection.8.25.3.15) >>
+endobj
+1712 0 obj
+(\376\377\0008\000.\0002\0005\000.\0003\000.\0001\0005\000\040\000w\000r\000i\000t\000e\000\050\000\051)
+endobj
+1713 0 obj
+<< /S /GoTo /D (subsection.8.25.4) >>
+endobj
+1716 0 obj
+(\376\377\0008\000.\0002\0005\000.\0004\000\040\000M\000e\000m\000b\000e\000r\000\040\000D\000a\000t\000a\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1717 0 obj
+<< /S /GoTo /D (subsubsection.8.25.4.1) >>
+endobj
+1720 0 obj
+(\376\377\0008\000.\0002\0005\000.\0004\000.\0001\000\040\000c\000o\000v\000a\000r\000i\000a\000n\000c\000e)
+endobj
+1721 0 obj
+<< /S /GoTo /D (subsubsection.8.25.4.2) >>
+endobj
+1724 0 obj
+(\376\377\0008\000.\0002\0005\000.\0004\000.\0002\000\040\000h\000a\000s\000h)
+endobj
+1725 0 obj
+<< /S /GoTo /D (subsubsection.8.25.4.3) >>
+endobj
+1728 0 obj
+(\376\377\0008\000.\0002\0005\000.\0004\000.\0003\000\040\000n\000o\000n\000c\000e)
+endobj
+1729 0 obj
+<< /S /GoTo /D (chapter.9) >>
+endobj
+1732 0 obj
+(\376\377\0009\000\040\000F\000i\000l\000e\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1733 0 obj
+<< /S /GoTo /D (section.9.1) >>
+endobj
+1736 0 obj
+(\376\377\0009\000.\0001\000\040\000R\000E\000A\000D\000M\000E\000.\000m\000d\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1737 0 obj
+<< /S /GoTo /D (section.9.2) >>
+endobj
+1740 0 obj
+(\376\377\0009\000.\0002\000\040\000s\000r\000c\000/\000M\000Q\000T\000T\000/\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1741 0 obj
+<< /S /GoTo /D (subsection.9.2.1) >>
+endobj
+1744 0 obj
+(\376\377\0009\000.\0002\000.\0001\000\040\000T\000y\000p\000e\000d\000e\000f\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1745 0 obj
+<< /S /GoTo /D (subsubsection.9.2.1.1) >>
+endobj
+1748 0 obj
+(\376\377\0009\000.\0002\000.\0001\000.\0001\000\040\000j\000s\000o\000n)
+endobj
+1749 0 obj
+<< /S /GoTo /D (section.9.3) >>
+endobj
+1752 0 obj
+(\376\377\0009\000.\0003\000\040\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000.\000c\000p\000p)
+endobj
+1753 0 obj
+<< /S /GoTo /D (section.9.4) >>
+endobj
+1756 0 obj
+(\376\377\0009\000.\0004\000\040\000s\000r\000c\000/\000U\000D\000P\000/\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1757 0 obj
+<< /S /GoTo /D (subsection.9.4.1) >>
+endobj
+1760 0 obj
+(\376\377\0009\000.\0004\000.\0001\000\040\000T\000y\000p\000e\000d\000e\000f\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1761 0 obj
+<< /S /GoTo /D (subsubsection.9.4.1.1) >>
+endobj
+1764 0 obj
+(\376\377\0009\000.\0004\000.\0001\000.\0001\000\040\000j\000s\000o\000n)
+endobj
+1765 0 obj
+<< /S /GoTo /D (section.9.5) >>
+endobj
+1768 0 obj
+(\376\377\0009\000.\0005\000\040\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000.\000c\000p\000p)
+endobj
+1769 0 obj
+<< /S /GoTo /D (section.9.6) >>
+endobj
+1772 0 obj
+(\376\377\0009\000.\0006\000\040\000s\000r\000c\000/\000M\000Q\000T\000T\000/\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1773 0 obj
+<< /S /GoTo /D (section.9.7) >>
+endobj
+1776 0 obj
+(\376\377\0009\000.\0007\000\040\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000.\000h)
+endobj
+1777 0 obj
+<< /S /GoTo /D (section.9.8) >>
+endobj
+1780 0 obj
+(\376\377\0009\000.\0008\000\040\000s\000r\000c\000/\000U\000D\000P\000/\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1781 0 obj
+<< /S /GoTo /D (section.9.9) >>
+endobj
+1784 0 obj
+(\376\377\0009\000.\0009\000\040\000C\000o\000n\000f\000i\000g\000u\000r\000a\000t\000i\000o\000n\000.\000h)
+endobj
+1785 0 obj
+<< /S /GoTo /D (section.9.10) >>
+endobj
+1788 0 obj
+(\376\377\0009\000.\0001\0000\000\040\000s\000r\000c\000/\000M\000Q\000T\000T\000/\000c\000o\000n\000s\000t\000a\000n\000t\000s\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1789 0 obj
+<< /S /GoTo /D (subsection.9.10.1) >>
+endobj
+1792 0 obj
+(\376\377\0009\000.\0001\0000\000.\0001\000\040\000M\000a\000c\000r\000o\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1793 0 obj
+<< /S /GoTo /D (subsubsection.9.10.1.1) >>
+endobj
+1796 0 obj
+(\376\377\0009\000.\0001\0000\000.\0001\000.\0001\000\040\000\137\000W\000I\000N\0003\0002\000\137\000W\000I\000N\000N\000T)
+endobj
+1797 0 obj
+<< /S /GoTo /D (section.9.11) >>
+endobj
+1800 0 obj
+(\376\377\0009\000.\0001\0001\000\040\000c\000o\000n\000s\000t\000a\000n\000t\000s\000.\000h)
+endobj
+1801 0 obj
+<< /S /GoTo /D (section.9.12) >>
+endobj
+1804 0 obj
+(\376\377\0009\000.\0001\0002\000\040\000s\000r\000c\000/\000R\000E\000S\000T\000/\000c\000o\000n\000s\000t\000a\000n\000t\000s\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1805 0 obj
+<< /S /GoTo /D (subsection.9.12.1) >>
+endobj
+1808 0 obj
+(\376\377\0009\000.\0001\0002\000.\0001\000\040\000M\000a\000c\000r\000o\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1809 0 obj
+<< /S /GoTo /D (subsubsection.9.12.1.1) >>
+endobj
+1812 0 obj
+(\376\377\0009\000.\0001\0002\000.\0001\000.\0001\000\040\000\137\000W\000I\000N\0003\0002\000\137\000W\000I\000N\000N\000T)
+endobj
+1813 0 obj
+<< /S /GoTo /D (section.9.13) >>
+endobj
+1816 0 obj
+(\376\377\0009\000.\0001\0003\000\040\000c\000o\000n\000s\000t\000a\000n\000t\000s\000.\000h)
+endobj
+1817 0 obj
+<< /S /GoTo /D (section.9.14) >>
+endobj
+1820 0 obj
+(\376\377\0009\000.\0001\0004\000\040\000s\000r\000c\000/\000S\000I\000G\000N\000/\000c\000o\000n\000s\000t\000a\000n\000t\000s\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1821 0 obj
+<< /S /GoTo /D (subsection.9.14.1) >>
+endobj
+1824 0 obj
+(\376\377\0009\000.\0001\0004\000.\0001\000\040\000M\000a\000c\000r\000o\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1825 0 obj
+<< /S /GoTo /D (subsubsection.9.14.1.1) >>
+endobj
+1828 0 obj
+(\376\377\0009\000.\0001\0004\000.\0001\000.\0001\000\040\000\137\000W\000I\000N\0003\0002\000\137\000W\000I\000N\000N\000T)
+endobj
+1829 0 obj
+<< /S /GoTo /D (section.9.15) >>
+endobj
+1832 0 obj
+(\376\377\0009\000.\0001\0005\000\040\000c\000o\000n\000s\000t\000a\000n\000t\000s\000.\000h)
+endobj
+1833 0 obj
+<< /S /GoTo /D (section.9.16) >>
+endobj
+1836 0 obj
+(\376\377\0009\000.\0001\0006\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000c\000o\000n\000s\000t\000a\000n\000t\000s\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1837 0 obj
+<< /S /GoTo /D (subsection.9.16.1) >>
+endobj
+1840 0 obj
+(\376\377\0009\000.\0001\0006\000.\0001\000\040\000M\000a\000c\000r\000o\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1841 0 obj
+<< /S /GoTo /D (subsubsection.9.16.1.1) >>
+endobj
+1844 0 obj
+(\376\377\0009\000.\0001\0006\000.\0001\000.\0001\000\040\000\137\000W\000I\000N\0003\0002\000\137\000W\000I\000N\000N\000T)
+endobj
+1845 0 obj
+<< /S /GoTo /D (section.9.17) >>
+endobj
+1848 0 obj
+(\376\377\0009\000.\0001\0007\000\040\000c\000o\000n\000s\000t\000a\000n\000t\000s\000.\000h)
+endobj
+1849 0 obj
+<< /S /GoTo /D (section.9.18) >>
+endobj
+1852 0 obj
+(\376\377\0009\000.\0001\0008\000\040\000s\000r\000c\000/\000U\000D\000P\000/\000c\000o\000n\000s\000t\000a\000n\000t\000s\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1853 0 obj
+<< /S /GoTo /D (section.9.19) >>
+endobj
+1856 0 obj
+(\376\377\0009\000.\0001\0009\000\040\000c\000o\000n\000s\000t\000a\000n\000t\000s\000.\000h)
+endobj
+1857 0 obj
+<< /S /GoTo /D (section.9.20) >>
+endobj
+1860 0 obj
+(\376\377\0009\000.\0002\0000\000\040\000s\000r\000c\000/\000M\000Q\000T\000T\000/\000L\000o\000c\000a\000l\000E\000x\000c\000e\000p\000t\000i\000o\000n\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1861 0 obj
+<< /S /GoTo /D (section.9.21) >>
+endobj
+1864 0 obj
+(\376\377\0009\000.\0002\0001\000\040\000L\000o\000c\000a\000l\000E\000x\000c\000e\000p\000t\000i\000o\000n\000.\000c\000p\000p)
+endobj
+1865 0 obj
+<< /S /GoTo /D (section.9.22) >>
+endobj
+1868 0 obj
+(\376\377\0009\000.\0002\0002\000\040\000s\000r\000c\000/\000M\000Q\000T\000T\000/\000L\000o\000c\000a\000l\000E\000x\000c\000e\000p\000t\000i\000o\000n\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1869 0 obj
+<< /S /GoTo /D (section.9.23) >>
+endobj
+1872 0 obj
+(\376\377\0009\000.\0002\0003\000\040\000L\000o\000c\000a\000l\000E\000x\000c\000e\000p\000t\000i\000o\000n\000.\000h)
+endobj
+1873 0 obj
+<< /S /GoTo /D (section.9.24) >>
+endobj
+1876 0 obj
+(\376\377\0009\000.\0002\0004\000\040\000s\000r\000c\000/\000M\000Q\000T\000T\000/\000M\000e\000s\000s\000a\000g\000e\000C\000o\000n\000t\000a\000i\000n\000e\000r\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1877 0 obj
+<< /S /GoTo /D (section.9.25) >>
+endobj
+1880 0 obj
+(\376\377\0009\000.\0002\0005\000\040\000M\000e\000s\000s\000a\000g\000e\000C\000o\000n\000t\000a\000i\000n\000e\000r\000.\000h)
+endobj
+1881 0 obj
+<< /S /GoTo /D (section.9.26) >>
+endobj
+1884 0 obj
+(\376\377\0009\000.\0002\0006\000\040\000s\000r\000c\000/\000M\000Q\000T\000T\000/\000P\000u\000b\000l\000i\000s\000h\000e\000r\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1885 0 obj
+<< /S /GoTo /D (subsection.9.26.1) >>
+endobj
+1888 0 obj
+(\376\377\0009\000.\0002\0006\000.\0001\000\040\000M\000a\000c\000r\000o\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1889 0 obj
+<< /S /GoTo /D (subsubsection.9.26.1.1) >>
+endobj
+1892 0 obj
+(\376\377\0009\000.\0002\0006\000.\0001\000.\0001\000\040\000P\000A\000H\000O\000\137\000M\000Q\000T\000T\000\137\000I\000M\000P\000O\000R\000T\000S)
+endobj
+1893 0 obj
+<< /S /GoTo /D (section.9.27) >>
+endobj
+1896 0 obj
+(\376\377\0009\000.\0002\0007\000\040\000P\000u\000b\000l\000i\000s\000h\000e\000r\000.\000c\000p\000p)
+endobj
+1897 0 obj
+<< /S /GoTo /D (section.9.28) >>
+endobj
+1900 0 obj
+(\376\377\0009\000.\0002\0008\000\040\000s\000r\000c\000/\000M\000Q\000T\000T\000/\000P\000u\000b\000l\000i\000s\000h\000e\000r\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1901 0 obj
+<< /S /GoTo /D (section.9.29) >>
+endobj
+1904 0 obj
+(\376\377\0009\000.\0002\0009\000\040\000P\000u\000b\000l\000i\000s\000h\000e\000r\000.\000h)
+endobj
+1905 0 obj
+<< /S /GoTo /D (section.9.30) >>
+endobj
+1908 0 obj
+(\376\377\0009\000.\0003\0000\000\040\000s\000r\000c\000/\000R\000E\000S\000T\000/\000R\000e\000s\000o\000u\000r\000c\000e\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1909 0 obj
+<< /S /GoTo /D (section.9.31) >>
+endobj
+1912 0 obj
+(\376\377\0009\000.\0003\0001\000\040\000R\000e\000s\000o\000u\000r\000c\000e\000.\000c\000p\000p)
+endobj
+1913 0 obj
+<< /S /GoTo /D (section.9.32) >>
+endobj
+1916 0 obj
+(\376\377\0009\000.\0003\0002\000\040\000s\000r\000c\000/\000R\000E\000S\000T\000/\000R\000e\000s\000o\000u\000r\000c\000e\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1917 0 obj
+<< /S /GoTo /D (section.9.33) >>
+endobj
+1920 0 obj
+(\376\377\0009\000.\0003\0003\000\040\000R\000e\000s\000o\000u\000r\000c\000e\000.\000h)
+endobj
+1921 0 obj
+<< /S /GoTo /D (section.9.34) >>
+endobj
+1924 0 obj
+(\376\377\0009\000.\0003\0004\000\040\000s\000r\000c\000/\000R\000E\000S\000T\000/\000S\000e\000r\000v\000e\000r\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1925 0 obj
+<< /S /GoTo /D (section.9.35) >>
+endobj
+1928 0 obj
+(\376\377\0009\000.\0003\0005\000\040\000S\000e\000r\000v\000e\000r\000.\000c\000p\000p)
+endobj
+1929 0 obj
+<< /S /GoTo /D (section.9.36) >>
+endobj
+1932 0 obj
+(\376\377\0009\000.\0003\0006\000\040\000s\000r\000c\000/\000R\000E\000S\000T\000/\000S\000e\000r\000v\000e\000r\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1933 0 obj
+<< /S /GoTo /D (section.9.37) >>
+endobj
+1936 0 obj
+(\376\377\0009\000.\0003\0007\000\040\000S\000e\000r\000v\000e\000r\000.\000h)
+endobj
+1937 0 obj
+<< /S /GoTo /D (section.9.38) >>
+endobj
+1940 0 obj
+(\376\377\0009\000.\0003\0008\000\040\000s\000r\000c\000/\000R\000E\000S\000T\000/\000T\000y\000p\000e\000s\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1941 0 obj
+<< /S /GoTo /D (section.9.39) >>
+endobj
+1944 0 obj
+(\376\377\0009\000.\0003\0009\000\040\000T\000y\000p\000e\000s\000.\000h)
+endobj
+1945 0 obj
+<< /S /GoTo /D (section.9.40) >>
+endobj
+1948 0 obj
+(\376\377\0009\000.\0004\0000\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000T\000y\000p\000e\000s\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1949 0 obj
+<< /S /GoTo /D (section.9.41) >>
+endobj
+1952 0 obj
+(\376\377\0009\000.\0004\0001\000\040\000T\000y\000p\000e\000s\000.\000h)
+endobj
+1953 0 obj
+<< /S /GoTo /D (section.9.42) >>
+endobj
+1956 0 obj
+(\376\377\0009\000.\0004\0002\000\040\000s\000r\000c\000/\000S\000I\000G\000N\000/\000H\000a\000s\000h\000e\000r\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1957 0 obj
+<< /S /GoTo /D (section.9.43) >>
+endobj
+1960 0 obj
+(\376\377\0009\000.\0004\0003\000\040\000H\000a\000s\000h\000e\000r\000.\000c\000p\000p)
+endobj
+1961 0 obj
+<< /S /GoTo /D (section.9.44) >>
+endobj
+1964 0 obj
+(\376\377\0009\000.\0004\0004\000\040\000s\000r\000c\000/\000S\000I\000G\000N\000/\000H\000a\000s\000h\000e\000r\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1965 0 obj
+<< /S /GoTo /D (section.9.45) >>
+endobj
+1968 0 obj
+(\376\377\0009\000.\0004\0005\000\040\000H\000a\000s\000h\000e\000r\000.\000h)
+endobj
+1969 0 obj
+<< /S /GoTo /D (section.9.46) >>
+endobj
+1972 0 obj
+(\376\377\0009\000.\0004\0006\000\040\000s\000r\000c\000/\000S\000I\000G\000N\000/\000S\000i\000g\000n\000e\000r\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1973 0 obj
+<< /S /GoTo /D (section.9.47) >>
+endobj
+1976 0 obj
+(\376\377\0009\000.\0004\0007\000\040\000S\000i\000g\000n\000e\000r\000.\000c\000p\000p)
+endobj
+1977 0 obj
+<< /S /GoTo /D (section.9.48) >>
+endobj
+1980 0 obj
+(\376\377\0009\000.\0004\0008\000\040\000s\000r\000c\000/\000S\000I\000G\000N\000/\000S\000i\000g\000n\000e\000r\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+1981 0 obj
+<< /S /GoTo /D (subsection.9.48.1) >>
+endobj
+1984 0 obj
+(\376\377\0009\000.\0004\0008\000.\0001\000\040\000T\000y\000p\000e\000d\000e\000f\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+1985 0 obj
+<< /S /GoTo /D (subsubsection.9.48.1.1) >>
+endobj
+1988 0 obj
+(\376\377\0009\000.\0004\0008\000.\0001\000.\0001\000\040\000E\000V\000P\000\137\000M\000D\000\137\000C\000T\000X)
+endobj
+1989 0 obj
+<< /S /GoTo /D (subsubsection.9.48.1.2) >>
+endobj
+1992 0 obj
+(\376\377\0009\000.\0004\0008\000.\0001\000.\0002\000\040\000E\000V\000P\000\137\000P\000K\000E\000Y)
+endobj
+1993 0 obj
+<< /S /GoTo /D (section.9.49) >>
+endobj
+1996 0 obj
+(\376\377\0009\000.\0004\0009\000\040\000S\000i\000g\000n\000e\000r\000.\000h)
+endobj
+1997 0 obj
+<< /S /GoTo /D (section.9.50) >>
+endobj
+2000 0 obj
+(\376\377\0009\000.\0005\0000\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000C\000o\000n\000t\000a\000i\000n\000e\000r\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2001 0 obj
+<< /S /GoTo /D (section.9.51) >>
+endobj
+2004 0 obj
+(\376\377\0009\000.\0005\0001\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000.\000c\000p\000p)
+endobj
+2005 0 obj
+<< /S /GoTo /D (section.9.52) >>
+endobj
+2008 0 obj
+(\376\377\0009\000.\0005\0002\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000C\000o\000n\000t\000a\000i\000n\000e\000r\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2009 0 obj
+<< /S /GoTo /D (section.9.53) >>
+endobj
+2012 0 obj
+(\376\377\0009\000.\0005\0003\000\040\000C\000o\000n\000t\000a\000i\000n\000e\000r\000.\000h)
+endobj
+2013 0 obj
+<< /S /GoTo /D (section.9.54) >>
+endobj
+2016 0 obj
+(\376\377\0009\000.\0005\0004\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000E\000l\000e\000m\000e\000n\000t\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2017 0 obj
+<< /S /GoTo /D (section.9.55) >>
+endobj
+2020 0 obj
+(\376\377\0009\000.\0005\0005\000\040\000E\000l\000e\000m\000e\000n\000t\000.\000c\000p\000p)
+endobj
+2021 0 obj
+<< /S /GoTo /D (section.9.56) >>
+endobj
+2024 0 obj
+(\376\377\0009\000.\0005\0006\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000E\000l\000e\000m\000e\000n\000t\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2025 0 obj
+<< /S /GoTo /D (section.9.57) >>
+endobj
+2028 0 obj
+(\376\377\0009\000.\0005\0007\000\040\000E\000l\000e\000m\000e\000n\000t\000.\000h)
+endobj
+2029 0 obj
+<< /S /GoTo /D (section.9.58) >>
+endobj
+2032 0 obj
+(\376\377\0009\000.\0005\0008\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000E\000n\000u\000m\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2033 0 obj
+<< /S /GoTo /D (section.9.59) >>
+endobj
+2036 0 obj
+(\376\377\0009\000.\0005\0009\000\040\000E\000n\000u\000m\000.\000c\000p\000p)
+endobj
+2037 0 obj
+<< /S /GoTo /D (section.9.60) >>
+endobj
+2040 0 obj
+(\376\377\0009\000.\0006\0000\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000E\000n\000u\000m\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2041 0 obj
+<< /S /GoTo /D (section.9.61) >>
+endobj
+2044 0 obj
+(\376\377\0009\000.\0006\0001\000\040\000E\000n\000u\000m\000.\000h)
+endobj
+2045 0 obj
+<< /S /GoTo /D (section.9.62) >>
+endobj
+2048 0 obj
+(\376\377\0009\000.\0006\0002\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000F\000i\000g\000u\000r\000e\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2049 0 obj
+<< /S /GoTo /D (subsection.9.62.1) >>
+endobj
+2052 0 obj
+(\376\377\0009\000.\0006\0002\000.\0001\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+2053 0 obj
+<< /S /GoTo /D (subsubsection.9.62.1.1) >>
+endobj
+2056 0 obj
+(\376\377\0009\000.\0006\0002\000.\0001\000.\0001\000\040\000S\000O\000I\000L\000:\000:\000d\000a\000t\000a\000t\000y\000p\000e\000<\000\040\000S\000O\000I\000L\000:\000:\000E\000N\000U\000M\000\040\000>\000\050\000\051)
+endobj
+2057 0 obj
+<< /S /GoTo /D (subsubsection.9.62.1.2) >>
+endobj
+2060 0 obj
+(\376\377\0009\000.\0006\0002\000.\0001\000.\0002\000\040\000S\000O\000I\000L\000:\000:\000d\000a\000t\000a\000t\000y\000p\000e\000<\000\040\000S\000O\000I\000L\000:\000:\000T\000I\000M\000E\000\040\000>\000\050\000\051)
+endobj
+2061 0 obj
+<< /S /GoTo /D (subsubsection.9.62.1.3) >>
+endobj
+2064 0 obj
+(\376\377\0009\000.\0006\0002\000.\0001\000.\0003\000\040\000S\000O\000I\000L\000:\000:\000d\000a\000t\000a\000t\000y\000p\000e\000<\000\040\000s\000t\000d\000:\000:\000s\000t\000r\000i\000n\000g\000\040\000>\000\050\000\051)
+endobj
+2065 0 obj
+<< /S /GoTo /D (section.9.63) >>
+endobj
+2068 0 obj
+(\376\377\0009\000.\0006\0003\000\040\000F\000i\000g\000u\000r\000e\000.\000c\000p\000p)
+endobj
+2069 0 obj
+<< /S /GoTo /D (section.9.64) >>
+endobj
+2072 0 obj
+(\376\377\0009\000.\0006\0004\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000F\000i\000g\000u\000r\000e\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2073 0 obj
+<< /S /GoTo /D (section.9.65) >>
+endobj
+2076 0 obj
+(\376\377\0009\000.\0006\0005\000\040\000F\000i\000g\000u\000r\000e\000.\000h)
+endobj
+2077 0 obj
+<< /S /GoTo /D (section.9.66) >>
+endobj
+2080 0 obj
+(\376\377\0009\000.\0006\0006\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000F\000u\000n\000c\000t\000i\000o\000n\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2081 0 obj
+<< /S /GoTo /D (section.9.67) >>
+endobj
+2084 0 obj
+(\376\377\0009\000.\0006\0007\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000.\000c\000p\000p)
+endobj
+2085 0 obj
+<< /S /GoTo /D (section.9.68) >>
+endobj
+2088 0 obj
+(\376\377\0009\000.\0006\0008\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000F\000u\000n\000c\000t\000i\000o\000n\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2089 0 obj
+<< /S /GoTo /D (section.9.69) >>
+endobj
+2092 0 obj
+(\376\377\0009\000.\0006\0009\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000.\000h)
+endobj
+2093 0 obj
+<< /S /GoTo /D (section.9.70) >>
+endobj
+2096 0 obj
+(\376\377\0009\000.\0007\0000\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000j\000s\000o\000n\000\137\000h\000e\000l\000p\000e\000r\000s\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2097 0 obj
+<< /S /GoTo /D (subsection.9.70.1) >>
+endobj
+2100 0 obj
+(\376\377\0009\000.\0007\0000\000.\0001\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+2101 0 obj
+<< /S /GoTo /D (subsubsection.9.70.1.1) >>
+endobj
+2104 0 obj
+(\376\377\0009\000.\0007\0000\000.\0001\000.\0001\000\040\000S\000O\000I\000L\000:\000:\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000S\000O\000I\000L\000:\000:\000B\000O\000O\000L\000\040\000>\000\050\000\051)
+endobj
+2105 0 obj
+<< /S /GoTo /D (subsubsection.9.70.1.2) >>
+endobj
+2108 0 obj
+(\376\377\0009\000.\0007\0000\000.\0001\000.\0002\000\040\000S\000O\000I\000L\000:\000:\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000S\000O\000I\000L\000:\000:\000E\000N\000U\000M\000\040\000>\000\050\000\051)
+endobj
+2109 0 obj
+<< /S /GoTo /D (subsubsection.9.70.1.3) >>
+endobj
+2112 0 obj
+(\376\377\0009\000.\0007\0000\000.\0001\000.\0003\000\040\000S\000O\000I\000L\000:\000:\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000S\000O\000I\000L\000:\000:\000T\000I\000M\000E\000\040\000>\000\050\000\051)
+endobj
+2113 0 obj
+<< /S /GoTo /D (subsubsection.9.70.1.4) >>
+endobj
+2116 0 obj
+(\376\377\0009\000.\0007\0000\000.\0001\000.\0004\000\040\000S\000O\000I\000L\000:\000:\000t\000o\000\137\000j\000s\000o\000n\000<\000\040\000s\000t\000d\000:\000:\000s\000t\000r\000i\000n\000g\000\040\000>\000\050\000\051)
+endobj
+2117 0 obj
+<< /S /GoTo /D (subsubsection.9.70.1.5) >>
+endobj
+2120 0 obj
+(\376\377\0009\000.\0007\0000\000.\0001\000.\0005\000\040\000S\000O\000I\000L\000:\000:\000t\000o\000\137\000v\000a\000l\000u\000e\000<\000\040\000S\000O\000I\000L\000:\000:\000E\000N\000U\000M\000\040\000>\000\050\000\051)
+endobj
+2121 0 obj
+<< /S /GoTo /D (subsubsection.9.70.1.6) >>
+endobj
+2124 0 obj
+(\376\377\0009\000.\0007\0000\000.\0001\000.\0006\000\040\000S\000O\000I\000L\000:\000:\000t\000o\000\137\000v\000a\000l\000u\000e\000<\000\040\000S\000O\000I\000L\000:\000:\000T\000I\000M\000E\000\040\000>\000\050\000\051)
+endobj
+2125 0 obj
+<< /S /GoTo /D (subsubsection.9.70.1.7) >>
+endobj
+2128 0 obj
+(\376\377\0009\000.\0007\0000\000.\0001\000.\0007\000\040\000S\000O\000I\000L\000:\000:\000t\000o\000\137\000v\000a\000l\000u\000e\000<\000\040\000s\000t\000d\000:\000:\000s\000t\000r\000i\000n\000g\000\040\000>\000\050\000\051)
+endobj
+2129 0 obj
+<< /S /GoTo /D (section.9.71) >>
+endobj
+2132 0 obj
+(\376\377\0009\000.\0007\0001\000\040\000j\000s\000o\000n\000\137\000h\000e\000l\000p\000e\000r\000s\000.\000c\000p\000p)
+endobj
+2133 0 obj
+<< /S /GoTo /D (section.9.72) >>
+endobj
+2136 0 obj
+(\376\377\0009\000.\0007\0002\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000j\000s\000o\000n\000\137\000h\000e\000l\000p\000e\000r\000s\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2137 0 obj
+<< /S /GoTo /D (section.9.73) >>
+endobj
+2140 0 obj
+(\376\377\0009\000.\0007\0003\000\040\000j\000s\000o\000n\000\137\000h\000e\000l\000p\000e\000r\000s\000.\000h)
+endobj
+2141 0 obj
+<< /S /GoTo /D (section.9.74) >>
+endobj
+2144 0 obj
+(\376\377\0009\000.\0007\0004\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000O\000b\000j\000e\000c\000t\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2145 0 obj
+<< /S /GoTo /D (section.9.75) >>
+endobj
+2148 0 obj
+(\376\377\0009\000.\0007\0005\000\040\000O\000b\000j\000e\000c\000t\000.\000c\000p\000p)
+endobj
+2149 0 obj
+<< /S /GoTo /D (section.9.76) >>
+endobj
+2152 0 obj
+(\376\377\0009\000.\0007\0006\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000O\000b\000j\000e\000c\000t\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2153 0 obj
+<< /S /GoTo /D (section.9.77) >>
+endobj
+2156 0 obj
+(\376\377\0009\000.\0007\0007\000\040\000O\000b\000j\000e\000c\000t\000.\000h)
+endobj
+2157 0 obj
+<< /S /GoTo /D (section.9.78) >>
+endobj
+2160 0 obj
+(\376\377\0009\000.\0007\0008\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000P\000a\000r\000a\000m\000e\000t\000e\000r\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2161 0 obj
+<< /S /GoTo /D (section.9.79) >>
+endobj
+2164 0 obj
+(\376\377\0009\000.\0007\0009\000\040\000P\000a\000r\000a\000m\000e\000t\000e\000r\000.\000c\000p\000p)
+endobj
+2165 0 obj
+<< /S /GoTo /D (section.9.80) >>
+endobj
+2168 0 obj
+(\376\377\0009\000.\0008\0000\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000P\000a\000r\000a\000m\000e\000t\000e\000r\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2169 0 obj
+<< /S /GoTo /D (section.9.81) >>
+endobj
+2172 0 obj
+(\376\377\0009\000.\0008\0001\000\040\000P\000a\000r\000a\000m\000e\000t\000e\000r\000.\000h)
+endobj
+2173 0 obj
+<< /S /GoTo /D (section.9.82) >>
+endobj
+2176 0 obj
+(\376\377\0009\000.\0008\0002\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000R\000a\000n\000g\000e\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2177 0 obj
+<< /S /GoTo /D (section.9.83) >>
+endobj
+2180 0 obj
+(\376\377\0009\000.\0008\0003\000\040\000R\000a\000n\000g\000e\000.\000c\000p\000p)
+endobj
+2181 0 obj
+<< /S /GoTo /D (section.9.84) >>
+endobj
+2184 0 obj
+(\376\377\0009\000.\0008\0004\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000R\000a\000n\000g\000e\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2185 0 obj
+<< /S /GoTo /D (section.9.85) >>
+endobj
+2188 0 obj
+(\376\377\0009\000.\0008\0005\000\040\000R\000a\000n\000g\000e\000.\000h)
+endobj
+2189 0 obj
+<< /S /GoTo /D (section.9.86) >>
+endobj
+2192 0 obj
+(\376\377\0009\000.\0008\0006\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000T\000i\000m\000e\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2193 0 obj
+<< /S /GoTo /D (section.9.87) >>
+endobj
+2196 0 obj
+(\376\377\0009\000.\0008\0007\000\040\000T\000i\000m\000e\000.\000c\000p\000p)
+endobj
+2197 0 obj
+<< /S /GoTo /D (section.9.88) >>
+endobj
+2200 0 obj
+(\376\377\0009\000.\0008\0008\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000T\000i\000m\000e\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2201 0 obj
+<< /S /GoTo /D (section.9.89) >>
+endobj
+2204 0 obj
+(\376\377\0009\000.\0008\0009\000\040\000T\000i\000m\000e\000.\000h)
+endobj
+2205 0 obj
+<< /S /GoTo /D (section.9.90) >>
+endobj
+2208 0 obj
+(\376\377\0009\000.\0009\0000\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000T\000y\000p\000e\000s\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2209 0 obj
+<< /S /GoTo /D (section.9.91) >>
+endobj
+2212 0 obj
+(\376\377\0009\000.\0009\0001\000\040\000T\000y\000p\000e\000s\000.\000c\000p\000p)
+endobj
+2213 0 obj
+<< /S /GoTo /D (section.9.92) >>
+endobj
+2216 0 obj
+(\376\377\0009\000.\0009\0002\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000V\000a\000r\000i\000a\000b\000l\000e\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2217 0 obj
+<< /S /GoTo /D (section.9.93) >>
+endobj
+2220 0 obj
+(\376\377\0009\000.\0009\0003\000\040\000V\000a\000r\000i\000a\000b\000l\000e\000.\000c\000p\000p)
+endobj
+2221 0 obj
+<< /S /GoTo /D (section.9.94) >>
+endobj
+2224 0 obj
+(\376\377\0009\000.\0009\0004\000\040\000s\000r\000c\000/\000S\000O\000I\000L\000/\000V\000a\000r\000i\000a\000b\000l\000e\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2225 0 obj
+<< /S /GoTo /D (section.9.95) >>
+endobj
+2228 0 obj
+(\376\377\0009\000.\0009\0005\000\040\000V\000a\000r\000i\000a\000b\000l\000e\000.\000h)
+endobj
+2229 0 obj
+<< /S /GoTo /D (section.9.96) >>
+endobj
+2232 0 obj
+(\376\377\0009\000.\0009\0006\000\040\000s\000r\000c\000/\000T\000E\000S\000T\000/\000m\000a\000i\000n\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2233 0 obj
+<< /S /GoTo /D (subsection.9.96.1) >>
+endobj
+2236 0 obj
+(\376\377\0009\000.\0009\0006\000.\0001\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n)
+endobj
+2237 0 obj
+<< /S /GoTo /D (subsubsection.9.96.1.1) >>
+endobj
+2240 0 obj
+(\376\377\0009\000.\0009\0006\000.\0001\000.\0001\000\040\000m\000a\000i\000n\000\050\000\051)
+endobj
+2241 0 obj
+<< /S /GoTo /D (section.9.97) >>
+endobj
+2244 0 obj
+(\376\377\0009\000.\0009\0007\000\040\000m\000a\000i\000n\000.\000c\000p\000p)
+endobj
+2245 0 obj
+<< /S /GoTo /D (section.9.98) >>
+endobj
+2248 0 obj
+(\376\377\0009\000.\0009\0008\000\040\000s\000r\000c\000/\000U\000D\000P\000/\000B\000r\000o\000a\000d\000c\000a\000s\000t\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2249 0 obj
+<< /S /GoTo /D (section.9.99) >>
+endobj
+2252 0 obj
+(\376\377\0009\000.\0009\0009\000\040\000B\000r\000o\000a\000d\000c\000a\000s\000t\000.\000c\000p\000p)
+endobj
+2253 0 obj
+<< /S /GoTo /D (section.9.100) >>
+endobj
+2256 0 obj
+(\376\377\0009\000.\0001\0000\0000\000\040\000s\000r\000c\000/\000U\000D\000P\000/\000B\000r\000o\000a\000d\000c\000a\000s\000t\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2257 0 obj
+<< /S /GoTo /D (section.9.101) >>
+endobj
+2260 0 obj
+(\376\377\0009\000.\0001\0000\0001\000\040\000B\000r\000o\000a\000d\000c\000a\000s\000t\000.\000h)
+endobj
+2261 0 obj
+<< /S /GoTo /D (section.9.102) >>
+endobj
+2264 0 obj
+(\376\377\0009\000.\0001\0000\0002\000\040\000s\000r\000c\000/\000U\000D\000P\000/\000E\000x\000c\000e\000p\000t\000i\000o\000n\000.\000c\000p\000p\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2265 0 obj
+<< /S /GoTo /D (section.9.103) >>
+endobj
+2268 0 obj
+(\376\377\0009\000.\0001\0000\0003\000\040\000E\000x\000c\000e\000p\000t\000i\000o\000n\000.\000c\000p\000p)
+endobj
+2269 0 obj
+<< /S /GoTo /D (section.9.104) >>
+endobj
+2272 0 obj
+(\376\377\0009\000.\0001\0000\0004\000\040\000s\000r\000c\000/\000U\000D\000P\000/\000E\000x\000c\000e\000p\000t\000i\000o\000n\000.\000h\000\040\000F\000i\000l\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e)
+endobj
+2273 0 obj
+<< /S /GoTo /D (section.9.105) >>
+endobj
+2276 0 obj
+(\376\377\0009\000.\0001\0000\0005\000\040\000E\000x\000c\000e\000p\000t\000i\000o\000n\000.\000h)
+endobj
+2277 0 obj
+<< /S /GoTo /D (section*.138) >>
+endobj
+2280 0 obj
+(\376\377\000I\000n\000d\000e\000x)
+endobj
+2281 0 obj
+<< /S /GoTo /D [2282 0 R /Fit] >>
+endobj
+2284 0 obj
+<<
+/Length 146       
+/Filter /FlateDecode
+>>
+stream
+xڅ�?�0��Ƅ��r�4�꿢f�Jc�
+�`����N�x�{�]E�:U��X�h����nF���cpi����'m���kݧcQ���vQF"�&�i���.O��-��;��5��K�>����c�Ja1�,�?�R�a�.
+endstream
+endobj
+2282 0 obj
+<<
+/Type /Page
+/Contents 2284 0 R
+/Resources 2283 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2287 0 R
+>>
+endobj
+2285 0 obj
+<<
+/D [2282 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+2283 0 obj
+<<
+/Font << /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2290 0 obj
+<<
+/Length 19        
+/Filter /FlateDecode
+>>
+stream
+x�3PHW0Pp�2�A�c(�
+endstream
+endobj
+2289 0 obj
+<<
+/Type /Page
+/Contents 2290 0 R
+/Resources 2288 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2287 0 R
+>>
+endobj
+2288 0 obj
+<<
+/ProcSet [ /PDF ]
+>>
+endobj
+2332 0 obj
+<<
+/Length 1131      
+/Filter /FlateDecode
+>>
+stream
+x��[s�8���z�ӱ���ה$%��6�Ӈl�FM<�`�M�}�����ٝEO�aI����#�<�[a���!(�N0���@�A8���޴.��s����C�x�}�@<n=|G`����i����_��rF��Z_ZHw]�3{�
�W
��"0Df0�q����m���Ç��LÀ1r�}Cqu���W�n��2J�?����뛡�#���8���h2�4/.d2�O�����׆��9/6�ّ�����Ɓ@{��
+�U��*k�Le:�i��l�
+,��
�G%��P�[�'��%�)G�k����-kl�-�q��F��K����|��eܭ8���+��t$�sư�L�X��$��83��c�g��>����/���I����H5�cv���x���?�"�Z�,��Ia��Z�oSz:�I�X�]�G,�k#н��V��b��@�i�5���+�����`���z���V'���h,�id��R�
+/��N�5u�d ;]����+0�Q������*�9S^OP;^L�OI��4A�T>��,[h1�h?-B��.3�`����3�K����m=��4�.5��:��,�
+J��I�����=ia�2�~\�{��VW�H֢�6�EZ��V���@t��}wh$G^e�Й��E���$=L?���g���V��^.+9�i���$�lp��Z��+����UF�:�C��[�(��zԛb�{e�׊�deYi`Cdc�Q�f��N�O�ay��2��^�ő����D��,g�Y�(��43Jg�I���F���Mi��@M��l�–��v9��Ov�6��K�O)�l:x�:l������EYY}��p�C��{ݫ����d_A�w��#�/���٫KO�~o"���y�ؑY<SM�v2��<E6Ԕ��g[��[%��Đ~��ߖd��!ӽ���ӽ��
��^�J4��֎&E���^�^�f��V����i�e��]yi��8�{y��_�փ�j��9A��O(�}�w]f[�Ozn�T/T�`���M9NW�ݗ����j������#��;�^�\hR�a�Q\������l��
ơP��Ůe*gQn�ο/d��-����G5HU���C�'�F
+endstream
+endobj
+2331 0 obj
+<<
+/Type /Page
+/Contents 2332 0 R
+/Resources 2330 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2287 0 R
+/Annots [ 2291 0 R 2292 0 R 2293 0 R 2294 0 R 2295 0 R 2296 0 R 2297 0 R 2298 0 R 2299 0 R 2300 0 R 2301 0 R 2302 0 R 2303 0 R 2304 0 R 2305 0 R 2306 0 R 2307 0 R 2308 0 R 2309 0 R 2310 0 R 2311 0 R 2312 0 R 2313 0 R 2314 0 R 2315 0 R 2316 0 R 2317 0 R 2318 0 R 2319 0 R 2320 0 R 2321 0 R 2322 0 R 2323 0 R 2324 0 R 2325 0 R 2326 0 R 2327 0 R 2328 0 R ]
+>>
+endobj
+2291 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 759.953 119.706 768.598]
+/A << /S /GoTo /D (chapter.1) >>
+>>
+endobj
+2292 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 741.533 178.509 751.801]
+/A << /S /GoTo /D (section.1.1) >>
+>>
+endobj
+2293 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 724.888 189.457 735.157]
+/A << /S /GoTo /D (subsection.1.1.1) >>
+>>
+endobj
+2294 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 710.028 168.377 718.512]
+/A << /S /GoTo /D (subsection.1.1.2) >>
+>>
+endobj
+2295 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 693.303 153.484 701.868]
+/A << /S /GoTo /D (subsection.1.1.3) >>
+>>
+endobj
+2296 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 674.955 297.024 685.429]
+/A << /S /GoTo /D (section.1.2) >>
+>>
+endobj
+2297 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 658.203 215.109 668.579]
+/A << /S /GoTo /D (section.1.3) >>
+>>
+endobj
+2298 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 633.481 118.971 642.126]
+/A << /S /GoTo /D (chapter.2) >>
+>>
+endobj
+2299 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 605.132 154.952 615.329]
+/A << /S /GoTo /D (chapter.3) >>
+>>
+endobj
+2300 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 588.456 166.037 598.725]
+/A << /S /GoTo /D (section.3.1) >>
+>>
+endobj
+2301 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 563.627 156.18 572.272]
+/A << /S /GoTo /D (chapter.4) >>
+>>
+endobj
+2302 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 545.207 164.665 555.682]
+/A << /S /GoTo /D (section.4.1) >>
+>>
+endobj
+2303 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 520.378 129.04 529.023]
+/A << /S /GoTo /D (chapter.5) >>
+>>
+endobj
+2304 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 503.661 140.618 512.432]
+/A << /S /GoTo /D (section.5.1) >>
+>>
+endobj
+2305 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 477.128 120.567 485.774]
+/A << /S /GoTo /D (chapter.6) >>
+>>
+endobj
+2306 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 460.412 132.647 468.977]
+/A << /S /GoTo /D (section.6.1) >>
+>>
+endobj
+2307 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 432.135 196.923 442.525]
+/A << /S /GoTo /D (chapter.7) >>
+>>
+endobj
+2308 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 415.459 219.081 425.934]
+/A << /S /GoTo /D (section.7.1) >>
+>>
+endobj
+2309 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 398.815 226.254 409.289]
+/A << /S /GoTo /D (subsection.7.1.1) >>
+>>
+endobj
+2310 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 383.874 190.432 392.439]
+/A << /S /GoTo /D (subsubsection.7.1.1.1) >>
+>>
+endobj
+2311 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 367.229 205.88 375.794]
+/A << /S /GoTo /D (subsubsection.7.1.1.2) >>
+>>
+endobj
+2312 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 348.881 204.885 359.149]
+/A << /S /GoTo /D (subsubsection.7.1.1.3) >>
+>>
+endobj
+2313 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 332.237 211.861 342.505]
+/A << /S /GoTo /D (subsubsection.7.1.1.4) >>
+>>
+endobj
+2314 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 317.296 196.914 326.067]
+/A << /S /GoTo /D (subsubsection.7.1.1.5) >>
+>>
+endobj
+2315 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 298.948 221.072 309.422]
+/A << /S /GoTo /D (section.7.2) >>
+>>
+endobj
+2316 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 282.303 213.11 292.778]
+/A << /S /GoTo /D (section.7.3) >>
+>>
+endobj
+2317 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 265.659 217.593 276.133]
+/A << /S /GoTo /D (section.7.4) >>
+>>
+endobj
+2318 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 249.014 216.104 259.489]
+/A << /S /GoTo /D (section.7.5) >>
+>>
+endobj
+2319 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 232.37 212.5 242.638]
+/A << /S /GoTo /D (subsection.7.5.1) >>
+>>
+endobj
+2320 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 215.725 226.254 226.2]
+/A << /S /GoTo /D (subsection.7.5.2) >>
+>>
+endobj
+2321 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 200.784 196.412 209.555]
+/A << /S /GoTo /D (subsubsection.7.5.2.1) >>
+>>
+endobj
+2322 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 184.14 222.306 192.91]
+/A << /S /GoTo /D (subsubsection.7.5.2.2) >>
+>>
+endobj
+2323 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 167.495 208.364 176.266]
+/A << /S /GoTo /D (subsubsection.7.5.2.3) >>
+>>
+endobj
+2324 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 150.85 197.892 159.415]
+/A << /S /GoTo /D (subsubsection.7.5.2.4) >>
+>>
+endobj
+2325 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 134.206 185.939 142.771]
+/A << /S /GoTo /D (subsubsection.7.5.2.5) >>
+>>
+endobj
+2326 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 117.561 205.369 126.332]
+/A << /S /GoTo /D (subsubsection.7.5.2.6) >>
+>>
+endobj
+2327 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 100.917 192.915 109.482]
+/A << /S /GoTo /D (subsubsection.7.5.2.7) >>
+>>
+endobj
+2328 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 84.272 229.32 92.837]
+/A << /S /GoTo /D (subsection.7.5.3) >>
+>>
+endobj
+2334 0 obj
+<<
+/D [2331 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+2330 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2378 0 obj
+<<
+/Length 1398      
+/Filter /FlateDecode
+>>
+stream
+x��]s�8����ځ�HG�n/�4�v�f��W�L�7��,��Ϳ_�m@6�Lb|��YhΣ�X���<�}l�v'�B{�)����)J���2@$�}�9�������̞F=�l�5� �ިquM����G	7��w�r�	���C�{�M�:�gr�t�-�O�%���$#4�"H8a�6(����=�R���-F�~�w�Fʚ��F�����MumC*�@�8�#��m&��4ְ���'�����@�AIA8E{��_��()���a8tt�ܤ��9�QD�e�,�ˆ��ڡ�(�"�f��EV<��g�-�͡�30��tU��b�
+�1��.��ƑK�����/��
��(]r�2�Jq��*�)@�X�UQ��,���O_:�_\8:�yg�`�J񪬓����.)���u?]|pt&��ʷo^~���	�%?]8�i��t���mj�s�d�B8$�.[y�՞q)��8�-F�����(�dEP��̏��d4sxL���p�R�&��<�L�߲(���^�oS�Bb���3X��Yʊ��jUW���7M�qf�GU�Y{D�:u�Wb풄]P��\0p<ű�-�(p��D�XK�>YŴX�^cWw�*�@�d�Qy�G�X��S��h�q�|zy���}��p8Q�{c�Z츰�38���aW�oe�W�H���̩;]�r}����oP~��[1p�u�h���V[�D��aU��0׷��w���?-��?�engВօ�.w~�6#�6DP�ײ�A#?��/G@�1����/P�c��c^�UN�H�v�^
+�RK�u�ʣ�k,�\��(�m�=�Z�F�s0��t{ah^����Z����m�΢d��˭�Z!�r$ZK�U)�_�6ԩ��G#G
Dol/J�������?
+��~/��~~�8m�`�6��U��*��P�_{���&�N�6�w|%�J���C:����l�#?���c��ղ$����+�h�D򵔬���$�tN'�����hc<�sA�Q���x���53��<��Y��a�O�M{I����n���km��Ӎ��>`�>�W�Yo�Ye��_�6?��]�V#�<�qΈV|s"C:���#�+���]B횶��������N�eފh;$��U�t��䰩��F�F�A�4�g��"_lO!B��������K�߿�
6|�S��:�<3�,����wR��M��mt�'�f;�k����I0
+[v�����mSE�=&s��N�q�iHO�Q��Q�-\=��n�;����]Hm��G뾞�yT��Ŕk��s�@�f_6���$��ljR8��G����`%�q�\?_�H(g��zE�����b�~� hU"�H����`L�(u�����ܱ���Ύ�6�����s��
+endstream
+endobj
+2377 0 obj
+<<
+/Type /Page
+/Contents 2378 0 R
+/Resources 2376 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2287 0 R
+/Annots [ 2329 0 R 2335 0 R 2336 0 R 2337 0 R 2338 0 R 2339 0 R 2340 0 R 2341 0 R 2342 0 R 2343 0 R 2344 0 R 2345 0 R 2346 0 R 2347 0 R 2348 0 R 2349 0 R 2350 0 R 2351 0 R 2352 0 R 2353 0 R 2354 0 R 2355 0 R 2356 0 R 2357 0 R 2358 0 R 2359 0 R 2360 0 R 2361 0 R 2362 0 R 2363 0 R 2364 0 R 2365 0 R 2366 0 R 2367 0 R 2368 0 R 2369 0 R 2370 0 R 2371 0 R 2372 0 R 2373 0 R 2374 0 R ]
+>>
+endobj
+2329 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 758.177 211.861 768.652]
+/A << /S /GoTo /D (subsubsection.7.5.3.1) >>
+>>
+endobj
+2335 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 741.533 249.289 752.007]
+/A << /S /GoTo /D (subsubsection.7.5.3.2) >>
+>>
+endobj
+2336 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 724.888 259.08 735.363]
+/A << /S /GoTo /D (subsubsection.7.5.3.3) >>
+>>
+endobj
+2337 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 708.244 241.811 718.718]
+/A << /S /GoTo /D (subsubsection.7.5.3.4) >>
+>>
+endobj
+2338 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 691.599 259.26 702.074]
+/A << /S /GoTo /D (subsubsection.7.5.3.5) >>
+>>
+endobj
+2339 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 674.955 284.159 685.429]
+/A << /S /GoTo /D (subsubsection.7.5.3.6) >>
+>>
+endobj
+2340 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 658.31 279.183 668.785]
+/A << /S /GoTo /D (subsubsection.7.5.3.7) >>
+>>
+endobj
+2341 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 641.558 271.346 652.14]
+/A << /S /GoTo /D (subsubsection.7.5.3.8) >>
+>>
+endobj
+2342 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 625.021 223.723 635.496]
+/A << /S /GoTo /D (subsubsection.7.5.3.9) >>
+>>
+endobj
+2343 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 608.377 228.737 618.851]
+/A << /S /GoTo /D (subsubsection.7.5.3.10) >>
+>>
+endobj
+2344 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 591.732 228.737 602.207]
+/A << /S /GoTo /D (subsubsection.7.5.3.11) >>
+>>
+endobj
+2345 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 575.088 211.359 585.562]
+/A << /S /GoTo /D (subsubsection.7.5.3.12) >>
+>>
+endobj
+2346 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 558.443 258.578 568.918]
+/A << /S /GoTo /D (subsubsection.7.5.3.13) >>
+>>
+endobj
+2347 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 541.799 241.309 552.273]
+/A << /S /GoTo /D (subsubsection.7.5.3.14) >>
+>>
+endobj
+2348 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 525.154 258.758 535.629]
+/A << /S /GoTo /D (subsubsection.7.5.3.15) >>
+>>
+endobj
+2349 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 508.51 282.177 518.984]
+/A << /S /GoTo /D (subsubsection.7.5.3.16) >>
+>>
+endobj
+2350 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 491.865 283.657 502.34]
+/A << /S /GoTo /D (subsubsection.7.5.3.17) >>
+>>
+endobj
+2351 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 475.221 278.68 485.695]
+/A << /S /GoTo /D (subsubsection.7.5.3.18) >>
+>>
+endobj
+2352 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 458.468 270.844 469.051]
+/A << /S /GoTo /D (subsubsection.7.5.3.19) >>
+>>
+endobj
+2353 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 441.931 216.12 452.406]
+/A << /S /GoTo /D (subsubsection.7.5.3.20) >>
+>>
+endobj
+2354 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 425.287 253.548 435.761]
+/A << /S /GoTo /D (subsubsection.7.5.3.21) >>
+>>
+endobj
+2355 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 408.642 263.339 419.117]
+/A << /S /GoTo /D (subsubsection.7.5.3.22) >>
+>>
+endobj
+2356 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 391.998 246.07 402.472]
+/A << /S /GoTo /D (subsubsection.7.5.3.23) >>
+>>
+endobj
+2357 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 375.353 263.519 385.828]
+/A << /S /GoTo /D (subsubsection.7.5.3.24) >>
+>>
+endobj
+2358 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 358.709 288.418 369.183]
+/A << /S /GoTo /D (subsubsection.7.5.3.25) >>
+>>
+endobj
+2359 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 342.064 283.442 352.539]
+/A << /S /GoTo /D (subsubsection.7.5.3.26) >>
+>>
+endobj
+2360 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 325.312 275.605 335.894]
+/A << /S /GoTo /D (subsubsection.7.5.3.27) >>
+>>
+endobj
+2361 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 308.775 214.598 319.25]
+/A << /S /GoTo /D (section.7.6) >>
+>>
+endobj
+2362 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 283.946 171.011 292.591]
+/A << /S /GoTo /D (chapter.8) >>
+>>
+endobj
+2363 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 267.23 234.53 276.001]
+/A << /S /GoTo /D (section.8.1) >>
+>>
+endobj
+2364 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 248.881 212.5 259.15]
+/A << /S /GoTo /D (subsection.8.1.1) >>
+>>
+endobj
+2365 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 233.941 293.859 242.712]
+/A << /S /GoTo /D (subsection.8.1.2) >>
+>>
+endobj
+2366 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 215.592 217.832 226.067]
+/A << /S /GoTo /D (subsubsection.8.1.2.1) >>
+>>
+endobj
+2367 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 198.948 225.581 209.422]
+/A << /S /GoTo /D (subsubsection.8.1.2.2) >>
+>>
+endobj
+2368 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 184.007 264.692 192.572]
+/A << /S /GoTo /D (subsection.8.1.3) >>
+>>
+endobj
+2369 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 165.659 218.334 176.133]
+/A << /S /GoTo /D (subsubsection.8.1.3.1) >>
+>>
+endobj
+2370 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 148.907 214.344 159.489]
+/A << /S /GoTo /D (subsubsection.8.1.3.2) >>
+>>
+endobj
+2371 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 132.37 232.914 142.844]
+/A << /S /GoTo /D (subsubsection.8.1.3.3) >>
+>>
+endobj
+2372 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 115.725 223.65 126.2]
+/A << /S /GoTo /D (subsubsection.8.1.3.4) >>
+>>
+endobj
+2373 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 99.081 223.65 109.555]
+/A << /S /GoTo /D (subsubsection.8.1.3.5) >>
+>>
+endobj
+2374 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 82.436 218.836 92.911]
+/A << /S /GoTo /D (subsubsection.8.1.3.6) >>
+>>
+endobj
+2376 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F25 2380 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2426 0 obj
+<<
+/Length 1246      
+/Filter /FlateDecode
+>>
+stream
+x��]s�6������L��Ӓvv���f�;���K����x
+6Ŧ����H�M�	춋2��G��}}t�t@`x���߹�fH������8�� ��!���qܻ����������@ (��)�$D���C��{� U|^�9�S�5�c��ܛ�qf#7�Gw9�V.Gr(�y��CT^���wA��������m��"DF�Y�n��ib_~;��~�=��z��H/?Ky��Bbх����O��?04f�u)q�~= *����?`|EbK�J�a<���Y�̐�O����2��G����.��qgk�����YnQϣ<�ٿ������U�':��&a8��;K���n䕕�-����b��k΀�J \D ��bʌ��_��
�[�X�ӽ�/0Vf"!
�X��z�G��@=6�jq��G�%?s�q��QdOڀ,�0I�;g��3�@ߧ/(P�ӆ����GO����$Z�;O~��9�~פ@�Ia�ҙ]V�m�r<oo�P�6�{�*��C|��٥��]�J�G]��y\��(�� �珩3�����/o���2���:L�β�R�|d8�i݌�I���� �':��l�06?�ߖ5]T}L�|�����tv�r��A]���p��3U��[Ϲ�9he��r���`��a���L�I鹶�\��کa��(��ٰ��NJ�zX�����BݓW�?���AO]*\s6U��I쎑E?KӼ��������]՗e��	�&?�M���p�-W2x7	'
[��#~��]ah�j�v�P_�@؛���]I��
+�}�FE�ck�z���G]A-w.�r�v�ڒ�s��W��A���n��z��u��k�&]��T���=l��b�������<����?]�<Ĺv�Ô=��;~�l}�n-�o�9���o��j�jݡ��[w����o��z�;�e���
m�2�vzX�7�c��ě7�|�s�թ�����uY���)�3�H%		[���
1#s)ϰ���v�/�q�00�P�U|{�w�J�l�CO��0�Tόȓ{D��)�1R�
+`��#�1|p�|����ݔ�6��mdz"/r�+uݗ�"yFii+ALla&m�
����$�Kr4I6��lI���%����
+�~��.��Xi��`�~��Y���|��
��j�(z�v�p`W���%Eʃ���d���9D�j����;�$"`��n�b���U�6����\	p_�(PQ'}Y��E�z)پ��
+u�
+endstream
+endobj
+2425 0 obj
+<<
+/Type /Page
+/Contents 2426 0 R
+/Resources 2424 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2287 0 R
+/Annots [ 2375 0 R 2382 0 R 2383 0 R 2384 0 R 2385 0 R 2386 0 R 2387 0 R 2388 0 R 2389 0 R 2390 0 R 2391 0 R 2392 0 R 2393 0 R 2394 0 R 2395 0 R 2396 0 R 2397 0 R 2398 0 R 2399 0 R 2400 0 R 2401 0 R 2402 0 R 2403 0 R 2404 0 R 2405 0 R 2406 0 R 2407 0 R 2408 0 R 2409 0 R 2410 0 R 2411 0 R 2412 0 R 2413 0 R 2414 0 R 2415 0 R 2416 0 R 2417 0 R 2418 0 R 2419 0 R 2420 0 R 2421 0 R 2422 0 R ]
+>>
+endobj
+2375 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 758.07 253.87 768.652]
+/A << /S /GoTo /D (section.8.2) >>
+>>
+endobj
+2382 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 741.533 212.5 751.801]
+/A << /S /GoTo /D (subsection.8.2.1) >>
+>>
+endobj
+2383 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 726.592 293.859 735.363]
+/A << /S /GoTo /D (subsection.8.2.2) >>
+>>
+endobj
+2384 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 708.136 257.444 718.718]
+/A << /S /GoTo /D (subsubsection.8.2.2.1) >>
+>>
+endobj
+2385 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 691.492 257.444 702.074]
+/A << /S /GoTo /D (subsubsection.8.2.2.2) >>
+>>
+endobj
+2386 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 674.847 238.447 685.429]
+/A << /S /GoTo /D (subsubsection.8.2.2.3) >>
+>>
+endobj
+2387 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 660.014 264.692 668.579]
+/A << /S /GoTo /D (subsection.8.2.3) >>
+>>
+endobj
+2388 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 641.666 187.562 652.14]
+/A << /S /GoTo /D (subsubsection.8.2.3.1) >>
+>>
+endobj
+2389 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 626.725 249.243 635.29]
+/A << /S /GoTo /D (subsection.8.2.4) >>
+>>
+endobj
+2390 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 608.377 249.725 618.851]
+/A << /S /GoTo /D (subsubsection.8.2.4.1) >>
+>>
+endobj
+2391 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 592.544 228.305 602]
+/A << /S /GoTo /D (subsubsection.8.2.4.2) >>
+>>
+endobj
+2392 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 575.899 258.709 585.356]
+/A << /S /GoTo /D (subsubsection.8.2.4.3) >>
+>>
+endobj
+2393 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 560.147 188.441 568.711]
+/A << /S /GoTo /D (subsubsection.8.2.4.4) >>
+>>
+endobj
+2394 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 541.799 213.95 552.067]
+/A << /S /GoTo /D (subsubsection.8.2.4.5) >>
+>>
+endobj
+2395 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 525.154 229.022 535.422]
+/A << /S /GoTo /D (subsubsection.8.2.4.6) >>
+>>
+endobj
+2396 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 508.51 209.503 518.778]
+/A << /S /GoTo /D (subsubsection.8.2.4.7) >>
+>>
+endobj
+2397 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 491.865 188.943 502.133]
+/A << /S /GoTo /D (subsubsection.8.2.4.8) >>
+>>
+endobj
+2398 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 475.221 187.302 485.489]
+/A << /S /GoTo /D (subsubsection.8.2.4.9) >>
+>>
+endobj
+2399 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 460.28 191.929 468.844]
+/A << /S /GoTo /D (subsubsection.8.2.4.10) >>
+>>
+endobj
+2400 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 443.635 187.437 452.2]
+/A << /S /GoTo /D (subsubsection.8.2.4.11) >>
+>>
+endobj
+2401 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 426.991 216.568 435.555]
+/A << /S /GoTo /D (subsubsection.8.2.4.12) >>
+>>
+endobj
+2402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 408.642 197.811 419.117]
+/A << /S /GoTo /D (subsubsection.8.2.4.13) >>
+>>
+endobj
+2403 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 393.701 218.388 402.266]
+/A << /S /GoTo /D (subsubsection.8.2.4.14) >>
+>>
+endobj
+2404 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 375.246 247.396 385.828]
+/A << /S /GoTo /D (section.8.3) >>
+>>
+endobj
+2405 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 358.709 212.5 368.977]
+/A << /S /GoTo /D (subsection.8.3.1) >>
+>>
+endobj
+2406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 342.064 261.626 352.539]
+/A << /S /GoTo /D (subsection.8.3.2) >>
+>>
+endobj
+2407 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 327.123 199.308 335.688]
+/A << /S /GoTo /D (subsubsection.8.3.2.1) >>
+>>
+endobj
+2408 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 310.479 293.859 319.25]
+/A << /S /GoTo /D (subsection.8.3.3) >>
+>>
+endobj
+2409 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 292.023 257.444 302.605]
+/A << /S /GoTo /D (subsubsection.8.3.3.1) >>
+>>
+endobj
+2410 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 275.379 257.444 285.961]
+/A << /S /GoTo /D (subsubsection.8.3.3.2) >>
+>>
+endobj
+2411 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 258.734 238.447 269.316]
+/A << /S /GoTo /D (subsubsection.8.3.3.3) >>
+>>
+endobj
+2412 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 243.901 249.243 252.465]
+/A << /S /GoTo /D (subsection.8.3.4) >>
+>>
+endobj
+2413 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 227.256 196.905 235.821]
+/A << /S /GoTo /D (subsubsection.8.3.4.1) >>
+>>
+endobj
+2414 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 208.908 317.148 219.383]
+/A << /S /GoTo /D (section.8.4) >>
+>>
+endobj
+2415 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 192.264 212.5 202.532]
+/A << /S /GoTo /D (subsection.8.4.1) >>
+>>
+endobj
+2416 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 177.323 293.859 186.094]
+/A << /S /GoTo /D (subsection.8.4.2) >>
+>>
+endobj
+2417 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 158.975 243.08 169.449]
+/A << /S /GoTo /D (subsubsection.8.4.2.1) >>
+>>
+endobj
+2418 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 142.33 243.08 152.805]
+/A << /S /GoTo /D (subsubsection.8.4.2.2) >>
+>>
+endobj
+2419 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 125.686 243.08 136.16]
+/A << /S /GoTo /D (subsubsection.8.4.2.3) >>
+>>
+endobj
+2420 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 110.745 264.692 119.309]
+/A << /S /GoTo /D (subsection.8.4.3) >>
+>>
+endobj
+2421 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 92.396 184.944 102.871]
+/A << /S /GoTo /D (subsubsection.8.4.3.1) >>
+>>
+endobj
+2422 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 75.644 228.529 86.227]
+/A << /S /GoTo /D (subsubsection.8.4.3.2) >>
+>>
+endobj
+2424 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F25 2380 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2471 0 obj
+<<
+/Length 1085      
+/Filter /FlateDecode
+>>
+stream
+x��[Io�F��W̩����K��$4(���#O\��T�����(�D��-�u5��4��o{�1�A��<��s�4)}B
+��)CA4�F����r�f�j4�{@�e��2�AS�����%F��73}�WNg�<F��py�b��M���a�=���HI�z
� �J'�U<\��,��#��VwA�TfA(�l�>=���|�y	�:�	��:�@}vk�Kԣl6_^vN2�6*��I�,��_�cV,jp���ښv�&�GL��=l�R1���9g��,$b8���?�;�Wד�M��,I��׆�X�ى�瀊a/l�kv��F����@�z���rĩ���.���g:K:�������7Rs�����˯Ϟ��%Y4IlUMi��*4�����R��
+Z������!Y��l�(h����zU�_�Q��w���8�l��;�)`M�v]<\�'!��L�I&���x�bH�)@xi����>��L�f��n���:�V�?��εB�-�v�fԋ�-Ϳ�aE��o/g�����A��KF@+�)dZIy�����\p��(L��܀&��pA��eʵtB`]�>�"ҟ[8H)Z4^S���POI/%jGJQ��L	�܇&A0�%%!o���-s��"��?�s�O���}���A�uO���l�r0ZZV���v�v����vKn:-��z'�"�v�c���ɏk'����F�x;�/�^1��������V��N>�M;y�r� v��mn25��y7ٍ*O�M�[�	n�� ӻ��y�ΩKz7��X��һ�G��̾n��n���F�x7������,��|X���w�:%t���x7��@7D���ǐ�w��M�Rd��d���b���M>�
�z7�aE������&����*��9�P���[Z����zJ�`��w����v���[�wŲ1�ׄ��~��9I�s�=��Ի9�PwZunu(����b��](
+���fLxW�U����^;0#��u^��.�*���u>Bpw��zm;����~\�d�*^����o7�)]ϓ�?���O
+endstream
+endobj
+2470 0 obj
+<<
+/Type /Page
+/Contents 2471 0 R
+/Resources 2469 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2287 0 R
+/Annots [ 2423 0 R 2427 0 R 2428 0 R 2429 0 R 2430 0 R 2431 0 R 2432 0 R 2433 0 R 2434 0 R 2435 0 R 2436 0 R 2437 0 R 2438 0 R 2439 0 R 2440 0 R 2441 0 R 2442 0 R 2443 0 R 2444 0 R 2445 0 R 2446 0 R 2447 0 R 2448 0 R 2449 0 R 2450 0 R 2451 0 R 2452 0 R 2453 0 R 2454 0 R 2455 0 R 2456 0 R 2457 0 R 2458 0 R 2459 0 R 2460 0 R 2461 0 R 2462 0 R 2463 0 R 2464 0 R 2465 0 R 2466 0 R 2467 0 R ]
+>>
+endobj
+2423 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 758.177 202.787 768.652]
+/A << /S /GoTo /D (subsubsection.8.4.3.3) >>
+>>
+endobj
+2427 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 741.533 215.748 752.007]
+/A << /S /GoTo /D (subsubsection.8.4.3.4) >>
+>>
+endobj
+2428 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 724.888 260.673 735.363]
+/A << /S /GoTo /D (subsubsection.8.4.3.5) >>
+>>
+endobj
+2429 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 708.244 236.536 718.718]
+/A << /S /GoTo /D (subsubsection.8.4.3.6) >>
+>>
+endobj
+2430 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 691.599 208.274 702.074]
+/A << /S /GoTo /D (subsubsection.8.4.3.7) >>
+>>
+endobj
+2431 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 674.955 200.384 685.429]
+/A << /S /GoTo /D (subsubsection.8.4.3.8) >>
+>>
+endobj
+2432 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 658.31 324.124 668.785]
+/A << /S /GoTo /D (section.8.5) >>
+>>
+endobj
+2433 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 641.666 212.5 651.934]
+/A << /S /GoTo /D (subsection.8.5.1) >>
+>>
+endobj
+2434 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 626.725 293.859 635.496]
+/A << /S /GoTo /D (subsection.8.5.2) >>
+>>
+endobj
+2435 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 608.377 243.08 618.851]
+/A << /S /GoTo /D (subsubsection.8.5.2.1) >>
+>>
+endobj
+2436 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 591.732 243.08 602.207]
+/A << /S /GoTo /D (subsubsection.8.5.2.2) >>
+>>
+endobj
+2437 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 575.088 243.08 585.562]
+/A << /S /GoTo /D (subsubsection.8.5.2.3) >>
+>>
+endobj
+2438 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 560.147 264.692 568.711]
+/A << /S /GoTo /D (subsection.8.5.3) >>
+>>
+endobj
+2439 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 541.799 184.944 552.273]
+/A << /S /GoTo /D (subsubsection.8.5.3.1) >>
+>>
+endobj
+2440 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 525.046 228.529 535.629]
+/A << /S /GoTo /D (subsubsection.8.5.3.2) >>
+>>
+endobj
+2441 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 508.51 202.787 518.984]
+/A << /S /GoTo /D (subsubsection.8.5.3.3) >>
+>>
+endobj
+2442 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 491.865 215.748 502.34]
+/A << /S /GoTo /D (subsubsection.8.5.3.4) >>
+>>
+endobj
+2443 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 475.221 260.673 485.695]
+/A << /S /GoTo /D (subsubsection.8.5.3.5) >>
+>>
+endobj
+2444 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 458.576 236.536 469.051]
+/A << /S /GoTo /D (subsubsection.8.5.3.6) >>
+>>
+endobj
+2445 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 441.931 208.274 452.406]
+/A << /S /GoTo /D (subsubsection.8.5.3.7) >>
+>>
+endobj
+2446 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 425.287 200.384 435.761]
+/A << /S /GoTo /D (subsubsection.8.5.3.8) >>
+>>
+endobj
+2447 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 408.642 320.636 419.117]
+/A << /S /GoTo /D (section.8.6) >>
+>>
+endobj
+2448 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 391.998 212.5 402.266]
+/A << /S /GoTo /D (subsection.8.6.1) >>
+>>
+endobj
+2449 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 377.057 293.859 385.828]
+/A << /S /GoTo /D (subsection.8.6.2) >>
+>>
+endobj
+2450 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 358.709 243.08 369.183]
+/A << /S /GoTo /D (subsubsection.8.6.2.1) >>
+>>
+endobj
+2451 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 342.064 243.08 352.539]
+/A << /S /GoTo /D (subsubsection.8.6.2.2) >>
+>>
+endobj
+2452 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 325.42 243.08 335.894]
+/A << /S /GoTo /D (subsubsection.8.6.2.3) >>
+>>
+endobj
+2453 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 310.479 264.692 319.044]
+/A << /S /GoTo /D (subsection.8.6.3) >>
+>>
+endobj
+2454 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 292.131 184.944 302.605]
+/A << /S /GoTo /D (subsubsection.8.6.3.1) >>
+>>
+endobj
+2455 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 275.379 228.529 285.961]
+/A << /S /GoTo /D (subsubsection.8.6.3.2) >>
+>>
+endobj
+2456 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 258.842 202.787 269.316]
+/A << /S /GoTo /D (subsubsection.8.6.3.3) >>
+>>
+endobj
+2457 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 242.197 215.748 252.672]
+/A << /S /GoTo /D (subsubsection.8.6.3.4) >>
+>>
+endobj
+2458 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 225.553 260.673 236.027]
+/A << /S /GoTo /D (subsubsection.8.6.3.5) >>
+>>
+endobj
+2459 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 208.908 236.536 219.383]
+/A << /S /GoTo /D (subsubsection.8.6.3.6) >>
+>>
+endobj
+2460 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 192.264 208.274 202.738]
+/A << /S /GoTo /D (subsubsection.8.6.3.7) >>
+>>
+endobj
+2461 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 175.619 200.384 186.094]
+/A << /S /GoTo /D (subsubsection.8.6.3.8) >>
+>>
+endobj
+2462 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 160.678 228.558 169.449]
+/A << /S /GoTo /D (section.8.7) >>
+>>
+endobj
+2463 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 142.33 212.5 152.598]
+/A << /S /GoTo /D (subsection.8.7.1) >>
+>>
+endobj
+2464 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 127.389 293.859 136.16]
+/A << /S /GoTo /D (subsection.8.7.2) >>
+>>
+endobj
+2465 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 109.041 210.354 119.516]
+/A << /S /GoTo /D (subsubsection.8.7.2.1) >>
+>>
+endobj
+2466 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 92.396 218.103 102.871]
+/A << /S /GoTo /D (subsubsection.8.7.2.2) >>
+>>
+endobj
+2467 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 77.456 264.692 86.02]
+/A << /S /GoTo /D (subsection.8.7.3) >>
+>>
+endobj
+2469 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F25 2380 0 R /F22 2379 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2516 0 obj
+<<
+/Length 1231      
+/Filter /FlateDecode
+>>
+stream
+x��Ms�8��|
+�v������M:���N[n4���"�6�6�~�-cj�m��`���=o�x����9�]�2�BP0���5d��	�"0�܍��nF��=l?��A%�JAe����}�-@�j�gW��rF��|��!���}���`(-
3�R@
+Q1%��D�~E�G�oyu��С�g?�B!7_�}p���]�S�1�|Q�K\\C�y�"*/�g�꭭�ϙö+*	c`���"G(D�B�U����Ba�J�m��PQ�17���y{�o^�����4j��W���W����?q43M�9����\�����,C���8 �6i��%֕8p�����-,�oN�gHD�Dg��2���h��d��4��|��{�m�)<�-����	ӟR����Qc�������ܤf��qy�|U'c�x��ۀ�e<ļ?
������7�V����J�/�f�L�����կ���>$M��F�͸g}����ui�����̭4���7�:r�ͼ]����[�MG<�V��C%i�ҝ��3��MI�9~��;J����i�I�k6�;_�_���V𖬚}���t-M����sw�{|6+�Y�.�[�3\����rŞ]2�$ ��(���5�>�;�m;?ۺ��d�=����D�8Mf��c-	QڣnD�;��/���	oڧ��Z�+3��#/�����O\S{��F�X����\�Cn
[�]{w�?������7q��������U~��L6Y��(�WN�%�mq�\�$!P#�k���^�4��LT�N�E������WE1�*�Wi�z��+����P�`��	�,���haʅ#9�tL b���O/K(�_9n�N���Fr�<��sy*��+��t��1{X.�@[�Ddd�!��>��(�/���P��.�}�Vz�t�rJ������n�L��=c�.�V!�4�S�>��f�dŚ��.���-��4��&�M���%�o���3Jʰ�a�Y�}���<�T��6�L��ƭ�S�:G��/X�/̑�C�o�A�q�i��>�#x�G{����N
+�_J��C��)����;���6~�~4������S�ڶ+��v]y����]���u�о�z,��]W]�N��
+"��*��/��?'B��y�"��<�^<e/ ��e��b
+���~cb���9e;��ɐU�v�6ĻC�����
+endstream
+endobj
+2515 0 obj
+<<
+/Type /Page
+/Contents 2516 0 R
+/Resources 2514 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2517 0 R
+/Annots [ 2468 0 R 2472 0 R 2473 0 R 2474 0 R 2475 0 R 2476 0 R 2477 0 R 2478 0 R 2479 0 R 2480 0 R 2481 0 R 2482 0 R 2483 0 R 2484 0 R 2485 0 R 2486 0 R 2487 0 R 2488 0 R 2489 0 R 2490 0 R 2491 0 R 2492 0 R 2493 0 R 2494 0 R 2495 0 R 2496 0 R 2497 0 R 2498 0 R 2499 0 R 2500 0 R 2501 0 R 2502 0 R 2503 0 R 2504 0 R 2505 0 R 2506 0 R 2507 0 R 2508 0 R 2509 0 R 2510 0 R 2511 0 R 2512 0 R ]
+>>
+endobj
+2468 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 758.177 219.167 768.652]
+/A << /S /GoTo /D (subsubsection.8.7.3.1) >>
+>>
+endobj
+2472 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 741.533 219.167 752.007]
+/A << /S /GoTo /D (subsubsection.8.7.3.2) >>
+>>
+endobj
+2473 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 724.888 193.91 735.363]
+/A << /S /GoTo /D (subsubsection.8.7.3.3) >>
+>>
+endobj
+2474 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 708.244 191.92 718.718]
+/A << /S /GoTo /D (subsubsection.8.7.3.4) >>
+>>
+endobj
+2475 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 691.599 204.383 702.074]
+/A << /S /GoTo /D (subsubsection.8.7.3.5) >>
+>>
+endobj
+2476 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 674.955 226.492 685.429]
+/A << /S /GoTo /D (subsubsection.8.7.3.6) >>
+>>
+endobj
+2477 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 658.31 226.492 668.785]
+/A << /S /GoTo /D (subsubsection.8.7.3.7) >>
+>>
+endobj
+2478 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 641.666 220.325 652.14]
+/A << /S /GoTo /D (subsubsection.8.7.3.8) >>
+>>
+endobj
+2479 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 625.021 212.847 635.496]
+/A << /S /GoTo /D (subsubsection.8.7.3.9) >>
+>>
+endobj
+2480 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 608.377 234.68 618.851]
+/A << /S /GoTo /D (subsubsection.8.7.3.10) >>
+>>
+endobj
+2481 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 591.732 225.032 602.207]
+/A << /S /GoTo /D (subsubsection.8.7.3.11) >>
+>>
+endobj
+2482 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 575.088 198.896 585.562]
+/A << /S /GoTo /D (subsubsection.8.7.3.12) >>
+>>
+endobj
+2483 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 558.443 220.737 568.918]
+/A << /S /GoTo /D (subsubsection.8.7.3.13) >>
+>>
+endobj
+2484 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 541.799 211.986 552.273]
+/A << /S /GoTo /D (subsubsection.8.7.3.14) >>
+>>
+endobj
+2485 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 525.154 205.369 535.629]
+/A << /S /GoTo /D (subsubsection.8.7.3.15) >>
+>>
+endobj
+2486 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 510.213 249.243 518.778]
+/A << /S /GoTo /D (subsection.8.7.4) >>
+>>
+endobj
+2487 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 493.569 202.886 502.133]
+/A << /S /GoTo /D (subsubsection.8.7.4.1) >>
+>>
+endobj
+2488 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 475.221 214.981 485.489]
+/A << /S /GoTo /D (subsubsection.8.7.4.2) >>
+>>
+endobj
+2489 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 460.28 195.551 468.844]
+/A << /S /GoTo /D (subsubsection.8.7.4.3) >>
+>>
+endobj
+2490 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 443.635 193.919 452.2]
+/A << /S /GoTo /D (subsubsection.8.7.4.4) >>
+>>
+endobj
+2491 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 425.179 205.387 435.555]
+/A << /S /GoTo /D (subsubsection.8.7.4.5) >>
+>>
+endobj
+2492 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 408.642 196.914 418.911]
+/A << /S /GoTo /D (subsubsection.8.7.4.6) >>
+>>
+endobj
+2493 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 393.701 185.446 402.472]
+/A << /S /GoTo /D (subsubsection.8.7.4.7) >>
+>>
+endobj
+2494 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 377.057 188.441 385.622]
+/A << /S /GoTo /D (subsubsection.8.7.4.8) >>
+>>
+endobj
+2495 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 360.412 219 369.183]
+/A << /S /GoTo /D (section.8.8) >>
+>>
+endobj
+2496 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 342.064 212.5 352.333]
+/A << /S /GoTo /D (subsection.8.8.1) >>
+>>
+endobj
+2497 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 327.123 293.859 335.894]
+/A << /S /GoTo /D (subsection.8.8.2) >>
+>>
+endobj
+2498 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 308.775 227.542 319.25]
+/A << /S /GoTo /D (subsubsection.8.8.2.1) >>
+>>
+endobj
+2499 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 292.131 227.542 302.605]
+/A << /S /GoTo /D (subsubsection.8.8.2.2) >>
+>>
+endobj
+2500 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 275.486 227.542 285.961]
+/A << /S /GoTo /D (subsubsection.8.8.2.3) >>
+>>
+endobj
+2501 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 258.842 208.545 269.316]
+/A << /S /GoTo /D (subsubsection.8.8.2.4) >>
+>>
+endobj
+2502 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 243.901 264.692 252.465]
+/A << /S /GoTo /D (subsection.8.8.3) >>
+>>
+endobj
+2503 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 225.553 207.862 236.027]
+/A << /S /GoTo /D (subsubsection.8.8.3.1) >>
+>>
+endobj
+2504 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 208.908 225.372 219.383]
+/A << /S /GoTo /D (subsubsection.8.8.3.2) >>
+>>
+endobj
+2505 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 192.264 225.372 202.738]
+/A << /S /GoTo /D (subsubsection.8.8.3.3) >>
+>>
+endobj
+2506 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 175.619 210.857 186.094]
+/A << /S /GoTo /D (subsubsection.8.8.3.4) >>
+>>
+endobj
+2507 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 158.975 216.172 169.449]
+/A << /S /GoTo /D (subsubsection.8.8.3.5) >>
+>>
+endobj
+2508 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 142.33 216.172 152.805]
+/A << /S /GoTo /D (subsubsection.8.8.3.6) >>
+>>
+endobj
+2509 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 125.686 240.008 136.16]
+/A << /S /GoTo /D (section.8.9) >>
+>>
+endobj
+2510 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 109.041 212.5 119.309]
+/A << /S /GoTo /D (subsection.8.9.1) >>
+>>
+endobj
+2511 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 94.1 293.859 102.871]
+/A << /S /GoTo /D (subsection.8.9.2) >>
+>>
+endobj
+2512 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 75.752 243.582 86.227]
+/A << /S /GoTo /D (subsubsection.8.9.2.1) >>
+>>
+endobj
+2514 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2562 0 obj
+<<
+/Length 1269      
+/Filter /FlateDecode
+>>
+stream
+x��]s�6������LQ���i{��f�;��ݥWl&�5Z�L
+f���
+d���t�.20��W���d���7���[���Z
+��DP	�&P`0�a�ˤw7x�y=�����g��4��"��������-@�j7g���rF������Aɥ];�q���f(��fr����v�א@������B�O��đ���[���H�%›IAdA��CrE�6�Pz'{%r)��a�Ϲp/�_x��k�2g]!B�1}������P�p�-M"64�!�)��"w�r	%�T�,X`ؗL�/,͂$4�$1b�Q�k~1��f�oWQ���������Dq��h<c좉�P�*I�§;x�|d�D��
+u��5]'hΠTAc���q���u��W�`�t��̧E]�0Qh��D�p�*܄@����1J�~c�`25���2�f�yw�Pf���������<��<Z��*��w���݋N�R7�@��6�F�ʷ6���K��͵j�Z��)�J�2@}p��F]`t�P�%dD��h���?�|}};�&	����s��J�3#��&���k�)y}.i�p�h6
��������af� 6�꯰�F�A,E��a?$�a0����r��ɍ)��y�fC�3�*��L��ҩ�=��\),Zk%e!•�.�X���j4��K6j�0�ǹ�L���dK�ՙ�٣2��d�ل=���u��a�
�qu�Lɖ#&M��V10��:�(z��g�=��gP+�=�<@���+����p���Y����}%p,��?�C�0��:���+y�f�/雷��#�=� �Zn!ǓY%_E��O��������U%j*�G�C͚��v�W� �d,	�}꽩P�`��粺�.�����y3U��Ǥ�0j�	�~�d�k'7AR7��=�n޸P��*J��U,|&}�{��8-���Bb���U��M̚���U4��e��}.�"O�:˯�
1�̏f�������F����C��1,Z�|\C}�uN�N�:�9y���N_E���9�[�O��r��|)� ԥ�=�}]��(ھ:�[����:���%�����}�oн�,F�&�
C\�0��^��\uR��@�(�r:Bɞx���>�������ī���nT�5���j��l�Å	^*��ӵ��������A4��������C��.���9���&�W��tH�`��=ܚ�urơ�MnB��Dfa�D2��ޡ��&0������%�h����c�
+endstream
+endobj
+2561 0 obj
+<<
+/Type /Page
+/Contents 2562 0 R
+/Resources 2560 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2517 0 R
+/Annots [ 2513 0 R 2518 0 R 2519 0 R 2520 0 R 2521 0 R 2522 0 R 2523 0 R 2524 0 R 2525 0 R 2526 0 R 2527 0 R 2528 0 R 2529 0 R 2530 0 R 2531 0 R 2532 0 R 2533 0 R 2534 0 R 2535 0 R 2536 0 R 2537 0 R 2538 0 R 2539 0 R 2540 0 R 2541 0 R 2542 0 R 2543 0 R 2544 0 R 2545 0 R 2546 0 R 2547 0 R 2548 0 R 2549 0 R 2550 0 R 2551 0 R 2552 0 R 2553 0 R 2554 0 R 2555 0 R 2556 0 R 2557 0 R 2558 0 R ]
+>>
+endobj
+2513 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 758.177 243.582 768.652]
+/A << /S /GoTo /D (subsubsection.8.9.2.2) >>
+>>
+endobj
+2518 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 741.533 224.586 752.007]
+/A << /S /GoTo /D (subsubsection.8.9.2.3) >>
+>>
+endobj
+2519 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 726.592 264.692 735.157]
+/A << /S /GoTo /D (subsection.8.9.3) >>
+>>
+endobj
+2520 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 708.244 196.905 718.718]
+/A << /S /GoTo /D (subsubsection.8.9.3.1) >>
+>>
+endobj
+2521 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 691.599 238.52 702.074]
+/A << /S /GoTo /D (section.8.10) >>
+>>
+endobj
+2522 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 674.955 217.485 685.223]
+/A << /S /GoTo /D (subsection.8.10.1) >>
+>>
+endobj
+2523 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 660.014 298.844 668.785]
+/A << /S /GoTo /D (subsection.8.10.2) >>
+>>
+endobj
+2524 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 641.666 221.822 652.14]
+/A << /S /GoTo /D (subsubsection.8.10.2.1) >>
+>>
+endobj
+2525 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 625.021 229.571 635.496]
+/A << /S /GoTo /D (subsubsection.8.10.2.2) >>
+>>
+endobj
+2526 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 608.269 308.675 618.851]
+/A << /S /GoTo /D (section.8.11) >>
+>>
+endobj
+2527 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 591.732 217.485 602]
+/A << /S /GoTo /D (subsection.8.11.1) >>
+>>
+endobj
+2528 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 576.791 298.844 585.562]
+/A << /S /GoTo /D (subsection.8.11.2) >>
+>>
+endobj
+2529 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 558.335 207.862 568.918]
+/A << /S /GoTo /D (subsubsection.8.11.2.1) >>
+>>
+endobj
+2530 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 541.691 215.611 552.273]
+/A << /S /GoTo /D (subsubsection.8.11.2.2) >>
+>>
+endobj
+2531 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 526.858 269.677 535.422]
+/A << /S /GoTo /D (subsection.8.11.3) >>
+>>
+endobj
+2532 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 508.51 198.896 518.984]
+/A << /S /GoTo /D (subsubsection.8.11.3.1) >>
+>>
+endobj
+2533 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 491.757 233.514 502.34]
+/A << /S /GoTo /D (subsubsection.8.11.3.2) >>
+>>
+endobj
+2534 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 475.221 220.733 485.695]
+/A << /S /GoTo /D (subsubsection.8.11.3.3) >>
+>>
+endobj
+2535 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 458.576 220.988 469.051]
+/A << /S /GoTo /D (subsubsection.8.11.3.4) >>
+>>
+endobj
+2536 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 441.931 200.393 452.406]
+/A << /S /GoTo /D (subsubsection.8.11.3.5) >>
+>>
+endobj
+2537 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 425.179 222.235 435.761]
+/A << /S /GoTo /D (subsubsection.8.11.3.6) >>
+>>
+endobj
+2538 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 408.642 216.335 419.117]
+/A << /S /GoTo /D (subsubsection.8.11.3.7) >>
+>>
+endobj
+2539 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 391.998 220.603 402.472]
+/A << /S /GoTo /D (subsubsection.8.11.3.8) >>
+>>
+endobj
+2540 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 375.353 209.87 385.828]
+/A << /S /GoTo /D (subsubsection.8.11.3.9) >>
+>>
+endobj
+2541 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 358.709 210.354 369.183]
+/A << /S /GoTo /D (subsubsection.8.11.3.10) >>
+>>
+endobj
+2542 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 342.064 206.499 352.539]
+/A << /S /GoTo /D (subsubsection.8.11.3.11) >>
+>>
+endobj
+2543 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 327.123 254.228 335.688]
+/A << /S /GoTo /D (subsection.8.11.4) >>
+>>
+endobj
+2544 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 308.668 199.317 319.044]
+/A << /S /GoTo /D (subsubsection.8.11.4.1) >>
+>>
+endobj
+2545 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 293.834 193.417 302.399]
+/A << /S /GoTo /D (subsubsection.8.11.4.2) >>
+>>
+endobj
+2546 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 277.19 190.934 285.755]
+/A << /S /GoTo /D (subsubsection.8.11.4.3) >>
+>>
+endobj
+2547 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 260.545 197.685 269.11]
+/A << /S /GoTo /D (subsubsection.8.11.4.4) >>
+>>
+endobj
+2548 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 243.901 235.041 252.672]
+/A << /S /GoTo /D (section.8.12) >>
+>>
+endobj
+2549 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 225.553 217.485 235.821]
+/A << /S /GoTo /D (subsection.8.12.1) >>
+>>
+endobj
+2550 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 210.612 298.844 219.383]
+/A << /S /GoTo /D (subsection.8.12.2) >>
+>>
+endobj
+2551 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 192.264 216.837 202.738]
+/A << /S /GoTo /D (subsubsection.8.12.2.1) >>
+>>
+endobj
+2552 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 175.619 224.586 186.094]
+/A << /S /GoTo /D (subsubsection.8.12.2.2) >>
+>>
+endobj
+2553 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 160.678 269.677 169.243]
+/A << /S /GoTo /D (subsection.8.12.3) >>
+>>
+endobj
+2554 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 142.222 267.011 152.805]
+/A << /S /GoTo /D (subsubsection.8.12.3.1) >>
+>>
+endobj
+2555 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 125.578 267.011 136.16]
+/A << /S /GoTo /D (subsubsection.8.12.3.2) >>
+>>
+endobj
+2556 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 109.041 226.036 119.516]
+/A << /S /GoTo /D (subsubsection.8.12.3.3) >>
+>>
+endobj
+2557 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 92.396 207.369 102.871]
+/A << /S /GoTo /D (subsubsection.8.12.3.4) >>
+>>
+endobj
+2558 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 75.644 226.816 86.227]
+/A << /S /GoTo /D (subsubsection.8.12.3.5) >>
+>>
+endobj
+2560 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F25 2380 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2607 0 obj
+<<
+/Length 1219      
+/Filter /FlateDecode
+>>
+stream
+x��Os�8��|
+�v��F����v�ɶ�l�
���q@Z0Ԇ��O�Y	�(�NrH�CbB�����}_Y����?��W'Lc!(�3�hdL���?��ɤ�����W����@"���R)��Y��C��� ���i9�S�5�Sp�y�A��m?٨��Cq;�n�fr��"w?
+b)�#"U4N��T_.���#�����ݺˀ�#EY�G�s{�{%�����d�rHv���P0^B+-�I�%(��%<�]�j��I�yt��vV®,�Yba_&�h5өWג���n%�;H3�\e�=�>�B�t���d����Xf>�4�O�ͣcgͤ�����K>�C�q@���gP*R�9���_�������c��w��&ynO?��]jL&��@WbA���]`N�Q\ѸQ��z���d���U>0�1�&��d�V&E$��r[b��͜BR�z��Ky5X���r3��ώ�M����ȳ�H1T��/q�n�3h�U0���n��W'����D�sGʠ���¦�GD�mTJ0%�,vm��/�J
��K �j�o��E����͟'�t���6"	~�F]��m��̐c#\o�(�s{���1��w1?.��ğ��J����U^��b��/���:���Mx(	�[(�Yƙε��DX��l&jn���p�9�[�.k�X)�'�u�k{�ؔ�"U{���Ia,g���^�L�y2�&�4)}�b���|�F%#L�W�VFX��<*��a3�m�.��2���H���$�N2��P]:@��[��̸��y^�KY(kԄ7r��dk���qyy�~�e���r���+a*�n���Y����o{�wW_��ꮋq�B4r'zO�C���cT��yXkL���۰Ϛ��ѽ8@��ƍT�@�cFJ�G�"���c�xz������ ���[����1-<�$]77�c�T��+J_*U�Ĺo��
+�#��G(ȶ�lYy�*�>�6S0w{	����P�%�v�v�{Y���3�1�� r�:k&v�*~�Џ]��y�U���|���٪�:��y9o&�Ʈ���ീ�"+�(]lY��94ɺ����;+r{���+��.o�mOb�$���.&(��^�gq���1�PQ�����[U`{
=[LM.V�0�}:94���W~K"�o�, K��mQ�"��;�ݶh�lS�]1�9l��T�:3R.��j�T�+Ӭe��zdn��;ݽ����)�
+endstream
+endobj
+2606 0 obj
+<<
+/Type /Page
+/Contents 2607 0 R
+/Resources 2605 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2517 0 R
+/Annots [ 2559 0 R 2563 0 R 2564 0 R 2565 0 R 2566 0 R 2567 0 R 2568 0 R 2569 0 R 2570 0 R 2571 0 R 2572 0 R 2573 0 R 2574 0 R 2575 0 R 2576 0 R 2577 0 R 2578 0 R 2579 0 R 2580 0 R 2581 0 R 2582 0 R 2583 0 R 2584 0 R 2585 0 R 2586 0 R 2587 0 R 2588 0 R 2589 0 R 2590 0 R 2591 0 R 2592 0 R 2593 0 R 2594 0 R 2595 0 R 2596 0 R 2597 0 R 2598 0 R 2599 0 R 2600 0 R 2601 0 R 2602 0 R 2603 0 R ]
+>>
+endobj
+2559 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 758.177 231.299 768.652]
+/A << /S /GoTo /D (subsubsection.8.12.3.6) >>
+>>
+endobj
+2563 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 741.533 207.781 752.007]
+/A << /S /GoTo /D (subsubsection.8.12.3.7) >>
+>>
+endobj
+2564 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 724.781 247.053 735.363]
+/A << /S /GoTo /D (subsubsection.8.12.3.8) >>
+>>
+endobj
+2565 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 708.244 232.824 718.718]
+/A << /S /GoTo /D (subsubsection.8.12.3.9) >>
+>>
+endobj
+2566 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 691.599 197.9 702.074]
+/A << /S /GoTo /D (subsubsection.8.12.3.10) >>
+>>
+endobj
+2567 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 674.955 210.354 685.429]
+/A << /S /GoTo /D (subsubsection.8.12.3.11) >>
+>>
+endobj
+2568 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 660.014 231.042 668.785]
+/A << /S /GoTo /D (section.8.13) >>
+>>
+endobj
+2569 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 641.666 217.485 651.934]
+/A << /S /GoTo /D (subsection.8.13.1) >>
+>>
+endobj
+2570 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 626.725 298.844 635.496]
+/A << /S /GoTo /D (subsection.8.13.2) >>
+>>
+endobj
+2571 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 608.377 211.35 618.851]
+/A << /S /GoTo /D (subsubsection.8.13.2.1) >>
+>>
+endobj
+2572 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 591.732 219.098 602.207]
+/A << /S /GoTo /D (subsubsection.8.13.2.2) >>
+>>
+endobj
+2573 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 576.791 269.677 585.356]
+/A << /S /GoTo /D (subsection.8.13.3) >>
+>>
+endobj
+2574 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 558.443 201.89 568.918]
+/A << /S /GoTo /D (subsubsection.8.13.3.1) >>
+>>
+endobj
+2575 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 541.799 200.025 552.273]
+/A << /S /GoTo /D (subsubsection.8.13.3.2) >>
+>>
+endobj
+2576 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 525.154 225.633 535.629]
+/A << /S /GoTo /D (subsubsection.8.13.3.3) >>
+>>
+endobj
+2577 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 508.51 202.383 518.984]
+/A << /S /GoTo /D (subsubsection.8.13.3.4) >>
+>>
+endobj
+2578 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 491.865 211.861 502.34]
+/A << /S /GoTo /D (subsubsection.8.13.3.5) >>
+>>
+endobj
+2579 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 475.221 198.259 485.695]
+/A << /S /GoTo /D (subsubsection.8.13.3.6) >>
+>>
+endobj
+2580 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 458.468 282.006 469.051]
+/A << /S /GoTo /D (section.8.14) >>
+>>
+endobj
+2581 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 441.931 217.485 452.2]
+/A << /S /GoTo /D (subsection.8.14.1) >>
+>>
+endobj
+2582 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 426.991 254.228 435.555]
+/A << /S /GoTo /D (subsection.8.14.2) >>
+>>
+endobj
+2583 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 408.535 212.856 418.911]
+/A << /S /GoTo /D (subsubsection.8.14.2.1) >>
+>>
+endobj
+2584 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 391.998 190.934 402.266]
+/A << /S /GoTo /D (subsubsection.8.14.2.2) >>
+>>
+endobj
+2585 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 377.057 198.904 385.622]
+/A << /S /GoTo /D (subsubsection.8.14.2.3) >>
+>>
+endobj
+2586 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 358.709 195.417 368.977]
+/A << /S /GoTo /D (subsubsection.8.14.2.4) >>
+>>
+endobj
+2587 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 342.064 226.568 352.539]
+/A << /S /GoTo /D (section.8.15) >>
+>>
+endobj
+2588 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 325.42 217.485 335.688]
+/A << /S /GoTo /D (subsection.8.15.1) >>
+>>
+endobj
+2589 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 310.479 298.844 319.25]
+/A << /S /GoTo /D (subsection.8.15.2) >>
+>>
+endobj
+2590 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 292.131 208.364 302.605]
+/A << /S /GoTo /D (subsubsection.8.15.2.1) >>
+>>
+endobj
+2591 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 275.486 216.113 285.961]
+/A << /S /GoTo /D (subsubsection.8.15.2.2) >>
+>>
+endobj
+2592 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 260.545 269.677 269.11]
+/A << /S /GoTo /D (subsection.8.15.3) >>
+>>
+endobj
+2593 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 242.197 207.369 252.672]
+/A << /S /GoTo /D (subsubsection.8.15.3.1) >>
+>>
+endobj
+2594 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 225.553 238.777 236.027]
+/A << /S /GoTo /D (subsubsection.8.15.3.2) >>
+>>
+endobj
+2595 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 208.8 226.816 219.383]
+/A << /S /GoTo /D (subsubsection.8.15.3.3) >>
+>>
+endobj
+2596 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 192.264 226.816 202.738]
+/A << /S /GoTo /D (subsubsection.8.15.3.4) >>
+>>
+endobj
+2597 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 175.619 204.732 186.094]
+/A << /S /GoTo /D (subsubsection.8.15.3.5) >>
+>>
+endobj
+2598 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 158.975 192.915 169.449]
+/A << /S /GoTo /D (subsubsection.8.15.3.6) >>
+>>
+endobj
+2599 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 142.33 200.393 152.805]
+/A << /S /GoTo /D (subsubsection.8.15.3.7) >>
+>>
+endobj
+2600 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 125.686 211.986 136.16]
+/A << /S /GoTo /D (subsubsection.8.15.3.8) >>
+>>
+endobj
+2601 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 109.041 205.369 119.516]
+/A << /S /GoTo /D (subsubsection.8.15.3.9) >>
+>>
+endobj
+2602 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 92.396 324.671 102.871]
+/A << /S /GoTo /D (section.8.16) >>
+>>
+endobj
+2603 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 75.752 217.485 86.02]
+/A << /S /GoTo /D (subsection.8.16.1) >>
+>>
+endobj
+2605 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F25 2380 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2652 0 obj
+<<
+/Length 1251      
+/Filter /FlateDecode
+>>
+stream
+x��]s�F���{Ձ����IzѸ�4�L�;��(b�Ղ  ���w���!L'���,k�w��s�@`x��e�9�d
+(���`p$�J 5���\w����w;���u��������@��"����-#��� �
+|OGN�rF������ͳ�^�Ci�r0RPb��� ���D��Y�L�>��U���_�.L�s�p55q$�,N�WqAຯ��^�s�=�k���O�b]-���.�*IA����QB����c�,z�~���,nG�oa�������
�QΙU8���K�'b-qʠ�¾ x�(�Uց���b��a�Z�\�Ϝ:��rŧ/�Xլ����f���q����-�
D�:�6�KY��0�pa�ĸ�������
F5LE�Ůxģ��M��͑w��n��p��<H�{��8϶�xY�v�-I��	��o�����N�<>���0a��o]�)�u	5n�m���'�Úf�ţ��ԫ�u{�����X*W��.g��H4����I;��xV���kE<����E��&^I�O�(�)Ġ��3ad��q]���)?!��p
s�"[�7Ǐ����O��=���hy_���$X.���]���Y�84[����\2��Ŝ���R�,�}a� ��ѦN�>�u$_�r��}�T"}��E���fYj���u�`�g�{�U��z{E��SO=BTm�ׄo<�bʺ����
Bd�Zw
�x�9�`6�:6a��zvə�-N
�C{�,����J(��ѐZ?Q'�N'�q�B�:+)̤uH���BR]%y�?��5Q������NΨV�y"Zs�f�."϶���]�iGf�s���t���EN�h'ڼv2<]�2k5Q{@I剛�8Ȭ�3�B|X��":��
װ�Z�~�ɹ��1�/M2L�����Δ_��i?�U)c�Hz1�%�d6���[�N���ݎ�[:ν����~~~�c��H��f=[JV���F�0\���aw�̀��(�A=lז��'Ab��HN^|P��)���۝�;�(����S�N���n��P���Ԉv"��d�lOwb$D��u�]솨���X�:�o��r�TW=(,ԇ�]-�(=ĭ�V�v�{t�^�Q���-ăx:Z���B�7�:��YO��ZB�i�ؙ��������5�Q�����'�$R���3�s�+3��2
�{���i�,--!=޳�o�yۤ����k��~i
+endstream
+endobj
+2651 0 obj
+<<
+/Type /Page
+/Contents 2652 0 R
+/Resources 2650 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2517 0 R
+/Annots [ 2604 0 R 2608 0 R 2609 0 R 2610 0 R 2611 0 R 2612 0 R 2613 0 R 2614 0 R 2615 0 R 2616 0 R 2617 0 R 2618 0 R 2619 0 R 2620 0 R 2621 0 R 2622 0 R 2623 0 R 2624 0 R 2625 0 R 2626 0 R 2627 0 R 2628 0 R 2629 0 R 2630 0 R 2631 0 R 2632 0 R 2633 0 R 2634 0 R 2635 0 R 2636 0 R 2637 0 R 2638 0 R 2639 0 R 2640 0 R 2641 0 R 2642 0 R 2643 0 R 2644 0 R 2645 0 R 2646 0 R 2647 0 R 2648 0 R ]
+>>
+endobj
+2604 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 759.881 298.844 768.652]
+/A << /S /GoTo /D (subsection.8.16.2) >>
+>>
+endobj
+2608 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 741.533 223.858 752.007]
+/A << /S /GoTo /D (subsubsection.8.16.2.1) >>
+>>
+endobj
+2609 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 724.888 231.606 735.363]
+/A << /S /GoTo /D (subsubsection.8.16.2.2) >>
+>>
+endobj
+2610 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 709.947 269.677 718.512]
+/A << /S /GoTo /D (subsection.8.16.3) >>
+>>
+endobj
+2611 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 691.599 207.369 702.074]
+/A << /S /GoTo /D (subsubsection.8.16.3.1) >>
+>>
+endobj
+2612 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 674.847 226.816 685.429]
+/A << /S /GoTo /D (subsubsection.8.16.3.2) >>
+>>
+endobj
+2613 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 658.31 236.285 668.785]
+/A << /S /GoTo /D (subsubsection.8.16.3.3) >>
+>>
+endobj
+2614 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 641.666 199.891 652.14]
+/A << /S /GoTo /D (subsubsection.8.16.3.4) >>
+>>
+endobj
+2615 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 625.021 220.988 635.496]
+/A << /S /GoTo /D (subsubsection.8.16.3.5) >>
+>>
+endobj
+2616 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 608.377 192.915 618.851]
+/A << /S /GoTo /D (subsubsection.8.16.3.6) >>
+>>
+endobj
+2617 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 591.732 200.393 602.207]
+/A << /S /GoTo /D (subsubsection.8.16.3.7) >>
+>>
+endobj
+2618 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 575.088 205.369 585.562]
+/A << /S /GoTo /D (subsubsection.8.16.3.8) >>
+>>
+endobj
+2619 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 558.443 201.514 568.918]
+/A << /S /GoTo /D (subsubsection.8.16.3.9) >>
+>>
+endobj
+2620 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 543.502 254.228 552.067]
+/A << /S /GoTo /D (subsection.8.16.4) >>
+>>
+endobj
+2621 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 526.858 210.372 535.422]
+/A << /S /GoTo /D (subsubsection.8.16.4.1) >>
+>>
+endobj
+2622 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 509.895 242.815 518.984]
+/A << /S /GoTo /D (section.8.17) >>
+>>
+endobj
+2623 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 491.865 217.485 502.133]
+/A << /S /GoTo /D (subsection.8.17.1) >>
+>>
+endobj
+2624 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 476.924 298.844 485.695]
+/A << /S /GoTo /D (subsection.8.17.2) >>
+>>
+endobj
+2625 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 458.576 219.643 469.051]
+/A << /S /GoTo /D (subsubsection.8.17.2.1) >>
+>>
+endobj
+2626 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 441.931 227.392 452.406]
+/A << /S /GoTo /D (subsubsection.8.17.2.2) >>
+>>
+endobj
+2627 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 426.991 269.677 435.555]
+/A << /S /GoTo /D (subsection.8.17.3) >>
+>>
+endobj
+2628 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 408.535 219.33 419.117]
+/A << /S /GoTo /D (subsubsection.8.17.3.1) >>
+>>
+endobj
+2629 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 391.998 240.596 402.472]
+/A << /S /GoTo /D (subsubsection.8.17.3.2) >>
+>>
+endobj
+2630 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 375.353 240.596 385.828]
+/A << /S /GoTo /D (subsubsection.8.17.3.3) >>
+>>
+endobj
+2631 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 358.709 225.31 369.183]
+/A << /S /GoTo /D (subsubsection.8.17.3.4) >>
+>>
+endobj
+2632 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 342.064 235.281 352.539]
+/A << /S /GoTo /D (subsubsection.8.17.3.5) >>
+>>
+endobj
+2633 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 325.42 239.979 335.894]
+/A << /S /GoTo /D (subsubsection.8.17.3.6) >>
+>>
+endobj
+2634 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 308.775 237.422 319.25]
+/A << /S /GoTo /D (subsubsection.8.17.3.7) >>
+>>
+endobj
+2635 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 292.131 237.422 302.605]
+/A << /S /GoTo /D (subsubsection.8.17.3.8) >>
+>>
+endobj
+2636 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 275.486 221.822 285.961]
+/A << /S /GoTo /D (subsubsection.8.17.3.9) >>
+>>
+endobj
+2637 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 258.842 226.861 269.316]
+/A << /S /GoTo /D (subsubsection.8.17.3.10) >>
+>>
+endobj
+2638 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 242.197 243.753 252.672]
+/A << /S /GoTo /D (subsubsection.8.17.3.11) >>
+>>
+endobj
+2639 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 225.445 291.819 236.027]
+/A << /S /GoTo /D (section.8.18) >>
+>>
+endobj
+2640 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 208.908 217.485 219.176]
+/A << /S /GoTo /D (subsection.8.18.1) >>
+>>
+endobj
+2641 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 193.967 298.844 202.738]
+/A << /S /GoTo /D (subsection.8.18.2) >>
+>>
+endobj
+2642 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 175.511 235.611 186.094]
+/A << /S /GoTo /D (subsubsection.8.18.2.1) >>
+>>
+endobj
+2643 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 158.867 235.611 169.449]
+/A << /S /GoTo /D (subsubsection.8.18.2.2) >>
+>>
+endobj
+2644 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 142.222 235.611 152.805]
+/A << /S /GoTo /D (subsubsection.8.18.2.3) >>
+>>
+endobj
+2645 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 125.578 216.615 136.16]
+/A << /S /GoTo /D (subsubsection.8.18.2.4) >>
+>>
+endobj
+2646 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 110.745 269.677 119.309]
+/A << /S /GoTo /D (subsection.8.18.3) >>
+>>
+endobj
+2647 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 92.396 205.692 102.871]
+/A << /S /GoTo /D (subsubsection.8.18.3.1) >>
+>>
+endobj
+2648 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 75.752 205.369 86.227]
+/A << /S /GoTo /D (subsubsection.8.18.3.2) >>
+>>
+endobj
+2650 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F25 2380 0 R /F54 2381 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2697 0 obj
+<<
+/Length 1209      
+/Filter /FlateDecode
+>>
+stream
+x��[Mw�6��+���>-)���N&����#��L�c4@v�f��+1,�	�k�CHd!��t߻O�)@�]��Q��I ��<
+F��T����0M�C�u�8z�{;�}�as��!%���`�{xD`b�� H����%`�BΨ�}�{�P���<�i1�]�J�V#9��|��!*W#!V�!���Ͽ\_���T���%(s-��k�Bp3wv������A�p9���~���������i�,�8��w�?(���l��{C��8r��/���CN}w��$�}�qq��삡��P�&�<ƿ�	q�׍N��BO�wq�1�ϟ�y�(��0�N���@�m!Nr��Da�� ��$Z��nC���n�`��a��Q"�X)�RК�%e�fB�qd~p���@8$1�N<�+�XpGV��H�rx��4M�\�e����8Z�MKu��"��$K��+A��(�ɳ
+�I�{�Vu�u6ԉ��$�X�l�o�z�I���L��'A�%�Z�:I�2I3��}@�<S�gs�DA��S:E:��DA�Dq5�Qsnj�������(��=U������
+��#jl�Yss'����N��i͔C��Q�M�m�.�`��!i���I9�}��O;l��s�mQ�/�R(Ov��Y���B[N-�:lG˙i��z-�������w�6k|lo��xu���Í����p�G��=+1\ff����7q��h����:��+cFs�Ъ2��紎�MTh_�����t�\V����Q��E�ei���4u��
��*`!9O�}�$�]�}��A����ۧ�i��o�����xϴ?ѫ����K�J���o懓�U�P��~�fo��r���Љ��AiWQ��UPթ	��H���spZ��W����*�9H���ի��汣;h�Ů�@e�
HgV��XY���O��
TR>����BVU����^�nCKP��Ũ��:����A�&jq��V��Z��xf���0F��~�؟%�6��~���O�&m!:��%�u�m��E4���<���'�Nf�$��\�\�RYV�v��Ê�<�CU��9\"��h-:A&fǏ�����5*��a)���&����К�π�~)�M�7��:{�V?���՜CDq��S���� +�J�bz�%����O�c�O�/e��zA/S�D��pw��f�u*
+endstream
+endobj
+2696 0 obj
+<<
+/Type /Page
+/Contents 2697 0 R
+/Resources 2695 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2517 0 R
+/Annots [ 2649 0 R 2653 0 R 2654 0 R 2655 0 R 2656 0 R 2657 0 R 2658 0 R 2659 0 R 2660 0 R 2661 0 R 2662 0 R 2663 0 R 2664 0 R 2665 0 R 2666 0 R 2667 0 R 2668 0 R 2669 0 R 2670 0 R 2671 0 R 2672 0 R 2673 0 R 2674 0 R 2675 0 R 2676 0 R 2677 0 R 2678 0 R 2679 0 R 2680 0 R 2681 0 R 2682 0 R 2683 0 R 2684 0 R 2685 0 R 2686 0 R 2687 0 R 2688 0 R 2689 0 R 2690 0 R 2691 0 R 2692 0 R 2693 0 R ]
+>>
+endobj
+2649 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 758.07 273.949 768.652]
+/A << /S /GoTo /D (section.8.19) >>
+>>
+endobj
+2653 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 741.533 217.485 751.801]
+/A << /S /GoTo /D (subsection.8.19.1) >>
+>>
+endobj
+2654 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 726.592 298.844 735.363]
+/A << /S /GoTo /D (subsection.8.19.2) >>
+>>
+endobj
+2655 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 708.136 235.611 718.718]
+/A << /S /GoTo /D (subsubsection.8.19.2.1) >>
+>>
+endobj
+2656 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 691.492 235.611 702.074]
+/A << /S /GoTo /D (subsubsection.8.19.2.2) >>
+>>
+endobj
+2657 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 674.847 216.615 685.429]
+/A << /S /GoTo /D (subsubsection.8.19.2.3) >>
+>>
+endobj
+2658 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 660.014 269.677 668.579]
+/A << /S /GoTo /D (subsection.8.19.3) >>
+>>
+endobj
+2659 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 641.666 232.437 652.14]
+/A << /S /GoTo /D (subsubsection.8.19.3.1) >>
+>>
+endobj
+2660 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 625.021 232.437 635.496]
+/A << /S /GoTo /D (subsubsection.8.19.3.2) >>
+>>
+endobj
+2661 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 608.377 205.369 618.851]
+/A << /S /GoTo /D (subsubsection.8.19.3.3) >>
+>>
+endobj
+2662 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 591.625 286.555 602.207]
+/A << /S /GoTo /D (section.8.20) >>
+>>
+endobj
+2663 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 575.088 217.485 585.356]
+/A << /S /GoTo /D (subsection.8.20.1) >>
+>>
+endobj
+2664 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 560.147 298.844 568.918]
+/A << /S /GoTo /D (subsection.8.20.2) >>
+>>
+endobj
+2665 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 541.691 235.611 552.273]
+/A << /S /GoTo /D (subsubsection.8.20.2.1) >>
+>>
+endobj
+2666 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 525.046 235.611 535.629]
+/A << /S /GoTo /D (subsubsection.8.20.2.2) >>
+>>
+endobj
+2667 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 508.402 235.611 518.984]
+/A << /S /GoTo /D (subsubsection.8.20.2.3) >>
+>>
+endobj
+2668 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 491.757 216.615 502.34]
+/A << /S /GoTo /D (subsubsection.8.20.2.4) >>
+>>
+endobj
+2669 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 476.924 269.677 485.489]
+/A << /S /GoTo /D (subsection.8.20.3) >>
+>>
+endobj
+2670 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 458.576 205.692 469.051]
+/A << /S /GoTo /D (subsubsection.8.20.3.1) >>
+>>
+endobj
+2671 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 441.931 205.369 452.406]
+/A << /S /GoTo /D (subsubsection.8.20.3.2) >>
+>>
+endobj
+2672 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 426.991 241.999 435.761]
+/A << /S /GoTo /D (section.8.21) >>
+>>
+endobj
+2673 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 408.642 217.485 418.911]
+/A << /S /GoTo /D (subsection.8.21.1) >>
+>>
+endobj
+2674 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 393.701 298.844 402.472]
+/A << /S /GoTo /D (subsection.8.21.2) >>
+>>
+endobj
+2675 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 375.353 220.818 385.828]
+/A << /S /GoTo /D (subsubsection.8.21.2.1) >>
+>>
+endobj
+2676 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 358.709 228.567 369.183]
+/A << /S /GoTo /D (subsubsection.8.21.2.2) >>
+>>
+endobj
+2677 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 343.768 269.677 352.333]
+/A << /S /GoTo /D (subsection.8.21.3) >>
+>>
+endobj
+2678 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 325.42 241.261 335.894]
+/A << /S /GoTo /D (subsubsection.8.21.3.1) >>
+>>
+endobj
+2679 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 308.775 209.368 319.25]
+/A << /S /GoTo /D (subsubsection.8.21.3.2) >>
+>>
+endobj
+2680 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 292.131 238.777 302.605]
+/A << /S /GoTo /D (subsubsection.8.21.3.3) >>
+>>
+endobj
+2681 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 275.486 252.46 285.961]
+/A << /S /GoTo /D (subsubsection.8.21.3.4) >>
+>>
+endobj
+2682 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 258.734 226.816 269.316]
+/A << /S /GoTo /D (subsubsection.8.21.3.5) >>
+>>
+endobj
+2683 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 242.197 234.294 252.672]
+/A << /S /GoTo /D (subsubsection.8.21.3.6) >>
+>>
+endobj
+2684 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 225.553 243.26 236.027]
+/A << /S /GoTo /D (subsubsection.8.21.3.7) >>
+>>
+endobj
+2685 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 208.908 236.285 219.383]
+/A << /S /GoTo /D (subsubsection.8.21.3.8) >>
+>>
+endobj
+2686 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 192.264 231.299 202.738]
+/A << /S /GoTo /D (subsubsection.8.21.3.9) >>
+>>
+endobj
+2687 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 175.619 231.802 186.094]
+/A << /S /GoTo /D (subsubsection.8.21.3.10) >>
+>>
+endobj
+2688 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 158.975 236.509 169.449]
+/A << /S /GoTo /D (subsubsection.8.21.3.11) >>
+>>
+endobj
+2689 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 144.034 254.228 152.598]
+/A << /S /GoTo /D (subsection.8.21.4) >>
+>>
+endobj
+2690 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 126.497 246.022 135.954]
+/A << /S /GoTo /D (subsubsection.8.21.4.1) >>
+>>
+endobj
+2691 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 108.933 238.177 119.309]
+/A << /S /GoTo /D (subsubsection.8.21.4.2) >>
+>>
+endobj
+2692 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 92.396 227.821 102.665]
+/A << /S /GoTo /D (subsubsection.8.21.4.3) >>
+>>
+endobj
+2693 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 77.456 230.083 86.227]
+/A << /S /GoTo /D (section.8.22) >>
+>>
+endobj
+2695 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F54 2381 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2742 0 obj
+<<
+/Length 1231      
+/Filter /FlateDecode
+>>
+stream
+x��[[o�H}�W��
+K�d]i�]�V{Q�KE&�1Ym��~��<`*m�<D@0c��3��f��=@��[�u�e
+(����$�J 5���\���������?-l��^�T���u}���~� H�ߖGN��rF���ZZ�8s>���cq-���#%�@
+��	�8���o�|0���}J����y{�0O��e���D�
��"�{>�8��O���SmLH�6�����'9�o�I:�A^��Y�ߟV�~�v:\LL2TQ�y�(R������o�X�(j�o��gđ��; Q|������/��m
���`(�J��偟E�A.$�d�S�2���\���>�:�A�U�]B�{�O3�b
++�.���E�$�%[7�e:��:��F>�2v�r}��J�n�����p�����&>O�oLL��[���3��8���4��/���d���ΠTdG��{������7E��i���h�"�T��$C�M$A{����H�H��������NC��EO�IK���4���%�U{��s?S"T��(�U�4T���
+M��4���,5Co:������'M�ۢ7�Z�z+ ����{�
+�u_�D��/9����;�.
+��������'����e�[c����Q;�g��9ż��[8Nc=郭��9��}���k-�"��P�`^d�k|Ao6��J�B.V��\m��)-!ָ�r+$�rjV6lDž�f������W�I�ۤn�8i~��t�t��6Xh��w�^5��ma�^ıOĚ�Ť&�W%�U�`v7������u�un��z
+��S0E%5���f��^���,�xoj�9��̈́2�l����|x�,�|�*��@co���1��nd�[�IFE���d�e�`�8
�	E�~��c��>XW�1Ț+y�&��-������P�~�Vȹ��!�K��B����8:�#��ꎝ��ho�H�ܴ�Iˑ�8_"�ڱ��KJ�%�wOad�ǫ�6�v���S=�O%���9pim!?��<d�Yc�A`�#i� �A]�(�ê�)�{YyXh��'*���@�5�2*F���Z�7���?5�L��kg�ʤ��A���<
+OOe�׭̥d��&���K6�x�o�������ΎH�ڏuT�#ߜCDq�'��3�)Xf�[�̾Ba�\�we3[7*�{��N����`cx�}�����I
+endstream
+endobj
+2741 0 obj
+<<
+/Type /Page
+/Contents 2742 0 R
+/Resources 2740 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2517 0 R
+/Annots [ 2694 0 R 2698 0 R 2699 0 R 2700 0 R 2701 0 R 2702 0 R 2703 0 R 2704 0 R 2705 0 R 2706 0 R 2707 0 R 2708 0 R 2709 0 R 2710 0 R 2711 0 R 2712 0 R 2713 0 R 2714 0 R 2715 0 R 2716 0 R 2717 0 R 2718 0 R 2719 0 R 2720 0 R 2721 0 R 2722 0 R 2723 0 R 2724 0 R 2725 0 R 2726 0 R 2727 0 R 2728 0 R 2729 0 R 2730 0 R 2731 0 R 2732 0 R 2733 0 R 2734 0 R 2735 0 R 2736 0 R 2737 0 R 2738 0 R ]
+>>
+endobj
+2694 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 758.177 217.485 768.446]
+/A << /S /GoTo /D (subsection.8.22.1) >>
+>>
+endobj
+2698 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 743.236 298.844 752.007]
+/A << /S /GoTo /D (subsection.8.22.2) >>
+>>
+endobj
+2699 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 724.888 208.902 735.363]
+/A << /S /GoTo /D (subsubsection.8.22.2.1) >>
+>>
+endobj
+2700 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 708.244 216.651 718.718]
+/A << /S /GoTo /D (subsubsection.8.22.2.2) >>
+>>
+endobj
+2701 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 693.303 269.677 701.868]
+/A << /S /GoTo /D (subsection.8.22.3) >>
+>>
+endobj
+2702 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 674.955 197.407 685.429]
+/A << /S /GoTo /D (subsubsection.8.22.3.1) >>
+>>
+endobj
+2703 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 658.31 203.379 668.785]
+/A << /S /GoTo /D (subsubsection.8.22.3.2) >>
+>>
+endobj
+2704 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 641.666 202.392 652.14]
+/A << /S /GoTo /D (subsubsection.8.22.3.3) >>
+>>
+endobj
+2705 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 625.021 211.986 635.496]
+/A << /S /GoTo /D (subsubsection.8.22.3.4) >>
+>>
+endobj
+2706 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 608.269 228.056 618.851]
+/A << /S /GoTo /D (section.8.23) >>
+>>
+endobj
+2707 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 591.732 217.485 602]
+/A << /S /GoTo /D (subsection.8.23.1) >>
+>>
+endobj
+2708 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 576.791 298.844 585.562]
+/A << /S /GoTo /D (subsection.8.23.2) >>
+>>
+endobj
+2709 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 558.335 208.364 568.918]
+/A << /S /GoTo /D (subsubsection.8.23.2.1) >>
+>>
+endobj
+2710 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 541.691 216.113 552.273]
+/A << /S /GoTo /D (subsubsection.8.23.2.2) >>
+>>
+endobj
+2711 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 526.858 269.677 535.422]
+/A << /S /GoTo /D (subsection.8.23.3) >>
+>>
+endobj
+2712 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 508.51 204.876 518.984]
+/A << /S /GoTo /D (subsubsection.8.23.3.1) >>
+>>
+endobj
+2713 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 491.865 247.008 502.34]
+/A << /S /GoTo /D (subsubsection.8.23.3.2) >>
+>>
+endobj
+2714 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 475.113 198.896 485.695]
+/A << /S /GoTo /D (subsubsection.8.23.3.3) >>
+>>
+endobj
+2715 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 460.28 220.578 469.051]
+/A << /S /GoTo /D (section.8.24) >>
+>>
+endobj
+2716 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 441.931 217.485 452.2]
+/A << /S /GoTo /D (subsection.8.24.1) >>
+>>
+endobj
+2717 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 426.991 298.844 435.761]
+/A << /S /GoTo /D (subsection.8.24.2) >>
+>>
+endobj
+2718 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 408.642 229.12 419.117]
+/A << /S /GoTo /D (subsubsection.8.24.2.1) >>
+>>
+endobj
+2719 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 391.998 229.12 402.472]
+/A << /S /GoTo /D (subsubsection.8.24.2.2) >>
+>>
+endobj
+2720 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 375.353 229.12 385.828]
+/A << /S /GoTo /D (subsubsection.8.24.2.3) >>
+>>
+endobj
+2721 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 358.709 210.123 369.183]
+/A << /S /GoTo /D (subsubsection.8.24.2.4) >>
+>>
+endobj
+2722 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 343.768 269.677 352.333]
+/A << /S /GoTo /D (subsection.8.24.3) >>
+>>
+endobj
+2723 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 325.42 207.772 335.894]
+/A << /S /GoTo /D (subsubsection.8.24.3.1) >>
+>>
+endobj
+2724 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 308.775 212.354 319.25]
+/A << /S /GoTo /D (subsubsection.8.24.3.2) >>
+>>
+endobj
+2725 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 292.131 215.331 302.605]
+/A << /S /GoTo /D (subsubsection.8.24.3.3) >>
+>>
+endobj
+2726 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 275.486 213.259 285.961]
+/A << /S /GoTo /D (subsubsection.8.24.3.4) >>
+>>
+endobj
+2727 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 258.842 215.707 269.316]
+/A << /S /GoTo /D (subsubsection.8.24.3.5) >>
+>>
+endobj
+2728 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 243.901 318.256 252.465]
+/A << /S /GoTo /D (subsection.8.24.4) >>
+>>
+endobj
+2729 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 225.553 222.766 235.821]
+/A << /S /GoTo /D (subsubsection.8.24.4.1) >>
+>>
+endobj
+2730 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 208.908 222.766 219.176]
+/A << /S /GoTo /D (subsubsection.8.24.4.2) >>
+>>
+endobj
+2731 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 192.264 315.48 202.738]
+/A << /S /GoTo /D (section.8.25) >>
+>>
+endobj
+2732 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 175.619 217.485 185.887]
+/A << /S /GoTo /D (subsection.8.25.1) >>
+>>
+endobj
+2733 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 160.678 298.844 169.449]
+/A << /S /GoTo /D (subsection.8.25.2) >>
+>>
+endobj
+2734 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 142.33 214.667 152.805]
+/A << /S /GoTo /D (subsubsection.8.25.2.1) >>
+>>
+endobj
+2735 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 125.686 222.416 136.16]
+/A << /S /GoTo /D (subsubsection.8.25.2.2) >>
+>>
+endobj
+2736 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 110.745 269.677 119.309]
+/A << /S /GoTo /D (subsection.8.25.3) >>
+>>
+endobj
+2737 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 92.396 203.702 102.871]
+/A << /S /GoTo /D (subsubsection.8.25.3.1) >>
+>>
+endobj
+2738 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 75.752 207.369 86.227]
+/A << /S /GoTo /D (subsubsection.8.25.3.2) >>
+>>
+endobj
+2740 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F25 2380 0 R /F54 2381 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2786 0 obj
+<<
+/Length 1073      
+/Filter /FlateDecode
+>>
+stream
+x��Ms�8��|
+���_{h7i��If�xgi'�J�	6g�~����`cT�fS�l� ����_�#�L�������S@A-�W���� 5��h�����s�ap
�
p�=0�*!�T
+*��h6����8��@�j�W�9�S���o������k��,&���J�z��\) ��ꎂ�C
+i8$R�"��,�!E�<?`L���(�ë�W�WC�e��!�<���;hc�ݴb*�TZ2� ��a��x�6+i�����\OL'`���`V�k��y6M�edJi_�*7݊��[֩X�;������:�%�t�[2FA����:e��G��Z�i[���٢s�c�գyy�u������n�����͐��1*�/Mv=J�<��'$<�m�'#�������1�tob�EH)���&�t�t�͍��{�:p�j[���qf�H����B�!k[���L;u-����DMm��{;�=%j큻�ϫ�$mQ�����})旊��8��Y:���$��B}s��}���5��zf�f�\'�ާ׉S�f�TSK˛
w���{�k��Iڢd�����F��uP�$����mY�nzk�4�j���ʯb�;/\[�2B�p��]�+7�8ys|vg�fW.�א��,L�$4ֿfLr8�;�m���btt�1��~/�PD&wv�1�;��n�P�_T	�馢I��(�?�f�S۞�pA����ݖ�xWċbj��R��y0�CΠT�)u;\w�G3�W���;�:{��?��8��+I~e���ݙw�g����̻���]:�;����wĆ����'s�����_t�����_�{޸<(_m�k܄���= �wV����?��A�{8*���2��lY��;�^<�Om��3{��D�,-R�ӛ�&��*�ߞ�3���=�/�Vh��zNI�zm��=M�9rL���"`��r�c�{�vL�������~�������-ě��`��p�`�i´�J�i���ǻ���������L#F=�.�f޵���?��1R�!���)���U��؜a�b���
+ҩI�"Όݐ�%,;�����c�*L����_�,
+endstream
+endobj
+2785 0 obj
+<<
+/Type /Page
+/Contents 2786 0 R
+/Resources 2784 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2787 0 R
+/Annots [ 2739 0 R 2743 0 R 2744 0 R 2745 0 R 2746 0 R 2747 0 R 2748 0 R 2749 0 R 2750 0 R 2751 0 R 2752 0 R 2753 0 R 2754 0 R 2755 0 R 2756 0 R 2757 0 R 2758 0 R 2759 0 R 2760 0 R 2761 0 R 2762 0 R 2763 0 R 2764 0 R 2765 0 R 2766 0 R 2767 0 R 2768 0 R 2769 0 R 2770 0 R 2771 0 R 2772 0 R 2773 0 R 2774 0 R 2775 0 R 2776 0 R 2777 0 R 2778 0 R 2779 0 R 2780 0 R 2781 0 R 2782 0 R ]
+>>
+endobj
+2739 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 758.07 222.719 768.652]
+/A << /S /GoTo /D (subsubsection.8.25.3.3) >>
+>>
+endobj
+2743 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 741.425 226.816 752.007]
+/A << /S /GoTo /D (subsubsection.8.25.3.4) >>
+>>
+endobj
+2744 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 724.888 243.26 735.363]
+/A << /S /GoTo /D (subsubsection.8.25.3.5) >>
+>>
+endobj
+2745 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 708.244 199.891 718.718]
+/A << /S /GoTo /D (subsubsection.8.25.3.6) >>
+>>
+endobj
+2746 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 691.599 220.988 702.074]
+/A << /S /GoTo /D (subsubsection.8.25.3.7) >>
+>>
+endobj
+2747 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 674.955 192.915 685.429]
+/A << /S /GoTo /D (subsubsection.8.25.3.8) >>
+>>
+endobj
+2748 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 658.31 200.393 668.785]
+/A << /S /GoTo /D (subsubsection.8.25.3.9) >>
+>>
+endobj
+2749 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 641.666 247.51 652.14]
+/A << /S /GoTo /D (subsubsection.8.25.3.10) >>
+>>
+endobj
+2750 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 625.021 216.846 635.496]
+/A << /S /GoTo /D (subsubsection.8.25.3.11) >>
+>>
+endobj
+2751 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 608.269 203.881 618.851]
+/A << /S /GoTo /D (subsubsection.8.25.3.12) >>
+>>
+endobj
+2752 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 591.732 214.855 602.207]
+/A << /S /GoTo /D (subsubsection.8.25.3.13) >>
+>>
+endobj
+2753 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 575.088 210.354 585.562]
+/A << /S /GoTo /D (subsubsection.8.25.3.14) >>
+>>
+endobj
+2754 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 558.443 206.499 568.918]
+/A << /S /GoTo /D (subsubsection.8.25.3.15) >>
+>>
+endobj
+2755 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 543.502 254.228 552.067]
+/A << /S /GoTo /D (subsection.8.25.4) >>
+>>
+endobj
+2756 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 526.858 219.608 535.422]
+/A << /S /GoTo /D (subsubsection.8.25.4.1) >>
+>>
+endobj
+2757 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 510.213 195.919 518.778]
+/A << /S /GoTo /D (subsubsection.8.25.4.2) >>
+>>
+endobj
+2758 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 493.569 200.904 502.133]
+/A << /S /GoTo /D (subsubsection.8.25.4.3) >>
+>>
+endobj
+2759 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 467.036 162.538 475.681]
+/A << /S /GoTo /D (chapter.9) >>
+>>
+endobj
+2760 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 450.319 215.584 459.09]
+/A << /S /GoTo /D (section.9.1) >>
+>>
+endobj
+2761 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 431.864 274.797 442.446]
+/A << /S /GoTo /D (section.9.2) >>
+>>
+endobj
+2762 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 415.327 226.254 425.801]
+/A << /S /GoTo /D (subsection.9.2.1) >>
+>>
+endobj
+2763 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 398.682 187.939 408.951]
+/A << /S /GoTo /D (subsubsection.9.2.1.1) >>
+>>
+endobj
+2764 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 381.93 171.937 392.512]
+/A << /S /GoTo /D (section.9.3) >>
+>>
+endobj
+2765 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 365.286 268.324 375.868]
+/A << /S /GoTo /D (section.9.4) >>
+>>
+endobj
+2766 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 348.749 226.254 359.223]
+/A << /S /GoTo /D (subsection.9.4.1) >>
+>>
+endobj
+2767 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 332.104 187.939 342.372]
+/A << /S /GoTo /D (subsubsection.9.4.1.1) >>
+>>
+endobj
+2768 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 315.352 171.937 325.934]
+/A << /S /GoTo /D (section.9.5) >>
+>>
+endobj
+2769 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 298.707 265.329 309.29]
+/A << /S /GoTo /D (section.9.6) >>
+>>
+endobj
+2770 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 282.063 162.468 292.645]
+/A << /S /GoTo /D (section.9.7) >>
+>>
+endobj
+2771 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 265.418 258.855 276.001]
+/A << /S /GoTo /D (section.9.8) >>
+>>
+endobj
+2772 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 248.774 162.468 259.356]
+/A << /S /GoTo /D (section.9.9) >>
+>>
+endobj
+2773 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 233.622 255.323 242.712]
+/A << /S /GoTo /D (section.9.10) >>
+>>
+endobj
+2774 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 217.296 264.692 226.067]
+/A << /S /GoTo /D (subsection.9.10.1) >>
+>>
+endobj
+2775 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 199.759 243.234 209.216]
+/A << /S /GoTo /D (subsubsection.9.10.1.1) >>
+>>
+endobj
+2776 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 184.007 152.462 192.572]
+/A << /S /GoTo /D (section.9.11) >>
+>>
+endobj
+2777 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 167.362 253.834 176.133]
+/A << /S /GoTo /D (section.9.12) >>
+>>
+endobj
+2778 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 150.718 264.692 159.489]
+/A << /S /GoTo /D (subsection.9.12.1) >>
+>>
+endobj
+2779 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 133.181 243.234 142.638]
+/A << /S /GoTo /D (subsubsection.9.12.1.1) >>
+>>
+endobj
+2780 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 117.429 152.462 125.994]
+/A << /S /GoTo /D (section.9.13) >>
+>>
+endobj
+2781 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 100.784 251.844 109.555]
+/A << /S /GoTo /D (section.9.14) >>
+>>
+endobj
+2782 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 84.14 264.692 92.911]
+/A << /S /GoTo /D (subsection.9.14.1) >>
+>>
+endobj
+2784 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2832 0 obj
+<<
+/Length 1057      
+/Filter /FlateDecode
+>>
+stream
+x���r�0��<��x��]�mh��$�ۤ�:.e&1)�6y��c*�E&��ڀ�	�w��H�XF`�o<�L}!(���H�@�Ap������5x����
��|�=��"�g���$��R_�߫o��)�&ǧ`�x�@��Ǚ�����P�q6�!ȕR`����!fC쵈T��ǃCJ�����4���q�Rф^������?�ߡSM�q�BgZ�A�ha��H�g8��Q��{8�N�q���yLCo�J�î�#��������m[��ӗ��h}ԏ�{5�Y���Y?Ԥ5!�G���%��(�Mׇ{��H<YL�q��4�8���h��n���b�$5��r��D�r�t������*����z7J��Jʑ�I�N��ʝ�}���ptڹ���
+���Jn`X>-��Z�$�Cj�0��i���k��[���`��<sA�BA�ɛ���Z�L�v7��G���4)u&q4�8��r��pd��N�*%����rZ���Z��{�<������4U��:#.��1�˫uL�FǤ��D��^
�Rt{G��N���n{��^�9B��H��u�!�*»T������\m���ge���l`,Ca�;r�1�����;��ݏ�ӋY��e�-R�����8��A5�%9�� &�DŽ�K�.�"�o�RZ ����r9�Ó;�i$�r+�/����)�E��7�hڔ)#mR�Y��[CXX���S�ו�}Ì�r��jH�ვ�Di&	V���h���b�|�?�R� ��������<\��!i;'o��y[�0�����F�(����W����a$}Ǹ�i5���
�Sg������+�@�y�	�pou7�`L�Y��cd�	���8�qV�R9��n���mn׎z#�r#T��Qm�l�jOQn	��$!�}#�ʶ��U�Ym2⛤3֝�awo�"�d\XP��	fVT�]Hr��7�φL�_���7�5��;�9���*7�g7�H�`���g�s�<C��
+�~�$��":YGj�;�*�0�~y5��z���9�CG�
+endstream
+endobj
+2831 0 obj
+<<
+/Type /Page
+/Contents 2832 0 R
+/Resources 2830 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2787 0 R
+/Annots [ 2783 0 R 2788 0 R 2789 0 R 2790 0 R 2791 0 R 2792 0 R 2793 0 R 2794 0 R 2795 0 R 2796 0 R 2797 0 R 2798 0 R 2799 0 R 2800 0 R 2801 0 R 2802 0 R 2803 0 R 2804 0 R 2805 0 R 2806 0 R 2807 0 R 2808 0 R 2809 0 R 2810 0 R 2811 0 R 2812 0 R 2813 0 R 2814 0 R 2815 0 R 2816 0 R 2817 0 R 2818 0 R 2819 0 R 2820 0 R 2821 0 R 2822 0 R 2823 0 R 2824 0 R 2825 0 R 2826 0 R 2827 0 R 2828 0 R ]
+>>
+endobj
+2783 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 758.989 243.234 768.446]
+/A << /S /GoTo /D (subsubsection.9.14.1.1) >>
+>>
+endobj
+2788 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 743.236 152.462 751.801]
+/A << /S /GoTo /D (section.9.15) >>
+>>
+endobj
+2789 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 726.592 250.355 735.363]
+/A << /S /GoTo /D (section.9.16) >>
+>>
+endobj
+2790 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 709.947 264.692 718.718]
+/A << /S /GoTo /D (subsection.9.16.1) >>
+>>
+endobj
+2791 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 692.411 243.234 701.868]
+/A << /S /GoTo /D (subsubsection.9.16.1.1) >>
+>>
+endobj
+2792 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 676.658 152.462 685.223]
+/A << /S /GoTo /D (section.9.17) >>
+>>
+endobj
+2793 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 660.014 248.849 668.785]
+/A << /S /GoTo /D (section.9.18) >>
+>>
+endobj
+2794 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 643.369 152.462 651.934]
+/A << /S /GoTo /D (section.9.19) >>
+>>
+endobj
+2795 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 625.021 287.35 635.496]
+/A << /S /GoTo /D (section.9.20) >>
+>>
+endobj
+2796 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 608.377 184.489 618.645]
+/A << /S /GoTo /D (section.9.21) >>
+>>
+endobj
+2797 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 591.732 277.882 602.207]
+/A << /S /GoTo /D (section.9.22) >>
+>>
+endobj
+2798 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 575.088 175.021 585.356]
+/A << /S /GoTo /D (section.9.23) >>
+>>
+endobj
+2799 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 558.335 291.878 568.918]
+/A << /S /GoTo /D (section.9.24) >>
+>>
+endobj
+2800 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 541.691 189.017 552.273]
+/A << /S /GoTo /D (section.9.25) >>
+>>
+endobj
+2801 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 525.154 263.294 535.629]
+/A << /S /GoTo /D (section.9.26) >>
+>>
+endobj
+2802 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 510.213 264.692 518.984]
+/A << /S /GoTo /D (subsection.9.26.1) >>
+>>
+endobj
+2803 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 492.676 276.767 502.34]
+/A << /S /GoTo /D (subsubsection.9.26.1.1) >>
+>>
+endobj
+2804 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 475.221 160.433 485.489]
+/A << /S /GoTo /D (section.9.27) >>
+>>
+endobj
+2805 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 459.961 253.825 469.051]
+/A << /S /GoTo /D (section.9.28) >>
+>>
+endobj
+2806 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 443.635 150.965 452.2]
+/A << /S /GoTo /D (section.9.29) >>
+>>
+endobj
+2807 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 425.287 263.294 435.761]
+/A << /S /GoTo /D (section.9.30) >>
+>>
+endobj
+2808 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 408.642 161.922 418.911]
+/A << /S /GoTo /D (section.9.31) >>
+>>
+endobj
+2809 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 393.701 253.825 402.472]
+/A << /S /GoTo /D (section.9.32) >>
+>>
+endobj
+2810 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 377.057 152.453 385.622]
+/A << /S /GoTo /D (section.9.33) >>
+>>
+endobj
+2811 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 358.709 251.064 369.183]
+/A << /S /GoTo /D (section.9.34) >>
+>>
+endobj
+2812 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 342.064 149.691 352.539]
+/A << /S /GoTo /D (section.9.35) >>
+>>
+endobj
+2813 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 327.123 241.595 335.894]
+/A << /S /GoTo /D (section.9.36) >>
+>>
+endobj
+2814 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 310.479 140.223 319.25]
+/A << /S /GoTo /D (section.9.37) >>
+>>
+endobj
+2815 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 292.131 238.798 302.605]
+/A << /S /GoTo /D (section.9.38) >>
+>>
+endobj
+2816 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 275.486 137.426 285.755]
+/A << /S /GoTo /D (section.9.39) >>
+>>
+endobj
+2817 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 258.842 235.319 269.316]
+/A << /S /GoTo /D (section.9.40) >>
+>>
+endobj
+2818 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 242.197 137.426 252.465]
+/A << /S /GoTo /D (section.9.41) >>
+>>
+endobj
+2819 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 225.553 251.521 236.027]
+/A << /S /GoTo /D (section.9.42) >>
+>>
+endobj
+2820 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 208.908 152.139 219.176]
+/A << /S /GoTo /D (section.9.43) >>
+>>
+endobj
+2821 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 193.967 242.052 202.738]
+/A << /S /GoTo /D (section.9.44) >>
+>>
+endobj
+2822 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 177.323 142.671 185.887]
+/A << /S /GoTo /D (section.9.45) >>
+>>
+endobj
+2823 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 158.867 248.535 169.449]
+/A << /S /GoTo /D (section.9.46) >>
+>>
+endobj
+2824 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 142.222 149.154 152.805]
+/A << /S /GoTo /D (section.9.47) >>
+>>
+endobj
+2825 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 125.578 239.067 136.16]
+/A << /S /GoTo /D (section.9.48) >>
+>>
+endobj
+2826 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 109.041 231.239 119.516]
+/A << /S /GoTo /D (subsection.9.48.1) >>
+>>
+endobj
+2827 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 93.208 236.267 102.871]
+/A << /S /GoTo /D (subsubsection.9.48.1.1) >>
+>>
+endobj
+2828 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 76.563 223.329 86.02]
+/A << /S /GoTo /D (subsubsection.9.48.1.2) >>
+>>
+endobj
+2830 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2877 0 obj
+<<
+/Length 1193      
+/Filter /FlateDecode
+>>
+stream
+x��\[s�F~�W���zog/�LҚL2I�����d(X.�6��]2���d#R�<2F,�w�=�[ACDЛ��n�#4��H�Q�J�
+)ð��;@�ޏ0���w��n����$�"E��)��f�ǭ��
�s���h����1�1n��֟-�~�x��p=����p��z4`M�H�Ir=㷙��M8�����w�+L�F�mJ����� S���y����"k����c�J,$$�I�M�7�o�_�:��0!�?�	GA�����ωL��d�4R��^�^�/�AˣZ���F�F�l���J)�7P��?w�?������XAd�p5
+�A4/=�%�u�W�?��=�5����1Hو^n}���(V;�Mq嫴��?�f�?5�Dͯ���|J�Ÿ|��kg]��Y7�)xs.����Σ$�悒
��5ǜv��G�;�E�r�xqsd[�N8\L�B�LH��G�Æ��/^;�����pŏ~���꩷�S�*F7zv��)֊�E�i��Rԗ������~%ًc�`#�\f�F`e�"�_�g�RoJ049#���O���|3�/��VB''�E���s�����,;
+�\f��R��o?\9s���d��$�>��&fK�`�a©�T�"�f����l>��v�	���3���/��P'<����9��dO���|J4���,Q��k��I��u���&�s�#�R��K�O����6��Kw%�y}�.��K��C\+���������s��&�r�&�C�׾�h?7�k��BǤ���*�~�M�/w��>�Ξ�J	N�ZCP���	��r*�OQNP�ɗ��}�6�1V6�x}}�ޕ?1��yq�!%9?�,GA]�H�P�&kWX�_�B8�j'Ys�W�U��!%@Α,�,K.g�j�*��83�t���:��:�-O�i4�P������ėc���kfTF�URb��뗬��j'F���e1N�i.U!cǛ��΍��9��{gg��5o"�g��xd��E�3�|\���-�=����R3ś��E���R�=��߃~��9�
�ۥ���������MP�S �(�aNU]���]�R.�M��4�v��������� ^o���uo̟y��ԢF0����;�V�+�
+�9�v]I���`i+��Q0�̓AL�W��!ٌY���ah�7�N�����=�^�
+endstream
+endobj
+2876 0 obj
+<<
+/Type /Page
+/Contents 2877 0 R
+/Resources 2875 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2787 0 R
+/Annots [ 2829 0 R 2833 0 R 2834 0 R 2835 0 R 2836 0 R 2837 0 R 2838 0 R 2839 0 R 2840 0 R 2841 0 R 2842 0 R 2843 0 R 2844 0 R 2845 0 R 2846 0 R 2847 0 R 2848 0 R 2849 0 R 2850 0 R 2851 0 R 2852 0 R 2853 0 R 2854 0 R 2855 0 R 2856 0 R 2857 0 R 2858 0 R 2859 0 R 2860 0 R 2861 0 R 2862 0 R 2863 0 R 2864 0 R 2865 0 R 2866 0 R 2867 0 R 2868 0 R 2869 0 R 2870 0 R 2871 0 R 2872 0 R 2873 0 R ]
+>>
+endobj
+2829 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 758.07 139.685 768.652]
+/A << /S /GoTo /D (section.9.49) >>
+>>
+endobj
+2833 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 741.533 260.003 752.007]
+/A << /S /GoTo /D (section.9.50) >>
+>>
+endobj
+2834 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 724.888 162.11 735.363]
+/A << /S /GoTo /D (section.9.51) >>
+>>
+endobj
+2835 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 709.947 250.534 718.718]
+/A << /S /GoTo /D (section.9.52) >>
+>>
+endobj
+2836 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 693.303 152.641 702.074]
+/A << /S /GoTo /D (section.9.53) >>
+>>
+endobj
+2837 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 674.955 254.471 685.429]
+/A << /S /GoTo /D (section.9.54) >>
+>>
+endobj
+2838 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 658.31 156.578 668.579]
+/A << /S /GoTo /D (section.9.55) >>
+>>
+endobj
+2839 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 643.369 245.002 652.14]
+/A << /S /GoTo /D (section.9.56) >>
+>>
+endobj
+2840 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 626.725 147.109 635.29]
+/A << /S /GoTo /D (section.9.57) >>
+>>
+endobj
+2841 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 608.377 244.913 618.851]
+/A << /S /GoTo /D (section.9.58) >>
+>>
+endobj
+2842 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 591.732 147.02 602]
+/A << /S /GoTo /D (section.9.59) >>
+>>
+endobj
+2843 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 576.791 235.444 585.562]
+/A << /S /GoTo /D (section.9.60) >>
+>>
+endobj
+2844 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 560.147 137.551 568.711]
+/A << /S /GoTo /D (section.9.61) >>
+>>
+endobj
+2845 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 541.691 246.858 552.273]
+/A << /S /GoTo /D (section.9.62) >>
+>>
+endobj
+2846 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 526.858 234.305 535.422]
+/A << /S /GoTo /D (subsection.9.62.1) >>
+>>
+endobj
+2847 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 508.51 314.563 518.984]
+/A << /S /GoTo /D (subsubsection.9.62.1.1) >>
+>>
+endobj
+2848 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 491.865 309.587 502.34]
+/A << /S /GoTo /D (subsubsection.9.62.1.2) >>
+>>
+endobj
+2849 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 475.113 301.75 485.695]
+/A << /S /GoTo /D (subsubsection.9.62.1.3) >>
+>>
+endobj
+2850 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 458.468 148.965 468.844]
+/A << /S /GoTo /D (section.9.63) >>
+>>
+endobj
+2851 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 441.824 237.39 452.406]
+/A << /S /GoTo /D (section.9.64) >>
+>>
+endobj
+2852 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 425.179 139.497 435.555]
+/A << /S /GoTo /D (section.9.65) >>
+>>
+endobj
+2853 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 408.642 255.968 419.117]
+/A << /S /GoTo /D (section.9.66) >>
+>>
+endobj
+2854 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 391.998 158.075 402.266]
+/A << /S /GoTo /D (section.9.67) >>
+>>
+endobj
+2855 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 377.057 246.5 385.828]
+/A << /S /GoTo /D (section.9.68) >>
+>>
+endobj
+2856 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 360.412 148.607 368.977]
+/A << /S /GoTo /D (section.9.69) >>
+>>
+endobj
+2857 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 342.064 272.278 352.539]
+/A << /S /GoTo /D (section.9.70) >>
+>>
+endobj
+2858 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 327.123 234.305 335.688]
+/A << /S /GoTo /D (subsection.9.70.1) >>
+>>
+endobj
+2859 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 308.775 307.596 319.25]
+/A << /S /GoTo /D (subsubsection.9.70.1.1) >>
+>>
+endobj
+2860 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 292.131 309.076 302.605]
+/A << /S /GoTo /D (subsubsection.9.70.1.2) >>
+>>
+endobj
+2861 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 275.486 304.099 285.961]
+/A << /S /GoTo /D (subsubsection.9.70.1.3) >>
+>>
+endobj
+2862 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 258.734 296.263 269.316]
+/A << /S /GoTo /D (subsubsection.9.70.1.4) >>
+>>
+endobj
+2863 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 242.197 313.837 252.672]
+/A << /S /GoTo /D (subsubsection.9.70.1.5) >>
+>>
+endobj
+2864 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 225.553 308.861 236.027]
+/A << /S /GoTo /D (subsubsection.9.70.1.6) >>
+>>
+endobj
+2865 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 208.8 301.024 219.383]
+/A << /S /GoTo /D (subsubsection.9.70.1.7) >>
+>>
+endobj
+2866 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 192.264 174.385 202.532]
+/A << /S /GoTo /D (section.9.71) >>
+>>
+endobj
+2867 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 175.619 262.809 186.094]
+/A << /S /GoTo /D (section.9.72) >>
+>>
+endobj
+2868 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 158.975 164.916 169.243]
+/A << /S /GoTo /D (section.9.73) >>
+>>
+endobj
+2869 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 142.33 247.495 152.805]
+/A << /S /GoTo /D (section.9.74) >>
+>>
+endobj
+2870 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 125.686 149.602 136.16]
+/A << /S /GoTo /D (section.9.75) >>
+>>
+endobj
+2871 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 109.041 238.026 119.516]
+/A << /S /GoTo /D (section.9.76) >>
+>>
+endobj
+2872 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 92.396 140.134 102.871]
+/A << /S /GoTo /D (section.9.77) >>
+>>
+endobj
+2873 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 75.752 262.54 86.227]
+/A << /S /GoTo /D (section.9.78) >>
+>>
+endobj
+2875 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2909 0 obj
+<<
+/Length 860       
+/Filter /FlateDecode
+>>
+stream
+x��KO�@�������{�l�*���
e�:&D"&
���I��1�($R�8&�}眙�W&h�:�"�w*�6Jq�!M0(��aXQ�э�2��F�I�����?���:�L�d���Է�] ���w~�	ɱ�~~@��7����37�*F���h@b �)�b����!��_���$���(���@'��|��砛P+�� �R懝��߷>5� �*f�!UX	��H���$�]=���.�}~���!�?]�w'~:I�$u�3�E��=�bɚ����E�6P<�@�00'Wq6H*�Y�I��-���^ ����M^=�:���4[@��6���f��Hh��K�
+�r
G[�m�-�'B�$7(��+S]$���*P�fKIJ�k-sU?��Ei��ݱ�4/�2�-���2⿎ӧ�ƨ��ֵca��zd�#%�D�Q�U"���G��=��J5�V���m�@����T%�۠݉��.�
���f+J�W�C����S���v.Y��Y�£��7��Y���RԔV�f�nYM)"
+;���,�����1y��4����+���Ք9Šy�՘.8���Hbh�P�M;͡�R`
��m�"�����
+z��(��k���Ǘ���c�O�i�ڙB���d�&�&Q���s��걜�(!UVo�� ��W��;%�5�}�MK������z�����$�6��'x�yЪ�/:?�H�2t��Od�����fxed�w��k�����f��R�`s�J��F��Y�H��?o��lj#8`	`O�W1j6������p����{�
+3��l��օR
+{Ķ�˟}�f�$����N�f���1���� ��g�����
+endstream
+endobj
+2908 0 obj
+<<
+/Type /Page
+/Contents 2909 0 R
+/Resources 2907 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2787 0 R
+/Annots [ 2874 0 R 2878 0 R 2879 0 R 2880 0 R 2881 0 R 2882 0 R 2883 0 R 2884 0 R 2885 0 R 2886 0 R 2887 0 R 2888 0 R 2889 0 R 2890 0 R 2891 0 R 2892 0 R 2893 0 R 2894 0 R 2895 0 R 2896 0 R 2897 0 R 2898 0 R 2899 0 R 2900 0 R 2901 0 R 2902 0 R 2903 0 R 2904 0 R 2905 0 R 2906 0 R ]
+>>
+endobj
+2874 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 758.177 164.647 768.446]
+/A << /S /GoTo /D (section.9.79) >>
+>>
+endobj
+2878 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 743.236 253.072 752.007]
+/A << /S /GoTo /D (section.9.80) >>
+>>
+endobj
+2879 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 726.592 155.179 735.157]
+/A << /S /GoTo /D (section.9.81) >>
+>>
+endobj
+2880 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 708.136 247.863 718.718]
+/A << /S /GoTo /D (section.9.82) >>
+>>
+endobj
+2881 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 691.492 149.97 701.868]
+/A << /S /GoTo /D (section.9.83) >>
+>>
+endobj
+2882 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 674.847 238.394 685.429]
+/A << /S /GoTo /D (section.9.84) >>
+>>
+endobj
+2883 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 658.203 140.501 668.579]
+/A << /S /GoTo /D (section.9.85) >>
+>>
+endobj
+2884 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 641.666 241.371 652.14]
+/A << /S /GoTo /D (section.9.86) >>
+>>
+endobj
+2885 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 625.021 143.478 635.29]
+/A << /S /GoTo /D (section.9.87) >>
+>>
+endobj
+2886 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 610.08 231.903 618.851]
+/A << /S /GoTo /D (section.9.88) >>
+>>
+endobj
+2887 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 593.436 134.01 602]
+/A << /S /GoTo /D (section.9.89) >>
+>>
+endobj
+2888 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 575.088 244.787 585.562]
+/A << /S /GoTo /D (section.9.90) >>
+>>
+endobj
+2889 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 558.443 146.894 568.711]
+/A << /S /GoTo /D (section.9.91) >>
+>>
+endobj
+2890 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 541.799 253.664 552.273]
+/A << /S /GoTo /D (section.9.92) >>
+>>
+endobj
+2891 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 525.154 155.771 535.422]
+/A << /S /GoTo /D (section.9.93) >>
+>>
+endobj
+2892 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 510.213 244.195 518.984]
+/A << /S /GoTo /D (section.9.94) >>
+>>
+endobj
+2893 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 493.569 146.302 502.133]
+/A << /S /GoTo /D (section.9.95) >>
+>>
+endobj
+2894 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 475.221 243.496 485.695]
+/A << /S /GoTo /D (section.9.96) >>
+>>
+endobj
+2895 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.719 460.28 234.305 468.844]
+/A << /S /GoTo /D (subsection.9.96.1) >>
+>>
+endobj
+2896 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.591 441.931 201.881 452.406]
+/A << /S /GoTo /D (subsubsection.9.96.1.1) >>
+>>
+endobj
+2897 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 425.287 143.119 435.555]
+/A << /S /GoTo /D (section.9.97) >>
+>>
+endobj
+2898 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 408.642 260.442 419.117]
+/A << /S /GoTo /D (section.9.98) >>
+>>
+endobj
+2899 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 391.998 164.055 402.266]
+/A << /S /GoTo /D (section.9.99) >>
+>>
+endobj
+2900 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 377.057 255.959 385.828]
+/A << /S /GoTo /D (section.9.100) >>
+>>
+endobj
+2901 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 360.412 159.572 368.977]
+/A << /S /GoTo /D (section.9.101) >>
+>>
+endobj
+2902 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 342.064 264.432 352.539]
+/A << /S /GoTo /D (section.9.102) >>
+>>
+endobj
+2903 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 325.42 168.045 335.688]
+/A << /S /GoTo /D (section.9.103) >>
+>>
+endobj
+2904 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 308.775 254.964 319.25]
+/A << /S /GoTo /D (section.9.104) >>
+>>
+endobj
+2905 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 292.131 158.577 302.399]
+/A << /S /GoTo /D (section.9.105) >>
+>>
+endobj
+2906 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 267.301 95.148 275.754]
+/A << /S /GoTo /D (section*.138) >>
+>>
+endobj
+2907 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2920 0 obj
+<<
+/Length 1239      
+/Filter /FlateDecode
+>>
+stream
+xڥV�v�6��+��NB�	����u��:��M�L�"�BPv���@Y�U�tE`^���3 
�
.t�.p�����jq�V�ˈ�%V�AJI&e Ә$�Ve�%|U�a��2�<����ϣ86�$�� 4�$'2͝��_���/N��ɝ��� #���%�(�EYU}��&ٞˉ���6���+�\��(I��^2�Յ�}^vPƭ*|����	�b�4���-�q�n�1
���B��N�u�TM}3.
(��v.Ix_�E�L�1��Yr6�K�
:�� �pœ�|�?O9�ѝ�E��2��q�B�`�.�V+�u��	�
+�z9G��22������E-�p��J�����zu�i�E^,��p��b|���VW��]����\r�Z��%Rꢳ����j�FW�Wm�Cît��__E�c��B�i6AH�!��p��4��d��G�V[��oݾ��~V��E����v(&�:�x�\y[磚Ƃx��N��|�v��ׄ�aEk�JG��|��8`���&�[�0y8���N�E�-�q�G�WkUw�rJ8,Q�Ǖ�I~��|�O���x�ޘz�	(AT�E�.p��Qk����S\Keqm�~6�q>���)<F]ԮTKLȃ�Yh�ܺu����q�A\�EAQ@�^f����&<�k�T���Z��;��<��O"�'����yB2��%�(r�M�?l{���T�`����0�妘�s�H2����թY)lhu��W,��3�`�?7�,�'��P9/�^�*&_
+�u���;x)D�0���ٝPARϳ�\w�a8�{�f��u�������AP����M��d�$<����AMSU���0*��Rw7�������5!��L&�k�"����A��@��+�r�an��Gmۉ�i�hS�x�q�{l����زq
+�C���,�SA�[������mO������6�$gL��=I	g���0p����u�~*�~�6�C�`�������`���4����H6װ�j�x���:nn�<���Dq���|������݅��C�!���U�7i�BZ��N_9ǓM�����RM:��V��d6r�����iw�������T��=[����@]�W���9j��BQè�d������>jN�0Ŀ����ެ?�Ox�W.�1�v��
JP�`'1����A"b"��Mp�����e$�L�~�A���\hG����������*��q���c�
+endstream
+endobj
+2919 0 obj
+<<
+/Type /Page
+/Contents 2920 0 R
+/Resources 2918 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2787 0 R
+/Annots [ 2910 0 R 2911 0 R 2912 0 R 2913 0 R 2914 0 R 2925 0 R 2915 0 R ]
+>>
+endobj
+2910 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [298.322 533.175 323.725 541.556]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+2911 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [439.729 521.036 462.155 529.807]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+2912 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [435.164 508.763 462.558 517.852]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+2913 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [430.733 497.31 456.136 505.69]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+2914 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [469.615 470.602 525.406 481.076]
+/Subtype/Link/A<</Type/Action/S/URI/URI(mailto:b.montavon@wzl-mq.rwth-aachen.de)>>
+>>
+endobj
+2925 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [69.87 458.539 119.683 469.121]
+/Subtype/Link/A<</Type/Action/S/URI/URI(mailto:b.montavon@wzl-mq.rwth-aachen.de)>>
+>>
+endobj
+2915 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [131.498 458.539 259.02 469.121]
+/Subtype/Link/A<</Type/Action/S/URI/URI(mailto:m.bodenbenner@wzl.rwth-aachen.de)>>
+>>
+endobj
+2921 0 obj
+<<
+/D [2919 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2 0 obj
+<<
+/D [2919 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+2923 0 obj
+<<
+/D [2919 0 R /XYZ 70.866 570.668 null]
+>>
+endobj
+2924 0 obj
+<<
+/D [2919 0 R /XYZ 70.866 570.668 null]
+>>
+endobj
+2926 0 obj
+<<
+/D [2919 0 R /XYZ 119.606 449.575 null]
+>>
+endobj
+6 0 obj
+<<
+/D [2919 0 R /XYZ 70.866 433.059 null]
+>>
+endobj
+2927 0 obj
+<<
+/D [2919 0 R /XYZ 70.866 388.906 null]
+>>
+endobj
+10 0 obj
+<<
+/D [2919 0 R /XYZ 70.866 388.906 null]
+>>
+endobj
+2928 0 obj
+<<
+/D [2919 0 R /XYZ 70.866 150.786 null]
+>>
+endobj
+2918 0 obj
+<<
+/Font << /F67 2922 0 R /F33 2286 0 R /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2937 0 obj
+<<
+/Length 2982      
+/Filter /FlateDecode
+>>
+stream
+x��Zݏ�6߿�Ž�hD�"���p@n�M��6��mqH�@+ɶ.��Zrv��������w���&����7#��z�g�.���X\�p����l�����?"��b�Lg�o�q��L	�D�cf���뛹��s�����������|&:2a�BO͒���G>Ka��g2
+gwfg1SZ2�$���w���G�	��C�|�x˜`�ysWpΝ��2��B;w��%���r ��®2Oy-�����־s]΅S7�v;w��9���!6c�ki^�إ��&�AQ�
��Y��
=�fsɝ/sO;ٶ��PӮM<����Ͳ�FI�߃|�ɳ�f��%~�7����Ɍ�:��B�H�$4�+�*���Ρ̛��i��UI�yM��K�^;�T�}��r}X}��KrV�2��$.�{�Pgvi���\���d�ז�
+��[rI�fE����w�l܊�I�]Ug5���n����P@�0w����T�m�8b6�b��A��ᠨ�v�fM�ok���VCf�y֎ހ�i5���<c��TL����M�����/Fo����U]������Ϣ@��hC�$�[��v���E�ǥ
#>\�����T�"�_��
+c�GHDL��#�q���1ZS��Կ0��z�ӛW�"dJFcb��1|�)��[�Y�Ql�ğ�"�cA��/�����g`LyS���H3_��
"�.a����Dx��y�ؑa����4��5?>�3ͽ�Òs��|(�!��e��^om\Ҧ�܊Ea��}R�VUS7{�%��5,�[�B�|�p�]�I�"������w;%������aom"+F�|_���T�z1��6�Ʒ�cQĬ�x��]�l����=��}���<*2P���@O�?��
+����|���������J�$�$��7��yu�7�!����WD,uw�{r�4�,�`��|���K���O��;bJ#_�����QT2��D��p�&7��}�8�~l2ʡ���&�l���� &2
+yݫ�cO��t`L{���#�4��ZF.:������\�������q��CB~E�xa�NY5�������@/�$���W
�3�\\��r݇�G���Bm�F��ad�g2A�7i2��x���W���=PV�'|��]bW�$v�d;������-�W��s�v�1<�{�Kf���jj"o�}��At���%����g�:���}:����#nB΢>ƒ��
�^�sٱ�ğ�^F�[�B���jKv�e��͠��X�
b��d�w���n
P��b����h���u=@�I�
�#������IK�9wx;q92��#
b��wY��I�������[�0[�1Gm>� ���ie���+J�k�|� �]�%���=	���ARu�	�$��=��s���D9	;4Љ���§���|��w�*�*H+�'D�{a�G��\��X�P7n7���gN��
+��z\�B�:�Wme3@��Mc�
+h�b]��'UJL��1]=I�2�/�ڳ)m�
+��RK�[��p��΁����̬�L�����u�\�Ĉ
R�C�jg�N[$
+�SC��O�z*�	(>�.Np�9�Pڡ���,l��+��r؄&��^�q|��c�d��ŋ�D���4�NڒV���3���2��ӫ~�%Q�1�����V`j"��l��-1��y�������8�p9Oǒp���y뗆�9���H��]�G����k��\��2�L���:���d�	TmP���?AG�{,�!�N�a\�O[�Y|��K
+B���@�&�)�`�;CY�J�Ǘ����������	��Z�m��vTL
+D���-+jZLm��1�I�X�2o`lέJ<
�/�q�[B �b+��aJJ�F�*	5�T`(�w�<�n��wg���Ŝ�3u�5����㨨RJ�F��5��b$/05���T���m�".�!��
+���Gp�~X�:�9h_�x>��a\�}�R���
B`����K�x��\k�rG�<�>\���h��w�l�
+��.~���'Rğ�)?�,O&���"=&�����9���T��k�Lƕo���QRQ��P>�!֩������5b���u�S��z3�	��XyO�F2�|�5�E5�a�Ͱ[NQp�WO�p&�[�1�>C��o[��I����Y���^�)���r.x��%O�&~�IB8g
�MUm�M���3N�j��'<����� I������Y���i�ԓ]}
�A����~^-�r����n�}\��]��9Ӆ`�+rAWFO��u���A���;@̡v~ۘ�UQw�:�ʄ�K��P��}�����g8
+���)B
0�v0L�U$�����X=�CK�\�����<�.�U]��]�>���d�7H\�|g�
+�$J��ț��iD(A�\͕v�U�Kg��*���A�ʁ�MM������7�}�U~gA��?-߾��|����OW�7/��3op�}%/�_��*�X�hѶ�Z/�����X���@�7m�P8x}*y�̽'���Vs?�]<9F��J�2w��	K���W�#$��c���5���&�<�Q��ģfRB�Q`>\���}E}�^ؿu��×��B�+4�Ÿw�5^���m����Wq2�v��B�E�	�d�yχ��Ӭ}Cm���:�����M�lh1N�[���Vz�e����wI�x�G㖼�`i[�M��� /B���8�"g
+�Pa2��
S۸Ʒ��a�x{k�!L����%���ͮe��q��)�m��(���w�~���ˠ�`�B�Q6��H���Q�_TE]�����t��{�f=�A�����~m���3���p=��K��v�&H�\��#��rt�hyF
rG,�j^��6�o�'�����w@ޤ_�a�W��룎zar��KY���k���q�0p��n��?h� p)��4�g0T�� S� �+�f~����M��潨L��Ƙ�y��?�� }
+endstream
+endobj
+2936 0 obj
+<<
+/Type /Page
+/Contents 2937 0 R
+/Resources 2935 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2787 0 R
+/Annots [ 2916 0 R 2942 0 R 2917 0 R 2932 0 R 2933 0 R 2964 0 R 2934 0 R ]
+>>
+endobj
+2916 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [323.183 706.025 525.406 716.293]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://visualstudio.microsoft.com/de/vs/community/)>>
+>>
+endobj
+2942 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [94.777 694.423 216.321 704.32]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://visualstudio.microsoft.com/de/vs/community/)>>
+>>
+endobj
+2917 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [157.562 655.897 261.174 666.372]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://github.com/microsoft/vcpkg)>>
+>>
+endobj
+2932 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [157.562 283.286 261.174 293.76]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://github.com/microsoft/vcpkg)>>
+>>
+endobj
+2933 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [353.07 214.804 525.406 225.386]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://vcpkg.readthedocs.io/en/latest/examples/installing-and-using-packages/#cmake)>>
+>>
+endobj
+2964 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [94.777 202.848 443.469 213.224]
+/Subtype/Link/A<</Type/Action/S/URI/URI(https://vcpkg.readthedocs.io/en/latest/examples/installing-and-using-packages/#cmake)>>
+>>
+endobj
+2934 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [293.081 79.938 331.45 90.206]
+/A << /S /GoTo /D (main_8cpp) >>
+>>
+endobj
+2938 0 obj
+<<
+/D [2936 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+14 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+2939 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 748.205 null]
+>>
+endobj
+2943 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 691.853 null]
+>>
+endobj
+2944 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 672.125 null]
+>>
+endobj
+2945 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 655.32 null]
+>>
+endobj
+2946 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 640.112 null]
+>>
+endobj
+2947 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 619.453 null]
+>>
+endobj
+2948 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 602.779 null]
+>>
+endobj
+2950 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 577.403 null]
+>>
+endobj
+2951 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 563.767 null]
+>>
+endobj
+2952 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 545.101 null]
+>>
+endobj
+2953 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 490.257 null]
+>>
+endobj
+2954 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 471.17 null]
+>>
+endobj
+2955 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 440.021 null]
+>>
+endobj
+2956 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 380.771 null]
+>>
+endobj
+18 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 373.79 null]
+>>
+endobj
+2957 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 339.728 null]
+>>
+endobj
+2958 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 318.781 null]
+>>
+endobj
+2959 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 299.514 null]
+>>
+endobj
+2960 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 282.709 null]
+>>
+endobj
+2961 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 267.5 null]
+>>
+endobj
+2962 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 250.407 null]
+>>
+endobj
+2963 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 231.32 null]
+>>
+endobj
+2965 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 160.222 null]
+>>
+endobj
+22 0 obj
+<<
+/D [2936 0 R /XYZ 70.866 152.069 null]
+>>
+endobj
+2966 0 obj
+<<
+/D [2936 0 R /XYZ 182.908 70.866 null]
+>>
+endobj
+2935 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F24 2940 0 R /F21 2941 0 R /F25 2380 0 R /F73 2949 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2970 0 obj
+<<
+/Length 479       
+/Filter /FlateDecode
+>>
+stream
+xڝRMo�0��+��ul��ɱj5=UE��(��	�����kco�I�C{����͛�an�Mvu�$HTA��B����D�@��>'�����c����y^��֨|/����n.�;`L"Υo���p�}j���g�KK)�,tCv��A��;��������3���e_3�fR��~9� ��`��k��J/�°�	,"v�?���q�O�s1�t�MArן�A�o�N�������ۂ�nK�x��n�Ty���mW�8mR�Zd��<���ݬ�#�v�C��Ԟw)o�	Z%\i�N]_}����!+���;�^�����h���צ�h�džq�!N`C�9�w?
+�ŷK��І9O11Z�y:qc�i�]�g;��������_���Ϊtۦ�S��.S���ǽN6YF�:?����|�y�s�)�+�-,PY	v�`�M&��n��S��<�I��6h�����R�
�h�F
+endstream
+endobj
+2969 0 obj
+<<
+/Type /Page
+/Contents 2970 0 R
+/Resources 2968 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2972 0 R
+>>
+endobj
+2971 0 obj
+<<
+/D [2969 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+26 0 obj
+<<
+/D [2969 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+2968 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+2975 0 obj
+<<
+/Length 207       
+/Filter /FlateDecode
+>>
+stream
+xڕ��N1�{?Ŕ��,k{m��EDH�]��#
	!A����PQ�hgv�c�œWsv-
+�.���¤9�t��G����6u	�|�v6.Ww7�n�ڋ��0Wռ�|���Q%
���Yo}�`���sL� )R���V����k��әq����(3���H)I(%i�r���~x��֣l'}��"ۯ���=�a?�N6�o'�H%
+endstream
+endobj
+2974 0 obj
+<<
+/Type /Page
+/Contents 2975 0 R
+/Resources 2973 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2972 0 R
+>>
+endobj
+2976 0 obj
+<<
+/D [2974 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2973 0 obj
+<<
+/Font << /F48 2333 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3017 0 obj
+<<
+/Length 1774      
+/Filter /FlateDecode
+>>
+stream
+x��Y[��6~�_�Gg�[�|ɔ>��[:0,��LG����/��Y���Iv�l���CK)O����s?�dϹr<���럄r|����O��a��1�I�;�y$C'�8�#��3��x%�J6�)��K'�����L(%�Sd�9��b�~>	�[g�a�,o�ގ��Y��$	�`�2�b+R!��p�!�ip���8s�Ni���痳�k����O�4�w�	��6>#	c��HH���z��V�ه�4𙛷�Y���זX�g)�J�JT���:�8�|��͗H�Z�l�|�L@B��{c��J�y]��-��>M(w�ֲ����,�0�vca�v�V�S�xb�Y]I���5Z���$��X%A�.qM�Uٲ�˦�1#�)?�q�_���e�@�y�:�uQ��ݞ��B��RF�[�k0�\5֤1��V*O��ьH���ʼ�E>0J�咿�<
+�e�>>�!�B#�sY.�������f�'F��,�Z�YTa������^��٬U͠D���k=���~_+���s���!�I#��q�L��?�)[������gX���
+"Dü�唢�Wy����-�|�1J��j���d�S����F;�S]ci6oڼ��n�s���G
+@����($D��6��P2�~�%1����;S����`�a�8w�4nM@B�*�a&�v\��)�8pm��pc>д�.Е�\ٍ	��"Y����r�1��lʔ�罅*ym&m���$A��4��Ye���\Ay�1�rW)�����恋�
+�I\�����\�q�r�vt�~B�D����hpC�W2��l^I���N�ީ�0D����.U}�G��a��R�
+[v����B��������֊+�ʹ�U?=�KH�Lf�۟'�:�<�B	o��t�[�i?c>�=�v���y���?aw�D,�'�f�hִ���0��O��l�|p���R�ˁv����Mӻ���N�אIǁ��B�Y���"lD��f�-�XDc<�b�L�IP��6�wl��rCH�T���D��i<��Q��̐��S��=��BX�
���u�T��'�iakP��.MN��6�M� qwM}���؊�+�'+�V�@l6D��q_Q=��
+�0b)T_}��J��9_�E�n`������(����Z<��x��7��}qvNH'�#�[�܄���������~M���n71�c�l�:3A��P#�<p���1����ӈ�z�_h�h�9��|��G�%.꺰H�–A�k��E^=Z����i{:L(��f�A�{!���0.l��zi������Q��
+��Lh]�� ���D�N�Qh\_�[����t9a�2�@q1���Oն��,r�\�do�ax�t�Iwss�=l��.�e�RW�7�N��6�>�4����es��m���FU뮰���H�Nݢ��h�F�o�Ct�7�`�}����I�8"<
+����/�A��:�)�GO>��IL<}�s%��qANcB�x7��}���:�H��:��sRE�ԭ]�S�pf!��N�v��~��u!����-�~�N���E%۞ܯ+eYo�فP؄�X����F1���B�,��=�ڀ���‡���I 8�?R�N�^�ɑ�+"1�T�'��'b/NbN��^[\�a/�b�����c�/���T��w��?�^O�g�|���̡����go�{NC`($�s�'���!T�>{i�(C���Fx{7�Pf���=?^�J6B����]��\�&{s���jW�?��G
+endstream
+endobj
+3016 0 obj
+<<
+/Type /Page
+/Contents 3017 0 R
+/Resources 3015 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2972 0 R
+/Annots [ 2978 0 R 2980 0 R 2982 0 R 2985 0 R 2986 0 R 2988 0 R 2990 0 R 2992 0 R 2993 0 R 2994 0 R 2996 0 R 2997 0 R 2998 0 R 3000 0 R 3001 0 R 3002 0 R 3003 0 R 3005 0 R 3006 0 R 3007 0 R 3009 0 R 3011 0 R 3012 0 R 3013 0 R 3014 0 R ]
+>>
+endobj
+2978 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [96.284 553.874 155.661 562.52]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+2980 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [96.284 510.418 170.419 519.418]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+2982 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.739 480.213 201.074 488.858]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a06d51f457b4412d64c3980a377fbc9f0) >>
+>>
+endobj
+2985 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.739 448.889 201.074 457.534]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad0d80de0520ce5366067512e07068e1e) >>
+>>
+endobj
+2986 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [275.294 448.889 312.165 457.342]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+2988 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.739 405.61 191.239 414.256]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a30718fd8e647815e78b1a0b63d878fd8) >>
+>>
+endobj
+2990 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.739 372.403 232.128 382.932]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6cebd6af4116112bb244b1444aa3a1da) >>
+>>
+endobj
+2992 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [96.284 341.149 153.078 351.539]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+2993 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [102.617 328.511 128.02 336.892]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+2994 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [281.773 328.327 338.612 337.098]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+2996 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [96.284 297.87 213.944 308.26]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+2997 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [102.617 285.232 128.02 293.613]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+2998 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [281.773 285.048 338.612 293.819]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+3000 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.859 254.475 249.911 264.864]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aadc9c63027042e0e834b183698e964b9) >>
+>>
+endobj
+3001 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [320.326 230.044 354.534 238.528]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+3002 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.773 230.044 415.171 238.528]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+3003 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.784 216.197 122.187 226.573]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+3005 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [96.284 199.506 204.619 209.896]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+3006 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [102.617 186.868 128.02 195.249]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3007 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [281.773 186.684 338.612 195.455]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+3009 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.739 156.227 241.973 166.617]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ae5349b85d820a6204f44af04b528f6a9) >>
+>>
+endobj
+3011 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [107.956 114.724 241.684 125.114]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a8ef20bb80d404cba203ebe64a9c3296f) >>
+>>
+endobj
+3012 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [320.326 90.293 354.534 98.777]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+3013 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.773 90.293 415.171 98.777]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+3014 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.784 76.446 122.187 86.822]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+3018 0 obj
+<<
+/D [3016 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+30 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3019 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 575.461 null]
+>>
+endobj
+3020 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 568.698 null]
+>>
+endobj
+3021 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 525.595 null]
+>>
+endobj
+3022 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 492.379 null]
+>>
+endobj
+3023 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 462.947 null]
+>>
+endobj
+3024 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 417.884 null]
+>>
+endobj
+3025 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 386.453 null]
+>>
+endobj
+3026 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 355.237 null]
+>>
+endobj
+3027 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 311.85 null]
+>>
+endobj
+3028 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 268.571 null]
+>>
+endobj
+3029 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 213.486 null]
+>>
+endobj
+3030 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 170.207 null]
+>>
+endobj
+3031 0 obj
+<<
+/D [3016 0 R /XYZ 70.866 128.82 null]
+>>
+endobj
+3015 0 obj
+<<
+/Font << /F67 2922 0 R /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F25 2380 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3048 0 obj
+<<
+/Length 209       
+/Filter /FlateDecode
+>>
+stream
+xڕ��n1��<��d�u��[+
+�R5bh{WT	8���'w�X�:ٲ�G���y��i�
+��H��
��@U�����`����
��l�tn*��?�c�2/��_B��RE
_[�\4e���X+���8EL��7�n���7�fJH��9�
+�J�W�Ę��R��ּݵ��c�ܼ>] {����E����M<�v7���+��J?
+endstream
+endobj
+3047 0 obj
+<<
+/Type /Page
+/Contents 3048 0 R
+/Resources 3046 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2972 0 R
+>>
+endobj
+3049 0 obj
+<<
+/D [3047 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3046 0 obj
+<<
+/Font << /F48 2333 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3064 0 obj
+<<
+/Length 511       
+/Filter /FlateDecode
+>>
+stream
+x��Mo�0���<�+�����%K�u�Ʝ�Dm
$N�h��'[
+0'�0�X0l���%���H���������m�(yW$��6���\#�`�Z�6�J���Ä����k�I3�-�Mq��ӊpN��a�iN��C��t�����q5w)"yzAi��`(- �9���>3����b�!c��m,9/�u#;
+��Z�.�,�����6�i0�&��V��a�N�{Q�x,���}�3���.���v��rUmO�@�Q�+¦�i���PR42.��s-�/�x�4#GB�L)���w��t��T��A�
+�W���Hs��O�E��ט�G�W��o��|��}�V�cMP�w �7B��.�ШM�����y|��+�2��*R�<�����1^���?ͬ=q}d�Y�S<�]����/�j�c��c�ˤ?�C��{,S��L ̖����7��JB�ێK�JP%��p�\��Ǘ�r��O������d�*���n�i����J#O�wM�A\�Iէ��
+endstream
+endobj
+3063 0 obj
+<<
+/Type /Page
+/Contents 3064 0 R
+/Resources 3062 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2972 0 R
+/Annots [ 3050 0 R 3051 0 R 3052 0 R 3053 0 R 3054 0 R 3055 0 R 3056 0 R 3057 0 R 3058 0 R 3059 0 R 3060 0 R 3061 0 R ]
+>>
+endobj
+3050 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 478.726 109.447 487.107]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3051 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 478.542 525.406 487.107]
+/A << /S /GoTo /D (section.7.1) >>
+>>
+endobj
+3052 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 466.269 111.437 475.358]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3053 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 466.587 525.406 475.152]
+/A << /S /GoTo /D (section.7.2) >>
+>>
+endobj
+3054 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 452.929 103.475 462.892]
+/A << /S /GoTo /D (namespacemqtt) >>
+>>
+endobj
+3055 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 454.816 525.406 463.197]
+/A << /S /GoTo /D (section.7.3) >>
+>>
+endobj
+3056 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 442.677 107.958 451.448]
+/A << /S /GoTo /D (namespace_s_i_g_n) >>
+>>
+endobj
+3057 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 442.861 525.406 451.242]
+/A << /S /GoTo /D (section.7.4) >>
+>>
+endobj
+3058 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 430.722 106.47 439.493]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3059 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 418.95 525.406 427.331]
+/A << /S /GoTo /D (section.7.5) >>
+>>
+endobj
+3060 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 406.811 104.963 415.376]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3061 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 406.995 525.406 415.376]
+/A << /S /GoTo /D (section.7.6) >>
+>>
+endobj
+3065 0 obj
+<<
+/D [3063 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+34 0 obj
+<<
+/D [3063 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+38 0 obj
+<<
+/D [3063 0 R /XYZ 70.866 566.329 null]
+>>
+endobj
+3062 0 obj
+<<
+/Font << /F67 2922 0 R /F48 2333 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3071 0 obj
+<<
+/Length 214       
+/Filter /FlateDecode
+>>
+stream
+xڕ��nA��}
+������"
+$����pGH��g���P�����#��\L�xys�U�DBbe0hH
�%�MZ��+��۰\�m>}�۬&&�|����+^����@?����m+����@h+���l�y��٢��!V��Z��)�{�R��#p@�끝w�+C��������;ܧ2$ow=;(K�z۩�&���w,X��FL�
+endstream
+endobj
+3070 0 obj
+<<
+/Type /Page
+/Contents 3071 0 R
+/Resources 3069 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 2972 0 R
+>>
+endobj
+3072 0 obj
+<<
+/D [3070 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3069 0 obj
+<<
+/Font << /F48 2333 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3102 0 obj
+<<
+/Length 1217      
+/Filter /FlateDecode
+>>
+stream
+x��[Ks�6��W�H�T0oh:=��+S'N���f:��J�H�KQ�����k'iɖ<�D� �o��	#�Nzd}�T������D��c�h,����ZJ$�\I��Up8�o�$��ꀇ_�w��)�P���	!�/)��Tϟ�I�!�`�`��i%�,%!@p� s=�c�Pl�D-��Qڛ�l�!�!$8�Ƌ����z@J�@��k��nj!��������~�h���l����8-�l�Tw�風���-�'A����|9�LWvT�Tݺv�/��y��g7ӤH���7��:)�MW�jY���}g�P�r�)TS���b0x����0v��vUq�BT��_�9���DW�(w���,W}���4"t����6BT �����p��N/s�͸H�Y�7�{h�F7��ԟFd4g^wv����g��q�Y�\sJ��ƜJg�%�Tk�\���svk���@��m}]5�kF׏��$�����F�Mt;#8ig���~��+1�p�h�(�DuPC1���_��]��n'Q�"Ƣ��`��+n<%�h-�F�B�m�o#���Q�<���P�/��]B���~yv�~08�e��(�H�)ͷ|ϓ�"'��*o�1���25M+���ד�`d��-��Oq6Nց��x&��P�(��A��>ȓDwp��q�6d$��o}.f��|��j�u{�"1�<Vt;��U�0P�K�(F����kٸA$̍he`B�g��qKE�M�rE��b��]��1�{��:t���0l֕�:œ&�$+�>_�<B��*���wYD�Qp��t��-,�����&3+��w��Ю���@v�i���_Ӏާ�E�IW��YR4g�e�x��!`i�+�ÏM��i��>�[�J�K�(��F���|��E�#�t>\k7L��X�{ES#��<Q�)V�;�[���#v�%7MV�x�
��!6�#~ɟ)7�PQ�q�I��%C�P3�w�Z�ݥ0Tc�U�{مj�\fE:K�H�|��k�>i}t;Ln��X��*̞o��8I���<-w��ڛ�����Γ
�S�.]��@_C*�v���ឲDt�z�e:�k�~��#T|�B]dw�(�j�/Ո�Q���u��S!0�A�pֻ�B����̌F��g��g�=E����g1\#�����W1\`)�=�$�j�}�q]}cR���CksoWcG� �L�N�_61L
+endstream
+endobj
+3101 0 obj
+<<
+/Type /Page
+/Contents 3102 0 R
+/Resources 3100 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3104 0 R
+/Annots [ 3073 0 R 3074 0 R 3075 0 R 3076 0 R 3077 0 R 3078 0 R 3079 0 R 3080 0 R 3081 0 R 3082 0 R 3083 0 R 3084 0 R 3085 0 R 3086 0 R 3087 0 R 3088 0 R 3089 0 R 3090 0 R 3091 0 R 3092 0 R 3093 0 R 3094 0 R 3095 0 R 3096 0 R 3097 0 R 3098 0 R 3099 0 R ]
+>>
+endobj
+3073 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 478.542 525.406 487.107]
+/A << /S /GoTo /D (section.8.1) >>
+>>
+endobj
+3074 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 466.587 525.406 475.152]
+/A << /S /GoTo /D (section.8.2) >>
+>>
+endobj
+3075 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 454.632 525.406 463.197]
+/A << /S /GoTo /D (section.8.3) >>
+>>
+endobj
+3076 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 442.677 525.406 451.242]
+/A << /S /GoTo /D (section.8.4) >>
+>>
+endobj
+3077 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 430.722 525.406 439.286]
+/A << /S /GoTo /D (section.8.5) >>
+>>
+endobj
+3078 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 418.767 525.406 427.331]
+/A << /S /GoTo /D (section.8.6) >>
+>>
+endobj
+3079 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 406.811 525.406 415.376]
+/A << /S /GoTo /D (section.8.4) >>
+>>
+endobj
+3080 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 394.856 525.406 403.421]
+/A << /S /GoTo /D (section.8.8) >>
+>>
+endobj
+3081 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 382.901 525.406 391.466]
+/A << /S /GoTo /D (section.8.13) >>
+>>
+endobj
+3082 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 370.946 525.406 379.511]
+/A << /S /GoTo /D (section.8.14) >>
+>>
+endobj
+3083 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 358.991 525.406 367.555]
+/A << /S /GoTo /D (section.8.17) >>
+>>
+endobj
+3084 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 347.036 525.406 355.6]
+/A << /S /GoTo /D (section.8.18) >>
+>>
+endobj
+3085 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 335.264 525.406 343.645]
+/A << /S /GoTo /D (section.8.19) >>
+>>
+endobj
+3086 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 323.309 525.406 331.69]
+/A << /S /GoTo /D (section.8.20) >>
+>>
+endobj
+3087 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 311.354 525.406 319.735]
+/A << /S /GoTo /D (section.8.21) >>
+>>
+endobj
+3088 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 297.222 525.406 305.787]
+/A << /S /GoTo /D (section.8.7) >>
+>>
+endobj
+3089 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 284.271 525.406 292.836]
+/A << /S /GoTo /D (section.8.11) >>
+>>
+endobj
+3090 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 271.32 525.406 279.884]
+/A << /S /GoTo /D (section.8.16) >>
+>>
+endobj
+3091 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 259.364 525.406 267.929]
+/A << /S /GoTo /D (section.8.25) >>
+>>
+endobj
+3092 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 246.413 525.406 254.978]
+/A << /S /GoTo /D (section.8.11) >>
+>>
+endobj
+3093 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 234.458 525.406 243.022]
+/A << /S /GoTo /D (section.8.12) >>
+>>
+endobj
+3094 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 222.503 525.406 231.067]
+/A << /S /GoTo /D (section.8.15) >>
+>>
+endobj
+3095 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 196.6 525.406 205.164]
+/A << /S /GoTo /D (section.8.9) >>
+>>
+endobj
+3096 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 184.645 525.406 193.209]
+/A << /S /GoTo /D (section.8.10) >>
+>>
+endobj
+3097 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 172.873 525.406 181.254]
+/A << /S /GoTo /D (section.8.22) >>
+>>
+endobj
+3098 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 160.918 525.406 169.299]
+/A << /S /GoTo /D (section.8.23) >>
+>>
+endobj
+3099 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 148.963 525.406 157.344]
+/A << /S /GoTo /D (section.8.24) >>
+>>
+endobj
+3103 0 obj
+<<
+/D [3101 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+42 0 obj
+<<
+/D [3101 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+46 0 obj
+<<
+/D [3101 0 R /XYZ 70.866 570.668 null]
+>>
+endobj
+3100 0 obj
+<<
+/Font << /F67 2922 0 R /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3107 0 obj
+<<
+/Length 221       
+/Filter /FlateDecode
+>>
+stream
+xڕ�=o1���
+�ɀ�|9���Ҳ�fCp�Hp�	���^�N�l�~_�1As��˛��b��� Ff�A֐XIMj�`c [tC�}�ϛ�2$k�I����&&D��5Yi/o�L̒�����{����(Vk���@h��a��[���v�O��s��xz�d�,GxF����;�ޕ�\,�y�
+�%7O�mO|�ӓ�$o�VM�r7���EOW
+endstream
+endobj
+3106 0 obj
+<<
+/Type /Page
+/Contents 3107 0 R
+/Resources 3105 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3104 0 R
+>>
+endobj
+3108 0 obj
+<<
+/D [3106 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3105 0 obj
+<<
+/Font << /F48 2333 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3182 0 obj
+<<
+/Length 1208      
+/Filter /FlateDecode
+>>
+stream
+x��ZKs�6��W�HΔ0h2���g&i�X����`��RE�����ɠ,�L2Iy�@X<���@o�A����)�����wp�bq@C��Ƌ!��y,���f�]��n�P� Ę�4�<x�&��1 �c#z!� fQ�~,�ܶ>φ*@ȿsH��xpqa ��4bB�4
+P"�Rn��7i^�'��1R5%�z"gj�l}Y�۪�a*��o�BOY?.���׋,�fU�2�B���	�e���_��֖���T���ʓ�լ0��v9֕��77������xz-�������E�8��a"�*l�@b�#�A�R�Sͮʁ�{�9�>BJ��k�Ua?^�]3�ҢH@�4�$t�������5������iL��#l]���u��?N��4U��e�!��k�K�����noI�����՟�Y�;d������w�oJh2ʹ�.�!ƞ��3�Y��k)e����/�P]c ��+�wW��;c
+8�u��W���C�0���H�y�*H=LkH���<����e�!�`�a�%�x�jWmWj2ˢ���L%���V�̼+9�tn.9�sM�b����a?��r�@��<�6�}���—s� �����S�����H	�r@i����De{�;F����\m�B�N�'�P�tvEEm�!3i1�	���w�R}3������̶��0`�Ű��.Q�ւ�F\<��k��:Α鏱0�����������o%7B!w�pb�Mq��s�`��œ<�&��hf$��d�S�g6
O���K��<��k����|
+bM:����L�|�Ioo�tD�$Cb'�x���,�w��?��C�'��O'{�.��?�&�Y��Ir��3%
!��E��︥����~�L>b����%�l�p��c&�)L��uͣy�[��r���� ���gr�Y�M�2���� �vj���&�xw��J�JA8Z��o�鯥���6�����)���;�<��#q	�'��[2
+u ����r�k��N��o��(	G}��!bD��������,�#��=��}����xu�����35���xd�9�@�=����x�������?��A^2�]}��Pz�A@���'^D	���w�{o�F�c��w���#
+�,ԩ�|W��WZ�{[>�����������j������v/
+endstream
+endobj
+3181 0 obj
+<<
+/Type /Page
+/Contents 3182 0 R
+/Resources 3180 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3104 0 R
+/Annots [ 3109 0 R 3110 0 R 3111 0 R 3112 0 R 3113 0 R 3114 0 R 3115 0 R 3116 0 R 3117 0 R 3118 0 R 3119 0 R 3120 0 R 3121 0 R 3122 0 R 3123 0 R 3124 0 R 3125 0 R 3126 0 R 3127 0 R 3128 0 R 3129 0 R 3130 0 R 3131 0 R 3132 0 R 3133 0 R 3134 0 R 3135 0 R 3136 0 R 3137 0 R 3138 0 R 3139 0 R 3140 0 R 3141 0 R 3142 0 R 3143 0 R 3144 0 R 3145 0 R 3146 0 R 3147 0 R 3148 0 R 3149 0 R 3150 0 R 3151 0 R 3152 0 R 3153 0 R 3154 0 R 3155 0 R 3156 0 R 3157 0 R 3158 0 R 3159 0 R 3160 0 R 3161 0 R 3162 0 R 3163 0 R 3164 0 R 3165 0 R 3166 0 R 3167 0 R 3168 0 R 3169 0 R 3170 0 R 3171 0 R 3172 0 R ]
+>>
+endobj
+3109 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 488.117 150.314 496.682]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3110 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 476.162 142.812 484.727]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3111 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.312 476.243 185.671 484.727]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3112 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 476.162 525.406 484.727]
+/A << /S /GoTo /D (section.8.1) >>
+>>
+endobj
+3113 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 462.395 169.655 472.978]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+3114 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 451.933 149.286 461.022]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3115 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 452.251 525.406 460.816]
+/A << /S /GoTo /D (section.8.2) >>
+>>
+endobj
+3116 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 438.485 163.181 449.067]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+3117 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 428.341 142.812 436.906]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3118 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.312 428.422 185.671 436.906]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3119 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [186.171 426.53 241.396 437.112]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+3120 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 428.341 525.406 436.906]
+/A << /S /GoTo /D (section.8.3) >>
+>>
+endobj
+3121 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 414.682 194.145 425.157]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+3122 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.321 404.431 184.182 413.202]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+3123 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 404.431 525.406 412.996]
+/A << /S /GoTo /D (section.8.4) >>
+>>
+endobj
+3124 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 391.332 201.12 401.247]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4) >>
+>>
+endobj
+3125 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 380.52 525.406 389.085]
+/A << /S /GoTo /D (section.8.5) >>
+>>
+endobj
+3126 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 367.422 197.632 377.336]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4) >>
+>>
+endobj
+3127 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 356.61 525.406 365.175]
+/A << /S /GoTo /D (section.8.6) >>
+>>
+endobj
+3128 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 344.655 144.343 353.426]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+3129 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 332.7 144.318 341.471]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3130 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.745 332.781 202.625 341.265]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+3131 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 332.7 525.406 341.265]
+/A << /S /GoTo /D (section.8.7) >>
+>>
+endobj
+3132 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 320.745 134.785 329.516]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+3133 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 308.789 144.318 317.56]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3134 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.818 308.87 170.141 317.354]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+3135 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 308.789 525.406 317.354]
+/A << /S /GoTo /D (section.8.8) >>
+>>
+endobj
+3136 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 295.131 155.793 305.605]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+3137 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 284.561 149.286 293.65]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3138 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.786 284.96 188.97 293.444]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+3139 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.47 283.176 230.833 293.444]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+3140 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 284.879 525.406 293.444]
+/A << /S /GoTo /D (section.8.9) >>
+>>
+endobj
+3141 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 271.22 149.319 281.489]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+3142 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 260.969 142.812 269.534]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3143 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.312 261.05 185.671 269.534]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3144 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [186.171 259.265 227.534 269.534]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+3145 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 260.969 525.406 269.534]
+/A << /S /GoTo /D (section.8.10) >>
+>>
+endobj
+3146 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 247.202 180.686 257.785]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+3147 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [210.047 237.139 244.255 245.623]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+3148 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [262.204 237.139 305.602 245.623]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+3149 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.276 237.139 410.157 245.623]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+3150 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 237.058 525.406 245.623]
+/A << /S /GoTo /D (section.8.11) >>
+>>
+endobj
+3151 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 225.103 145.84 233.874]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+3152 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 213.229 158.27 221.713]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+3153 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 213.148 525.406 221.713]
+/A << /S /GoTo /D (section.8.12) >>
+>>
+endobj
+3154 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 201.193 141.841 209.964]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+3155 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.775 189.319 188.665 197.803]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+3156 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 189.238 525.406 197.803]
+/A << /S /GoTo /D (section.8.13) >>
+>>
+endobj
+3157 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 175.471 191.667 186.054]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container) >>
+>>
+endobj
+3158 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [154.511 165.009 181.905 174.098]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3159 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 165.327 525.406 173.892]
+/A << /S /GoTo /D (section.8.14) >>
+>>
+endobj
+3160 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 151.669 137.367 162.143]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+3161 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 139.714 149.797 150.188]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+3162 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 141.417 525.406 149.982]
+/A << /S /GoTo /D (section.8.15) >>
+>>
+endobj
+3163 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 127.758 196.682 138.233]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+3164 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 117.588 165.29 126.072]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+3165 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [513.443 117.507 525.406 126.072]
+/A << /S /GoTo /D (section.8.16) >>
+>>
+endobj
+3166 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 105.233 153.614 114.323]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+3167 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 93.278 149.286 102.367]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3168 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.786 93.677 188.97 102.161]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+3169 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 93.596 525.406 102.161]
+/A << /S /GoTo /D (section.8.17) >>
+>>
+endobj
+3170 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 79.83 163.83 90.412]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+3171 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 67.875 150.299 78.251]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+3172 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 69.686 525.406 78.251]
+/A << /S /GoTo /D (section.8.18) >>
+>>
+endobj
+3183 0 obj
+<<
+/D [3181 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+50 0 obj
+<<
+/D [3181 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+54 0 obj
+<<
+/D [3181 0 R /XYZ 70.866 574.498 null]
+>>
+endobj
+3180 0 obj
+<<
+/Font << /F67 2922 0 R /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3216 0 obj
+<<
+/Length 622       
+/Filter /FlateDecode
+>>
+stream
+x��X�o�0�_��DZ\����=lk�ֱ���!�,B�T#t�������.Ҥ�';���w��}g3�F����9���Xh-H��F����j �]��]xI$�J�z���(�<����q�r���s:?@1F`g-�\����12ƱK¨,�UHΈT�*)�?%��*w�w�T\WN�VQ&b4P��b���ӹ��$��<�����u���Z���m)��	�r	k��/
0ݴ�Z�]��
����
+�(��@�j���>�@�a��{Q���K=_)U6��/�oA�kװ���.���p���wM��v��-ƝN��{>��I�4@J�2Pͼ��P+j8T���m�P��! o���°������(>t��C8�Lj�������!�2�(eN�o�l1����`�O�+�[�iV������B��=�����sz�+$�$Ik�:���aW-���?q�{�-V!�d���k��vf�Knى��´H�[�07�j����̝6���j��/UC�M��U�j�H)����/R��j��u�^�T['N�)'Es�jz!P��^�@�~�Д-�[��T)�-պ�S��T���%׊�������*�`37N�lE����y�
+endstream
+endobj
+3215 0 obj
+<<
+/Type /Page
+/Contents 3216 0 R
+/Resources 3214 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3104 0 R
+/Annots [ 3173 0 R 3174 0 R 3175 0 R 3176 0 R 3177 0 R 3178 0 R 3179 0 R 3197 0 R 3198 0 R 3199 0 R 3200 0 R 3201 0 R 3202 0 R 3203 0 R 3204 0 R 3205 0 R 3206 0 R 3207 0 R 3208 0 R 3209 0 R 3210 0 R 3211 0 R 3212 0 R 3213 0 R ]
+>>
+endobj
+3173 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 758.07 184.748 768.652]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4) >>
+>>
+endobj
+3174 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 748.007 147.215 756.491]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+3175 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.715 746.115 176.122 756.491]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+3176 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 748.11 525.406 756.491]
+/A << /S /GoTo /D (section.8.19) >>
+>>
+endobj
+3177 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 734.159 197.354 744.742]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4) >>
+>>
+endobj
+3178 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.938 722.204 176.346 732.58]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+3179 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 724.199 525.406 732.58]
+/A << /S /GoTo /D (section.8.20) >>
+>>
+endobj
+3197 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 712.141 152.798 720.625]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+3198 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 700.289 147.295 708.67]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3199 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.795 700.186 188.154 708.67]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+3200 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 700.289 525.406 708.67]
+/A << /S /GoTo /D (section.8.21) >>
+>>
+endobj
+3201 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 688.15 140.882 696.921]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+3202 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [148.297 676.195 176.74 684.966]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+3203 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 676.379 525.406 684.76]
+/A << /S /GoTo /D (section.8.22) >>
+>>
+endobj
+3204 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 662.428 138.855 673.011]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+3205 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 650.473 149.797 661.055]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+3206 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 652.468 525.406 660.849]
+/A << /S /GoTo /D (section.8.23) >>
+>>
+endobj
+3207 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 640.329 131.378 649.1]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3208 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 628.374 144.318 637.145]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3209 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.818 628.455 166.734 636.939]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3210 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 628.558 525.406 636.939]
+/A << /S /GoTo /D (section.8.24) >>
+>>
+endobj
+3211 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.043 614.715 187.492 625.19]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+3212 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.892 604.544 156.1 613.029]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+3213 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 604.464 525.406 613.029]
+/A << /S /GoTo /D (section.8.25) >>
+>>
+endobj
+3217 0 obj
+<<
+/D [3215 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3214 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3303 0 obj
+<<
+/Length 995       
+/Filter /FlateDecode
+>>
+stream
+x���s�8���:���d��w�t�m�e;;�Q�cX�l���6v:��d HK��I�H��}xO_�AD�ŀ<���Z�_g��DH
+�P��}F�`%��@
+4���e�)u�)U��?��>��3B)fD��ACA��a�����|�͵���y�h(���5V
JTw����RyWIQ�GƐ¡���8��ot޶O����"���j���i�T�$���m�5)�M��rp/�m��.��ҦL�Y�K��xA�A24�V�ay<z�q6�]�����uթ���,��ċ�;�x�yttSyEp�C�ES<��{�̧��>�Cx�^V��Z���p��I��XT��ݱ�c�L3���-��,�*��h��u9�|�B���q���b�ٟ����3ˈz�KJJ���NE���VFIVi>N��!S��9�Opq0��[��Z�.[8}َ2�f��?]'�����x�N�OOЉ�rG�(Ab��.��<�;�.{ڡZ���m���8�7����_��ww$M�dGk���.�������LG�̇J��o�>M��^���N//�x�FU�t��0M�M���^=�}q�O
Aa`��H\&��Q��8M�s�l��f	������†8ac������W'<�%�&F�ʆ�F���ROR�<#�$؅׉�0t����z���WͰC^Hr��&��1�q[vӥ�f3��{��'��qV��]��{ʁ��
+�Q��$t+
+�,���I���{sIG;�U1�(��dH]\Z�Kn�6����K�["g\�~��m�L�04.S��쯥N7:/��%ED落Y֑��`j'rLs{�E�{�cu��(=n�^WnRpr�"Ha�? ^��\��G���,z��/�ם�����=ړ�c��ū��'���Wo�,T���
+�a������cs�=PH`*E�C��B�R�Bg:�J=ot�G3���k���~Q�3�t�h������
+endstream
+endobj
+3302 0 obj
+<<
+/Type /Page
+/Contents 3303 0 R
+/Resources 3301 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3104 0 R
+/Annots [ 3223 0 R 3224 0 R 3225 0 R 3226 0 R 3227 0 R 3228 0 R 3229 0 R 3230 0 R 3231 0 R 3232 0 R 3233 0 R 3234 0 R 3235 0 R 3236 0 R 3237 0 R 3238 0 R 3239 0 R 3240 0 R 3241 0 R 3242 0 R 3243 0 R 3244 0 R 3245 0 R 3246 0 R 3247 0 R 3248 0 R 3249 0 R 3250 0 R 3251 0 R 3252 0 R 3253 0 R 3254 0 R 3255 0 R 3256 0 R 3257 0 R 3258 0 R 3259 0 R 3260 0 R 3261 0 R 3262 0 R 3263 0 R 3264 0 R 3265 0 R 3266 0 R 3267 0 R 3268 0 R 3269 0 R 3270 0 R 3271 0 R 3272 0 R 3273 0 R 3274 0 R 3275 0 R 3276 0 R 3277 0 R 3278 0 R 3279 0 R 3280 0 R 3281 0 R 3282 0 R 3283 0 R 3284 0 R 3285 0 R 3286 0 R 3287 0 R 3288 0 R 3289 0 R 3290 0 R 3291 0 R 3292 0 R ]
+>>
+endobj
+3223 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.382 476.731 198.553 487.313]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp) >>
+>>
+endobj
+3224 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 478.542 525.406 487.107]
+/A << /S /GoTo /D (section.9.2) >>
+>>
+endobj
+3225 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.382 464.776 189.084 475.358]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h) >>
+>>
+endobj
+3226 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 466.587 525.406 475.152]
+/A << /S /GoTo /D (section.9.6) >>
+>>
+endobj
+3227 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.382 454.713 174.093 463.197]
+/A << /S /GoTo /D (_m_q_t_t_2constants_8h) >>
+>>
+endobj
+3228 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 454.632 525.406 463.197]
+/A << /S /GoTo /D (section.9.10) >>
+>>
+endobj
+3229 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.382 440.973 206.12 451.242]
+/A << /S /GoTo /D (_local_exception_8cpp) >>
+>>
+endobj
+3230 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 442.677 525.406 451.242]
+/A << /S /GoTo /D (section.9.20) >>
+>>
+endobj
+3231 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.382 429.018 196.652 439.286]
+/A << /S /GoTo /D (_local_exception_8h) >>
+>>
+endobj
+3232 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 430.722 525.406 439.286]
+/A << /S /GoTo /D (section.9.22) >>
+>>
+endobj
+3233 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.382 416.955 210.648 427.538]
+/A << /S /GoTo /D (_message_container_8h) >>
+>>
+endobj
+3234 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 418.767 525.406 427.331]
+/A << /S /GoTo /D (section.9.24) >>
+>>
+endobj
+3235 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.382 405.108 182.064 415.376]
+/A << /S /GoTo /D (_publisher_8cpp) >>
+>>
+endobj
+3236 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 406.811 525.406 415.376]
+/A << /S /GoTo /D (section.9.26) >>
+>>
+endobj
+3237 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.382 394.937 172.595 403.421]
+/A << /S /GoTo /D (_publisher_8h) >>
+>>
+endobj
+3238 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 394.856 525.406 403.421]
+/A << /S /GoTo /D (section.9.28) >>
+>>
+endobj
+3239 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.893 382.982 172.604 391.466]
+/A << /S /GoTo /D (_r_e_s_t_2constants_8h) >>
+>>
+endobj
+3240 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 382.901 525.406 391.466]
+/A << /S /GoTo /D (section.9.12) >>
+>>
+endobj
+3241 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.893 369.242 182.064 379.511]
+/A << /S /GoTo /D (_resource_8cpp) >>
+>>
+endobj
+3242 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 370.946 525.406 379.511]
+/A << /S /GoTo /D (section.9.30) >>
+>>
+endobj
+3243 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.893 359.071 172.596 367.555]
+/A << /S /GoTo /D (_resource_8h) >>
+>>
+endobj
+3244 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 358.991 525.406 367.555]
+/A << /S /GoTo /D (section.9.32) >>
+>>
+endobj
+3245 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.893 345.332 169.834 355.807]
+/A << /S /GoTo /D (_server_8cpp) >>
+>>
+endobj
+3246 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 347.036 525.406 355.6]
+/A << /S /GoTo /D (section.9.34) >>
+>>
+endobj
+3247 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.893 335.08 160.365 343.851]
+/A << /S /GoTo /D (_server_8h) >>
+>>
+endobj
+3248 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 335.08 525.406 343.645]
+/A << /S /GoTo /D (section.9.36) >>
+>>
+endobj
+3249 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.893 321.422 157.568 331.69]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h) >>
+>>
+endobj
+3250 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 323.125 525.406 331.69]
+/A << /S /GoTo /D (section.9.38) >>
+>>
+endobj
+3251 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.903 311.251 170.614 319.735]
+/A << /S /GoTo /D (_s_i_g_n_2constants_8h) >>
+>>
+endobj
+3252 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 311.17 525.406 319.735]
+/A << /S /GoTo /D (section.9.14) >>
+>>
+endobj
+3253 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.903 297.511 170.291 307.78]
+/A << /S /GoTo /D (_hasher_8cpp) >>
+>>
+endobj
+3254 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 299.215 525.406 307.78]
+/A << /S /GoTo /D (section.9.42) >>
+>>
+endobj
+3255 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.903 287.34 160.823 295.824]
+/A << /S /GoTo /D (_hasher_8h) >>
+>>
+endobj
+3256 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 287.26 525.406 295.824]
+/A << /S /GoTo /D (section.9.44) >>
+>>
+endobj
+3257 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.903 273.493 167.305 284.076]
+/A << /S /GoTo /D (_signer_8cpp) >>
+>>
+endobj
+3258 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 275.305 525.406 283.869]
+/A << /S /GoTo /D (section.9.46) >>
+>>
+endobj
+3259 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.903 261.538 157.837 272.12]
+/A << /S /GoTo /D (_signer_8h) >>
+>>
+endobj
+3260 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 263.349 525.406 271.914]
+/A << /S /GoTo /D (section.9.48) >>
+>>
+endobj
+3261 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 251.475 169.125 259.959]
+/A << /S /GoTo /D (_s_o_i_l_2constants_8h) >>
+>>
+endobj
+3262 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 251.394 525.406 259.959]
+/A << /S /GoTo /D (section.9.16) >>
+>>
+endobj
+3263 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 237.736 178.773 248.21]
+/A << /S /GoTo /D (_container_8cpp) >>
+>>
+endobj
+3264 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 239.623 525.406 248.004]
+/A << /S /GoTo /D (section.9.50) >>
+>>
+endobj
+3265 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 227.484 169.305 236.255]
+/A << /S /GoTo /D (_container_8h) >>
+>>
+endobj
+3266 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 227.668 525.406 236.049]
+/A << /S /GoTo /D (section.9.52) >>
+>>
+endobj
+3267 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 213.825 173.241 224.093]
+/A << /S /GoTo /D (_element_8cpp) >>
+>>
+endobj
+3268 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 215.713 525.406 224.093]
+/A << /S /GoTo /D (section.9.54) >>
+>>
+endobj
+3269 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 203.654 163.772 212.138]
+/A << /S /GoTo /D (_element_8h) >>
+>>
+endobj
+3270 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 203.574 525.406 212.138]
+/A << /S /GoTo /D (section.9.56) >>
+>>
+endobj
+3271 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 189.915 163.683 200.183]
+/A << /S /GoTo /D (_enum_8cpp) >>
+>>
+endobj
+3272 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 191.618 525.406 200.183]
+/A << /S /GoTo /D (section.9.58) >>
+>>
+endobj
+3273 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 179.744 154.215 188.228]
+/A << /S /GoTo /D (_enum_8h) >>
+>>
+endobj
+3274 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 179.663 525.406 188.228]
+/A << /S /GoTo /D (section.9.60) >>
+>>
+endobj
+3275 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 165.897 165.629 176.273]
+/A << /S /GoTo /D (_figure_8cpp) >>
+>>
+endobj
+3276 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 167.708 525.406 176.273]
+/A << /S /GoTo /D (section.9.62) >>
+>>
+endobj
+3277 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 153.942 156.16 164.318]
+/A << /S /GoTo /D (_figure_8h) >>
+>>
+endobj
+3278 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 155.753 525.406 164.318]
+/A << /S /GoTo /D (section.9.64) >>
+>>
+endobj
+3279 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 142.094 174.738 152.362]
+/A << /S /GoTo /D (_function_8cpp) >>
+>>
+endobj
+3280 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 143.798 525.406 152.362]
+/A << /S /GoTo /D (section.9.66) >>
+>>
+endobj
+3281 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 131.923 165.27 140.407]
+/A << /S /GoTo /D (_function_8h) >>
+>>
+endobj
+3282 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 131.843 525.406 140.407]
+/A << /S /GoTo /D (section.9.68) >>
+>>
+endobj
+3283 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 118.184 191.048 128.452]
+/A << /S /GoTo /D (json__helpers_8cpp) >>
+>>
+endobj
+3284 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 119.887 525.406 128.452]
+/A << /S /GoTo /D (section.9.70) >>
+>>
+endobj
+3285 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 106.229 181.58 116.497]
+/A << /S /GoTo /D (json__helpers_8h) >>
+>>
+endobj
+3286 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 107.932 525.406 116.497]
+/A << /S /GoTo /D (section.9.72) >>
+>>
+endobj
+3287 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 94.273 166.265 104.748]
+/A << /S /GoTo /D (_object_8cpp) >>
+>>
+endobj
+3288 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 95.977 525.406 104.542]
+/A << /S /GoTo /D (section.9.74) >>
+>>
+endobj
+3289 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 82.318 156.797 92.793]
+/A << /S /GoTo /D (_object_8h) >>
+>>
+endobj
+3290 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 84.022 525.406 92.587]
+/A << /S /GoTo /D (section.9.76) >>
+>>
+endobj
+3291 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 70.363 181.31 80.631]
+/A << /S /GoTo /D (_parameter_8cpp) >>
+>>
+endobj
+3292 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 72.067 525.406 80.631]
+/A << /S /GoTo /D (section.9.78) >>
+>>
+endobj
+3304 0 obj
+<<
+/D [3302 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+58 0 obj
+<<
+/D [3302 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+62 0 obj
+<<
+/D [3302 0 R /XYZ 70.866 570.668 null]
+>>
+endobj
+3301 0 obj
+<<
+/Font << /F67 2922 0 R /F48 2333 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3368 0 obj
+<<
+/Length 622       
+/Filter /FlateDecode
+>>
+stream
+x���r�0��~
+-������MC�d:�48��,\�f�P�N��+l�63��$C���̙�q$]]�F���s8�+a�!�Rߑ��(��ψ����$�ڎ˿�Ob�1m��dc��r����l/���m���������}v�(�A��S$$'Rp{?A}�C7
+��\1�)6�P�#���'ɋ4��?]��
+-�h#���.�XP7L1��4��K��̀������9����h����p.��
+��s�o^�x����RL�.LF��D��6?`>��k�(m`�~��w��c�c�f���^�Z�M`u[�cɑR��	���.��RU;T���y��r����l �a�%�e�5hs�X%�&��<!�,�q�
[��ʥT	��|^�>Ғ_��o(��ÕZ���Mn��{�N�q�˕���d���	p�3�/o���Hg�0
+�.����[=�xc�����j�'k��a�|���~���x�{��e���R�O���k�V�����_3�h�,�0ɪ�C0��x���g��	v�Q<��%
�-�z�9U���p�q*Ӧ'���
+-ׅb8��TW�i%��f!�Rؖ(�qr/N�4��aQ���Uq9Ü���[�n���j5�R�:.
+endstream
+endobj
+3367 0 obj
+<<
+/Type /Page
+/Contents 3368 0 R
+/Resources 3366 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3104 0 R
+/Annots [ 3293 0 R 3294 0 R 3295 0 R 3296 0 R 3297 0 R 3298 0 R 3299 0 R 3300 0 R 3340 0 R 3341 0 R 3342 0 R 3343 0 R 3344 0 R 3345 0 R 3346 0 R 3347 0 R 3348 0 R 3349 0 R 3350 0 R 3351 0 R 3352 0 R 3353 0 R 3354 0 R 3355 0 R 3356 0 R 3357 0 R 3358 0 R 3359 0 R 3360 0 R 3361 0 R 3362 0 R 3363 0 R 3364 0 R 3365 0 R ]
+>>
+endobj
+3293 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 759.962 171.842 768.446]
+/A << /S /GoTo /D (_parameter_8h) >>
+>>
+endobj
+3294 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 759.881 525.406 768.446]
+/A << /S /GoTo /D (section.9.80) >>
+>>
+endobj
+3295 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 746.115 166.633 756.491]
+/A << /S /GoTo /D (_range_8cpp) >>
+>>
+endobj
+3296 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 747.926 525.406 756.491]
+/A << /S /GoTo /D (section.9.82) >>
+>>
+endobj
+3297 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 734.159 157.165 744.535]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+3298 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 735.971 525.406 744.535]
+/A << /S /GoTo /D (section.9.84) >>
+>>
+endobj
+3299 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 722.312 160.141 732.58]
+/A << /S /GoTo /D (_time_8cpp) >>
+>>
+endobj
+3300 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 724.015 525.406 732.58]
+/A << /S /GoTo /D (section.9.86) >>
+>>
+endobj
+3340 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 712.141 150.673 720.625]
+/A << /S /GoTo /D (_time_8h) >>
+>>
+endobj
+3341 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 712.06 525.406 720.625]
+/A << /S /GoTo /D (section.9.88) >>
+>>
+endobj
+3342 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 698.402 163.558 708.67]
+/A << /S /GoTo /D (_types_8cpp) >>
+>>
+endobj
+3343 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 700.105 525.406 708.67]
+/A << /S /GoTo /D (section.9.90) >>
+>>
+endobj
+3344 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 686.446 154.089 696.715]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+3345 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 688.15 525.406 696.715]
+/A << /S /GoTo /D (section.9.40) >>
+>>
+endobj
+3346 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 674.491 172.434 684.76]
+/A << /S /GoTo /D (_variable_8cpp) >>
+>>
+endobj
+3347 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 676.195 525.406 684.76]
+/A << /S /GoTo /D (section.9.92) >>
+>>
+endobj
+3348 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.414 664.32 162.966 672.804]
+/A << /S /GoTo /D (_variable_8h) >>
+>>
+endobj
+3349 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 664.24 525.406 672.804]
+/A << /S /GoTo /D (section.9.94) >>
+>>
+endobj
+3350 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [123.898 650.581 162.266 660.849]
+/A << /S /GoTo /D (main_8cpp) >>
+>>
+endobj
+3351 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 652.468 525.406 660.849]
+/A << /S /GoTo /D (section.9.96) >>
+>>
+endobj
+3352 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.908 638.626 179.213 648.894]
+/A << /S /GoTo /D (_broadcast_8cpp) >>
+>>
+endobj
+3353 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 640.329 525.406 648.894]
+/A << /S /GoTo /D (section.9.98) >>
+>>
+endobj
+3354 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.908 628.455 169.744 636.939]
+/A << /S /GoTo /D (_broadcast_8h) >>
+>>
+endobj
+3355 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 628.374 525.406 636.939]
+/A << /S /GoTo /D (section.9.100) >>
+>>
+endobj
+3356 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.908 614.608 192.079 625.19]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp) >>
+>>
+endobj
+3357 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 616.603 525.406 624.984]
+/A << /S /GoTo /D (section.9.4) >>
+>>
+endobj
+3358 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.908 602.653 182.611 613.235]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h) >>
+>>
+endobj
+3359 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 604.464 525.406 613.029]
+/A << /S /GoTo /D (section.9.8) >>
+>>
+endobj
+3360 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.908 592.589 167.619 601.073]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+3361 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 592.509 525.406 601.073]
+/A << /S /GoTo /D (section.9.18) >>
+>>
+endobj
+3362 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.908 578.85 178.217 589.118]
+/A << /S /GoTo /D (_exception_8cpp) >>
+>>
+endobj
+3363 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 580.553 525.406 589.118]
+/A << /S /GoTo /D (section.9.102) >>
+>>
+endobj
+3364 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.908 566.895 168.749 577.163]
+/A << /S /GoTo /D (_exception_8h) >>
+>>
+endobj
+3365 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [508.458 568.598 525.406 577.163]
+/A << /S /GoTo /D (section.9.104) >>
+>>
+endobj
+3369 0 obj
+<<
+/D [3367 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3366 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3410 0 obj
+<<
+/Length 751       
+/Filter /FlateDecode
+>>
+stream
+xڽVMS�0��W�h��Ò�[:̔R�
Ɖ�6�����+Y���`(4'�-���ӓv��P;BŒi����d0spY�1Hf@ q���S�\{��iY���<��&g;8
!���CF���t%U�N�8)����^��6��8��&0Ƙ9P.`[P�`���5I.4�����K9�1�d%s�K;��
+��C�!C��2UJ*Q� �1��l��H��`ȹ����\�qoj��Tf����*֕��������ñ0A!���8�LT��6�[bps�T9*m2�y�%z�.Y���ϕ�E�o�0}�/��*R..�ݡ��D��H���L|���Rfr�az�-�=��Fؓ�h^�ثKc��]%�R�}��\�?E�����:*TY�J����UG!�y|�e
+�ňҏ�Z�M�L�]�f���p�>�e�!c%�y����mk��hA?������g.]�{.əj��1�8��~��в�	�ڀ�7���g4��L�~�閃n`uhm��1���@��!�������ǖ[M�ˤr׵�F{��6ڮ
���K�!�/�Ԛlg��[E�?�Xce�e?S7�Ua��{����������-�e���Ze���r1���R[&����\w#=�0�[��Go4>�����]� t<��4?XȻ_����;��2�`�\�"��)�"�q��+2�>��\
~�^Z�C"x��J�L��--�2�UZ"��0'����(Г�n��Ů
+endstream
+endobj
+3409 0 obj
+<<
+/Type /Page
+/Contents 3410 0 R
+/Resources 3408 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3416 0 R
+/Annots [ 3386 0 R 3387 0 R 3388 0 R 3389 0 R 3390 0 R 3391 0 R 3392 0 R 3393 0 R 3394 0 R 3395 0 R 3396 0 R 3397 0 R 3398 0 R 3399 0 R 3400 0 R 3401 0 R 3402 0 R 3403 0 R ]
+>>
+endobj
+3386 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 492.424 158.053 500.908]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+3387 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 477.95 132.012 485.692]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3388 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.263 477.857 168.785 485.692]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+3389 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 465.181 146.137 473.952]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+3390 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.715 450.623 158.512 458.716]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+3391 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.294 388.689 255.677 398.958]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+3392 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 376 132.012 383.742]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3393 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [227.27 361.528 269.628 371.796]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+3394 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 348.838 132.012 356.58]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3395 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [223.28 336.07 250.691 344.841]
+/A << /S /GoTo /D (namespace_h_t_t_p_af603c787079c0b8cacc07b6be6ae5e95) >>
+>>
+endobj
+3396 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 321.677 132.012 329.419]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3397 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [204.836 308.989 241.214 317.473]
+/A << /S /GoTo /D (namespace_h_t_t_p_a28a83748614f1c141821ce4b9da83d3f) >>
+>>
+endobj
+3398 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 294.515 132.012 302.257]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3399 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [193.144 281.747 214.074 290.311]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3400 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 267.353 132.012 275.095]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3401 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.422 134.732 239.235 141.291]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 91.348 148.111 99.913]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h_source_l00039) >>
+>>
+endobj
+3403 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 89.644 205.208 99.913]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h_source) >>
+>>
+endobj
+3411 0 obj
+<<
+/D [3409 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+66 0 obj
+<<
+/D [3409 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+2929 0 obj
+<<
+/D [3409 0 R /XYZ 70.866 572.646 null]
+>>
+endobj
+70 0 obj
+<<
+/D [3409 0 R /XYZ 70.866 572.646 null]
+>>
+endobj
+3412 0 obj
+<<
+/D [3409 0 R /XYZ 70.866 529.132 null]
+>>
+endobj
+3413 0 obj
+<<
+/D [3409 0 R /XYZ 70.866 427.183 null]
+>>
+endobj
+74 0 obj
+<<
+/D [3409 0 R /XYZ 70.866 253.289 null]
+>>
+endobj
+3414 0 obj
+<<
+/D [3409 0 R /XYZ 70.866 213.06 null]
+>>
+endobj
+78 0 obj
+<<
+/D [3409 0 R /XYZ 70.866 186.209 null]
+>>
+endobj
+3415 0 obj
+<<
+/D [3409 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+3408 0 obj
+<<
+/Font << /F67 2922 0 R /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3451 0 obj
+<<
+/Length 802       
+/Filter /FlateDecode
+>>
+stream
+x�՗[S�0���y������}\��:�[yS�AH/�- ��~�M�.���e:�=9���A#����-��}�>8� A�s�r�\٘;7����(5�\�̣̈́X8���q�g"-�r��:�:	�{�p�"��C�� �YW7$�3� 
|�`"g�e2���)��~Yh�R�!j�z�q:!d��r�%R����<x�t(��jX���D�W��]�7.˼כ-XU#Ũ�hpj�+�=/z���Js�O�`U�P��Zk�`�lS�!�N�u�͡C�����A��Z��z�Ĝ\#�NR#{>SǸ����E�`f��$"���9ZSu\��ɍ������|:�+tʨp��*\�mCI�#�z<�j-*��h]�eæ1D�{2,��K8��WIޠJ5��"��Ek��~��x9P���Xf�G�`-�#����/�	��
+���H�Y*EA� ��i�#�����UR�
"���"VCt�Vٹ|9BҌ���D��-�}0?�s|d���a��&00��q$�b���
+ê��Nn��Qn�B��X�D�cj�WS��֫�x4���t`=�[��l��c��݇�,�v��լ-6�M����Dݾ��!xZ!�t�=��g��1a��05���$�@m�m~t�*�ڐ��X��dó".�ƈ�!�u7$��{�T7��[�q��Ṑ2	�V�`;R�s�����HK��C��F�=՟�mV��0[��p�ث�j��OB�2��=���y�l^99$wu.s!SK�z�r^?�O�b%*w-9Ǚ^��F��k�tS�_�*��
+endstream
+endobj
+3450 0 obj
+<<
+/Type /Page
+/Contents 3451 0 R
+/Resources 3449 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3416 0 R
+/Annots [ 3404 0 R 3405 0 R 3406 0 R 3407 0 R 3422 0 R 3423 0 R 3424 0 R 3425 0 R 3426 0 R 3427 0 R 3428 0 R 3429 0 R 3430 0 R 3431 0 R 3432 0 R 3433 0 R 3434 0 R 3435 0 R 3436 0 R 3437 0 R 3438 0 R 3439 0 R 3440 0 R 3441 0 R 3442 0 R 3443 0 R 3444 0 R ]
+>>
+endobj
+3404 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [198.986 729.826 263.145 737.038]
+/A << /S /GoTo /D (namespace_h_t_t_p_a28a83748614f1c141821ce4b9da83d3f) >>
+>>
+endobj
+3405 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.788 706.868 165.192 715.248]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 683.602 148.111 692.167]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h_source_l00032) >>
+>>
+endobj
+3407 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 681.899 205.208 692.167]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h_source) >>
+>>
+endobj
+3422 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [222.896 591.23 287.056 598.893]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+3423 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.788 569.375 165.192 577.756]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3424 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 546.294 148.111 554.675]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h_source_l00011) >>
+>>
+endobj
+3425 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 544.406 205.208 554.675]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h_source) >>
+>>
+endobj
+3426 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [227.678 453.737 296.62 461.4]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+3427 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.788 431.883 165.192 440.264]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3428 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 408.618 148.111 417.182]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h_source_l00018) >>
+>>
+endobj
+3429 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 406.914 205.208 417.182]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h_source) >>
+>>
+endobj
+3430 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [222.896 317.349 282.273 324.211]
+/A << /S /GoTo /D (namespace_h_t_t_p_af603c787079c0b8cacc07b6be6ae5e95) >>
+>>
+endobj
+3431 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.788 294.391 165.192 302.772]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3432 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 271.125 148.111 279.69]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h_source_l00025) >>
+>>
+endobj
+3433 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 269.422 205.208 279.69]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h_source) >>
+>>
+endobj
+3434 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 165.091 172.919 175.673]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+3435 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 151.892 133.804 160.272]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3436 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 137.707 159.057 147.976]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+3437 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 124.401 133.804 132.781]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3438 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.054 124.76 169.519 132.595]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+3439 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [169.77 123.154 207.196 132.595]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+3440 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.326 110.108 196.563 120.691]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container) >>
+>>
+endobj
+3441 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [138.307 96.909 163.16 105.289]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3442 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 84.509 156.879 92.993]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+3443 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 69.418 133.804 77.798]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3444 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.054 69.777 169.519 77.612]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+3452 0 obj
+<<
+/D [3450 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+82 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3417 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 673.656 null]
+>>
+endobj
+86 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 646.65 null]
+>>
+endobj
+3418 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 536.164 null]
+>>
+endobj
+90 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 509.158 null]
+>>
+endobj
+3419 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 398.671 null]
+>>
+endobj
+94 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 371.666 null]
+>>
+endobj
+2931 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 270.418 null]
+>>
+endobj
+98 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 254.195 null]
+>>
+endobj
+3453 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 205.112 null]
+>>
+endobj
+3066 0 obj
+<<
+/D [3450 0 R /XYZ 70.866 61.462 null]
+>>
+endobj
+3449 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3498 0 obj
+<<
+/Length 918       
+/Filter /FlateDecode
+>>
+stream
+x��X�r�0}�+�gj!ɺؙNgr�$�6i�K��6�v�Я�����F���=Z��� p�8�5Z�z�;�w�.�@xrzp�бl"�f�$�әT<�}���PwFM�P��>JȄ���X��F��xh`=���Yr]�
+�A����~� �x.��~��45`#�m|o�9�1����CT�#��	��b�\Z`��{z|V
#�
A�<n|Ӑ��L�B�d�8%����q�g��
+W��PMQ6�V��l�x�o����h��|�~b<��J��[a�#�	c�H<ؘB��LtO�	�k[�3�P�-�LV?خ?_	vqn��q���h;D�֑�ϴ�
+��~���SFFr�3Ğ�	jN'�쁺F��~�����k%)Rsv$��q�H?���#�ȷ�ڶK^�:��O�"i2�~���K��%)י#_d����Ƴ�%��.��O�m{r]BKtg�U0�$\<Q}_��?�H.���Gٟn_�d�O��(��/�O�'t��wĂ�'��Qdj�4�Ӹui�����NC}�G*Pa����9�����]Z� �Wg;4	z���z>��LaM̮��e�񇏑��/���2ˁ55�gk'�_Z2+����^EH���[K�őZF����Y4E2�2P��v�~��ˤ��s��,�*|���[�����;�a?�M��R�ާ�m[��?ua�|�Kpk�Y?������+-��d�B�C���a��MT���8����0#�;��ُ���$}�w�j}ҫ�ڂB��Jܾ��VN�O�"<N{{q�o�p	$Őz��M*���[�8��ޏ�������e˵`�2{����H~�P�qz��-�)d"�sQX\rH���)�g���X�3��Y�M}�f�Gc�$>M��Φ��y�����
+endstream
+endobj
+3497 0 obj
+<<
+/Type /Page
+/Contents 3498 0 R
+/Resources 3496 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3416 0 R
+/Annots [ 3445 0 R 3446 0 R 3447 0 R 3448 0 R 3458 0 R 3459 0 R 3460 0 R 3461 0 R 3462 0 R 3463 0 R 3464 0 R 3465 0 R 3466 0 R 3467 0 R 3468 0 R 3469 0 R 3470 0 R 3471 0 R 3472 0 R 3473 0 R 3474 0 R 3475 0 R 3476 0 R 3477 0 R 3478 0 R 3479 0 R 3480 0 R 3481 0 R 3482 0 R 3483 0 R 3484 0 R 3485 0 R 3486 0 R 3487 0 R 3488 0 R 3489 0 R ]
+>>
+endobj
+3445 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 655.959 148.585 664.443]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+3446 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.244 641.026 169.245 648.86]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+3447 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 626.172 145.599 636.754]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+3448 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 611.427 134.263 621.151]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+3458 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 463.349 158.555 472.12]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+3459 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.236 448.423 165.21 456.516]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+3460 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 434.31 209.352 444.224]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4) >>
+>>
+endobj
+3461 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 406.415 205.865 416.329]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4) >>
+>>
+endobj
+3462 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 379.743 152.575 388.227]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+3463 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 364.737 129.333 372.83]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3464 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [150.217 364.81 181.809 372.644]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+3465 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 351.848 143.017 360.332]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+3466 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 336.841 129.333 344.935]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3467 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.583 336.914 152.573 344.749]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+3468 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 322.06 145.097 332.436]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+3469 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.29 309.019 219.276 316.854]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+3470 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [235.23 309.019 274.488 316.854]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+3471 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [336.995 309.019 368.587 316.854]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+3472 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 296.057 154.072 304.541]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+3473 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 281.123 141.889 288.958]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+3474 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 266.377 145.599 276.852]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+3475 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 251.622 134.263 261.248]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+3476 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 240.266 161.093 248.75]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+3477 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 225.333 148.208 233.167]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+3478 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 210.479 146.101 220.855]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+3479 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 195.734 134.715 205.272]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+3480 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 182.583 192.98 192.959]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4) >>
+>>
+endobj
+3481 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 169.542 131.939 177.377]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+3482 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.19 167.839 157.956 177.377]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+3483 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 154.688 205.587 165.064]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4) >>
+>>
+endobj
+3484 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.392 139.944 158.157 149.481]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+3485 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 128.685 139.61 137.169]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3486 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 113.678 129.333 121.771]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3487 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.583 113.751 149.507 121.586]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3488 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 100.789 151.902 109.273]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+3489 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 85.856 139.936 93.69]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+3499 0 obj
+<<
+/D [3497 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+102 0 obj
+<<
+/D [3497 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3067 0 obj
+<<
+/D [3497 0 R /XYZ 70.866 747.603 null]
+>>
+endobj
+106 0 obj
+<<
+/D [3497 0 R /XYZ 70.866 747.603 null]
+>>
+endobj
+3500 0 obj
+<<
+/D [3497 0 R /XYZ 70.866 695.827 null]
+>>
+endobj
+2930 0 obj
+<<
+/D [3497 0 R /XYZ 70.866 602.461 null]
+>>
+endobj
+110 0 obj
+<<
+/D [3497 0 R /XYZ 70.866 596.011 null]
+>>
+endobj
+3501 0 obj
+<<
+/D [3497 0 R /XYZ 70.866 503.297 null]
+>>
+endobj
+3496 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3569 0 obj
+<<
+/Length 1511      
+/Filter /FlateDecode
+>>
+stream
+x���o�H���+�t����zQ�Q��kq�%�"\D&G����߬������U���ogvfw������ʥS���e#-%����Ȗ�R�"I,�o�U�]���Z�	����ݗ�ޓ[�SeW?M�fc��{�p��+��O��pl�D�m#�r�i\����>���ˆi���[\0$8���n�Kg4%)j,�*	±�NM����w�j��_\3�`&�H�ʪ��f�����3�]]Y�Cy��Cϗ����ۦ��ȯ�T�j���-�f��VF=,�2�Q�U'1LC���f+��Ѩ��������"��P
+B�6�'���Ց[d6L�N�T�]�����OsՈ8����ɨ��Kcy��vv_�Jn�;��/~��x���i�~z�b����f�������b�wA��W^���l��u�����o��ʹ	�F��3g8v���4?_�_K�n��c��U��D�dj����� �K�Mv��~G�2�(���2xn?Y�rd
+X6Y"��
+ty�!�C��S���wcU'#b˒�؀y�0�e��:���E
+�&���{2���*���d�/��a̍F}w���4Ϙ{,�J)$�A�q5rMM�ў���fR�`�1f9��#m'��)���[����ۢ� 2p��cUF	�Q�(3�>"ɴ����绡iJ�0�p0�*$pN��I$��A&=(]C����P{�В�QW� 	����?�F��%*��&�~�g�o�|�g�Jzk(�W��f��{�m�;��~+��T������Ǽ��t��Z��܅DF7��dY>%���4
+I���d��S)���@i���X�Y\�g�hė��=0���*YF�	���HuY{	�Z��A��I����X౰����8��@���wiyb��~����a-��҂��z;�>��B������=�I��&���ԭ����t
�C6(r�%��nDΩ2���}l4~�h�7�����'?�b�7y�.ۏu~~K��6󺓿k
+��EZԒ�d��鶜e�˄��]���&EΌ��B{�sƠ��O���O\--�͗�����n4ٖ�s!�ޱ.�
�Q�(4N���k�G��r,L��mt��d��0�K@�
+d���l�/w'���x�9
+`g���7At'.�'ȩ�gK�bnr��V{��V���ˁ��ߝ9��Nxs$�"���3a��]�?D-���d��f�O�m&N�j^9�+�HM^�q@C�߉���_ʣ�f;x_������n���A��U�c�墼:uk��*���cw����v�WT��"%rS�PZ�'��>y�<snWn�S"M�)T܇�	 ��G˫�/R��LeĎ{�㠄XX6�6p��ٝ�{�$�ԝ�Y�T��E�
+)� ��� h���q���C�vBK�n�QA�G7W_�{qg��=���U7�Ӝ?�-��a8�}�$m7��)��I"�$R.,*Bp�ERF'�7��N!CG���6�5���p�����������'.{�
+endstream
+endobj
+3568 0 obj
+<<
+/Type /Page
+/Contents 3569 0 R
+/Resources 3567 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3416 0 R
+/Annots [ 3490 0 R 3491 0 R 3492 0 R 3493 0 R 3494 0 R 3495 0 R 3502 0 R 3503 0 R 3504 0 R 3505 0 R 3506 0 R 3507 0 R 3508 0 R 3509 0 R 3510 0 R 3511 0 R 3512 0 R 3513 0 R 3514 0 R 3515 0 R 3516 0 R 3517 0 R 3518 0 R 3519 0 R 3520 0 R 3521 0 R 3522 0 R 3523 0 R 3524 0 R 3525 0 R 3526 0 R 3527 0 R 3528 0 R 3529 0 R 3530 0 R 3531 0 R 3532 0 R 3533 0 R 3534 0 R 3535 0 R 3536 0 R 3537 0 R 3538 0 R 3539 0 R 3540 0 R 3541 0 R 3542 0 R 3543 0 R 3544 0 R 3545 0 R 3546 0 R 3547 0 R 3548 0 R 3549 0 R 3550 0 R 3551 0 R 3552 0 R 3553 0 R 3554 0 R 3555 0 R 3556 0 R 3557 0 R 3558 0 R 3559 0 R 3560 0 R 3561 0 R 3562 0 R 3563 0 R 3564 0 R 3565 0 R ]
+>>
+endobj
+3490 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [156.087 740.772 172.524 749.153]
+/A << /S /GoTo /D (namespace_s_o_i_l_aef76c04a3939438dd7454193a3d56384) >>
+>>
+endobj
+3491 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 726.305 129.333 734.398]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3492 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.908 713.977 194.77 722.748]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1691ac525df63feb4f180fcc32f307f1) >>
+>>
+endobj
+3493 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 699.694 129.333 707.787]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3494 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.117 687.366 173.026 696.137]
+/A << /S /GoTo /D (namespace_s_o_i_l_a79f0d9e5821444f0265d9edf1e37f237) >>
+>>
+endobj
+3495 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 673.082 129.333 681.176]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3502 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [168.173 660.755 204.04 669.526]
+/A << /S /GoTo /D (namespace_s_o_i_l_a69374c360d593ed3cd4df6f3ebb40643) >>
+>>
+endobj
+3503 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 646.471 129.333 654.564]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3504 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.678 634.224 152.001 642.708]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+3505 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.501 634.144 180.89 642.708]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+3506 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 619.86 129.333 627.953]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3507 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.583 619.933 152.573 627.768]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+3508 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.678 607.613 148.594 616.097]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3509 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.094 607.716 172.507 616.097]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+3510 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 593.249 129.333 601.342]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3511 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.583 593.321 149.507 601.156]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3512 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [239.136 580.921 291.94 589.692]
+/A << /S /GoTo /D (namespace_s_o_i_l_a738722655e044a443e338fde0f97e9a0) >>
+>>
+endobj
+3513 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 566.638 129.333 574.731]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3514 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 510.513 161.738 519.97]
+/A << /S /GoTo /D (namespace_s_o_i_l_acc4b84d1cba2fafd495c35ebaeae1b96) >>
+>>
+endobj
+3515 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [165.224 511.406 225.523 520.177]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+3516 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 472.839 144.102 481.404]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3517 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 471.136 180.989 481.404]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+3518 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 458.721 132.012 466.463]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3519 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 446.228 215.414 454.793]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3520 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 444.524 299.52 454.793]
+/A << /S /GoTo /D (namespace_s_o_i_l_a863aac9ac9eb4396135f86bd9bc29bad) >>
+>>
+endobj
+3521 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 433.919 215.414 442.483]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3522 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 432.215 289.729 442.483]
+/A << /S /GoTo /D (namespace_s_o_i_l_a034d9e6f234755509cc20b01b506f761) >>
+>>
+endobj
+3523 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 421.609 215.414 430.174]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3524 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 419.798 311.786 430.174]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa97c25e5a3e597eea65e13ac0ce85416) >>
+>>
+endobj
+3525 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 409.3 215.414 417.865]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3526 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 407.596 299.7 417.865]
+/A << /S /GoTo /D (namespace_s_o_i_l_a980491413d86c50ced57a8345c8f63ed) >>
+>>
+endobj
+3527 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 396.991 215.414 405.555]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3528 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 395.287 282.251 405.555]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1e904aedc828f75201ffc0452ff28c03) >>
+>>
+endobj
+3529 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 384.681 215.414 393.246]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3530 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 382.978 319.622 393.452]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa16db0f32c1f6a992261e1747be93097) >>
+>>
+endobj
+3531 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 372.372 215.414 380.937]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3532 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 370.668 324.599 381.143]
+/A << /S /GoTo /D (namespace_s_o_i_l_a3656e92123956c8afcfbe545eef81eb7) >>
+>>
+endobj
+3533 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [180.179 346.404 211.079 356.672]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+3534 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.684 308.649 157.345 318.106]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+3535 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [227.297 307.838 245.733 318.106]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+3536 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 281.226 310.674 291.495]
+/A << /S /GoTo /D (namespace_s_o_i_l_aaff67634d006fd7dca3fffb14b28dd8e) >>
+>>
+endobj
+3537 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 268.917 310.853 279.185]
+/A << /S /GoTo /D (namespace_s_o_i_l_ada5ccc8aa10b097eea146a1b2d720e95) >>
+>>
+endobj
+3538 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 256.608 293.405 266.876]
+/A << /S /GoTo /D (namespace_s_o_i_l_a86cf6d407ececca2487dcbe521978d21) >>
+>>
+endobj
+3539 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 244.191 322.94 254.567]
+/A << /S /GoTo /D (namespace_s_o_i_l_a02992988be78a7ab33f587f28f9d77ee) >>
+>>
+endobj
+3540 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 231.989 330.776 242.464]
+/A << /S /GoTo /D (namespace_s_o_i_l_a6cb86f8e799f4d035ef321becf44d6e2) >>
+>>
+endobj
+3541 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [358.184 233.693 407.016 242.464]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+3542 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 219.68 335.753 230.154]
+/A << /S /GoTo /D (namespace_s_o_i_l_a7a19e241bb85fab8d5669742af038a6b) >>
+>>
+endobj
+3543 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [363.16 221.383 416.968 230.154]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+3544 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 207.37 334.273 217.845]
+/A << /S /GoTo /D (namespace_s_o_i_l_a2c15040c8f4602cc146655bf71293721) >>
+>>
+endobj
+3545 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [195.318 195.872 278.199 205.329]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa5865fafee3cc8f7eeba8269f24c86ec) >>
+>>
+endobj
+3546 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.049 183.563 243.661 193.02]
+/A << /S /GoTo /D (namespace_s_o_i_l_a104dd24cc9e4f3291cd6f6cd4ef9a962) >>
+>>
+endobj
+3547 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [195.497 171.254 278.557 180.711]
+/A << /S /GoTo /D (namespace_s_o_i_l_ad66a788615277edb2f3e7077d89cd942) >>
+>>
+endobj
+3548 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.584 158.025 302.73 168.401]
+/A << /S /GoTo /D (namespace_s_o_i_l_a5b6625a4bf4d20d486a4258a17462ef9) >>
+>>
+endobj
+3549 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [372.682 158.133 391.118 168.401]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+3550 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 147.527 214.92 156.298]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+3551 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.42 146.635 318.403 156.298]
+/A << /S /GoTo /D (namespace_s_o_i_l_a10e716692b430aae80488a4eb82c7711) >>
+>>
+endobj
+3552 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [388.355 145.824 406.792 156.092]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+3553 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 135.218 219.897 143.989]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+3554 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.397 134.326 328.356 143.989]
+/A << /S /GoTo /D (namespace_s_o_i_l_a80e0cc86c7756c3f9b4ccf338cd146bd) >>
+>>
+endobj
+3555 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [398.308 133.514 416.744 143.783]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+3556 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [185.527 122.016 258.616 131.473]
+/A << /S /GoTo /D (namespace_s_o_i_l_adaab1a60ee0b36f8537055549511ba7b) >>
+>>
+endobj
+3557 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [328.569 121.205 347.005 131.473]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+3558 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.152 108.896 181.43 118.859]
+/A << /S /GoTo /D (namespace_s_o_i_l_adc8de2e2651ccc2e7c03e8289cd64c2b) >>
+>>
+endobj
+3559 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [208.837 110.68 230.753 119.164]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3560 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [273.618 110.68 295.534 119.164]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3561 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.132 96.388 149.055 104.223]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3562 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.152 82.284 181.43 92.248]
+/A << /S /GoTo /D (namespace_s_o_i_l_a3b4ec3441b90255cca35259c5e4a9321) >>
+>>
+endobj
+3563 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [208.837 84.069 230.753 92.553]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3564 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [273.618 84.069 295.534 92.553]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3565 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.34 69.777 147.263 77.612]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3570 0 obj
+<<
+/D [3568 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3571 0 obj
+<<
+/D [3568 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+3572 0 obj
+<<
+/D [3568 0 R /XYZ 70.866 545.826 null]
+>>
+endobj
+3567 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F22 2379 0 R /F25 2380 0 R /F79 3573 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3638 0 obj
+<<
+/Length 882       
+/Filter /FlateDecode
+>>
+stream
+x��WMs�6��W�HMF@������Z�8�X�X9�90$s"�*	6տ� (����:�(-����=,A������r�~���T�f$	N�@2���h6G���h�$���ܺ_w�Z՛,W���Q�Ji}��C�3KM�4��`2�
+(	�}�$�I�Q�>4�{��,M��v���q[l��?2@O	�q*����~LGcJ	��Ɋ��;�W�Ϋbc�R[|��2�GAcF1#]�{e +a��W��F��\�IH�[��n���:�2�����K1�]��U�By�]H�-_��j�1��:@��V	��Q�����%�A�]���y,��_t9�1��r�G�	�٬�����s����v�����q����+GhK	�Ď�Cm �S��N��Se6$�ԹZt”y�V�d;i\
+�@i	�]�^�������I�J��������,WO3nWX�/.|��c�DGB����sO�oYX����� T���l�A:���+��<t�Sb���Hf�uUhu�	cGƃh�	g뮾Q�g�n��x���aI�����������fzwF��굙_\��r
+��2��La�ĩ�`oN�8N�_��Xj+�-]hs�d,1Kb���4
��Fc"�I·O���TL���x�����p��о�y�.*�u�q�u���o]�����S�~F[�blͼ��/o'?8��e����,ە�%���o��z�6f��ⰼ�\o�M�Z<��|;��Jx�x�nJ�M�^Đ�ċq#��8�������Y�Mt�>��
��ֿħ�a�6�� �s�䉶����t�~�G��r�Em�X��N������b�>p� �1a�G>���_�H
+�w��1pii�VZU�񛿝[�lO�ۥ�v�����'�
+endstream
+endobj
+3637 0 obj
+<<
+/Type /Page
+/Contents 3638 0 R
+/Resources 3636 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3416 0 R
+/Annots [ 3566 0 R 3609 0 R 3610 0 R 3611 0 R 3612 0 R 3613 0 R 3614 0 R 3615 0 R 3616 0 R 3617 0 R 3618 0 R 3619 0 R 3620 0 R 3621 0 R 3622 0 R 3623 0 R 3624 0 R 3625 0 R 3626 0 R 3627 0 R ]
+>>
+endobj
+3566 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [290.8 728.58 313.226 737.351]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3609 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.037 573.196 181.85 580.058]
+/A << /S /GoTo /D (namespace_s_o_i_l_a79f0d9e5821444f0265d9edf1e37f237) >>
+>>
+endobj
+3610 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [227.513 548.869 249.94 557.64]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3611 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 524.602 148.111 533.166]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source_l00033) >>
+>>
+endobj
+3612 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 522.898 205.208 533.166]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source) >>
+>>
+endobj
+3613 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [236.069 429.647 309.793 436.509]
+/A << /S /GoTo /D (namespace_s_o_i_l_a738722655e044a443e338fde0f97e9a0) >>
+>>
+endobj
+3614 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [388.618 405.319 411.044 414.09]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3615 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 381.052 148.111 389.617]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source_l00061) >>
+>>
+endobj
+3616 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 379.349 205.208 389.617]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source) >>
+>>
+endobj
+3617 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.601 286.097 200.978 292.959]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1691ac525df63feb4f180fcc32f307f1) >>
+>>
+endobj
+3618 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [222.349 261.77 244.775 270.541]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3619 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [423.837 261.77 446.263 270.541]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3620 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 237.503 148.111 246.067]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source_l00026) >>
+>>
+endobj
+3621 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 235.799 205.208 246.067]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source) >>
+>>
+endobj
+3622 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.126 142.548 129.247 149.107]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+3623 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.037 142.548 181.85 149.41]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+3624 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.529 118.301 245.852 126.785]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+3625 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [255.82 118.22 278.246 126.991]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3626 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 94.137 148.111 102.518]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source_l00047) >>
+>>
+endobj
+3627 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 92.25 205.208 102.518]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source) >>
+>>
+endobj
+3639 0 obj
+<<
+/D [3637 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+114 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+118 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 700.737 null]
+>>
+endobj
+3576 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 657.019 null]
+>>
+endobj
+122 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 629.884 null]
+>>
+endobj
+3580 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 513.47 null]
+>>
+endobj
+126 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 486.335 null]
+>>
+endobj
+3575 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 369.92 null]
+>>
+endobj
+130 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 342.785 null]
+>>
+endobj
+3578 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 226.371 null]
+>>
+endobj
+134 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 199.236 null]
+>>
+endobj
+3574 0 obj
+<<
+/D [3637 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+3636 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3655 0 obj
+<<
+/Length 1071      
+/Filter /FlateDecode
+>>
+stream
+x��W�n�6��+����!ŗd]��	��4�.3(4��eגۦ_�K�zڱ'�L�S����AKD����dvq�#�XJ��RGR"�XR������)�E�	��mv�.]�j�f�By��l��e��Ŧ4�w���s�h�5�pr��g�����-"����Z����z��:#g�J�IUa�C,��B����@��)+B�>�FqkvK��չ^���EYK�[m� �-��g��=���y>w�;�W�
�A���a�ħ!� Ts]��HHX�����g����C/��Qw����[��!���@���W���GZ7�UQ��1h4�`W7�f��:㡻�ʧ��OGOX��h�����������Wu>�W��(�_�{��oap�Y�g�|C�鿧�����Q�+Gr�˻�1�'�N���9��6���D���}Uo֣= ��w<=�[���e��*�Z�ٳ|}�	��i�����,b"X/2�$v�/��$]�P��☊�#L��<�}��#��(W����֍���,¡Pms���/�E�uo���T��CU�����ny#��\��©[�?%ɇ���ڔS2��i��cn�J	Z;Wb��MeX�v��F���w��Q����X�UL�^�,oS0�ī��Fk�&1~��[��3�}x��v��Nv��OlŻ�ﴑ�w&"�q���k+��J�A[�pG\x�SQ��f�G6]�
+6�Zd�t7�ͳv���ΊtU�m�Ŵj��g�u��M���
+S��&��(٪� �5�fO[{�&A����J��hL�I%e���-�����0�>�!������R����\J��2�Oͥ���D7�~]f��2}A�'\�5�1΅��P�Jᐇ`�@����q3���G�LG�J
���R�z�4�/J��B*���
�i촋�̾�E73�tl�n$e�Ȉ)ԩ���/� *�×S@#L���롦P5|�ժo�.���m�n0=�N$��k��گ;	�ܜ��sxb)]m�֥ޥ]�����vb[q����z��b����
+endstream
+endobj
+3654 0 obj
+<<
+/Type /Page
+/Contents 3655 0 R
+/Resources 3653 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3416 0 R
+/Annots [ 3628 0 R 3629 0 R 3630 0 R 3631 0 R 3632 0 R 3633 0 R 3634 0 R 3635 0 R 3645 0 R 3646 0 R 3647 0 R 3648 0 R 3649 0 R 3650 0 R 3651 0 R 3652 0 R ]
+>>
+endobj
+3628 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.383 728.087 191.414 734.949]
+/A << /S /GoTo /D (namespace_s_o_i_l_aef76c04a3939438dd7454193a3d56384) >>
+>>
+endobj
+3629 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [223.021 703.206 245.448 711.977]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3630 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 678.386 148.111 686.95]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source_l00018) >>
+>>
+endobj
+3631 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 676.682 205.208 686.95]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source) >>
+>>
+endobj
+3632 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [165.511 581.71 224.889 588.572]
+/A << /S /GoTo /D (namespace_s_o_i_l_a69374c360d593ed3cd4df6f3ebb40643) >>
+>>
+endobj
+3633 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [217.668 556.829 240.095 565.6]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3634 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 532.009 148.111 540.574]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source_l00040) >>
+>>
+endobj
+3635 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 530.305 205.208 540.574]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source) >>
+>>
+endobj
+3645 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.126 435.334 129.247 442.546]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3646 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.037 435.334 181.85 442.196]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+3647 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.529 410.534 242.444 419.018]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3648 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [252.413 410.453 274.839 419.224]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3649 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 385.632 148.111 394.197]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source_l00054) >>
+>>
+endobj
+3650 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 383.929 205.208 394.197]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h_source) >>
+>>
+endobj
+3651 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 227.914 119.683 234.474]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3652 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [92.299 69.87 117.703 78.251]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+3656 0 obj
+<<
+/D [3654 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+138 0 obj
+<<
+/D [3654 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3577 0 obj
+<<
+/D [3654 0 R /XYZ 70.866 666.7 null]
+>>
+endobj
+142 0 obj
+<<
+/D [3654 0 R /XYZ 70.866 639.505 null]
+>>
+endobj
+3579 0 obj
+<<
+/D [3654 0 R /XYZ 70.866 520.324 null]
+>>
+endobj
+146 0 obj
+<<
+/D [3654 0 R /XYZ 70.866 493.128 null]
+>>
+endobj
+150 0 obj
+<<
+/D [3654 0 R /XYZ 70.866 369.685 null]
+>>
+endobj
+3582 0 obj
+<<
+/D [3654 0 R /XYZ 70.866 324.86 null]
+>>
+endobj
+154 0 obj
+<<
+/D [3654 0 R /XYZ 70.866 297.664 null]
+>>
+endobj
+3657 0 obj
+<<
+/D [3654 0 R /XYZ 70.866 166.461 null]
+>>
+endobj
+3653 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F79 3573 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3687 0 obj
+<<
+/Length 732       
+/Filter /FlateDecode
+>>
+stream
+x��W�N�P��+��Yx�s�����"J[pWU��(�c�����;~�<p� ��"J|3sf����ِq��}���=��1�E��r�a�	0Ȣ��t'6�O�~>�~���դW���e�O㔎΢��m%)!��n���9�&RB(�{�3���� ]����c�4��,a'�w���^ ��A���9�����L�,���`���)��J�۔�+�x� �Z�gY�C��h�>��X�t]�r�郕ŷ�,��.@�.�� ���!�Ǔ���X7� C��6�����鰦�x�[S�Q8pZWΟ��[�{p��5HE�]0��Z�F�;�n㳔$����Q"҄wy^�.�|LAt9�4
+,ѹP��l4�TˬRε-0�Y�Y ��ű�r.�Q>"�J1���;��g�������/p�5{���4���b2YB�e�8�!K���!7/�Av}^��60g��f$Bc�e��%R����+ˑ}�HP�úd�4�<_#�HDm^"�4oAA���:m�i��s��w����E(�S��WJ��.$�a��Q?���t�qz����8fT�S���}m�����0�H5�G?���i
�SmF#��˕x�F"����խ(����|fC��0U���ڻ�*���
k��Z�D�Z鵂j"���4\�c����ڀ���ζk�i)��؏�xJ�0�du�ܿ�~�d���7�b��8]N�Br�h
+endstream
+endobj
+3686 0 obj
+<<
+/Type /Page
+/Contents 3687 0 R
+/Resources 3685 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3689 0 R
+/Annots [ 3661 0 R 3662 0 R 3663 0 R 3664 0 R 3665 0 R 3666 0 R 3667 0 R 3668 0 R 3669 0 R 3670 0 R 3671 0 R 3672 0 R 3673 0 R 3674 0 R 3675 0 R 3676 0 R 3677 0 R 3678 0 R 3679 0 R ]
+>>
+endobj
+3661 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 677.4 119.683 683.959]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3662 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 676.296 191.414 684.613]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+3663 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 641.194 148.111 649.759]
+/A << /S /GoTo /D (_figure_8cpp_source_l00010) >>
+>>
+endobj
+3664 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 639.383 216.747 649.759]
+/A << /S /GoTo /D (_figure_8cpp_source) >>
+>>
+endobj
+3665 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 534.523 119.683 541.082]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3666 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 533.419 191.414 541.736]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+3667 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 498.501 143.126 506.882]
+/A << /S /GoTo /D (_figure_8cpp_source_l00004) >>
+>>
+endobj
+3668 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 496.506 211.762 506.882]
+/A << /S /GoTo /D (_figure_8cpp_source) >>
+>>
+endobj
+3669 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 391.646 119.683 398.205]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3670 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 390.542 191.414 398.859]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+3671 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 355.44 148.111 364.005]
+/A << /S /GoTo /D (_figure_8cpp_source_l00031) >>
+>>
+endobj
+3672 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 353.629 216.747 364.005]
+/A << /S /GoTo /D (_figure_8cpp_source) >>
+>>
+endobj
+3673 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 248.769 119.683 255.328]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3674 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 247.665 191.414 255.982]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+3675 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 212.747 148.111 221.128]
+/A << /S /GoTo /D (_figure_8cpp_source_l00024) >>
+>>
+endobj
+3676 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 210.752 216.747 221.128]
+/A << /S /GoTo /D (_figure_8cpp_source) >>
+>>
+endobj
+3677 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [88.998 105.892 138.811 112.451]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3678 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.601 104.788 210.542 113.105]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+3679 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [219.918 105.892 269.732 112.754]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+3688 0 obj
+<<
+/D [3686 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3584 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 773.016 null]
+>>
+endobj
+158 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 745.889 null]
+>>
+endobj
+3583 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 630.139 null]
+>>
+endobj
+162 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 603.012 null]
+>>
+endobj
+3587 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 487.262 null]
+>>
+endobj
+166 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 460.135 null]
+>>
+endobj
+3586 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 344.385 null]
+>>
+endobj
+170 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 317.258 null]
+>>
+endobj
+3589 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 201.508 null]
+>>
+endobj
+174 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 174.381 null]
+>>
+endobj
+3588 0 obj
+<<
+/D [3686 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+3685 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3706 0 obj
+<<
+/Length 1635      
+/Filter /FlateDecode
+>>
+stream
+x��Y[o�6~���� 5ˋHI�Z`C/k��]귬��5�R*�M��wx�EYq;�X����9�����:��|%A�R!X0_1F�A�R$H0_�!�ӯ�c�`�^�#���6[���I��Z춲l�6�J%>y;�|���&	Jh,���8X³�F,M�;-�
"��\��ɟ���� �\�G���������ʟ��(
R�L�����g#�'ш8�/�>\^\�?��vDOu��G��(�{+�����/b�Ƙ(��(œ3FP��Vno���q�ioK ������N+3#�\�7���J�<������$��	��o��狋����+Ã�&A��w{.�G$^�G���ߙHǫ�!�òѪꢑ>#��Gܦ���߫|	���z^�g��(�m"BI�A2y~H6���i�\�h���g�$�I�����GL��A�}�ň%�i���4~F�x��pW/e![Y)8�+m���Y���u��X%�g������TcP�~�(�zi�̸��P�0���m[��;E���NTVD^�e�����X?���3
+I�f�/��i�ڕ=��]��Z�b8�M�YQܛG�J6檬ڍB����䋍ْ�����k�4w�]���V�3(�Ţ*�w����j�z���c�W��B[Y�S���S�C]�.JR�� d���ސ/�V���\g槑�]j�SPڕ�]X�a��x���\��[����q��jg�����=����W7��EkM��,V]�HE?ҥ!<Yi/�2ua
A�ʬ0K�u�y�e���"kZsU��TA���#W�oO�����(
+����۝!`Fj����Qj���^WU�W�L!���ڲ���Q�QĽ#��aj+�yJ#@(A!a�Aj�����N�H���6��yU=�X���8��# b̪��Z�~�&0�)h�a��|�����SM�����i��
o`Z�V�>Hl��o���z�v�����ڥ�u��[
+�V$�	��T����דU�̩V��%�o$�/Z����C�&��[I�߰[뤯���xD�m�h3Pd���O�1&A��խ�3ՌG8,�J㰊uv��1ڙp%������E|W<�B
xz���xO:__�T���nL�	���q�:W�lP+���sNi�AK^���
+y3�����1�H7�>��Lv$>ez7�xhFx.���t�&��q	(=��?a��)�A8vƺ��e��۝2��*���
��;���l����K�`Ⱦ8�nv�R.U�M�����Z��
��p�ځ�q�ѫ�\�x��!{2�����W��Y~�؋ef���:�������Ö�T�EO�������3�NJ�:�D��]��^޳nu
+4���rN>1ˏ��+#[j���C�w����0�@%v3ES0K��w����S����=K��wi�8���<���Ƈ�2Q�\ahh=��q�)��'Z����Ǒo�R�,,6��F�/�k�������	.T40�9g��
����{g�f[I��9����:�dn��=sW�zsr���A	�=%��">Y�k�8�&C����}�@�E��k�q��GBXZ�^����y�>^ܻ�K�V��~��k(�a�M���
+endstream
+endobj
+3705 0 obj
+<<
+/Type /Page
+/Contents 3706 0 R
+/Resources 3704 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3689 0 R
+/Annots [ 3680 0 R 3681 0 R 3682 0 R 3683 0 R 3684 0 R 3695 0 R 3696 0 R 3697 0 R 3698 0 R 3699 0 R 3700 0 R 3701 0 R 3702 0 R 3703 0 R ]
+>>
+endobj
+3680 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [88.998 716.132 138.811 722.691]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3681 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.601 715.028 210.542 723.344]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+3682 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [219.918 716.132 269.732 722.994]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+3683 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [88.998 595.485 138.811 602.045]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+3684 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.601 594.382 210.542 602.698]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+3695 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 474.839 195.504 482.052]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+3696 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [438.209 450.039 473.09 458.523]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+3697 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 337.144 153.096 345.709]
+/A << /S /GoTo /D (_element_8h_source_l00278) >>
+>>
+endobj
+3698 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 337.225 219.876 345.709]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+3699 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 228.514 181.158 235.727]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3700 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 216.559 181.158 223.771]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3701 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [200.265 166.938 222.181 175.422]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3702 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [468.462 165.046 496.869 175.422]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+3703 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [290.715 142.118 312.63 150.602]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3707 0 obj
+<<
+/D [3705 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+178 0 obj
+<<
+/D [3705 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3585 0 obj
+<<
+/D [3705 0 R /XYZ 70.866 692.431 null]
+>>
+endobj
+182 0 obj
+<<
+/D [3705 0 R /XYZ 70.866 665.235 null]
+>>
+endobj
+3581 0 obj
+<<
+/D [3705 0 R /XYZ 70.866 571.785 null]
+>>
+endobj
+186 0 obj
+<<
+/D [3705 0 R /XYZ 70.866 544.589 null]
+>>
+endobj
+3710 0 obj
+<<
+/D [3705 0 R /XYZ 70.866 413.386 null]
+>>
+endobj
+3608 0 obj
+<<
+/D [3705 0 R /XYZ 70.866 325.459 null]
+>>
+endobj
+190 0 obj
+<<
+/D [3705 0 R /XYZ 70.866 298.264 null]
+>>
+endobj
+3711 0 obj
+<<
+/D [3705 0 R /XYZ 70.866 129.375 null]
+>>
+endobj
+3704 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F81 3708 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3725 0 obj
+<<
+/Length 1549      
+/Filter /FlateDecode
+>>
+stream
+x��X�o�6~�_��Ab�?E2X��eI�{I�A��X�,��ܬ��w)[��v�
�C"�:�ᄏ�h<8��8���*PH�1F�@b��8�����IpJ$�!�*�{���}z���j����zk���Y��>������Jevu��h�y@`dcI)�(����GL��u��*x�$���[eYp7�u����'��~��X��)�(����֔�e�����{u�Xc;���B����b�H�ѐ�0]���Ҭ�Y�>'+�|(��$y��W�8��9E��4O˴֒x
Y���ч��j�W����~��:Vqv@�(���ƋEGW��B8B��d ��@`��ba�IY,�FJ
i\�@"�d
�zT��׵��X`�#NPpx�%&Vp��*�8��M���9�����y���5�A�+-1j��k��:���AZx<��|U>j��
+u']v�;�M("�ƃ�������~�7G�ǵ�6e�
+;����P�W.#.B_D&�8Ծ���^��b�=��e��#�r&���y��ji�l
iȵO�C�y�d~i�+Mx;�����}[�/���J��'3.W��ά:>���̙IW�Bn��L��i(gƭ�����m�Ef�&/k����v���m�?�z
+;�Y���t���V]Ԛs��J�е��t��m�Fd[�%��3���#��c��b���W�9s��S����d+�&#h�<|�;l�{����s�o�z�ǃ����eឹE�:�ζ���T�Y�ML� �������	�LC���7�_"��d	���!a{��
x�z�|'����x�G5�bpI�3�Q�pN{��-�Ip��*̈4��>��/Z�j�P-��m��L=,fI�4W��C���r�(
��vsU�UL�KT�|
+��8GX����!�1k���|�f�7�M��������n6@�/�ϣU��9���q'�E�I��SO����O�=�{���X @�z�5S������z�a��ׅ�a�8�=�Q(�&��>�>���@B[T�����|2���x��_�lm���ŏ	���Ǭ���f.+n�}u�v��
+ŚǙ����Y?d`���}�J�{����F����
+`�u�8�ꍋCs_jهS�9��r}��]�6��7wN��]��Z6��W��;7)�k�L�Q�Cq�*�Y�
Vtg��Z�Cz�Y��_��Y]rƴ0�4�ҿli�I��T���eVyj�'	�f��7�#�fE�����oJ�)<	.(�����E_�<ۉ_���V�%=H4�����I�� �1����-�G��Fk��E��*��|b<
+l1��&i�q�����|�M
+�^Ax^���u|�l%���S�=����F��=�{�[M!�@�(�	؀P�¨�wP���u�{-b��f�U$��+j������!�'n�{9�Lɖ��"�}o^9{�IO�@L������ޯ� ��WQ�{G������_���ӡ˘7,��b?��Ln���Ӄ���Ea�ӟ_-1Mޭ��_jk�
+endstream
+endobj
+3724 0 obj
+<<
+/Type /Page
+/Contents 3725 0 R
+/Resources 3723 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3689 0 R
+/Annots [ 3714 0 R 3715 0 R 3716 0 R 3717 0 R 3718 0 R 3719 0 R 3720 0 R 3721 0 R 3722 0 R ]
+>>
+endobj
+3714 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 710.668 153.096 719.232]
+/A << /S /GoTo /D (_time_8cpp_source_l00128) >>
+>>
+endobj
+3715 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 708.964 216.245 719.232]
+/A << /S /GoTo /D (_time_8cpp_source) >>
+>>
+endobj
+3716 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 602.037 181.158 609.25]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3717 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 590.082 181.158 597.295]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3718 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [205.477 540.461 227.393 548.945]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3719 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [471.888 538.569 500.295 548.945]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+3720 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [290.715 515.641 312.63 524.125]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+3721 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 355.062 153.096 363.627]
+/A << /S /GoTo /D (_time_8cpp_source_l00116) >>
+>>
+endobj
+3722 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 353.359 216.245 363.627]
+/A << /S /GoTo /D (_time_8cpp_source) >>
+>>
+endobj
+3726 0 obj
+<<
+/D [3724 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3607 0 obj
+<<
+/D [3724 0 R /XYZ 70.866 698.982 null]
+>>
+endobj
+194 0 obj
+<<
+/D [3724 0 R /XYZ 70.866 671.787 null]
+>>
+endobj
+3727 0 obj
+<<
+/D [3724 0 R /XYZ 70.866 502.898 null]
+>>
+endobj
+3590 0 obj
+<<
+/D [3724 0 R /XYZ 70.866 343.377 null]
+>>
+endobj
+198 0 obj
+<<
+/D [3724 0 R /XYZ 70.866 316.181 null]
+>>
+endobj
+3728 0 obj
+<<
+/D [3724 0 R /XYZ 70.866 184.978 null]
+>>
+endobj
+3729 0 obj
+<<
+/D [3724 0 R /XYZ 70.866 121.785 null]
+>>
+endobj
+3723 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3753 0 obj
+<<
+/Length 876       
+/Filter /FlateDecode
+>>
+stream
+x��X�n�@��+fU�O��@UQjD���UE<��������^���<J���.��s�g���:�����0�`�G�{�	6J!mV����g"�m�#�%D���Ë�0��:�(�6�q�{FI��i��{'m�G!� :C5&Po�]�ԇ�����\D��K��:FW���Jg+f2��W��5�+��Ve��Q�8N&EY�x���mgC�L�,w�_�.�&�&�N��H��n���rS��Xb�)BJ�����d���1����h�)�k�)4,�4��>vJ�8��k+���5`kx�n�$�eT��Մ=Q�1�nBN`-�h8�;�ˬ�\<7І��qX�bBJ������h��4OSz�R8����3]�
+h�j}j6sdΝe�*8�-�Z)������6@Z,P�(��LH�_j���鱗&�,(�q)��%.��+����sz_%;3XY>�ݝfE�!U����������
+�*�d��'�GPZ��}�ޗ�s�x
B~�wߢx�'�>�F�>�Q0�Q���M��h�$�A� �����J���a3>�0Sf���@ɫ���+Ϸ�[Rcn�F�bk�%@��9o�?����[r�R�.��`��u��M0���roL�;�r��3���H��U+r.�a
+K�w5�Vy1;�a�}�L��g�ڎZ�f
�����Y��jΙ۽ϲ�f��ھL����o
�J�T)_�H�O�k-ij,	���2Kv�4^�G�*��ܫ���	�IY�I�'_?�K�_�H��a���H�_�����}['{K�V�n7�f�uO5@x�H~������L+��R����+���Y�Dc\��E݀�e��%�����[̏���/�
+endstream
+endobj
+3752 0 obj
+<<
+/Type /Page
+/Contents 3753 0 R
+/Resources 3751 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3689 0 R
+/Annots [ 3733 0 R 3734 0 R 3735 0 R 3736 0 R 3737 0 R 3738 0 R 3739 0 R 3740 0 R 3741 0 R 3742 0 R 3743 0 R 3744 0 R 3745 0 R 3746 0 R ]
+>>
+endobj
+3733 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.165 632.484 215.325 640.801]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+3734 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 598.76 148.111 607.141]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00011) >>
+>>
+endobj
+3735 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 596.872 242.166 607.141]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+3736 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.165 494.512 215.325 502.829]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+3737 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 460.604 148.111 469.169]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00023) >>
+>>
+endobj
+3738 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 458.901 242.166 469.169]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+3739 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.165 356.541 215.325 364.858]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+3740 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 322.816 148.111 331.197]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00017) >>
+>>
+endobj
+3741 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 320.929 242.166 331.197]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+3742 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 218.569 234.453 226.886]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+3743 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [243.829 219.673 293.642 226.535]
+/A << /S /GoTo /D (namespace_s_o_i_l_a79f0d9e5821444f0265d9edf1e37f237) >>
+>>
+endobj
+3744 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 103.594 234.453 111.911]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+3745 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [243.829 104.698 293.642 111.56]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+3746 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 92.743 209.85 99.605]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+3754 0 obj
+<<
+/D [3752 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3593 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 726.686 null]
+>>
+endobj
+202 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 699.69 null]
+>>
+endobj
+3595 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 588.714 null]
+>>
+endobj
+206 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 561.718 null]
+>>
+endobj
+3594 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 450.743 null]
+>>
+endobj
+210 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 423.747 null]
+>>
+endobj
+3599 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 312.771 null]
+>>
+endobj
+214 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 285.775 null]
+>>
+endobj
+3598 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 197.796 null]
+>>
+endobj
+218 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 170.8 null]
+>>
+endobj
+3597 0 obj
+<<
+/D [3752 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+3751 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3766 0 obj
+<<
+/Length 1303      
+/Filter /FlateDecode
+>>
+stream
+x��XKo�F��W�T�m���
+'n�4im�7h��Ȥ"�I�_��%�DK��=��7�3��|c�\'89�2�z�u����%�Y�0�R&�P$I2�&��B"R�Ӌ����_��b��'��=/f�i�,*x�i|�pΐP�8*��������C���'���<��.?�d
+������wgy�p`܂͓��|0zI":�q�ԟ�������-�����t3DoC��[D�#�Ika�1�����L@$����{�Rp����v�BFab톄S��H�� 
��Mq���M�?P��Ӱ�^��>�`3$!���{���}/�F#����[>�s>�h��P���Ar�}:i]�g+.")&�o�V� ��?�9�]̶r��%߱vH�Dܦ��E�ד�Z5���N\��O>#:��&�4o�I5��u�$=D
t�PMɑ�1�͋�~�LG�U�,��4.a7�X��/�{��~/�w�[!��Q��P�������0o�.<��il�xK��2�S�hY�,���Hh�4����n�32�+���fh�\>��q����=[��W[�R[��en�\����VBvk�XT+)��
)Ԋz�_���Xf�y���IS�w���
+�Ń
+��Zr(����{�̈Lg��6zv���U_})&M_6+���zW��
+Fe�X����oek����m�O�&�ȈHD/�Z7e��^C�]�Y:v;�&9V-57y�Y{]-�I��˿��b��2��z�o
+{�N#��������v�b�"�:e���ܘ
+�3�!�!�:�=�<͗@x�<B�U��>�Gr��#\��$k��ĵ	�1��e׹N>�.˕�FGI�D��(W�X�:�a���4Ŋ�Oڒ��U�"p�ե���;:�DF	�nJ?=�݊���+�!b�tE�m�9T��~qc4d&�F&!;��Yܳ0c�Z���#"H�Apzo���^	���|F�b�@�c]F��`����N�"(v�0@�5�*�I�`͑W���hۃ;`�����>�{�����A@[��,b=���#��Ƶr���[V���ب�x�A�!���g�ph߮��W��䳾եzD`@U +Z� I��_�\���/Wu= ��-�Qs�p�����]�#F��8�;�����e���iɃ��ٝM`�ƌ�n�'0s`Z���J�yY����ےҝS3��ŝ@���|�D��	��b��ي�=�N��`�)�_k��&AKH�9982h�Ӣ*�@�V��
����j������iQm���ż
+endstream
+endobj
+3765 0 obj
+<<
+/Type /Page
+/Contents 3766 0 R
+/Resources 3764 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3689 0 R
+/Annots [ 3747 0 R 3748 0 R 3749 0 R 3750 0 R 3759 0 R 3760 0 R 3761 0 R 3762 0 R ]
+>>
+endobj
+3747 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 715.028 234.453 723.344]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+3748 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [243.829 716.132 293.642 722.994]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+3749 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 704.176 209.85 711.039]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+3750 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 594.382 234.453 602.698]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+3759 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [387.947 438.004 410.373 446.775]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3760 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 130.939 162.722 139.076]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+3761 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 95.027 148.111 103.592]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00092) >>
+>>
+endobj
+3762 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 93.324 242.166 103.592]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+3767 0 obj
+<<
+/D [3765 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+222 0 obj
+<<
+/D [3765 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3596 0 obj
+<<
+/D [3765 0 R /XYZ 70.866 692.431 null]
+>>
+endobj
+226 0 obj
+<<
+/D [3765 0 R /XYZ 70.866 665.235 null]
+>>
+endobj
+3591 0 obj
+<<
+/D [3765 0 R /XYZ 70.866 571.785 null]
+>>
+endobj
+230 0 obj
+<<
+/D [3765 0 R /XYZ 70.866 544.589 null]
+>>
+endobj
+3768 0 obj
+<<
+/D [3765 0 R /XYZ 70.866 413.386 null]
+>>
+endobj
+3769 0 obj
+<<
+/D [3765 0 R /XYZ 70.866 350.193 null]
+>>
+endobj
+3606 0 obj
+<<
+/D [3765 0 R /XYZ 70.866 228.809 null]
+>>
+endobj
+234 0 obj
+<<
+/D [3765 0 R /XYZ 70.866 201.613 null]
+>>
+endobj
+3600 0 obj
+<<
+/D [3765 0 R /XYZ 70.866 83.342 null]
+>>
+endobj
+3764 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3795 0 obj
+<<
+/Length 848       
+/Filter /FlateDecode
+>>
+stream
+x��X�N�@��+f�,|;wwf���
+�@@�6]Q�qi��I������81����.�X���<��3�]2�������;e�G$Y�+3,3N�!�
�I(�s�;`Rj������q<��/�N$�
w&��8I��p�d�`����9ùUk�
+�.���)g��q�β�9fJK�J���|��H	�W�� A�N���0���t���8��;!���<�L���Q���
+1�\�w���&c�8UA�43`���_����N+���.Ba@jd�p@�L-���Q?-]��@Zz�Ǜ&�%&B��"�"��h��eٯ�{;�ȗ�����n7+dU�yKV��%�J9kQx��r9G��HPF���CY-s�FNR�$o��n��l�t�78�d�"7�������%�e�\�q�A��HxqS�w�/��d��#�K?-�G��d�kE/�N��3��
��Ͼţi|5��b:]�B_9�����-َ��I�`=�y���ΩuQ��lCQ���QPn��u]:@a7�ɭ���S������D�e�I�&'Rgi�7I�>nN8e�CRU2�T���Z1��w&r�O��jV�}Y��툫�����cZ������Ҟ<J�������h�Jxދmh�dz���{�xp^�܊#�Q\��D�Tg]x�̰MB��ׅZ#L�~��F�S����6q�o���qE��p�J�Er|-��8N���q��g�۝�W����'��"��i*��VI��s%���X�����F֪[�i�h��$�o��}<�Iӡ��\��iUgY�M*�V�} JQ)��8��<?���yF��괭#y���2�E'�1�����
+endstream
+endobj
+3794 0 obj
+<<
+/Type /Page
+/Contents 3795 0 R
+/Resources 3793 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3689 0 R
+/Annots [ 3763 0 R 3771 0 R 3772 0 R 3773 0 R 3774 0 R 3775 0 R 3776 0 R 3777 0 R 3778 0 R 3779 0 R 3780 0 R 3781 0 R 3782 0 R 3783 0 R 3784 0 R 3785 0 R ]
+>>
+endobj
+3763 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [103.344 717.42 172.286 725.558]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+3771 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 683.722 148.111 691.982]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00055) >>
+>>
+endobj
+3772 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 682.019 242.166 692.287]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+3773 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [88.998 581.049 157.94 589.186]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+3774 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 547.351 148.111 555.915]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00062) >>
+>>
+endobj
+3775 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 545.647 242.166 555.915]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+3776 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.126 444.677 177.068 452.815]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+3777 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 410.979 148.111 419.544]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00068) >>
+>>
+endobj
+3778 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 409.276 242.166 419.544]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+3779 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [88.998 309.23 138.811 316.092]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+3780 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.601 308.306 210.542 316.443]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+3781 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [219.918 309.23 269.732 316.092]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+3782 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [88.998 195.466 138.811 202.328]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+3783 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.601 194.541 210.542 202.679]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+3784 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [219.918 195.466 269.732 202.328]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+3785 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.383 80.777 215.325 88.914]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+3796 0 obj
+<<
+/D [3794 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+238 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3601 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 674.25 null]
+>>
+endobj
+242 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 647.297 null]
+>>
+endobj
+3602 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 537.879 null]
+>>
+endobj
+246 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 510.925 null]
+>>
+endobj
+3605 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 401.507 null]
+>>
+endobj
+250 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 374.554 null]
+>>
+endobj
+3604 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 287.743 null]
+>>
+endobj
+254 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 260.789 null]
+>>
+endobj
+3603 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 173.978 null]
+>>
+endobj
+258 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 147.025 null]
+>>
+endobj
+3068 0 obj
+<<
+/D [3794 0 R /XYZ 70.866 69.639 null]
+>>
+endobj
+3793 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3806 0 obj
+<<
+/Length 395       
+/Filter /FlateDecode
+>>
+stream
+x�Ք=O�0�����!�󷽶�Ja*!5MKR�{�P[�t������s��#��8�I$-XtZ�o�Z��8��A>�ijP�2nlzyt�mN��oVE��s�c���W!t�O@J�ʈP�U�&F��<yHX��B֢��E2�&���	
+g᩽������b�p��%��8:��&�fH[���~����t�%ȄA�\�8�/��7mO�0��62��ȸ�uYW����fJ鴌joјz���y{%�e1+�f���y�M�L�"�L����1�Nʎ*z�-�CP��|�>j�GR�`'��ꊈ���b��nY�9O~
�����V�ϥ_�/�F�d�W�F)$��4�F#7Zn��P���t�+_k?�f�M�S��폖=A���<Ο�W�����?�
+endstream
+endobj
+3805 0 obj
+<<
+/Type /Page
+/Contents 3806 0 R
+/Resources 3804 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3809 0 R
+/Annots [ 3786 0 R 3787 0 R 3788 0 R 3789 0 R 3790 0 R 3791 0 R 3792 0 R 3800 0 R 3801 0 R 3802 0 R 3803 0 R ]
+>>
+endobj
+3786 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 697.543 160.053 706.027]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3787 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 682.536 127.977 690.444]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3788 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.228 682.609 166.55 690.444]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3789 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 667.755 172.919 678.338]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+3790 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 654.641 127.977 662.549]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3791 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.228 654.714 166.55 662.549]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3792 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.801 653.011 216.702 662.734]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+3800 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 639.968 159.057 650.236]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+3801 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 626.746 127.977 634.653]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3802 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.228 626.818 166.55 634.653]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3803 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.801 625.212 204.227 634.653]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+3807 0 obj
+<<
+/D [3805 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+262 0 obj
+<<
+/D [3805 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3808 0 obj
+<<
+/D [3805 0 R /XYZ 70.866 737.41 null]
+>>
+endobj
+3804 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3812 0 obj
+<<
+/Length 216       
+/Filter /FlateDecode
+>>
+stream
+xڕ��n�@��{�-�
+��_�[��D��:Da�!a�G	o�a�4TT�ڝ�G����E1�;�2q!��Ei0h�
��a��K��gW~���M_U���,_N�w������f�Q|
+���?��8�[��4��B[2��������ś����>dz�d�3�#t@Sw�vޡ�.+�9�.R��U��;�V��VY�����h���;��W��OD
+endstream
+endobj
+3811 0 obj
+<<
+/Type /Page
+/Contents 3812 0 R
+/Resources 3810 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3809 0 R
+>>
+endobj
+3813 0 obj
+<<
+/D [3811 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3810 0 obj
+<<
+/Font << /F48 2333 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3837 0 obj
+<<
+/Length 1097      
+/Filter /FlateDecode
+>>
+stream
+x��W�n�6}�W苄���E
+�M�[��Mܧd��%�& K�.m����+Vl�E�dZ���r{+{���"�����N�擋!=!�͗��(�2DL
+o�y��:�6�
+��F~|��8��)��8�F	���"!cw>O�ڞ��i�QE�4�,h����a�G(�	�N#x&�c�1B$���������UP�I�&u�d��	�;��U��TY���x�1ew�^z�����#��`ĝ����:SWU��KqЀ̇�μ�P�P�"J���t��m��$�/$y�d��N��$�,�v^��e�#	g��wV ��{܉L	��L�ME��V�S�08�:����6����i�Ԥ��|�*HF�Emu>RʏC˹��3��9օK}�% ~��T����"�s�8�E,�s@_�:C1c��P�iSV�6�cNwZ����!E�E��޴O�#��ў%���U�ǰ9�8���L���%�πr���HU��,������� r�g�����XY.�mr�k��-j�*T�z�l!�)�~sU�ώ1�C�g�{#Z�M�N��:
+n�����|x��^���
�P�������d�����u7o�̠���9�K'�����SEb��?�0�K8D��|���b1x��P�rQ���)	)⒌������9�9�L�+ϑ��5�qَW�K��'�!�/��_.�^˔a��1-�G�骭�X�
+l��\��Ek:�m�ؙ����I�0F8�oנ��u�3�$:�_>x��Jo�8��E�;�덡���Qtb�7��2�A�'H�{�FSn��#l,ʲ���SR�2`�'��2��k][�Yk+h������]ȥ�e�������=�1�t��n��Ç�p����ڏ�$������rL����Hܠ��(ʾ5I\k�_p�#soU�
�Ҏ����N|��F�H��M��
.��P���݌����V�;�Xם�\GM顚�#2z�SKŽ5��b����	q��@�9�!�����3�2؂�PS�_���c0eq�:��'����L *{13���oU��d���>+
�?�L
��������
+endstream
+endobj
+3836 0 obj
+<<
+/Type /Page
+/Contents 3837 0 R
+/Resources 3835 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3809 0 R
+/Annots [ 3814 0 R 3815 0 R 3816 0 R 3817 0 R 3818 0 R 3819 0 R 3820 0 R 3821 0 R 3822 0 R 3823 0 R 3824 0 R 3825 0 R 3826 0 R 3827 0 R 3828 0 R 3829 0 R 3830 0 R 3831 0 R 3832 0 R ]
+>>
+endobj
+3814 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 503.363 90.79 511.928]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3815 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [91.29 503.444 133.649 511.928]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3816 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 411.749 137.135 420.233]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a1b28acbf05f00ee1a23e5f148c952ac7) >>
+>>
+endobj
+3817 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 383.854 144.884 392.338]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_aa7e94761b0526d1fc1dac158b841377f) >>
+>>
+endobj
+3818 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 354.986 156.349 364.443]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_ab4a1b3beb24edbadae5701c0d3c66c3b) >>
+>>
+endobj
+3819 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [125.549 340.952 144.576 348.86]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3820 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 327.09 170.929 336.547]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a093abc49c309116a4674e2264b352c92) >>
+>>
+endobj
+3821 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.913 313.057 159.941 320.964]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3822 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 300.168 134.92 308.652]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a9c923c64d3e48d85c3e91db348ffaa45) >>
+>>
+endobj
+3823 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 272.272 134.92 280.756]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a43e3f6b55707430a2eb698c41d181f6d) >>
+>>
+endobj
+3824 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.737 243.404 150.1 252.556]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a909590437de40c1fdff2b8a2c3c934de) >>
+>>
+endobj
+3825 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 214.59 152.36 225.172]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a4083638acba927342d411db85d6fe9a1) >>
+>>
+endobj
+3826 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.845 214.59 234.983 225.172]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+3827 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.175 201.548 184.497 209.383]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3828 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.85 127.549 120.77 136.114]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3829 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.356 127.63 163.715 136.114]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3830 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [502.979 127.549 525.406 136.32]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+3831 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 90.957 148.111 99.338]
+/A << /S /GoTo /D (_broadcast_8h_source_l00022) >>
+>>
+endobj
+3832 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 90.854 222.369 99.338]
+/A << /S /GoTo /D (_broadcast_8h_source) >>
+>>
+endobj
+3838 0 obj
+<<
+/D [3836 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+266 0 obj
+<<
+/D [3836 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3184 0 obj
+<<
+/D [3836 0 R /XYZ 70.866 570.668 null]
+>>
+endobj
+270 0 obj
+<<
+/D [3836 0 R /XYZ 70.866 570.668 null]
+>>
+endobj
+3839 0 obj
+<<
+/D [3836 0 R /XYZ 70.866 451.617 null]
+>>
+endobj
+274 0 obj
+<<
+/D [3836 0 R /XYZ 70.866 185.601 null]
+>>
+endobj
+3835 0 obj
+<<
+/Font << /F67 2922 0 R /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3859 0 obj
+<<
+/Length 1368      
+/Filter /FlateDecode
+>>
+stream
+xڽXMo�6����Y�ߒ�P'���M��=9A�H�Z�VR�����C�ZI+�^��j)rf8|3��mA��ՏoE�*���
�	�B~Ȱ��*A�'�OW�W>�}���,���������۝Λ�I�ܬ]�r������ �78`Ż��'�x����}�VKa\d����+r&%ؗ��	A�>��S��J�^y�Tm��
���N�b?�A��ʑL���j͈WDI��G"	��ֈ�ǡO�3�!y�������y����V��.�p6�K��@�7�� �#4Ĕ��䟛�JGIm��d����¡�}C���R����R2�an�]�_ȃ�F�La2ʛ��o�Tda�Pm&��X���=$�-�w���!K��
+^o��խ��"6���O7.0�t��	���{;Q�:׉}nK��5�Ʊ��6����i)���4q�� ��)r�R�%�r̈́U�N7�ZS�Փs,U���	I���6LqI$�"|�r	b
+3*���`i!d�u�p��~���P��
+J(���]�c�R�e���Ps�&~p��I�PB��S�����*����R�����N��t���mw����*�r�e_��7k��9�[3��0��gQ�uF�bDd�ܘ�lz���I�65���6r����n�6s�q�s����}Hh7��p�"��
+��6��mA���5�7�#!,O;�7��V�����)z�Z�l���}S�qY��"*`��,2���P�\aȁZ��8T���X6�mU8N˜j�t��WXR>�hʈX�ќ���E��.GM��vh��m�:fɊZ�%��`Q��n��/�,[�"����p[�J�Np�m�����lQi�㪁�_�H��'H�� D/&���N���������H�
+?52�~���%��k�R0s��sH�+�Ģ��Q;kG��I���[Fh����՗�����-�f�9��P�v.�M�T틤,�f�:h����,N�9Wqz}F̔!C3fi�f�̪J�ii��y[S��l<ԟ�4����	�����El(����y�u��(���~uiJ^���ˎ�a��Kw�$�@h�J|3!�M�.�K��o��7���<�ں>�&������;Z�&OV�К;8=B�T����d�2V�R�({\7P@��O�V�$�\<�ZOt��Z�N��,���D�S��%V>;�Yh���Qz73���v	s,�	�|�^d��(, I�OP�4�G��4��x;��ð:��"�Ʈ/M#��	�zv`s8�	����!�|~����K��^|=��	���F����09R�&0b�'�B纂�����Ȯ�^�m����H3O�1�����
+endstream
+endobj
+3858 0 obj
+<<
+/Type /Page
+/Contents 3859 0 R
+/Resources 3857 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3809 0 R
+/Annots [ 3833 0 R 3834 0 R 3850 0 R 3851 0 R 3852 0 R 3853 0 R 3854 0 R 3855 0 R 3856 0 R ]
+>>
+endobj
+3833 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [181.633 619.336 202.554 627.9]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3834 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.054 619.416 245.412 627.9]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+3850 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 518.162 143.126 526.422]
+/A << /S /GoTo /D (_broadcast_8cpp_source_l00005) >>
+>>
+endobj
+3851 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 516.459 226.852 526.727]
+/A << /S /GoTo /D (_broadcast_8cpp_source) >>
+>>
+endobj
+3852 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 371.786 148.111 380.351]
+/A << /S /GoTo /D (_broadcast_8cpp_source_l00023) >>
+>>
+endobj
+3853 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 370.082 231.837 380.351]
+/A << /S /GoTo /D (_broadcast_8cpp_source) >>
+>>
+endobj
+3854 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.673 177.232 246.593 185.797]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3855 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 69.686 148.111 78.251]
+/A << /S /GoTo /D (_broadcast_8cpp_source_l00040) >>
+>>
+endobj
+3856 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 67.983 231.837 78.251]
+/A << /S /GoTo /D (_broadcast_8cpp_source) >>
+>>
+endobj
+3860 0 obj
+<<
+/D [3858 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+278 0 obj
+<<
+/D [3858 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3840 0 obj
+<<
+/D [3858 0 R /XYZ 70.866 741.162 null]
+>>
+endobj
+282 0 obj
+<<
+/D [3858 0 R /XYZ 70.866 713.966 null]
+>>
+endobj
+3861 0 obj
+<<
+/D [3858 0 R /XYZ 70.866 606.565 null]
+>>
+endobj
+3841 0 obj
+<<
+/D [3858 0 R /XYZ 70.866 506.477 null]
+>>
+endobj
+286 0 obj
+<<
+/D [3858 0 R /XYZ 70.866 479.282 null]
+>>
+endobj
+290 0 obj
+<<
+/D [3858 0 R /XYZ 70.866 355.838 null]
+>>
+endobj
+3842 0 obj
+<<
+/D [3858 0 R /XYZ 70.866 311.013 null]
+>>
+endobj
+294 0 obj
+<<
+/D [3858 0 R /XYZ 70.866 283.818 null]
+>>
+endobj
+3862 0 obj
+<<
+/D [3858 0 R /XYZ 70.866 152.614 null]
+>>
+endobj
+3857 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3881 0 obj
+<<
+/Length 1178      
+/Filter /FlateDecode
+>>
+stream
+x��X]O�8}��c*m����q`A3�J,�<1hUS�j�n`����GڤMhٙ�4qν�>��f�������٥�H�D)�nQL�V
+�	Ê���E���:�vq=*��D�$�NV�~>��V���<)�Li��8�$�8��~�~;�g@!.AtGk��@����}A�D�W7r���X
+�s�u�����6�c��pD	!Ѵȿ�fϥ�N$�?��٥(�IL�� h�)���A�Y:)�<L>L|<��̂�����O���y�\
��X��(ʼn�����I�y��O��2�����L���և�H�s(�̐�F�FTK�I�FL@�C��7��+Y=�����دY���&����]y?��x��L�����!�NQ:�j���_M�.�,�V~�+	f�V�^laTܘ,���,������TҡѪU�.*Fp��!Ri�5?�b�$RDaNv�P�$@���O��)[

lg@7��H���%��2n�	�K���֔��c�X|D�ݾrɴ�Mf�v2��l��5غ�1c	d���x�&�A�<�j��حS��
+Zx��tal��lӿ������6_;�YgICS[�y�ZY�t���B�%���
+�K����/͢�6�b����<3y�՗}�o�-�l+�̯�t<^Ue��nɺ�1�k�Ζ���P���ψ
+����������L[�C�N�}Z\�i��W����%���F�M��d!B�B���Ťu��x����L>_��0�4-����&����c�`"��>
û�W������-8���nqd�N�h]vGU��Gm�S�ں�I!Ǡ��픲�X���S�]����'���{
��%�����/X�/D���;���$
V�T�"|G��}�T�°7 l�v�y23]'
��o#�G�j���<���u��4{���������EܴFy�_l�����1!�S�"�E�O��4���h9��:f���oi"s�E�(�*U�k-�-�]�0y�QظIup/J���8�х�0�Q�`N�%Ί�a��P�~:2d���6zg+��*�#��H*��nG���>��8uص�B���?@���z?�^o��`�>�,B���[v��������V��, G-�)��X�P�+���[�.�!'ѿ?f��"�o��ӐN
+endstream
+endobj
+3880 0 obj
+<<
+/Type /Page
+/Contents 3881 0 R
+/Resources 3879 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3809 0 R
+/Annots [ 3867 0 R 3870 0 R 3871 0 R 3872 0 R 3873 0 R 3874 0 R 3875 0 R 3876 0 R 3877 0 R 3878 0 R ]
+>>
+endobj
+3867 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 674.967 219.415 683.284]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+3870 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [142.808 608.142 198.033 618.724]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+3871 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 561.972 153.096 570.537]
+/A << /S /GoTo /D (_broadcast_8cpp_source_l00132) >>
+>>
+endobj
+3872 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 560.269 236.822 570.537]
+/A << /S /GoTo /D (_broadcast_8cpp_source) >>
+>>
+endobj
+3873 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [235.457 428.461 256.377 437.026]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3874 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 339.35 148.111 347.915]
+/A << /S /GoTo /D (_broadcast_8cpp_source_l00063) >>
+>>
+endobj
+3875 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 337.647 231.837 347.915]
+/A << /S /GoTo /D (_broadcast_8cpp_source) >>
+>>
+endobj
+3876 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [219.023 205.839 239.943 214.404]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3877 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 104.98 153.096 113.545]
+/A << /S /GoTo /D (_broadcast_8cpp_source_l00109) >>
+>>
+endobj
+3878 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 103.276 236.822 113.545]
+/A << /S /GoTo /D (_broadcast_8cpp_source) >>
+>>
+endobj
+3882 0 obj
+<<
+/D [3880 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3847 0 obj
+<<
+/D [3880 0 R /XYZ 70.866 773.016 null]
+>>
+endobj
+298 0 obj
+<<
+/D [3880 0 R /XYZ 70.866 745.821 null]
+>>
+endobj
+3883 0 obj
+<<
+/D [3880 0 R /XYZ 70.866 638.42 null]
+>>
+endobj
+3843 0 obj
+<<
+/D [3880 0 R /XYZ 70.866 550.287 null]
+>>
+endobj
+302 0 obj
+<<
+/D [3880 0 R /XYZ 70.866 523.091 null]
+>>
+endobj
+3884 0 obj
+<<
+/D [3880 0 R /XYZ 70.866 415.691 null]
+>>
+endobj
+3844 0 obj
+<<
+/D [3880 0 R /XYZ 70.866 327.665 null]
+>>
+endobj
+306 0 obj
+<<
+/D [3880 0 R /XYZ 70.866 300.47 null]
+>>
+endobj
+3886 0 obj
+<<
+/D [3880 0 R /XYZ 70.866 181.221 null]
+>>
+endobj
+3845 0 obj
+<<
+/D [3880 0 R /XYZ 70.866 93.295 null]
+>>
+endobj
+3879 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F99 3885 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3912 0 obj
+<<
+/Length 1323      
+/Filter /FlateDecode
+>>
+stream
+xڵXMO�H��WXڋsH��mG�=�Z$fg s�2�	����0�ﷺ��؎	;"'v�����W��������x5;:��PJ�<�Q ��B�$�Vk��gt~���$(P�3wO���������m��Q��������;#`�=ҹP����������È���l,�	��ȼ�ٗ~5L�	�8D�?_��_%���c::CO�Pa�H�	\27��Y+�{V��l� wxb���z���������qYD�8���R�i��
j W�[�B!���^/�ߒ�.J���G&�y����DT���.v㭪�4�LyS�����"!��Bg�M�*�$�IJ�!̺ew�2�ۘe
+Q0[P�mm�
.�*��TIm���-k�Ή�ͩ��ީC,˨r�R��|��؊��R���mZ�����s�e��}�Bz��9�~T'.Xum��6�wO�{�ڴr��s��.�e(Qi��~K/��tv�>b�<��"*t��r%"U�e��aھ�yN���6���W��*Vr��=P�D��U�;���-<�8R���a�ZF0�Q
+�B$�� �Nh����o]R�w�`�
����k���H�=�q��H�Q�����{`�^0^�*|C0����΢���J�K�a�J�ir�1�Sӹl)�ʤ����§$�I�v���b'O���ș��"��Q�D��ɶ�5U�O\4y=�{ת".���z��u��3�o��Z;���ʿIs��ݔ�9/�"N������VN�7�{��e�I+P�d���g)+��1h��U9
L/5�^%uS�C
u�Q�:I����O�����c�tg����q���%V�	���in=���n<H[Y�wc��"jl�<����؎g�f�@��D�˭Z�&�@�z�p���R1FI�We|w�">/b�9l�����J�Ӝ�C�1z넄S�.K
+,���J���j�<)r
Ѧ){�; \%z�v�D�Q�@�Z6ign����3�ei���V�Ec�"B3؈k��y�5��Z¬���S�
+���|g���v���:,�n��\%
�w��"�w�(!�C}.l�8H��tc��e�ӑ�&����h?G�A��^�{L��_ͭ�}d�6��~&��IX��Gju��IהMFMVw;
+���sjx$�{��VW��<���h��iF���@qq�����~
��1���>W��ړ��\�?���9"��bL�� ����D�m����h;�Q	_����ܤ�:��s��&`�e�g�hq�HD�>���h�h�u�>���b�����'�8���!U�
+endstream
+endobj
+3911 0 obj
+<<
+/Type /Page
+/Contents 3912 0 R
+/Resources 3910 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3809 0 R
+/Annots [ 3890 0 R 3891 0 R 3892 0 R 3893 0 R 3894 0 R 3895 0 R 3896 0 R 3897 0 R 3898 0 R 3899 0 R 3900 0 R 3901 0 R 3902 0 R 3903 0 R ]
+>>
+endobj
+3890 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.081 691.251 224.001 699.816]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3891 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 594.079 153.096 602.46]
+/A << /S /GoTo /D (_broadcast_8cpp_source_l00114) >>
+>>
+endobj
+3892 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 592.192 236.822 602.46]
+/A << /S /GoTo /D (_broadcast_8cpp_source) >>
+>>
+endobj
+3893 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [186.896 470.216 207.817 478.78]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3894 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [179.002 423.786 199.923 432.35]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+3895 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 392.785 153.096 401.349]
+/A << /S /GoTo /D (_broadcast_8h_source_l00139) >>
+>>
+endobj
+3896 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 392.865 227.354 401.349]
+/A << /S /GoTo /D (_broadcast_8h_source) >>
+>>
+endobj
+3897 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.641 341.151 180.478 349.635]
+/A << /S /GoTo /D (_broadcast_8h) >>
+>>
+endobj
+3898 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.641 326.693 189.946 336.961]
+/A << /S /GoTo /D (_broadcast_8cpp) >>
+>>
+endobj
+3899 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 250.308 97.264 259.397]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3900 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 164.56 150.001 175.142]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a00eedbeafcfe5ce10df76e8ac20ac6f3) >>
+>>
+endobj
+3901 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 137.22 150.001 147.802]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a76525cfc37fb8ddc692db93fd6fb5e6f) >>
+>>
+endobj
+3902 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 109.881 157.75 120.463]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_af3d0a9c0e14065afc259ad219a4e4458) >>
+>>
+endobj
+3903 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 84.433 148.36 92.917]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ac4b05210a99b650da641d3966266ec04) >>
+>>
+endobj
+3913 0 obj
+<<
+/D [3911 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+310 0 obj
+<<
+/D [3911 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3914 0 obj
+<<
+/D [3911 0 R /XYZ 70.866 666.633 null]
+>>
+endobj
+3846 0 obj
+<<
+/D [3911 0 R /XYZ 70.866 584.603 null]
+>>
+endobj
+314 0 obj
+<<
+/D [3911 0 R /XYZ 70.866 557.669 null]
+>>
+endobj
+3185 0 obj
+<<
+/D [3911 0 R /XYZ 70.866 320.831 null]
+>>
+endobj
+318 0 obj
+<<
+/D [3911 0 R /XYZ 70.866 311.538 null]
+>>
+endobj
+3915 0 obj
+<<
+/D [3911 0 R /XYZ 70.866 203.927 null]
+>>
+endobj
+3910 0 obj
+<<
+/Font << /F48 2333 0 R /F99 3885 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F22 2379 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3941 0 obj
+<<
+/Length 1158      
+/Filter /FlateDecode
+>>
+stream
+x��XKs�6��W��!���[*���L�����P$$qB*	6ѿ��E=l+i���4A���o�����ֻ�ϳ��u�X	J�ȷfK+�(�"+N=kVXwv�<���ľ�8�]^NYs����ی��Q��U�u��'�t�iK���Pcl���0{?y;��1!05��0U�������=`��g�-��4���7k+}>������	>2�`�i�oD6|�¢�̕�o8o˅�a�紓�ċk��c�D(Nb��J�P��{^x��u�adw����x�$��f����+��'���a�:~�r|����%8Jca��!/�-�(f�%��F��TyŖ������b�㋖}���	��N���Lpp����
�0 -��?'$�-�^���ʥ�`~�l��#i�]���N<K�W̉��5
͹0Jq��nD�7��d���/8P�!l�_&t�Xuڢ��Y3�h׉�?����STDy����^K'-c�������?��s�	r#�M�����f^%"��gU��atn�UD *v����"C�f�6�@):�9��f^�*����Xnʦ�E.�k����n��TAis�
j�lE�CR겪��aƤ-��y	;�Y��	�����sh!�޺�[���:�з�p��|IwT�鼷܎u��K����7���/ȳ�vREӢc��f*��3�H�	tUP����U�W�p���XW?���_��w��*RHZVt��|���|{�⍯���~x{㊉+:��^�C8�K����eD�BM��YY�pE��-7\�MGDb���(5���}?�3]8�~����:��P���>���E}���@����ԃ|�ᅺu/0i�N�nHR{��N^W�T�����v�<���������dY\O	Ai)O����X��,���1/������0�)w�H�[��wjj�?U��>Q/�I��c����i���b�X����4
?
�9�by_ӆg;!��Q�"��M1(�����~D����4�D�|` C��0w��{P����k�yO�w�Ε�D���tt�X#���g��`ե���æ��}�P��T�]������%V�����E���7�'U6<u�����S�yq����H��;�PXK��d�n�B�߶+!:HU�&�2�u
+endstream
+endobj
+3940 0 obj
+<<
+/Type /Page
+/Contents 3941 0 R
+/Resources 3939 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3944 0 R
+/Annots [ 3904 0 R 3905 0 R 3906 0 R 3907 0 R 3908 0 R 3909 0 R 3922 0 R 3923 0 R 3924 0 R 3925 0 R 3926 0 R 3927 0 R 3928 0 R 3929 0 R 3930 0 R 3931 0 R 3932 0 R 3933 0 R 3934 0 R 3935 0 R 3936 0 R 3937 0 R 3938 0 R ]
+>>
+endobj
+3904 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 738.126 155.21 746.61]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a4298d9cf83be4dcae422d98471ab1df5) >>
+>>
+endobj
+3905 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.399 723.18 195.253 731.56]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3906 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.737 709.14 124.537 719.104]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a92b3b5ff34fcfc3f72a28559275f78d1) >>
+>>
+endobj
+3907 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [148.345 695.978 173.199 704.358]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3908 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 683.723 178.352 690.606]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ae75c1ab7297f4cf3f25e31ec056df338) >>
+>>
+endobj
+3909 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [223.731 668.777 248.585 677.156]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3922 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 654.736 176.272 665.005]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a9c5a0645489d20461749953881ba7ab7) >>
+>>
+endobj
+3923 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [221.092 641.575 245.946 649.954]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3924 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 628.346 173.018 637.803]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a8e47ba510961e85709038796c458b0be) >>
+>>
+endobj
+3925 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 602.117 153.713 610.296]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a365e6700bb8b4d43539de661490b7574) >>
+>>
+endobj
+3926 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 587.171 133.804 595.55]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3927 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.737 573.131 151.185 583.399]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a62add1ea6d5351e35a6c829ecdb41e06) >>
+>>
+endobj
+3928 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.737 545.929 166.257 556.197]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a45ece5471e689eda8ee1c1e15acfc03b) >>
+>>
+endobj
+3929 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.737 519.538 195.944 528.995]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ad33e07f1c8389126541445253cbfff52) >>
+>>
+endobj
+3930 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 493.309 127.165 501.793]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a73f639dad1b94cc09de808519a7855fe) >>
+>>
+endobj
+3931 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 464.323 137.538 474.798]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ab5887b09a89a934dcda3493f17dccd78) >>
+>>
+endobj
+3932 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 438.905 158.116 447.389]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ac23db9e2e0f174a59f294a4a5139a097) >>
+>>
+endobj
+3933 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 409.919 155.713 420.187]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ae61824192da779011f60eded6903db9b) >>
+>>
+endobj
+3934 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 382.717 216.494 393.192]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_aa943275c72ea7cc94bd9de56c0dfaa9d) >>
+>>
+endobj
+3935 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 268.422 148.111 276.987]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00013) >>
+>>
+endobj
+3936 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 266.611 235.235 277.193]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+3937 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 91.521 143.126 100.086]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_source_l00008) >>
+>>
+endobj
+3938 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 89.71 239.718 100.292]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_source) >>
+>>
+endobj
+3942 0 obj
+<<
+/D [3940 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3943 0 obj
+<<
+/D [3940 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+322 0 obj
+<<
+/D [3940 0 R /XYZ 70.866 355.924 null]
+>>
+endobj
+326 0 obj
+<<
+/D [3940 0 R /XYZ 70.866 252.693 null]
+>>
+endobj
+3918 0 obj
+<<
+/D [3940 0 R /XYZ 70.866 213.946 null]
+>>
+endobj
+330 0 obj
+<<
+/D [3940 0 R /XYZ 70.866 187.077 null]
+>>
+endobj
+3919 0 obj
+<<
+/D [3940 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+3939 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F99 3885 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3974 0 obj
+<<
+/Length 1037      
+/Filter /FlateDecode
+>>
+stream
+x��WKo�F��W��վw�c�ڈ�����lhi%+�H�"���w���HIQ;(
+� M�����-Aףw���Jdp�G����NVM��>�"~�� �(6�ù��E�m�q´�.�Y��E�ի�p��ߧ��GD	�;��`���G�����
"��}m%�HH��p&rt7�4"�u|"��3��J�.���l�֭"	�Q���*M�Ʃ&�预�^�v���ыI�K:��C"�U+���t:���Ū3u�o�(p��o�
J(ũT^ɶ�O&ۺZ�����s�so��m���	DŽ���>Z�{�K��#$ a��eom6Ŭ�����S�P܋EU��]�/7w��8���TF8N�ѝ�7U����pv��u���9��*�f�{�O����x߂�L:���5�D�^���B�m�c&�������֫�;�W����9�2!0Hvp��*�%RB^�9 -0�4�h�p�B.�r�03�������}J	�\�ך�}�Q��d�Ш/`�������0F�K���X8?L���
 �${ږyS�'.+�C|�����-|�s�_�1t@�oC�O�8Ne�
+Fga�^Z��b��Y��|U��WΏj����V��A߅��b��g5\�%<�l��q@0̼n�y��^fȾa��O���	mk��g�fH#�r����?l耪��G�
L(�$���$uw�9�ty�e���b�U����
+�VFͬ�q�F�����?�	%X�T����{��U|��'�US���-A�����R�S�iP�T�3�!C������'�*��dX�w�*����}��w��s�����^��~�>��s�+��/���'���|��9�����n�b���� F�0�	5��O_5y~]i��n	q��者:ņ�ڬ�m&�1�������t7*0��Pc���*ߤj���	k���D��ϚH�h�ˬξ�qn;�v]�3�G�#E%�}Y
+,��B	�������a�=���48�n�/KFd�|�GW'�
+endstream
+endobj
+3973 0 obj
+<<
+/Type /Page
+/Contents 3974 0 R
+/Resources 3972 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3944 0 R
+/Annots [ 3963 0 R 3964 0 R 3965 0 R 3966 0 R 3967 0 R 3968 0 R ]
+>>
+endobj
+3963 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 602.324 148.111 610.705]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_source_l00027) >>
+>>
+endobj
+3964 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 600.329 244.704 610.912]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_source) >>
+>>
+endobj
+3965 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 455.764 148.111 464.329]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_source_l00049) >>
+>>
+endobj
+3966 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 453.953 244.704 464.535]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_source) >>
+>>
+endobj
+3967 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 200.125 148.111 208.69]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_source_l00053) >>
+>>
+endobj
+3968 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 198.314 244.704 208.896]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_source) >>
+>>
+endobj
+3975 0 obj
+<<
+/D [3973 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+334 0 obj
+<<
+/D [3973 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3976 0 obj
+<<
+/D [3973 0 R /XYZ 70.866 678.481 null]
+>>
+endobj
+3920 0 obj
+<<
+/D [3973 0 R /XYZ 70.866 590.455 null]
+>>
+endobj
+338 0 obj
+<<
+/D [3973 0 R /XYZ 70.866 563.26 null]
+>>
+endobj
+342 0 obj
+<<
+/D [3973 0 R /XYZ 70.866 439.709 null]
+>>
+endobj
+3921 0 obj
+<<
+/D [3973 0 R /XYZ 70.866 394.991 null]
+>>
+endobj
+346 0 obj
+<<
+/D [3973 0 R /XYZ 70.866 367.796 null]
+>>
+endobj
+350 0 obj
+<<
+/D [3973 0 R /XYZ 70.866 184.07 null]
+>>
+endobj
+3958 0 obj
+<<
+/D [3973 0 R /XYZ 70.866 139.353 null]
+>>
+endobj
+3972 0 obj
+<<
+/Font << /F48 2333 0 R /F99 3885 0 R /F54 2381 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+3995 0 obj
+<<
+/Length 1046      
+/Filter /FlateDecode
+>>
+stream
+x��WKs�6��W�H��ɇn�{��S;���x(
+1�@������A����$�vt �X-���v���:�����|���Q��4e�|e�ieE)����!�M�4�㛻�|6�h���ЕF��]4e���g�J�e'u%ATd�L$_�'�?'���^��(�<�6��/8Z���#V�ѳ��D\0$8�u�O�&�U�)Ax?�$S�I%;��c��Ui�c9���y��]	ePkGSFP2g�7�٬7���d���mLVj��lw�R��3���S���	�qi�d�
+��?K��h��U�M���
+�:���x�\U�.�w7Xu���2J�^���~����c�BE�)�?�
+���'���C~7�U��`mS�ei�6�_�칖�F��N*��?u��x�O$�yj�Fj����^VC'�<��u����I��%i��$��@�vi�@�4;L	���!#��X/�#����<J(�1p,G��nʯ	�M,~�2���_Q��F���z�C��e6�G�j�RT�;�	�=���;E
'��[.d@O��(˙w�RZu�v�?:�(�JrcG�q�v�
��5�k?�˸�C�Ʉ��l
+Ŗt:v��F����}���V�h��\������]5e�d($���GS�\���L�;�\��0[��CN�ʡy7�(�3M=�9*`�=h�
�g4E�Qi$� ��������1��L
+���G�6��c��\Qڜ��7m�'���—8sq��
+���B�.+|N���x��
�	
+�UX���U%%؁?�2(�����ae��{f�^��f�<��Å+��U�W����e�,�0������A|��0)F�2|"��#8$4�9�0:���G�\����t��<�����^��u���,;9�L�S�p4�Q������Z?��D�8�I[�k�����C8��������
�c� ���)B3��GNDG���}��PV���>J�=�m���@���|��,�{\�4
/r�RK`��F�zMxͼlm��zY[��RC��S�
+endstream
+endobj
+3994 0 obj
+<<
+/Type /Page
+/Contents 3995 0 R
+/Resources 3993 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3944 0 R
+/Annots [ 3969 0 R 3970 0 R 3971 0 R 3980 0 R 3981 0 R 3982 0 R 3983 0 R 3984 0 R 3985 0 R 3986 0 R 3987 0 R ]
+>>
+endobj
+3969 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [190.089 690.933 217.483 700.022]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3970 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 606.063 153.096 614.628]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00133) >>
+>>
+endobj
+3971 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 604.252 240.22 614.834]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+3980 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [185.847 484.189 213.241 493.278]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3981 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 459.686 148.111 467.946]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00055) >>
+>>
+endobj
+3982 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 457.875 235.235 468.457]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+3983 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 301.355 148.111 309.919]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00090) >>
+>>
+endobj
+3984 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 299.543 235.235 310.126]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+3985 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 179.48 204.912 188.569]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3986 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 155.162 148.111 163.543]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00022) >>
+>>
+endobj
+3987 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 153.167 235.235 163.749]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+3996 0 obj
+<<
+/D [3994 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+354 0 obj
+<<
+/D [3994 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3949 0 obj
+<<
+/D [3994 0 R /XYZ 70.866 594.378 null]
+>>
+endobj
+358 0 obj
+<<
+/D [3994 0 R /XYZ 70.866 567.182 null]
+>>
+endobj
+3953 0 obj
+<<
+/D [3994 0 R /XYZ 70.866 448.001 null]
+>>
+endobj
+362 0 obj
+<<
+/D [3994 0 R /XYZ 70.866 420.806 null]
+>>
+endobj
+3945 0 obj
+<<
+/D [3994 0 R /XYZ 70.866 289.669 null]
+>>
+endobj
+366 0 obj
+<<
+/D [3994 0 R /XYZ 70.866 262.474 null]
+>>
+endobj
+3951 0 obj
+<<
+/D [3994 0 R /XYZ 70.866 143.293 null]
+>>
+endobj
+3993 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F67 2922 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4016 0 obj
+<<
+/Length 1242      
+/Filter /FlateDecode
+>>
+stream
+x��WIo�F��W�9�@5��CR�&n��)�EEN`��X"�E!�Q���f!-Ӕe�F�����}o!����f�����<�b����a�E	E�x��;���-�yLG���bն��F�Z�])+�Ry]i�ٟ�ُR�Ad��r/-g�߰���wF,����,=2r���>�>��Q3�&��#�8
+�9��ߥ�^�������
��$�D�coNc$hh9�JsL�|\.�7uu������X�%1�g��DP�8�8���F34��=��s�}s�*�k�leZW���U�ducjcT�l<��짳�wn�ݎ�F�ݧEyA��s�T���PN����$��#�#$b���	�	G��H��ǜ
+�s�oN�W�i�`ؐ(�,��O�򨾲�ZnqD�Q�A&~k#�f$�?B$5�X�>��V�W�,V���E�>^��Y���>0���+텱�{m��M�n�6uWd���C�wm�ܪ�V��,)$VY^�H̻��m�Z�6 �����6�>��3��t�EޣH�C�8���A6�����b����q�CD{ls��X@d# pY�0�׭���C'���
+���@�V�r�;��gU�@�ʕu:���u���i���<����E��![�f�)���h-�Έ��l�<���[��ߵ���Τ͢�v�9M���W{L^V�G�ڷzʁ�;�����Ve�E�����e��&���{hB2�!�[����@��e!��T�L�Ѩ�@M��{g�&����m�h8A�a쿖V:���+��]�6�z;2�u�J H���]+�lZ�KX��.~3`�h��P�8{X	��c�N�j"Ҍ"��(�"���2�,p�������˺o|}щ��m�jhY|�0�����قB�lGMЁ������O��j;�M�=`'�rR�Pj�kO&|�-5J����L�#�r��^Z��"�U��[�|
+&	�/�IJ�o�����Y�@�:�����{���)Q����bo�ǖq<����;
�q:��H�aC"��!�l�5*�#��n�]�S��!̡ߥ��7c=��yj�J�x�Ǥ�RV���m�}�!>
+C@�;��L�#��K�|�d`s�s�5*���IbQ�|�Y�s�Q�M	ֿ�S�J��q����I�:\��@�,{�f��U�p1�i¤e�1_���@4�Nk�v����
�3YI��~���POk]6�]�u׀�zl���'.
+endstream
+endobj
+4015 0 obj
+<<
+/Type /Page
+/Contents 4016 0 R
+/Resources 4014 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3944 0 R
+/Annots [ 3988 0 R 3989 0 R 3990 0 R 3991 0 R 3992 0 R 4001 0 R 4002 0 R 4003 0 R 4004 0 R 4005 0 R 4006 0 R 4007 0 R 4008 0 R 4009 0 R 4010 0 R 4011 0 R ]
+>>
+endobj
+3988 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [218.072 709.347 245.466 718.436]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+3989 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 688.258 148.111 696.639]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00072) >>
+>>
+endobj
+3990 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 686.263 235.235 696.846]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+3991 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 504.813 148.111 513.378]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00081) >>
+>>
+endobj
+3992 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 503.002 235.235 513.584]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+4001 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [208.911 396.21 236.305 405.299]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4002 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 363.166 148.111 371.547]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00047) >>
+>>
+endobj
+4003 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 361.171 235.235 371.754]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+4004 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 233.291 153.096 241.672]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00124) >>
+>>
+endobj
+4005 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 231.296 240.22 241.878]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+4006 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [142.906 124.505 170.3 133.594]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4007 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [439.353 124.505 466.747 133.594]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4008 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [498.012 124.505 525.406 133.594]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4009 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.248 112.549 176.642 121.639]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4010 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 91.277 148.111 99.842]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00030) >>
+>>
+endobj
+4011 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 89.466 235.235 100.048]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+4017 0 obj
+<<
+/D [4015 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+370 0 obj
+<<
+/D [4015 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3952 0 obj
+<<
+/D [4015 0 R /XYZ 70.866 679.619 null]
+>>
+endobj
+374 0 obj
+<<
+/D [4015 0 R /XYZ 70.866 652.777 null]
+>>
+endobj
+3948 0 obj
+<<
+/D [4015 0 R /XYZ 70.866 496.357 null]
+>>
+endobj
+378 0 obj
+<<
+/D [4015 0 R /XYZ 70.866 469.515 null]
+>>
+endobj
+3957 0 obj
+<<
+/D [4015 0 R /XYZ 70.866 354.527 null]
+>>
+endobj
+382 0 obj
+<<
+/D [4015 0 R /XYZ 70.866 327.685 null]
+>>
+endobj
+3946 0 obj
+<<
+/D [4015 0 R /XYZ 70.866 224.652 null]
+>>
+endobj
+386 0 obj
+<<
+/D [4015 0 R /XYZ 70.866 197.809 null]
+>>
+endobj
+3950 0 obj
+<<
+/D [4015 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+4014 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F67 2922 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4042 0 obj
+<<
+/Length 1118      
+/Filter /FlateDecode
+>>
+stream
+x��WMs�6��W�H΄@� �c��m&�ƶ��(9�@� ���g�E��b��Lۋ�v����v�.�֋�o���В1ꭷ^�QƘ�.#Ĉ�.�;?CQFi�_]�׫��V|�8�
]�׭0K��\J#��m@��;.
+S�c������ś������Gƭ�eQ����'앰��È.3���{qBQS��vq��O��“�Q�B�!�.��߶�
+���$�R!e������6�}�Zɾ��.����.�ժ}Q:�|E1$f��QZ!��߷��Pb��Un'ki�C�\��t�F1I���6*����I|� L"�+�̌�_�~�sPȿ3E.���R���8,G���%�h�qa-�������*�J��L��$V��錘���
+NB��>u9�䒢qIq���ȇ�j�v�=koD(���+r1N���P�М[M-�ƭl��Ƚ�\xwZ��v���ζ[c��6Ox8�I�Fc
+U�����luȂA��Ģ\��i�oڶy٣�ǀ�
+|�\�	�|gd�S_�������_�b�����8�G���O�|���*����|���m7�Ն���F���_���3�Ȼ8N����.�*SU�1C�A�(ۼ��L�h�h��,z��D�j����҉]�: �8`��Cǡ`���̓��>(�3C8���u��ȴ�FP@����XI5��Zht���0���PV1�{g�T���`b�6�qԜ\]:�Z̰���Uhz�ʡ͊�(�����\���Y>q:���Ϻ���#����Z=�X���*�⑲-��y���2��Y���k
� ��� ]����ƭn��_�h���5
+�p|�JG+ks�����/�ݮ�ƃ�bz��h+H�"����e��V@f���Űl��|4�����Ԣ�3���������Q��񎢌( �7ה���-��}������3c�;d�ԥk�4�v�0Y�ɛ�T��
���>�J�Z��4¼�ꥡ�\s�p�y�/�3x�U;4����9��-t��6F��s�^M%W�h�Þ��àR���U�DZ�\����Ĺ'	�������)a(JY<�S}�1{y_r��Ӎ���|.ZU��ǝ�
+����
οv�
+endstream
+endobj
+4041 0 obj
+<<
+/Type /Page
+/Contents 4042 0 R
+/Resources 4040 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3944 0 R
+/Annots [ 4012 0 R 4013 0 R 4023 0 R 4024 0 R 4025 0 R 4026 0 R 4027 0 R 4028 0 R 4029 0 R 4030 0 R ]
+>>
+endobj
+4012 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 666.43 148.111 674.995]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00064) >>
+>>
+endobj
+4013 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 664.619 235.235 675.201]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+4023 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.209 544.556 301.603 553.645]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4024 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 459.686 148.111 468.251]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00099) >>
+>>
+endobj
+4025 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 457.875 235.235 468.457]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+4026 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [208.042 337.812 235.436 346.901]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4027 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 301.355 148.111 309.919]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00039) >>
+>>
+endobj
+4028 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 299.543 235.235 310.126]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+4029 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 143.023 153.096 151.588]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00107) >>
+>>
+endobj
+4030 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 141.212 240.22 151.794]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+4043 0 obj
+<<
+/D [4041 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+390 0 obj
+<<
+/D [4041 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3954 0 obj
+<<
+/D [4041 0 R /XYZ 70.866 654.745 null]
+>>
+endobj
+394 0 obj
+<<
+/D [4041 0 R /XYZ 70.866 627.55 null]
+>>
+endobj
+3947 0 obj
+<<
+/D [4041 0 R /XYZ 70.866 448.001 null]
+>>
+endobj
+398 0 obj
+<<
+/D [4041 0 R /XYZ 70.866 420.806 null]
+>>
+endobj
+3955 0 obj
+<<
+/D [4041 0 R /XYZ 70.866 289.669 null]
+>>
+endobj
+402 0 obj
+<<
+/D [4041 0 R /XYZ 70.866 262.474 null]
+>>
+endobj
+3956 0 obj
+<<
+/D [4041 0 R /XYZ 70.866 131.338 null]
+>>
+endobj
+4040 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F67 2922 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4060 0 obj
+<<
+/Length 1272      
+/Filter /FlateDecode
+>>
+stream
+xڽX�n�6}�W��I��d4�&�i��>%� ˴-T�T]6��wx�,)J����!�M��3g�
��������zvq�'@����9>F��R$���:���?��9� (�=xN��M���/���<n�2��:�3e;�m=�wF�;�s(�̉������½wF^8����0�!����i�a�φ	1�6��Q�a����rS��b�Y��.�8s|��(�Yx���7y�����^/�o�l��R'�\o�'���(��l��IF`��^�W�C�� �,͍:7צ�v� �ٜ`����j9���_-�J!���F�@]�-��gέ����L��s�&2�ͶUS�ahU!�d�0
+/��R�6�"���J�TtQ��U秅=���`�B�
X�(�c�Q��%�\���+	�,�
"@Ǩ6�4��3؀!b�^H�U9Nϸ��(3 ���&:<�[����Ľ�x����{��2/͗���>�O-�nd��e&��rk=���}\���i��O�}?�j9����F�-�w��1\��*�Ų�'��DiN�!P�[E
+�a��E1p��EmIW�[��3Q�ɋg����{��u�p=Q������Y���Ǒ��lی�y���em㨪��|�I�>n�}J�8m��u)���� �u�p�#��݋�/��wF�	�Z�7�BU#���T�]��sϘ�o6*�4�MM�s�݇BV����־/2OQ�g[i墪���1~I�1�Pn�e��ioU
"��
+����$��)�9
+O���p� �j�\&u� 3�
+܄�]O0�jC,B�T�
+����o����8n�6*�"<_�y�H��WM+�|{Y'QP�>�3VL9�?2	� J
�!<�M[�&�C�TV���s��=�R|j�)��d�Q~K��>��缕����z��U�6���&���AH\Vr�g{�M�̯u]&5�5�4��[بޔ�A,�ד��o��~q���U�H�B�q����#g;9��!��V8�/��J�Q���p .��e��Ԡ�1|x.#���	���c��A^����	k�g�p<����ݴc��[��n��AFI�j�=��RO�_���p�Kj�$OX1x�5�m�<��6Ƀ����>s�@�Y(�I�Ll�������#s9)���m،�W�yܠ'���]K�(M͇�~1�!0*��]4:uxnx�����0���:{�%���\/�a�S���_�`a��ku�9m:�_��a���1��J�{
+endstream
+endobj
+4059 0 obj
+<<
+/Type /Page
+/Contents 4060 0 R
+/Resources 4058 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 3944 0 R
+/Annots [ 4031 0 R 4032 0 R 4033 0 R 4034 0 R 4035 0 R 4036 0 R 4037 0 R 4038 0 R 4039 0 R 4048 0 R 4049 0 R 4050 0 R 4051 0 R 4052 0 R 4053 0 R 4054 0 R ]
+>>
+endobj
+4031 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [295.072 702.888 322.465 711.977]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4032 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 666.43 153.096 674.995]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source_l00116) >>
+>>
+endobj
+4033 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 664.619 240.22 675.201]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h_source) >>
+>>
+endobj
+4034 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.115 607.008 199.818 617.59]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h) >>
+>>
+endobj
+4035 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.115 594.057 209.286 604.639]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp) >>
+>>
+endobj
+4036 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 513.051 90.79 521.616]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+4037 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [91.29 513.132 133.649 521.616]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+4038 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.149 511.24 189.374 521.822]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+4039 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.293 421.438 300.098 429.922]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a2f1e39379df27d5d6f81987dcade6053) >>
+>>
+endobj
+4048 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 337.728 150.001 348.31]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_ad8e8aaa5d502e7688ff6b08b50a523ed) >>
+>>
+endobj
+4049 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 309.833 150.001 320.415]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a16a012d0744f694e3f9f9865ce89c624) >>
+>>
+endobj
+4050 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 281.937 157.75 292.52]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_accb7231b058bddbcde4345ee13cc7ada) >>
+>>
+endobj
+4051 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [205.593 202.011 232.996 210.496]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a320ba9474ff76cbc5626d667a4388a55) >>
+>>
+endobj
+4052 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.527 113.079 233.448 121.644]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+4053 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 76.303 148.111 84.868]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h_source_l00013) >>
+>>
+endobj
+4054 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 74.492 235.235 85.074]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h_source) >>
+>>
+endobj
+4061 0 obj
+<<
+/D [4059 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+406 0 obj
+<<
+/D [4059 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3186 0 obj
+<<
+/D [4059 0 R /XYZ 70.866 587.083 null]
+>>
+endobj
+410 0 obj
+<<
+/D [4059 0 R /XYZ 70.866 578.64 null]
+>>
+endobj
+4062 0 obj
+<<
+/D [4059 0 R /XYZ 70.866 461.305 null]
+>>
+endobj
+4063 0 obj
+<<
+/D [4059 0 R /XYZ 70.866 379.487 null]
+>>
+endobj
+4064 0 obj
+<<
+/D [4059 0 R /XYZ 70.866 241.879 null]
+>>
+endobj
+414 0 obj
+<<
+/D [4059 0 R /XYZ 70.866 172.834 null]
+>>
+endobj
+4058 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4081 0 obj
+<<
+/Length 1089      
+/Filter /FlateDecode
+>>
+stream
+x�ŗKo�6���<�f��d,zh�
�m�qOIZ�I�ڲ+����w(R�$?�qv�C G"g�3�<H�3"�:�a\|1�q�G�'�	��B:aXQ4���0�<�0��]�N������)�:_���"�*��y�(	Mi��DNc!O���M��,�3��� �i�c3��ep�H��� �y����%�c)8�^���׀���k�����bҳ�hB	!�Of�ɔ��Y�H�]�9Xܼ�Ze��)jw00x��&��ʞ\L��6��U��I�4N4�~�8�~_��T������2]�m:�m�
+KjO��z@0,�u���T�e^<�ˋ��@�5����T����E�|���x���-Oy��N�����9�%A5�08���2�Y�� �W�.W��_�ܸ�_`�Z���I��f�d�>��F�g�jOKZ��"/��s��N�߮<LV��v���#��Hh�;{��1�D��܃B��Mf��h���m��Ϡ�w�������������H�BuO/���&��A�Bk�K"�����F�]A�q��f�c�5.����9H���T��6�4�\����i�-r�je�_9�-������
|��1������W<���`]o�@�j�Nz�dO�ԘǝuO����0PpLx�.<�]S�b8��1m����jV�DP;����av���Xo�Q�\�7@w$��N������Viej��I$(�a9��J���Foo��LZ�����G�
+�e>�o#&´�4���Հ�C�S���y�1����y�+˰��D�3��:%V�B�E4�0��7XS�cH0�4�?�޼؟�(��Kv�J�'�Pƒ�R�6F��W2N�U>H
+�����+����T/C�;4w���׶��80�%qN���F�7Q�z�.��h"�Y�������U۵�Ay�%	W���@89 Ic-�b}�Y
���rEIc%N4!�z�n/D@	�o������$�"��nl�Ȅ37�;��m����Hx�!�u�M#��/i:�'���M_s�l��
+3�D/�DZyN�Mao>���m��v�1�{�lg��c��;ŝ
+endstream
+endobj
+4080 0 obj
+<<
+/Type /Page
+/Contents 4081 0 R
+/Resources 4079 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4084 0 R
+/Annots [ 4055 0 R 4056 0 R 4057 0 R 4073 0 R 4074 0 R 4075 0 R 4076 0 R 4077 0 R 4078 0 R ]
+>>
+endobj
+4055 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.89 655.068 419.78 663.384]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a2f1e39379df27d5d6f81987dcade6053) >>
+>>
+endobj
+4056 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 606.654 148.111 615.035]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h_source_l00021) >>
+>>
+endobj
+4057 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 604.659 235.235 615.241]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h_source) >>
+>>
+endobj
+4073 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 411.19 143.126 419.266]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp_source_l00007) >>
+>>
+endobj
+4074 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 409.195 239.718 419.777]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp_source) >>
+>>
+endobj
+4075 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 194.735 148.111 203.116]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp_source_l00012) >>
+>>
+endobj
+4076 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 192.74 244.704 203.322]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp_source) >>
+>>
+endobj
+4077 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 69.87 148.111 78.251]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp_source_l00024) >>
+>>
+endobj
+4078 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 67.875 244.704 78.457]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp_source) >>
+>>
+endobj
+4082 0 obj
+<<
+/D [4080 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+418 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4066 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 741.162 null]
+>>
+endobj
+422 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 713.966 null]
+>>
+endobj
+426 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 590.415 null]
+>>
+endobj
+4067 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 545.698 null]
+>>
+endobj
+430 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 518.502 null]
+>>
+endobj
+4068 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 399.321 null]
+>>
+endobj
+434 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 372.126 null]
+>>
+endobj
+4083 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 264.833 null]
+>>
+endobj
+4069 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 187.076 null]
+>>
+endobj
+438 0 obj
+<<
+/D [4080 0 R /XYZ 70.866 160.341 null]
+>>
+endobj
+4079 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R /F99 3885 0 R /F95 3709 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4114 0 obj
+<<
+/Length 1393      
+/Filter /FlateDecode
+>>
+stream
+x��X[o�6~��0����%)R����ִi���{h�B�G�,���4��;��j�έ݀=���s��������ѯ�ѣg,p������Q���)�3�;�\��f'�����'iT�	�{�Ǜ��ʨL�LɎ��F�GD�Cj�A�ʜx9z�;s������RK.�=ę:"uNG��p�L���߶�•��O���M.������K{�cg"8�[
+�*�1�n����l��(�حA�P��(���2ZI�$��Q.*��#����T��$[<O|0$���v�:<���<?�$�8z3�>ɳ�d�Yk@�Ӹ�結��"A�3��"0:^&Ei�����J��C��,W�T�˹Y�,m:���B���,/�Nj7_���ײ�Z�EW�&K>o�d�$�1�z�]����6I%�%�F��!M2��kx�^X�=9�
�v��]�Mh���@>&�հ����a�g4�������n��0L�*u�^��T�-d&��UP�����4Ms�������v�&>����]���)�}�8��b?�=ډ� Jc�v���P�������x���3�N$�P�ܰ�3�0���Q����/^�L+�Dᮓ�@J�<�S��4D{E�{�s��"�q���j�_
��BD�^]ا�U�gc��bV��s�
$l��:{!0�#�[0t>�
<[��Y�P���vf��dq��[s(mIBC�`�jm#!�hp��09�S�sh?l�ɦ-���	�n�֔�͙-Mbb�9=�d�"ZѣXՊ`m��h>��"�.lm:sd0���(3�
+e���8�PH�1��rU^�r^����M\�M	��֤V�/}o�6H�&L�2�ܕڴ��"��Ǖn0��t�^��≃i���:T�&
�&@}<��bĂZ�mW�n�uc;!��nt��)�W��WC���?��`Ё2~R��t�iJ᧾���69bS�����qU��;��32�=��ɭ8>�!��So����V�:��P-
+����@L�F�c�B��5�$�^nq�B��8�z�ҭ���:�ORYr��y��'��L��I�]i6��5q�/��
+N��ޜ����p!˃k�t�E�2Xޥq�J{���~��i���+��@	�"�.U�Ϧ,��
+�x՝�{r>���^��G�v�B޼ż� �no��x�a�f�Z(��]�U͂�Ӈ�!�
+.�3H����h�?tQ�+R��T��&u�Ow��f�%�eQ�w�����Ɋd�Uw��"R��ê�}�7&HS�(M�V\���&�����>�����t�����f$e��h͓������#\-S��5���9��ɳr��F	��Hq�8\�G�o/��ꑬy ;Se�zFV��׫�z�qeַ��Ѕ�
+endstream
+endobj
+4113 0 obj
+<<
+/Type /Page
+/Contents 4114 0 R
+/Resources 4112 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4084 0 R
+/Annots [ 4090 0 R 4091 0 R 4092 0 R 4093 0 R 4094 0 R 4095 0 R 4096 0 R 4097 0 R 4098 0 R 4099 0 R 4100 0 R 4101 0 R 4102 0 R 4103 0 R 4104 0 R 4105 0 R 4106 0 R 4107 0 R 4108 0 R 4109 0 R ]
+>>
+endobj
+4090 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 607.198 148.111 615.763]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h_source_l00028) >>
+>>
+endobj
+4091 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 605.387 235.235 615.969]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h_source) >>
+>>
+endobj
+4092 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.641 548.127 193.344 558.71]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h) >>
+>>
+endobj
+4093 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.641 535.193 202.812 545.775]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp) >>
+>>
+endobj
+4094 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [91.299 454.488 132.16 463.259]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4095 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 363.236 135.638 372.007]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_ac329fc28b401a84de21b5f298e9236ce) >>
+>>
+endobj
+4096 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 335.374 135.638 344.145]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a8c515f73d9000e53db8478a8836c1d1f) >>
+>>
+endobj
+4097 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 307.512 135.638 316.283]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a00d0e2ac641857eac06d5d833c28229b) >>
+>>
+endobj
+4098 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.123 307.512 188.449 316.077]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4099 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.949 305.808 207.385 316.077]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+4100 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.986 277.946 266.261 287.909]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a6483504f2c37393c0fdde77e39f5a030) >>
+>>
+endobj
+4101 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 250.895 141.528 260.352]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a8ae9246ee94ebe4a82f7dad7e02ff310) >>
+>>
+endobj
+4102 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 223.033 146.289 232.49]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a386c1992526628067cad3295763e6e39) >>
+>>
+endobj
+4103 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 196.063 144.102 204.627]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4104 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 194.359 169.512 204.627]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a197355701a388b65d7ea327ddd45024a) >>
+>>
+endobj
+4105 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 166.389 167.27 176.765]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_ad1574e37bb9696fdee3986964e77f050) >>
+>>
+endobj
+4106 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.756 166.389 199.163 176.765]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4107 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.22 140.419 120.691 148.598]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a893d008aed36e88dac38fbb0c5497ac2) >>
+>>
+endobj
+4108 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 111.584 276.267 121.041]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a5bb5198238af5ed6058e2f77ddb15f38) >>
+>>
+endobj
+4109 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 83.721 300.404 93.178]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_adc3f75677472910832a714f472c00d5a) >>
+>>
+endobj
+4115 0 obj
+<<
+/D [4113 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+442 0 obj
+<<
+/D [4113 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4070 0 obj
+<<
+/D [4113 0 R /XYZ 70.866 741.304 null]
+>>
+endobj
+446 0 obj
+<<
+/D [4113 0 R /XYZ 70.866 714.124 null]
+>>
+endobj
+3187 0 obj
+<<
+/D [4113 0 R /XYZ 70.866 528.285 null]
+>>
+endobj
+450 0 obj
+<<
+/D [4113 0 R /XYZ 70.866 519.792 null]
+>>
+endobj
+4117 0 obj
+<<
+/D [4113 0 R /XYZ 70.866 403.042 null]
+>>
+endobj
+4112 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R /F101 4116 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4132 0 obj
+<<
+/Length 890       
+/Filter /FlateDecode
+>>
+stream
+xڕUM��6��W�(��\~Kʴ=4��4әN߶9p%�ZYv%m�ί/ P^K�4�	 >�)��n��fu���,�s�mY&x��
+ŝd���'97�Zey���_{��ݾ|݆.���p�^)V�i��t�y���>C��+#'�M���
a�<]AU���N��]�w��{�ۤN$awh�h�cxL%�u�-qK##t��f��
+a�g&��ʰr���,X�Lp]��e��1c5�F�ްO�?Vb�.D���]��$�r���"�
�m*��6�eW�zߎ�A��Q���.8l�%ϭ!�a���|j��fQ�V�3SL��Z���c�@�ہ�#�I���~Zد%E�-��*ϢZK�(�֑g�J�Ċ��Ҥ��.+�-��g�~��ׄ�o�|�t��Zd��ϝ@�=������z���AT�β8������9�:�I�|�BԱ˟���v����|C�����#�"�SX��A�'XJr��C=t�F-�:�}��:���$�mXB��%�!���7�bi����DGR�����ņ�lc�-Z�������*��ݪ�y���{�{Z(�z%�>�_�=�����.6��`����6�L���׺
+�-���>�5�8����>��
�ɀE��1�:�M�l�x=�H�_6ђ"��e�h��*��i([Z>bXH�֐.0W�C��Ec
�����ر2�Jw���E����*xV{B��˯'�>����ZQ|�z:B[��/�1�.���P־���q_6�� �����Z�>�����Ʌ	�����‘<f�	O�y�}[��+0�MRMn���t�CZK��Kʙ_\Dh�s���]V�ڷe-Z��_k��W�3���ܹ��]���C}�"��g�Ǹ��'�ʒ�.C�Z�a
+endstream
+endobj
+4131 0 obj
+<<
+/Type /Page
+/Contents 4132 0 R
+/Resources 4130 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4084 0 R
+/Annots [ 4110 0 R 4111 0 R ]
+>>
+endobj
+4110 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 684.217 110.731 692.988]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4111 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 660.307 92.296 669.078]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+4133 0 obj
+<<
+/D [4131 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+454 0 obj
+<<
+/D [4131 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4134 0 obj
+<<
+/D [4131 0 R /XYZ 70.866 741.162 null]
+>>
+endobj
+4130 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4148 0 obj
+<<
+/Length 1532      
+/Filter /FlateDecode
+>>
+stream
+x��Y�o�6~�_��B"��IÀ����ú�oiP(��h��̒�d��")����v��a����x���;G7�ތ~�����:�(��E��Ha���TJ�$�d]Ĝ�/'o#&	Ҋ��5O_̳�'T���r�^�e��Ų4kG�&��G�∴�Z#My4]�..q4�wo#�X��/��E�C�����vnbD��j>��R
8m<���ɘ�8_�ͳ:7��ߏ)��U���|5&$�_��A�ETҽ>�0i]��a)"�J	��9"�8�&D���)D9���2�C�˕�Q���ȶ-�aŻ	���]n�������{0�������TǸ�O@(rZFO�p��y:-�Q1�`J������q3�m�u��j���@eJ���&��8!��"�JWD���x]�3����d���^�e٘��Ӫ�gLD������,�Ϋ+gݛ,�M���<JagT��1&��׶�$ؼF\���s�5��}�=8�}�9���X��K���d���o�{���Yd����tYξ7����v�����r5�\.�g��#̭�]��{p���yb�=��%�@��D�e�cZu���^��SƍՍ���7��YAI��S��;����Y���m.F6���FJ�M�q�@/��U^H+��`�
\U���8��?s�,��ZG��	8�)�[&��>��?b�4��� ��k
+aֲ�<g�-i7��,a ؄;��k�z��ʠh���D���-�A`� �Ɖ�'���$n��;r��:U�s%B$��$�����|���Dv�Bd#�v�L�gy��	�����X�P$ijuB9�r��-� �"���$�v�k�ז�O���vɗ��Ŧ��	�U�[rﳶ�n*��v�_]�?��Y>��+:�P:%�n���4�3�\�s�r��|w�:	�6]�H�5�?���#nU���]��z�|��-&�1,�u$��q���'O/��|z�X�|3^-M��R�".`fQ�a��<�"����stqU�Y�o훱~��lon��*�k��`������F��!v6Hc��xr�$��f-28������߾�wѾ��3�Q���r�}�0`���������5��pO�b(�|j��5�&��5V"%�R�����g6u�s�h��� 
+�y�����2d'�>@4{
+���Z�g��b��l�·`@��-�6�(T�L&Ȼ�������*�)5P��\T
�a^XԷ��7ES��6p�`톫'j�o���(�&�ߞ�`H�D��aX�@1��C�t0Rj�K��`i/<�u�1%�&�B�B����M��o.��j����_�l�wH�FU�y>N�.��y���E�Y�W�Y����K�S���������1v
+
"5�N�5Fq��
�B�/4�#Bʨ���s�7���0D��\���:�e2y~��r�x���Æ����w0a�ePں
vo�XB�Ú���DTA��*�)O��ܐ��79��*Օ���ER3�=�Λ����_(�]
+endstream
+endobj
+4147 0 obj
+<<
+/Type /Page
+/Contents 4148 0 R
+/Resources 4146 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4084 0 R
+/Annots [ 4135 0 R 4136 0 R 4137 0 R 4138 0 R 4139 0 R 4140 0 R 4141 0 R 4142 0 R 4143 0 R 4144 0 R ]
+>>
+endobj
+4135 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 664.664 148.111 673.045]
+/A << /S /GoTo /D (_container_8h_source_l00021) >>
+>>
+endobj
+4136 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 664.48 220.423 673.251]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4137 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 506.762 143.593 513.975]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4138 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 391.582 153.096 400.146]
+/A << /S /GoTo /D (_container_8h_source_l00196) >>
+>>
+endobj
+4139 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 391.582 225.408 400.353]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4140 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 282.951 143.593 290.164]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4141 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 167.677 153.096 176.241]
+/A << /S /GoTo /D (_container_8h_source_l00210) >>
+>>
+endobj
+4142 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 167.677 225.408 176.448]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4143 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 81.702 143.593 88.914]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4144 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 69.746 181.158 76.306]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4149 0 obj
+<<
+/D [4147 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4150 0 obj
+<<
+/D [4147 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+458 0 obj
+<<
+/D [4147 0 R /XYZ 70.866 650.236 null]
+>>
+endobj
+4119 0 obj
+<<
+/D [4147 0 R /XYZ 70.866 603.707 null]
+>>
+endobj
+462 0 obj
+<<
+/D [4147 0 R /XYZ 70.866 576.512 null]
+>>
+endobj
+4151 0 obj
+<<
+/D [4147 0 R /XYZ 70.866 469.219 null]
+>>
+endobj
+4120 0 obj
+<<
+/D [4147 0 R /XYZ 70.866 379.896 null]
+>>
+endobj
+466 0 obj
+<<
+/D [4147 0 R /XYZ 70.866 352.701 null]
+>>
+endobj
+4152 0 obj
+<<
+/D [4147 0 R /XYZ 70.866 233.345 null]
+>>
+endobj
+4121 0 obj
+<<
+/D [4147 0 R /XYZ 70.866 163.278 null]
+>>
+endobj
+470 0 obj
+<<
+/D [4147 0 R /XYZ 70.866 136.879 null]
+>>
+endobj
+4146 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F73 2949 0 R /F33 2286 0 R /F54 2381 0 R /F99 3885 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4169 0 obj
+<<
+/Length 1580      
+/Filter /FlateDecode
+>>
+stream
+xڽYMs�6��W�ԡf"�$=��4�d���uK2��#:��T��.@(Z�%7i|�X��{�p�5��������1J�d��6�0����"I��,�ƈ�'4���o�_\���6�KU��L߽|Ci���T�c�"��^��<��	F�7c:�q��`�����*�I�{뷣����i�t,q��"m��R�cc�*3=D9�!gt��t��H���l"�(�<��O_p0�g��X���E�C�3�/����#�]��+	�.�Ϧ��"�U�V�q�����K��)8lW4��l�4�����|S���.�n���������ղV��ml�8��2N��Wk�r��.:&,�W���Q�i�v�Y�/�B�!��Z��y�
+=U_.!F2ډ&�!q���ט�0�Ӆj�AB��35�e4A�'����aA6[��z{\"�€��1]��W�BD�.	����~�L�T��)B�&�ѻ�2�0@�j�+
�$b�f��6g��;��~b.ӺQ�NQ��O�j?�q��̤�c<�8$dV"l�x�>cL�|��m�
+hχK�22T�խ����-�y�Tzצ�9G"���9���
� Mc~P�e�ߛU�mW���V�M��o����y�E�¦�g,0��&��Pab�d�Ν�E73Jvf�zU��<,�D,݄v�T%���D�Ssya.yٚ�����a� ��}��,O��'ntvHG��/o�~<@�M�y�@
+��P�<�ɖ��Wk���Zt7a��Hmd����DH(&n�*\Cl
�`Ǜ;���`�̜'��
��	7a�p^O �D�Aʡə������]��gi��j�2�8=P+�r5f8��a�Ի40�T�t����B˟U��%�m��p3g�제��"�Dw��07s�P���@!�s3���X��Mr�ot�&6�٩6}f�ZP���r�%�K�U��CE��S3Iݴ}��O�1�����C�j$�K��0l�a ��_�R0��#)���GȿM�خѻ)v���۵��kTV����dؓ������8/Þ����ߢ�hz]�Z`���Z�x�������̀����	���_oH�����<�i�`�1;_�2�~�^���U�]eI���4��U�?ο�S�:���#������>��HbvPF&�\�b親��S�IN�*��9d;dvG�RrhEI��{!���=�,PD	y~]��O�v.��Ʉz�[s�����(�����G݁�K��Q��U۝
1J���n��T=�kP��GD[��Ѝ�>����v���n�*�u���yR��؝Mxā
+�6��:b̓AY�u>����]ԕ����vɺU���-Kk'�-�T+۲�<T��E��媲Xo�J�y�v�;���3��,o}/��ȳ�F;贽;�혊�e;B�9x�A��a�;�h*輈���`�F�k�Mj*��6��ՠ��Sl�w���)�Hϛ�6gy�Vk0�z?ϳ�����ٗ\T4!',c?y��8��O�p���:F����E"A���4�(��ͥ��	��v�������k+3�~���D�
+endstream
+endobj
+4168 0 obj
+<<
+/Type /Page
+/Contents 4169 0 R
+/Resources 4167 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4084 0 R
+/Annots [ 4145 0 R 4157 0 R 4158 0 R 4159 0 R 4160 0 R 4161 0 R 4162 0 R 4163 0 R 4166 0 R ]
+>>
+endobj
+4145 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [426.06 759.881 448.487 768.652]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+4157 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 670.771 153.096 679.335]
+/A << /S /GoTo /D (_container_8h_source_l00231) >>
+>>
+endobj
+4158 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 670.771 225.408 679.542]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4159 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [88.998 513.053 162.722 520.266]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4160 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 302.413 153.096 310.978]
+/A << /S /GoTo /D (_container_8h_source_l00313) >>
+>>
+endobj
+4161 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 302.413 225.408 311.184]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4162 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 193.782 167.504 200.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4163 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 180.723 157.248 188.386]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4166 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.723 102.051 170.13 112.427]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4170 0 obj
+<<
+/D [4168 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4171 0 obj
+<<
+/D [4168 0 R /XYZ 70.866 747.111 null]
+>>
+endobj
+474 0 obj
+<<
+/D [4168 0 R /XYZ 70.866 656.527 null]
+>>
+endobj
+4127 0 obj
+<<
+/D [4168 0 R /XYZ 70.866 609.998 null]
+>>
+endobj
+478 0 obj
+<<
+/D [4168 0 R /XYZ 70.866 582.802 null]
+>>
+endobj
+4172 0 obj
+<<
+/D [4168 0 R /XYZ 70.866 451.491 null]
+>>
+endobj
+4126 0 obj
+<<
+/D [4168 0 R /XYZ 70.866 290.728 null]
+>>
+endobj
+482 0 obj
+<<
+/D [4168 0 R /XYZ 70.866 263.532 null]
+>>
+endobj
+4173 0 obj
+<<
+/D [4168 0 R /XYZ 70.866 132.329 null]
+>>
+endobj
+4167 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F33 2286 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4191 0 obj
+<<
+/Length 1112      
+/Filter /FlateDecode
+>>
+stream
+x�͘Ko�8���<�@̒_2�=��[,��ķ4(���ʒW�6��Фd[Q�
�9�)r4Ϗ�@����FoN�FGR�hv��ZJ�"�%E�]���f�P()�*�s��Y\U�	S:�X̛���N����9�7��� ډ�k��|5��"(�g��a�я���"Ă�Wd�b��x5�3a�v��K5���X*��<7uS��V���7�a�w�1/�P�	�ʥ��	�9KKS5Y�汷��(2o�F/"$��ډ�h���t�w�K���x���ʅw���]nw�(<P�/7N������ʱ ^���.�r����Xxh�q���B�����)	�,�B�?�$���^�h�D�f���ڸ�*��j�j��Y-�
�fm�xe�	���p�4����
o�0�������T8�%���&�2̨���8j�e������]������.,��i	,9{�9��P�v��[z{�z���9|:��h;�6�.�#(]���־iy��F�̋��m�H\��M��{<ԫ�	�+a=�5��t���3����mi���a*�ܗi
?��~����_�7eir<������+�Յ�*�%�'nr3Ig��j�^��s���l�,�����NA@E/^R*z%��Q�ڔq]���8�cLno���*�:e@6Ǒ��=�Rn�V��ĺ�\��aHE
+s�c�����)f�8
+��Ԁ�����0���N��ø�i&T���%S%�7϶����|�!_V�6�ڂb3>��F��Kl�; �x��4��Cp�/5��:�w+�QH��Ͷ�ҁ1�5�J��ԫj�]\&-!������&(���x@�
+&p�R�$�q߷
���㮁l�拝k��to�to“�2eg�O�30_���
+,�^C/�t�����d:�n�$z��j�C��$����P)qģM�����*
+��
��k���Ϛ~OH5TH=�m��_�.uabz<��h�������T��J۬��˸ZvO֍�ٺ�4}T�	��s4o�Tn�Q��������о4º��B�-�1�
��3�h;��F,��ę�m'a��,i�h�̸�,(󾎿�1�4
+endstream
+endobj
+4190 0 obj
+<<
+/Type /Page
+/Contents 4191 0 R
+/Resources 4189 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4084 0 R
+/Annots [ 4176 0 R 4177 0 R 4178 0 R 4179 0 R 4180 0 R 4181 0 R 4182 0 R 4183 0 R 4184 0 R 4185 0 R 4186 0 R 4187 0 R ]
+>>
+endobj
+4176 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 715.413 153.096 723.978]
+/A << /S /GoTo /D (_container_8h_source_l00293) >>
+>>
+endobj
+4177 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 715.413 225.408 724.184]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4178 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 616.116 167.504 623.329]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4179 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 582.362 106.248 590.846]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+4180 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 508.669 148.111 517.234]
+/A << /S /GoTo /D (_container_8h_source_l00079) >>
+>>
+endobj
+4181 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 508.669 220.423 517.44]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4182 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [79.434 409.372 153.158 416.585]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4183 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 300.141 153.096 308.705]
+/A << /S /GoTo /D (_container_8h_source_l00263) >>
+>>
+endobj
+4184 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 300.141 225.408 308.912]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4185 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 200.844 285.882 208.056]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4186 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 91.505 153.096 100.07]
+/A << /S /GoTo /D (_container_8h_source_l00350) >>
+>>
+endobj
+4187 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 91.505 225.408 100.276]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4192 0 obj
+<<
+/D [4190 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4123 0 obj
+<<
+/D [4190 0 R /XYZ 70.866 706.729 null]
+>>
+endobj
+486 0 obj
+<<
+/D [4190 0 R /XYZ 70.866 679.862 null]
+>>
+endobj
+4122 0 obj
+<<
+/D [4190 0 R /XYZ 70.866 499.985 null]
+>>
+endobj
+490 0 obj
+<<
+/D [4190 0 R /XYZ 70.866 473.118 null]
+>>
+endobj
+4129 0 obj
+<<
+/D [4190 0 R /XYZ 70.866 291.457 null]
+>>
+endobj
+494 0 obj
+<<
+/D [4190 0 R /XYZ 70.866 264.59 null]
+>>
+endobj
+4128 0 obj
+<<
+/D [4190 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+4189 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4212 0 obj
+<<
+/Length 1439      
+/Filter /FlateDecode
+>>
+stream
+x��XKs�6��W�H�X0� 5mNj��L�ںٞ-�S�T�����.�)Z��L�$��>��@���\�&��s�9�d���QyR:ʧHg2sn\��*Ͻ�����]�A����nryzN���j*�j�!��e���t�夞1z�=1��l��J">�W�vT�8�s#n2��
��8(B�s>	�ea2�]�s�r��~��h1�!�%<y�;����;3�t0b�笫�K��g�;׃���u%AxǼ�!9����Y�ѿ��
�<)v��o���sx��|����#ȃ�J^Q�������CTtԒ%��d=�ج�$X��$h6�( J0�x�%p�+ĹtF� _H31/f��c8-���>-A�~=�L�h��3��t�	����]M����:��bpp���o\��M�y��l�#!�!Ӷ|5בA��XC��^
+��0���f�c��53��`��ُ���A�r%���&`���Yx�YV,��p�>Uj��4�:�7E�VL27C�]���c�fdUB/��<�[>��U7�#R�(���""=��UX�Y�Y���ulJ�6�anS�O������I�"J��+�q�<f伇��4��I�.�ic��gbԹ�f0�Z���Z-8>"b��h���3J�~�~�]����K���������4QR��'��j��o:�=j�S�a��(�=���K�~��_ ��Q�i0obO�tR���_:�rpwm|���k��>Mc#�;)C~�;¬�������hj��`�ܛ(��s�,·1�p����lI>/�i����Nށ�:��xeކ�f�,(,Nۮ>a�T<�R��r7� �XM��F�>.�)H�r��.&��2�Y��=��X � �����[	����&pD�OB�%�$�`�p���X�cB�P��g�w=[C�߼u+J	��n}��6���Y0����Z���y�ۢ��2��be1	%�f�o)����**C��݊�ي������RJ(�)��qBݾ
غ��d�y<��;x�=j$Tg��X"^9�%�˾Sn�Y�z�+�L�hι{y�iH܏�#��
+�*3���
+�e�Aw�p�mU��
+�@����3���2�+�����<�*O�:�Bxh�{��[���F�6de/������4&����p{���YM��؛yD�\���b��*ޘ�.s}m4�9K���S���>���;�]�^�I�����h��.����,�����rZol�@�����|�7z���*��t��&��k	��.I*��T�?i+ƤG��n�W:-�۴ػp��zk�������ڋ�Po�#������N��q���&(���m��:+PT�R�鷔�����n�MO5
+�>k��>��}&:��@�����tID@�4C�J)k��m͵��Sm������J�D�?��c
+endstream
+endobj
+4211 0 obj
+<<
+/Type /Page
+/Contents 4212 0 R
+/Resources 4210 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4215 0 R
+/Annots [ 4188 0 R 4197 0 R 4198 0 R 4199 0 R 4200 0 R 4201 0 R 4202 0 R 4203 0 R 4204 0 R 4205 0 R 4206 0 R 4207 0 R 4208 0 R ]
+>>
+endobj
+4188 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 716.132 285.882 723.344]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4197 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 594.301 153.096 602.865]
+/A << /S /GoTo /D (_container_8h_source_l00323) >>
+>>
+endobj
+4198 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 594.301 225.408 603.072]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4199 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 485.67 167.504 492.883]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4200 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 448.915 106.248 457.399]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+4201 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 362.581 148.111 371.146]
+/A << /S /GoTo /D (_container_8h_source_l00087) >>
+>>
+endobj
+4202 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 362.581 220.423 371.352]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4203 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 256.229 119.683 262.788]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4204 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 256.229 196.196 263.441]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4205 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [405.892 218.775 449.728 228.673]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a197355701a388b65d7ea327ddd45024a) >>
+>>
+endobj
+4206 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 125.491 153.096 134.056]
+/A << /S /GoTo /D (_container_8h_source_l00269) >>
+>>
+endobj
+4207 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 125.491 225.408 134.262]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4208 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 69.686 180.038 78.457]
+/A << /S /GoTo /D (_container_8h) >>
+>>
+endobj
+4213 0 obj
+<<
+/D [4211 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+498 0 obj
+<<
+/D [4211 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4124 0 obj
+<<
+/D [4211 0 R /XYZ 70.866 582.615 null]
+>>
+endobj
+502 0 obj
+<<
+/D [4211 0 R /XYZ 70.866 555.42 null]
+>>
+endobj
+4214 0 obj
+<<
+/D [4211 0 R /XYZ 70.866 437.956 null]
+>>
+endobj
+4125 0 obj
+<<
+/D [4211 0 R /XYZ 70.866 351.629 null]
+>>
+endobj
+506 0 obj
+<<
+/D [4211 0 R /XYZ 70.866 324.513 null]
+>>
+endobj
+3188 0 obj
+<<
+/D [4211 0 R /XYZ 70.866 63.053 null]
+>>
+endobj
+4210 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R /F67 2922 0 R /F95 3709 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4239 0 obj
+<<
+/Length 1475      
+/Filter /FlateDecode
+>>
+stream
+x��XKo�F��W(�@����F�C�:MТi›4���R�+RM�_���C\��d7�ѫ�7ϝ��ػ���r�C�����XJ�%w��(��S1E�x�ڻ�>$�=&	�����yZUAHU�_��a��:��eadW?&�?WD�Gz�(B�^�[�|���{�a����d%w	nT�޻�o+<2�P"�v�Q�34B"	���뫟//_�`Ӷ�{c��5��#1.�A 4F�;�m�\- .�I����C�?̢s�����?
>�gH���C�ֺ9y��g{]d��bl���b�$���	$���%tT=�l����\ٳ��a��7����<�W>j	�Š�J��*il|�-���n-�t �T�Y7���>Uh3&��� [��P�� �a��o�&n�6k��E�nu�����L*[�]��K$R�r�~O�p~�T���-��/W�M(�������K��=���6��X|}]xZw���W@����e;�W��=����)I�\^��ʀ��im���,F���;Ӛ�|�4��|����Һl
+��1�2���{��R])�?
+lsQn��z��I�cg($t=q�FZwn�2_�h[},�G�<�R���2�[vf�;�e�*]�4�zg˸����
}k��}���<�"?͔�$��'W��f�������kq�ߦV��Q[&��&��O�('�:��
+Ŋ�Z�D���E!����nJ��<[kZ�uI��Ӫ^_^Z��u���H�j{_�u�M:*��a��̸����͝�����*��)3�@�`Ɵ��3(O������&��Ny�1��"�3eDZ�|�a`睧W���ۇ�Ƀ��`>�+p���@y3X
+:�UwTs)�l�),�֟t��i��l����E4�`� ;�(��g&�-���=�mO��U�dxD�;�vE�݊@�+�t�b>��Y��0�B��N6[�E��A&�n&,�ʻ�P��u�o�Dň�e��y��)
+B��=w2����;]oʵ],���?�FLZ�F`��^��K�u�6�-�M����G{i�{j��v���K�Tt���`W���	(��=�am����8��2��xiǍaGĪ_q�.�Y��Ǡ�$Y��f�$0��`+��*�
��Ғ��v�6;}���ѩ�X �x��l�����Z2�}���E$R��`�4�a�/�|,�42-�8�P�62W@�0-��5>m��:�2�!��M�.�8?ql����>����(��D��Œ����u��9��i��pb"*�A��<\�/���rPL@�f=Ϻ!�C���(�bM?s�O
Q��Nٛ�(���t�I0;�I�N��*�K���L��r�Bd#K^�0���L�7�9�≮•y����Ih��
M��v����-�ɀ�xٽ{��*ɭł#&����/5X�S��[�}�j֌��?ߛ2�u1��_,
+�
+endstream
+endobj
+4238 0 obj
+<<
+/Type /Page
+/Contents 4239 0 R
+/Resources 4237 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4215 0 R
+/Annots [ 4209 0 R 4219 0 R 4220 0 R 4221 0 R 4222 0 R 4223 0 R 4224 0 R 4225 0 R 4226 0 R 4227 0 R 4228 0 R 4229 0 R 4230 0 R 4231 0 R 4232 0 R 4233 0 R 4234 0 R 4235 0 R ]
+>>
+endobj
+4209 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 632.581 135.638 641.352]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_a621f4d118ab910a12f01986158db4b04) >>
+>>
+endobj
+4219 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 619.629 135.638 628.4]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aa274a79ce54cb7ce0e384790332c6dfa) >>
+>>
+endobj
+4220 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 606.678 135.638 615.449]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_a55089fd352f89f4248ea546a365aecc7) >>
+>>
+endobj
+4221 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.123 606.678 188.449 615.243]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4222 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.949 604.974 207.385 615.243]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+4223 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [102.747 592.023 143.022 601.986]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aead4f92e330d6791b664af81b3f1942b) >>
+>>
+endobj
+4224 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 579.883 141.528 589.34]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ae5184ac1f1d1292b4cb72c28b3b3442e) >>
+>>
+endobj
+4225 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 566.931 146.289 576.388]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ac2430a1362863511e7766b1e552c74be) >>
+>>
+endobj
+4226 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 554.872 144.102 563.437]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4227 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 553.169 169.512 563.437]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_abab8884727d8470a1d6a151f11800338) >>
+>>
+endobj
+4228 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 540.11 167.27 550.485]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aa74985ed06251ca010f9250d05fa9750) >>
+>>
+endobj
+4229 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.756 540.11 199.163 550.485]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4230 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.22 529.05 120.691 537.229]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ab6644e2d6aa2ecc1027ce821a384e675) >>
+>>
+endobj
+4231 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 515.126 276.267 524.583]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ae43038fa9aa3b9fbe4dd37e782008509) >>
+>>
+endobj
+4232 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 502.174 300.404 511.631]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ab568a07a3075826eb277cc7392510f74) >>
+>>
+endobj
+4233 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 283.471 153.096 291.852]
+/A << /S /GoTo /D (_container_8h_source_l00174) >>
+>>
+endobj
+4234 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 283.287 225.408 292.058]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4235 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 125.569 143.593 132.782]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4240 0 obj
+<<
+/D [4238 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+510 0 obj
+<<
+/D [4238 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4241 0 obj
+<<
+/D [4238 0 R /XYZ 70.866 672.529 null]
+>>
+endobj
+514 0 obj
+<<
+/D [4238 0 R /XYZ 70.866 487.011 null]
+>>
+endobj
+4242 0 obj
+<<
+/D [4238 0 R /XYZ 70.866 442.294 null]
+>>
+endobj
+4243 0 obj
+<<
+/D [4238 0 R /XYZ 70.866 360.731 null]
+>>
+endobj
+518 0 obj
+<<
+/D [4238 0 R /XYZ 70.866 269.043 null]
+>>
+endobj
+4244 0 obj
+<<
+/D [4238 0 R /XYZ 70.866 222.515 null]
+>>
+endobj
+522 0 obj
+<<
+/D [4238 0 R /XYZ 70.866 195.319 null]
+>>
+endobj
+4245 0 obj
+<<
+/D [4238 0 R /XYZ 70.866 113.824 null]
+>>
+endobj
+4237 0 obj
+<<
+/Font << /F48 2333 0 R /F101 4116 0 R /F33 2286 0 R /F54 2381 0 R /F22 2379 0 R /F25 2380 0 R /F67 2922 0 R /F73 2949 0 R /F99 3885 0 R /F79 3573 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4269 0 obj
+<<
+/Length 858       
+/Filter /FlateDecode
+>>
+stream
+x��KO�@���{�	�~���B�E�ڂo)B!H�84	�|���۸�"Q�Cdgw��y�<���P�����]i��� �1���8����Cjqc�Ï��ommϲ�h�%��Q����9q��k��
+0(�/{Y̷�.Ye,
7
+��7=�B�C��u��*o��ŢЋ����2-�b� 90�'��1cd(�
������P��\X�K2��#JNqn�P��H%@I��)9>tm~5�H0p���QJ�:�_���+��1�ey�
PQgz�7�Qa�d�**�"���Ln��r�ۛ����U�~-E
��eX�\&�h�)��v�#�"*Ze������]��)5��t���:ɝ�F���@a�]M�F@N`q��4�@�[��s�t5����Hd4ք�ѩ�|<��*���EYt�u��z�^%=~p�՞��iQ1�+�%��`m�C����p��I���'�~4��񧭭��,���B��௥u�L������(��dJT�����Ƿ�ݫl�����;���4�x���SCc�!
+��-ۜ�\�O����f�+�0�~��7.�g��g��y��6T��l��z69Ų�®���+�*�oQ��cH�H�N�o��Qv�'��Yar2��Z��GFd�E+
+�ܣ�9<e�N�;���i����]�	ˁҲU���%�K��<��Hѷ�K
=�!�갓�q��J���?q�}��N��b�j���`ݵ	��,Ű�#�}��K����VHy6Ym��9��W�}������rxvVx�t�ĪJ��pё�5��]�w�C>��9
��˻����.Ӽ��O�"������:�
ޔ;I�u�3��
+endstream
+endobj
+4268 0 obj
+<<
+/Type /Page
+/Contents 4269 0 R
+/Resources 4267 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4215 0 R
+/Annots [ 4236 0 R 4256 0 R 4257 0 R 4258 0 R 4259 0 R 4260 0 R 4261 0 R 4262 0 R 4263 0 R ]
+>>
+endobj
+4236 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 716.132 143.593 723.344]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4256 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 595.485 143.593 602.698]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4257 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 583.53 181.158 590.09]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4258 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [88.998 425.752 162.722 432.965]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4259 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 305.106 167.504 312.319]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4260 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 292.047 157.248 299.71]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4261 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 184.46 167.504 191.673]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4262 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 147.624 153.096 156.189]
+/A << /S /GoTo /D (_container_8h_source_l00184) >>
+>>
+endobj
+4263 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 147.624 225.408 156.395]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4270 0 obj
+<<
+/D [4268 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+526 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4246 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 692.431 null]
+>>
+endobj
+530 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 665.235 null]
+>>
+endobj
+534 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 568.182 null]
+>>
+endobj
+4252 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 522.697 null]
+>>
+endobj
+538 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 495.502 null]
+>>
+endobj
+4251 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 402.051 null]
+>>
+endobj
+542 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 374.856 null]
+>>
+endobj
+4248 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 281.405 null]
+>>
+endobj
+546 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 254.21 null]
+>>
+endobj
+4247 0 obj
+<<
+/D [4268 0 R /XYZ 70.866 135.939 null]
+>>
+endobj
+4267 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F99 3885 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4293 0 obj
+<<
+/Length 1104      
+/Filter /FlateDecode
+>>
+stream
+x�ݘ[o�6���)�E*��x��
ؚ%kP`[+�%
+�V
��Ir������U�uhz{ˇ����O��
"�l�K<��r�4��Q|��ZJ�"�%E�]x\���9
+%�Z��ξ}�-�����I��m��^�i���ٯ���P�h�Rk�G���⒠5|w�#��l�qb�Mz5�sF��D�qj,p��PB�W�$�.J3��)(��L��+�ډ�&$tA�8�4�c�?��G
+G�P(�U��A���:��d�:q�*ć3���O'2J,�l���$_n?�0�x"���H'�OSC��\��R	�m��S��4R�<���ӫߟ�X,��j�'e������E�Ќ��PFmD��M&��?��
+h���5Z��b,8h�P�^�Q�*��[���F_�x�}}[�k����-v�"��	���+O���*X��L�Y��|��7��T�����o��^/�ɪ�@���`�6y�n�z9�TJX!=����'(
+[}'3����4�ȥ�fT�,�(T�i�o}F�e�K����Z|Y�������5}V�U�s�&���]�}Wۅ�T�@$���(/���+�OJd�a���-��e�:���Bu]���u�K���0�jPHP��T�E�g�x��
��(�O�uc�O��6J���Vն�^��i�<����Z�4j^W.�I�Iы-�����yx�C�qO8t�n�s�wU��L=s|C�t�oq��bq^5�v�>��(�8��ވ�����Lc������k�o����zt�����Nv��P_��t՟E�|*�e�a��5�
8Z7�b�6O�I��0M��|3��b�=�X�jXR��׌}`6!�W����w���:��ԛ����k#�6�t�&Q���[0�O)�H�.��(º/�v.t�v����{���]�lI�K���-�X�H�'�b_B��X޾y�\�2�W�<�00�FA%g�k�q��&Y���!��I�s�81���_fζ����E�@F{�i��v�f��
��ж���zE:�{ɤ�J�����2u�"�(�>�Υ�k��)ɭ�D�N:)�e>3��]�֔���m�Y�w�W���c�l�eq
+endstream
+endobj
+4292 0 obj
+<<
+/Type /Page
+/Contents 4293 0 R
+/Resources 4291 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4215 0 R
+/Annots [ 4264 0 R 4265 0 R 4266 0 R 4272 0 R 4273 0 R 4274 0 R 4275 0 R 4276 0 R 4277 0 R ]
+>>
+endobj
+4264 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [79.434 718.042 153.158 725.255]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4265 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 603.335 285.882 610.547]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4266 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 488.628 285.882 495.84]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4272 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 373.92 167.504 381.133]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4273 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 338.995 153.096 347.559]
+/A << /S /GoTo /D (_container_8h_source_l00185) >>
+>>
+endobj
+4274 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 338.995 225.408 347.766]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4275 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 236.303 119.683 242.862]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4276 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 236.303 196.196 243.516]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4277 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 171.384 180.038 180.155]
+/A << /S /GoTo /D (_container_8h) >>
+>>
+endobj
+4294 0 obj
+<<
+/D [4292 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+550 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4254 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 696.251 null]
+>>
+endobj
+554 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 669.264 null]
+>>
+endobj
+4253 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 581.544 null]
+>>
+endobj
+558 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 554.557 null]
+>>
+endobj
+4249 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 466.837 null]
+>>
+endobj
+562 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 439.85 null]
+>>
+endobj
+4250 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 329.22 null]
+>>
+endobj
+566 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 302.233 null]
+>>
+endobj
+3189 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 165.298 null]
+>>
+endobj
+570 0 obj
+<<
+/D [4292 0 R /XYZ 70.866 156.177 null]
+>>
+endobj
+4291 0 obj
+<<
+/Font << /F48 2333 0 R /F25 2380 0 R /F54 2381 0 R /F79 3573 0 R /F81 3708 0 R /F95 3709 0 R /F33 2286 0 R /F101 4116 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4306 0 obj
+<<
+/Length 1555      
+/Filter /FlateDecode
+>>
+stream
+x��Y�n�F��+�
+( �{8F�E�:mТi��m�D[l)R��D���΃IQ/�(Z��49s��ι�|?\\�(�����@aI(M�$�x܄��UQ��ן~��|S�e���rx7~wqMi�a7�fwĐ`�����N0��T+������_G��aD�j�wGq�d�j���C��d���2qO>$CϖI>1�(�*�ڀ~���Q�"ʃ�|ps��)�{`�t|�+�	��>>~��wA;%�l�W�+��_���t�4�%�߃w���:��i���~��5cM�%R�
+F����R���lZ>z�>�7#!d�
+g�^�X`�#�w8��xyY��t�Õ�����C*�dR}�F�B��Nʵ��I�]��"��څ�ՊWV�8['��.�M{�w���=�q<~y�nU�������"�
+Ϗ�W}U׈
+�ұ�1� j���B��[%E��0�p��cv���mlP�S�F�d�ҝ,!�?�%ޱ�E��
���>�Ƥu��˛�^�O�#]aVj��G���Ym�ߖ�����?����8�0��TƎ+���W��Nf�dHq��'���cr~O��[��Ν�� ��h���ڤ#e��:-+���a���>/��?x�����:_��y2�n��}�8
+��ꋫ�^g�_C�I>�ݩ]eOi�(z�cDu �8p���ޥo�y�K-�`L#N�&�v�qx��y�*K���d�.{t��mFs1�@amM��fEB8Բ�̽\��n�ha)�x����"��eږ������l����v������W�3�@Vy�'����S%�T��5)Ͷ�o���_{'��J�n>�r0� J�����f�ath�0(���=X-��M���־,ܻzQ��{?�F">�_��qW�q�%f�f�S/9Ί�ѽ+r�_�6��A�Fm�:-&kXW�U�>���;
+�I9+@�@�Ȓx�g�eb������י��+�غ�J���I�O�&x.�`�vl�(�R�K����G�K�or�#�p`r$LB5m'��0C�8�,�1`5G7aW�"�ʶT�̈ID�m����z��VYh���]�(t�*y�<�ټ���'����g�Y>�0�ˈ1ҙ���@D�B=(�����>Mbo@���e5��
�)�=[�ݸ����b{>Ʈ�<SI�����(c��e��{-�s�0�%\���ʿ8;�=@Ѭ�����h��|mi
+�4�a8˵�w��W�����{xt>��(�ICDͅj����.���̬��Z�f5�!�έ�Cx�j䗙�Y�^����0����D"��I��cwy�.�"��M��HB=�㔵m�6�i��I
��j��!���ɚQ��%��R�Ce�����զ6U��v��HO���)8�G��2�L���'�8a5
Ĥ�5�s?�
ڬs�hcm��jq�i=	�҆x�R��\������/��(}p^C���ݣ���J�J��W)�{�&?�@��7��V
�N_MI�I�U�o��3�
+endstream
+endobj
+4305 0 obj
+<<
+/Type /Page
+/Contents 4306 0 R
+/Resources 4304 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4215 0 R
+/Annots [ 4278 0 R 4279 0 R 4280 0 R 4281 0 R 4282 0 R 4283 0 R 4284 0 R 4285 0 R 4286 0 R 4287 0 R 4288 0 R 4289 0 R 4290 0 R 4296 0 R 4297 0 R 4298 0 R 4299 0 R 4300 0 R 4301 0 R ]
+>>
+endobj
+4278 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 735.061 135.638 743.832]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a0cf0460b6035095a9fb4ac40fc0d56c8) >>
+>>
+endobj
+4279 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 722.109 135.638 730.88]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ad9bd44996d34de087f4d8e52e3d087bd) >>
+>>
+endobj
+4280 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 709.158 135.638 717.929]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_aeeba9a7d45fc949532443d3f6184cb29) >>
+>>
+endobj
+4281 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.123 709.158 188.449 717.722]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4282 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.949 707.454 207.385 717.722]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+4283 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.367 694.503 204.641 704.466]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ac0d511ffb0f1398cbb9b88a9974ca647) >>
+>>
+endobj
+4284 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 682.363 141.528 691.82]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a44119ac58622a2aa98cf92018826def1) >>
+>>
+endobj
+4285 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 669.411 146.289 678.868]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ae25249aadcd39ed98369b62f69d9cf9b) >>
+>>
+endobj
+4286 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 657.352 144.102 665.917]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4287 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 655.648 169.512 665.917]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a795ada1b50ab3659a27fe96e40745480) >>
+>>
+endobj
+4288 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 642.589 167.27 652.965]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a4afd624980020d58d536fecd24a3a64e) >>
+>>
+endobj
+4289 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.756 642.589 199.163 652.965]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4290 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.22 631.53 120.691 639.709]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a03f102c86faf01d5caef3972ff54463d) >>
+>>
+endobj
+4296 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 617.605 276.267 627.062]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_aaeb96652a1ee684921d9ff91be93b724) >>
+>>
+endobj
+4297 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 604.654 300.404 614.111]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ae65685172c0bcfc9d437accc2b194d34) >>
+>>
+endobj
+4298 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 372.439 153.096 381.004]
+/A << /S /GoTo /D (_container_8h_source_l00146) >>
+>>
+endobj
+4299 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 372.439 225.408 381.21]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4300 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 214.97 143.593 222.183]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4301 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 106.463 143.593 113.676]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4307 0 obj
+<<
+/D [4305 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4308 0 obj
+<<
+/D [4305 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+574 0 obj
+<<
+/D [4305 0 R /XYZ 70.866 589.491 null]
+>>
+endobj
+4309 0 obj
+<<
+/D [4305 0 R /XYZ 70.866 544.774 null]
+>>
+endobj
+4310 0 obj
+<<
+/D [4305 0 R /XYZ 70.866 463.211 null]
+>>
+endobj
+578 0 obj
+<<
+/D [4305 0 R /XYZ 70.866 358.201 null]
+>>
+endobj
+4311 0 obj
+<<
+/D [4305 0 R /XYZ 70.866 311.791 null]
+>>
+endobj
+582 0 obj
+<<
+/D [4305 0 R /XYZ 70.866 284.602 null]
+>>
+endobj
+4312 0 obj
+<<
+/D [4305 0 R /XYZ 70.866 203.284 null]
+>>
+endobj
+586 0 obj
+<<
+/D [4305 0 R /XYZ 70.866 176.095 null]
+>>
+endobj
+4313 0 obj
+<<
+/D [4305 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+4304 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F33 2286 0 R /F25 2380 0 R /F67 2922 0 R /F73 2949 0 R /F99 3885 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4335 0 obj
+<<
+/Length 915       
+/Filter /FlateDecode
+>>
+stream
+x��WMO�@��W�r�z��P(��U[�-E($�&6M��Y{���!Aj�R����ٷ�f��t�:^��΁0�`�G�����+��1���N�#��FsXW��7.��i�g��Y���|��.6x�
+���l�@�Y08%h�������!!9��m1E'��lLr"U�+�0�E��e��$M�_�$�G]b;�"��&ԡ�	����e���ȇE
+�o��<�]O�yR��&*7���U��Ҩ* ��N��,�E
+Ҏ����1I�򟻎}��D����/+>���?>V�PN�e��JU�=���}�_W�#��_�TS�9}��se���3��ψv0
+lZL:*VSm�Z��#^CE�1���,���~�h�պ�jecO	 �޿���Ƕ.�Rf VJ��V���
+cP$&�/�Z��C2;wl��n�Q�ns�8�-�
PL=�0o���:���������b���'��Bw��w��n�Z�|��Ս"ȋk�&�
+Zv��v�ŔՎ�tlf�T�S�Km�
��Χ6�5Ƽ�F=J«d�c$�v6���E�l�;��uw�e�_�9���Zs#8���-Z+�LU�&���Gx��4;X���ۥ�ļJi�u���H�((��t�w��
+P>d�a���Og�s��t��������އR��&c8vVƵ�bP:L�)��3%�M-��*4�%�����]��t����O�{:��uvT�Vm���E	��� ��$I��V�B�=|^�M/��:��l^����:VD��l԰��F��h��M��0��e�Y��~�6Օk���ҵ&1���|⽡���.m-��X�p�-�LK���ˮ�(�>g���f����R/��+ru5�������#����v���0I�d\v�s7��W���j���-]��'���,
+endstream
+endobj
+4334 0 obj
+<<
+/Type /Page
+/Contents 4335 0 R
+/Resources 4333 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4215 0 R
+/Annots [ 4302 0 R 4303 0 R 4323 0 R 4324 0 R 4325 0 R 4326 0 R 4327 0 R 4328 0 R 4329 0 R ]
+>>
+endobj
+4302 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 716.132 143.593 723.344]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4303 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 704.176 181.158 710.736]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4323 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [88.998 546.398 162.722 553.611]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4324 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 425.752 167.504 432.965]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4325 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 412.693 157.248 420.356]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4326 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 305.106 167.504 312.319]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4327 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 268.27 153.096 276.835]
+/A << /S /GoTo /D (_container_8h_source_l00156) >>
+>>
+endobj
+4328 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 268.27 225.408 277.041]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4329 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [154.774 159.639 228.498 166.852]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4336 0 obj
+<<
+/D [4334 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+590 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+594 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 688.828 null]
+>>
+endobj
+4319 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 643.344 null]
+>>
+endobj
+598 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 616.148 null]
+>>
+endobj
+4318 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 522.697 null]
+>>
+endobj
+602 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 495.502 null]
+>>
+endobj
+4315 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 402.051 null]
+>>
+endobj
+606 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 374.856 null]
+>>
+endobj
+4314 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 256.585 null]
+>>
+endobj
+610 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 229.389 null]
+>>
+endobj
+4321 0 obj
+<<
+/D [4334 0 R /XYZ 70.866 135.939 null]
+>>
+endobj
+4333 0 obj
+<<
+/Font << /F48 2333 0 R /F99 3885 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4345 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/FormType 1
+/PTEX.FileName (./class_s_o_i_l_1_1_element.pdf)
+/PTEX.PageNumber 1
+/PTEX.InfoDict 4346 0 R
+/BBox [0 0 500 92]
+/Resources <<
+/ProcSet [ /PDF /Text ]
+/ExtGState <<
+/R7 4347 0 R
+>>/Font << /R8 4348 0 R>>
+>>
+/Length 741
+/Filter /FlateDecode
+>>
+stream
+x����n�0����܆�%��`�ŀ�����}�'$-������\Kvj'�ZA�?"ŏ�[��N��w��>u~Wiu^�V������J}�eATb�T}V=�2�cT.��U��zsr���l��lV������گ��ʃ�I��=�V�*;��7�j�A9�G�*Q�3�-ʲ(�y��*��X�.*H4�(�>QG�Ki�0�h����[]�f�����z�έd!F��dY�����X���Y�"Hq���EI��u��'����a�|T��z��>m�t��%��&H$H^��EY�2����h$�6ZfQ��|#z���n��{��.Bt&�
I����J��l���
(���f
+��zqys��v:kRm�X��L���	"���!�5���ʆTq�����Y�og��zã"�i7�0+"��!��^���E�X8�������o�Ϻ���G���6d�yY��"X߶�n�X�-˝L�����^R`������r~�|f�i�m˄� �1�� �+�L���'L�}"� 3h����Hۢ�k�<�N�&d�$�ɯ�9'�
�]��
+rD�۾O,3xC��rQ��۲39i�!o�ϻ��`�v�tR�������cz[N��N9�LZ�韅-y�f]e����YF\;���Wd2|��k�-ȴ6R��<I:�2�5�Ll�e2�Q�w�Y�>2Gж���nj��\�Лea�Y>�b���)t]�y���$��U9�
+endstream
+endobj
+4346 0 obj
+<<
+/Producer (MiKTeX GPL Ghostscript 9.25)
+/CreationDate (D:20220227230618+01'00')
+/ModDate (D:20220227230618+01'00')
+/Title (ClassName)
+/Creator (Doxygen)
+/Author ()
+>>
+endobj
+4347 0 obj
+<<
+/Type /ExtGState
+/OPM 1
+>>
+endobj
+4348 0 obj
+<<
+/BaseFont /GXOHKM+Times-Roman
+/FontDescriptor 4349 0 R
+/Type /Font
+/FirstChar 32
+/LastChar 121
+/Widths [ 250 0 0 0 0 0 0 0 0 0 0 0 250 333 0 0 0 500 0 0 0 0 0 0 0 0 278 0 564 0 564 0 0 0 0 0 0 611 556 0 722 333 0 0 611 0 0 722 556 0 667 556 611 0 722 0 0 0 0 0 0 0 0 0 0 444 500 444 0 444 0 500 0 278 278 0 278 778 500 500 0 0 333 389 278 500 0 0 500 500]
+/Encoding /WinAnsiEncoding
+/Subtype /Type1
+>>
+endobj
+4349 0 obj
+<<
+/Type /FontDescriptor
+/FontName /GXOHKM+Times-Roman
+/FontBBox [ -70 -218 775 683]
+/Flags 32
+/Ascent 683
+/CapHeight 676
+/Descent -218
+/ItalicAngle 0
+/StemV 116
+/MissingWidth 250
+/XHeight 460
+/CharSet (/E/F/H/I/L/O/P/R/S/T/V/a/b/c/colon/comma/e/g/greater/hyphen/i/j/l/less/m/n/o/one/r/s/space/t/u/x/y)
+/FontFile3 4350 0 R
+>>
+endobj
+4350 0 obj
+<<
+/Filter /FlateDecode
+/Subtype /Type1C
+/Length 3755
+>>
+stream
+x��W{TSW�?1$��!M%�Ink��J�}�����1*�R���!	y@��@�k'�+	��3�Q��Y촽>z;j;EWg:����ν��s�݁�iך�5k嬜s�}���=���6
Z��h��xq�H�>V�/�����b	�����ε�me��m����`::���������/��i~�m�#��/�]�n�L�U�srU��6m������.��)�9R�jtS(����"�*�'�U�"~�X"��8�����K{��IE
+���ΐ�3�q�H���ϖ)���~�L�%V�eRe$��/�+�L1�H����u|�H�/V*�=_���(�R�(������L�:+`�ϖIU|�B���H�T�Ȕ*e�B,W�Ř��1�r���]����l�2K��x�O�J(�*�*�F��!�g��r�P��"Ur�x�Z)���h}_!�*�$"��@T~����r�D��la�?�UJ�$;�8?C��/$�P��/�NJr���_%?���� �a/He������}BM�@�):�+�ˋ�$��{�u�1�����5X<v{K�^��c��l=����vcQ�k�^�u�W��~�M���;��a4,[��,[�J�
+�˴��%˗�П�Wө����22�3Y�z������Ė��O�����ޥaKӖ�.�kpW�_�Y�+D�2kB�J�!�_�}1w��[���u5��&@��)<ʆ�X�!����\�T�o�<��?��<���}<J��Q�X���S%������+�R%��{��q�=E+6�s�E�������O�5d:�z.j-ť"�]
�`����p٫�Q��2�����J�q|�{Yٝc�<���[�6�ݹ���$^�i8q6�h�a~���"�w�2f2��+��!g�����,��j�0�-�]�Dԫ���
+��`��ʎ���
+�����#������]�J�c��d�4�Y]������.�~{9�ک!O��!
+�>�of�Nr9�]�`kDWCq���A�Ų�������<�*����tO]C����bh�����i���h��L��/�'�s�1������\R	����������tG�����~�G�pm2n-'4pЋo�5��J����U��6Jr��%>2�gl{��tkk�O�)��`��UU����
+����� X��jumA��ؤq����
�*���vB�$���5�®��U���r1���v����:�H���S�q���nM+
�(�ײ}��������7tpCa��"<��ԁ�e���L`�n������ʵ�ZK-fQ|���
+���d�Zʗ�J[UM���u���/����΋�\cS�BgVN���#�Y3C�Q�/L��^��>�W�СRl���;MMw������w-M&�c!��%����߫3�Pe�x�J�9	�sZ�<�'���ȷ[
�۳p7�m��f�3SMMS<�=�g
����f�LP%8��&�ZR�����y�Vx�Zm��W�� �����I��m���NL0�q���j�7�����V�\��q�!il�dc%�;��7���gp?s�fk�i
������ڈ1_��F�w�]�
+���2�Y��'l���\��=Ƀ�����N�p�7뷥T���Γ���jG��W�P]�D�@�؅��A��<�+K��b�G���i3�gN^��\����3����$�^��
$奅%J�����S�Z\?3C&�@O�{h��9��aJ@Q�d�z&���=}-6��ڠ������JJ�
+I��Dk,2��e��S��.g���P������=�V�SLjS~�ْW���=����sz\>�}��7��j�+h-yU$�r�G�����k:\?�.��.��ˎ9�2F1^g�N@�5�
+y�-��A�0�	\_��l}���᜔"nB�����ߥB)�����wt������ہ����u"�J��͊�Fb/s��n�G����}߁�8����r����h�!�<��@�)�,9㣑2���=s������Zi�B�R8���+\���<�	;
+P��h5�� ���)����[r���*�.�P�������SW�CERT��P�z�
+\u�#�u�����N��^Z�]:�<�bݕ��D��/ ����_�Lٍ�:u��M{p�۽Wv�ۘ�T���KN���	����~v����Ӊ�}}�hoB��ći�:�>�5]�Ă�^�U�e�j��3̲�ͽ����ԓ� ӊ��2�;�&���y��}~b�\�\�n�w����2���a���i� ���t���h6G��VQ���.�]�.�k@�d��a꟥�?�	nn^���)0�>q)�=������R�N�R���&�Tp�-�?q*�1�t�����s��ą�ˀXd��18}1�_��bH[ƒ��p��]�Z�
�K��πO��aDޛ9��=b�V&�UDY��ݬ̼ղH�k�&����A=Ng��ql�+1�^d��U܅R�
+_��e]0o���o��=~:�G��G��E@_S�Tׇ��@Dn�%�}���h�:ky��X�@asə����<�M$�K���{���#��`�86���bׅ'�
���z����5�[媮�����g��Ӡ���0@P����A����fИsxk�x�p�d��5>�s�o���CS�ݺ�n[ns*�"⤹����
�{x��|���;����5JOQ�.�SW_�`�@�w�����3�݁x�2Yg5��e�&�s�f�%�YQ<��: �MƯ�a)5Ào2YI�GɇlS�����Ʌ�
7� ׺5؏&���!yv��[��
+wƥW�z���lw���sa���`�ٴ;0��=�>GYc��Yd,d�U*��]���h���:�<T6�a���Έ}a�B����ġ�-dV�L&0�Y�	֠;;��DD:H��Is%Z!H�L����;��]���(��ɩ�7.��d���G�2ڙ,�����D����kA��#cec���~�1~���5�$�D\�qv\�3��?�.h�Asr����Z����������������5NG�.�7��V*LEV�������ԝ�v�Q����'�T���뿁��X����\PPO%�4N�ND��9�=_���L�����E�Xkp�����]�A-!:�V��1?ôR[��NH��� ��?ڟf��9:���dk��b��p�7_��#��%����%��2A>�+�:�y���:��7���{�M	5�˕m& �yI>�f�N����}V�<�u7�kA��mC]ޫ�/T�
`��T��	���MM�Q���Zy��p
+?����������P|�G����6�O���(�p`�ot:�:&Z��1ٞ��G!f�3�b5���6}+�A@�71�6��m�h���ee�-h�̃����60ʁ8|:��-��
+�j��{��4 3D���i!I�Nz�����m
���d���b�fGSm����Z���
���d䕩�K���Ja���l+n�	�hB�A)1A:�A:
� ������K������_Нϣ��yJΘ��w��hG���n���_���l�u�O�k��'���yt1�U�����`��2V�W��?<;>$�sG��*Ub.���p��f����N�l�uֲ��#�<4����h���>
+�X�Z�#|0���{��Ҿ���m�!�����
+endstream
+endobj
+4362 0 obj
+<<
+/Length 1039      
+/Filter /FlateDecode
+>>
+stream
+x��W�n�F}�W,�
+(W{�m'���m�9F�H�̂"��_�Y.�
+mŀ[�h�%��3�3�9�A���8��l��(�B�`�ҖaEQ�B��z1m����],^��&-*��U��v��}z5�$L�i�Lg��9�c�9x�q$uO��q�5�� ڹ3&�r\\������t[[n���&X�>�r��bҟAa�?�(!$ܥ�,ɳ��m�~Zep�]V��D�Ձ��H�4��P�JP�,V�{�*�|ɓ*���,��L��ԿL`),�j
��/i�l�Y� ��/?�%syvw~��Dw~^L��('�2X)�Rz�]�Z,n�eUn'@%ԝ�ǂ,�Lk��ĭ�t��\^'S�Ja+�(����n���4���m��{UU�鶁�8�)֜=B7ɾkֈN�L�y,ٮ�]5��cCzy|G�Z��In���)3�&eޒ6��ݕw:�z$Z�J0�rHv5M��#a���\���g���cֿJs�Ѽ�T��>��Ԯ�7M.tQ;{���J�#4��h��4�B���Q5>���= ��d���_�Rm��T�
+x6R�tx�9�����I��RBQ��Z���*aEVA��_EI��p.���R�J�<.�<�Ώ@���$��p!�Pi4%��2��n�ܕ�]Lǻ菉~��?�sH�(�ϡ6��\|����6��uu�FABF��{���=TC|�z�����I���'!����:k��e?O�Ψ��f���Bwz��m�i��C�</��۬X��ˁ*�!����F���C
J���v9w��?(?/�
P_�:ʠ;Q�)׸k��V-�'NZ����9�F�_S��e�;�bژ�[�͂O���0`�OY�����;06���N[�z
Y����S�(ԋ��M%���g�5.�dU��ꉛ%k�jO��uG�Z���
+�o;�Z�9e���ʬ�z�6����U�G��y0?�PtR����q�����:O�;�&Ȩ����fZ���-��A5,>uR�e�������t���_�Yd�Y!=���
+endstream
+endobj
+4361 0 obj
+<<
+/Type /Page
+/Contents 4362 0 R
+/Resources 4360 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4365 0 R
+/Annots [ 4330 0 R 4331 0 R 4332 0 R 4338 0 R 4339 0 R 4340 0 R 4341 0 R 4342 0 R 4343 0 R 4344 0 R ]
+>>
+endobj
+4330 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 718.353 285.882 725.566]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4331 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 604.615 285.882 611.828]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4332 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 490.878 167.504 498.09]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4338 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 456.263 153.096 464.828]
+/A << /S /GoTo /D (_container_8h_source_l00157) >>
+>>
+endobj
+4339 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 456.263 225.408 465.034]
+/A << /S /GoTo /D (_container_8h_source) >>
+>>
+endobj
+4340 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 354.541 119.683 361.1]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4341 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 354.541 196.196 361.754]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4342 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 290.39 180.038 299.161]
+/A << /S /GoTo /D (_container_8h) >>
+>>
+endobj
+4343 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 212.26 92.296 221.031]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+4344 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.723 212.341 150.603 220.825]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4363 0 obj
+<<
+/D [4361 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+614 0 obj
+<<
+/D [4361 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4320 0 obj
+<<
+/D [4361 0 R /XYZ 70.866 696.874 null]
+>>
+endobj
+618 0 obj
+<<
+/D [4361 0 R /XYZ 70.866 669.922 null]
+>>
+endobj
+4316 0 obj
+<<
+/D [4361 0 R /XYZ 70.866 583.137 null]
+>>
+endobj
+622 0 obj
+<<
+/D [4361 0 R /XYZ 70.866 556.184 null]
+>>
+endobj
+4317 0 obj
+<<
+/D [4361 0 R /XYZ 70.866 446.8 null]
+>>
+endobj
+626 0 obj
+<<
+/D [4361 0 R /XYZ 70.866 419.847 null]
+>>
+endobj
+3036 0 obj
+<<
+/D [4361 0 R /XYZ 70.866 284.449 null]
+>>
+endobj
+630 0 obj
+<<
+/D [4361 0 R /XYZ 70.866 275.217 null]
+>>
+endobj
+4364 0 obj
+<<
+/D [4361 0 R /XYZ 70.866 159.79 null]
+>>
+endobj
+4360 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F22 2379 0 R >>
+/XObject << /Im1 4345 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4420 0 obj
+<<
+/Length 1435      
+/Filter /FlateDecode
+>>
+stream
+x��Z�n�F}�Wy��r��]I�4��msS�bM�m)�TR�}gy�E������ȓi9;s����,�s�`�������׎F����;
+#-��|�$qFc��t�it�0I�V��}i:�����$\LM��$�������j@`)v�R��HS����'��c#�k�[�r�p���v���0x7�
5	FJ�rUOP
+W��]�
	v�IX������y��h�V�4ׯ�����DJ+ǣ4-d�R*j�6�/J�޿8'��}Bm1�E�rO��i6~�(��f�y�����G�:>�Ns���������ܮ�3@���)�؆	��r�_w�eV�Y��Hk�-="�I|ѱA�v������S�&��[
+�4,�Ζ�nծ�!w$��'*�*P���rYY%��~�k�bA
n�S�(0��Y,�k�=��$J.���?y���H��h��
+X�*�8G~���缌y��R�E�%��.�P���V
+;HGH��u�9v�Eu���U*C���n�R!�cC|��� ��G!�_G繹CprR�\�z��>�Bղ�zSN�mQ�I����be���^����LƽQ�
+���G�^?����=�ޘ��B�M�?��~��i�������(s������-�$<��W��	���uG>
CS�(ެ�}q�t�i���a��U��ΐ��;�Qdx9����İ_���o�3+k3�����07�I�n�n���тU�S�Y�*zG����"�{��Ty�$�f&qj�3ۺ/ս�!��{Իp�n��[�ݑ���OV�C��p���'L"M�\Qn���L�!���<6%l(H�y�/�KWP}_Ws���)�<@�)���U���t�)H�|X�+�/�
+	��[�Av" ���g&g�ʏZ2i�1	y�Y��Q,,E���
+]+s��M��ͨ*��`MAT5z��&+�_.�0������)�<K&qf����I�99�]yW��!Phm�(�r�u�Y�7mʸ��gH?�6e6Ά���A��ێn�m����b<
I4�H{����T
̿30��L�m������ɡ�C�s�TmM��[��h�ԫ���#[��ӆ�:��%M�Sw[��Z�eێ���u��]C����pzR�����J��J8�t�P�xo����G�K@,��Q�ٯ��vW�~<���i������'+?W�������D�҃C�<N���i��'y�Yd���c��4��M�)�4�����m̐��=7�o�7Q��f��mn��t��`�D��T\1���9��إ�x�����ZYe���q��5cMMt�?���=a���~�Y�Ov(�$au0��q�ă����B����3��K4��3����"!8��'�RV-vl�����k�u�zϐa���0��
+:�=^J
+endstream
+endobj
+4419 0 obj
+<<
+/Type /Page
+/Contents 4420 0 R
+/Resources 4418 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4365 0 R
+/Annots [ 4351 0 R 4352 0 R 4353 0 R 4354 0 R 4355 0 R 4356 0 R 4357 0 R 4358 0 R 4359 0 R 4367 0 R 4368 0 R 4369 0 R 4370 0 R 4371 0 R 4372 0 R 4373 0 R 4374 0 R 4375 0 R 4376 0 R 4377 0 R 4378 0 R 4379 0 R 4380 0 R 4381 0 R 4382 0 R 4383 0 R 4384 0 R 4385 0 R 4386 0 R 4387 0 R 4388 0 R 4389 0 R 4390 0 R 4391 0 R 4392 0 R 4393 0 R 4394 0 R 4395 0 R 4396 0 R 4397 0 R 4398 0 R 4399 0 R 4400 0 R 4401 0 R 4402 0 R 4403 0 R 4404 0 R 4405 0 R 4406 0 R 4407 0 R 4408 0 R 4409 0 R 4410 0 R 4411 0 R 4412 0 R 4413 0 R 4414 0 R ]
+>>
+endobj
+4351 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 735.141 129.657 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae31b32fb944a138ac955e07a5be9d652) >>
+>>
+endobj
+4352 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.354 735.141 238.234 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4353 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.141 733.357 276.553 743.32]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+4354 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [321.227 735.141 340.165 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+4355 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.839 735.141 409.256 742.025]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+4356 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [453.93 733.357 499.408 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+4357 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.311 721.294 160.196 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+4358 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 695.291 164.17 703.775]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4acd9dc20ed4e0926da2ba7e4a5af7ab) >>
+>>
+endobj
+4359 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [197.891 665.611 214.337 676.086]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad0dff9864321178e13df316f1b317bcb) >>
+>>
+endobj
+4367 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.822 639.5 199.703 647.984]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4368 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [210.444 637.716 252.383 647.984]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4704591e187b8bf5344979d095703239) >>
+>>
+endobj
+4369 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [297.364 637.716 313.81 648.19]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad0dff9864321178e13df316f1b317bcb) >>
+>>
+endobj
+4370 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.822 611.605 199.703 620.089]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4371 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [210.444 611.605 227.392 620.089]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a682f8e3123f99f13545db06e15a896bb) >>
+>>
+endobj
+4372 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [272.373 611.605 291.312 620.089]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+4373 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [364.35 611.605 399.231 620.089]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4374 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.175 596.671 177.766 604.506]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4375 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.822 583.709 199.703 592.193]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4376 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [210.444 583.709 227.392 592.193]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a90aba7aaad7c5e9695b239480e95cea3) >>
+>>
+endobj
+4377 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [272.373 583.709 291.312 592.193]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+4378 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [294.305 583.709 329.185 592.193]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4379 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.175 568.775 177.766 576.61]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4380 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 555.814 138.489 564.298]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a06d51f457b4412d64c3980a377fbc9f0) >>
+>>
+endobj
+4381 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [183.47 555.814 202.408 564.298]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+4382 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [275.447 555.814 310.327 564.298]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4383 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.175 540.88 177.766 548.715]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4384 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 527.918 138.489 536.402]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad0d80de0520ce5366067512e07068e1e) >>
+>>
+endobj
+4385 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [183.47 527.918 202.408 536.402]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+4386 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [205.401 527.918 240.281 536.402]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4387 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.175 512.985 177.766 520.82]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4388 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 500.023 145.743 506.906]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae32f6b04a96ff98acfe29f884177f22f) >>
+>>
+endobj
+4389 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [190.724 500.023 209.662 508.507]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+4390 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [110.221 460.172 128.658 468.352]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a6ef3653a14ca3245c529684e939b122d) >>
+>>
+endobj
+4391 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 430.493 151.588 440.761]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8bd2f333fbe5c1b51218512c3ef8c9b3) >>
+>>
+endobj
+4392 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.471 415.737 142.785 425.364]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+4393 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 403.409 158.788 412.866]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aa035b89c623428f7d93b8b1da0ce1e49) >>
+>>
+endobj
+4394 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.471 389.448 148.458 397.283]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+4395 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 375.513 159.066 385.176]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaa82810e11265c4a890246f633fe4fc7) >>
+>>
+endobj
+4396 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.471 361.553 150.411 369.387]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+4397 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 346.807 168.436 357.075]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4c20dd71ee68dd4823e32aa3868f337b) >>
+>>
+endobj
+4398 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.471 333.657 156.729 341.492]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+4399 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 320.615 170.866 329.179]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4400 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [171.366 318.911 196.276 329.179]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+4401 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 305.854 132.012 313.597]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+4402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [163.036 291.016 181.472 301.284]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad55fc11662301ce186e593852a9425ce) >>
+>>
+endobj
+4403 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 263.12 165.531 273.389]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+4404 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.031 264.905 194.94 273.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a0f046d3e28928e07013a07b7e5b8e5a2) >>
+>>
+endobj
+4405 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [198.426 263.12 262.205 273.389]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+4406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 250.064 132.012 257.806]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+4407 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.437 183.087 288.317 191.571]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4408 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [309.3 183.087 342.683 191.571]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4fa228a217778ee48c592fe0272aaacf) >>
+>>
+endobj
+4409 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.822 155.191 199.703 163.675]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4410 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [210.444 153.407 237.856 163.371]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+4411 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.822 127.296 199.703 135.78]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4412 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [210.444 127.296 226.388 135.986]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+4413 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 99.401 155.21 107.885]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+4414 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 71.505 160.689 78.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+4421 0 obj
+<<
+/D [4419 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4422 0 obj
+<<
+/D [4419 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+4423 0 obj
+<<
+/D [4419 0 R /XYZ 70.866 222.954 null]
+>>
+endobj
+4418 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F24 2940 0 R /F21 2941 0 R /F73 2949 0 R /F25 2380 0 R /F79 3573 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4467 0 obj
+<<
+/Length 1806      
+/Filter /FlateDecode
+>>
+stream
+xڵYY��F~ׯ���Bek<'�V�����G�u^v].fW�Ȁ��O�	!K�<�@�����t7عs��j�����K8
+=�9����Q�y�R��2q���������󋳳�\ȼ6Cϲ����Gy;%ؕ��c9�r���!�3��qS����o��!�� @�N��\}�N��8�0p�����
+,s>M��`k��U�B���W&������5�]��S"\�uj?}�X�3J
�3#�®��T�9W3!<������.�3�M�;;GYY�Ys?���[��b5���N����y�0�Պ�]�h���	�w�]�!�*��-���ǩ&��k����H�^cLe9��_\)�UY��S*\�u�����a��q��T��?{��m���C��6TW��6:jo�L0�E�i/����q���`$J�$U�2���|.˴����V.n���+��1�1p�
��0���:J�f��`�����^�B&(ㆲ��)u�����D���nlB�,nw�+����?2��w��^ı�\���ݿ�Ôc7*��!������<��﩯Q�ދn���tP>�b��h:�s�k��-��VV���qs=��`��c��[�{N�Wz[��q__^~8;�(�bU�r@EΩQ<Cx��\�AE�fcfB�XE������t�j7��4��E�0����V�����L�DŽdԞ]$�����y��B7E�h�o�(��P�n<�-,��2��<z��e���������Y���)&��GKE,`i=��"3����¬*��eY����+�,.�^���D=j��>O�����g�g,]UM�h=���ɼaVlF�E��mdN�������r��4T��SC51�	Ko}<�S6i��U�f{,�|��Q������������]�u�_�@�~^ī5��8�ˉ���p��5~�,�����d L���N>��B��r-�>�M&1�J�|]֥��I���H�0����"�6���߆ 
+��~7z�b'$�@|2��a�t�����D��Z�� ����+���p��>B�d}��/�E��)B�f.�
��<H�ڷ�&o?$�@7�6�*�a!�;MǛξj"��n8Y��4D�l�WCua�7�J��6y�'�-
l�3��>��UV��H�$������w<��ܳ��0�����)U�4*�(��x�%È�uI���Z�ܓ���0�#i��� �>��(@�u�=b��ö�X�~�v��4�5�d@0��-��w�1�]A_�'t�ц�V3s��,Yg�}�}�V��/}���b���ٖ&n)��9ܜ����Eѓ����KGxf����鉄>	������^u�3�>N�0��B��5B���ӹ+��P��6>�鷕h���Zm�� ����$K%, �{{L�(��$�3�Q&%q�H]�*[!�QR�yԕ�zu��SҖ֚F��X�����
+��I�9	ð����X��{�CBH��v�}�9ȟ��d����KG�0H��
+�ȴ_5C���b	1
+�!�2�4�,�ӹ�KE��YA4?���D3�+�-Gv3�8�Ì��7�KS���+�"�v$f��Lg�ɛ6��M��bY[�ns��T%G���۽M6����t?a����Ź�D�C����]�^��C����f"��mżn�}�@��7*#��x�0�+l&��.�Y��f�Z�~��D�o�v֭��N7�<߽�O�ze_�ַB ����|,��ﰆ�y65}���Q�-E�?�.��T��N���|S���v�ݏ
+endstream
+endobj
+4466 0 obj
+<<
+/Type /Page
+/Contents 4467 0 R
+/Resources 4465 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4365 0 R
+/Annots [ 4415 0 R 4416 0 R 4417 0 R 4446 0 R 4447 0 R 4448 0 R 4449 0 R 4450 0 R 4451 0 R 4452 0 R 4453 0 R 4454 0 R 4455 0 R 4456 0 R 4457 0 R 4458 0 R 4459 0 R 4460 0 R ]
+>>
+endobj
+4415 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 745.226 181.75 755.494]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+4416 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 717.223 172.157 727.599]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+4417 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [179.4 691.219 205.449 699.399]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afc29676fd98e4c6b7ab004514c175b7c) >>
+>>
+endobj
+4446 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 676.286 140.541 684.121]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4447 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 568.521 104.75 577.005]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4448 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.541 566.736 217.446 577.211]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+4449 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [221.594 568.521 257.972 577.005]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+4450 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [262.121 568.521 305.52 577.005]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+4451 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [325.318 568.521 359.526 577.005]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+4452 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.344 568.44 393.77 577.211]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+4453 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [90.588 556.566 159.343 565.05]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+4454 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [455.247 556.566 490.128 565.05]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4455 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 507.754 148.111 516.319]
+/A << /S /GoTo /D (_element_8h_source_l00023) >>
+>>
+endobj
+4456 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 507.835 214.891 516.319]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+4457 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 350.036 249.911 357.249]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4458 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.159 277.335 182.586 286.106]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+4459 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 143.113 143.126 151.373]
+/A << /S /GoTo /D (_element_8cpp_source_l00005) >>
+>>
+endobj
+4460 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 141.409 219.374 151.678]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4468 0 obj
+<<
+/D [4466 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4469 0 obj
+<<
+/D [4466 0 R /XYZ 70.866 649.269 null]
+>>
+endobj
+634 0 obj
+<<
+/D [4466 0 R /XYZ 70.866 628.153 null]
+>>
+endobj
+638 0 obj
+<<
+/D [4466 0 R /XYZ 70.866 493.51 null]
+>>
+endobj
+4424 0 obj
+<<
+/D [4466 0 R /XYZ 70.866 446.981 null]
+>>
+endobj
+642 0 obj
+<<
+/D [4466 0 R /XYZ 70.866 419.786 null]
+>>
+endobj
+4470 0 obj
+<<
+/D [4466 0 R /XYZ 70.866 265.232 null]
+>>
+endobj
+4430 0 obj
+<<
+/D [4466 0 R /XYZ 70.866 138.924 null]
+>>
+endobj
+646 0 obj
+<<
+/D [4466 0 R /XYZ 70.866 112.548 null]
+>>
+endobj
+4465 0 obj
+<<
+/Font << /F48 2333 0 R /F73 2949 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F67 2922 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4485 0 obj
+<<
+/Length 1640      
+/Filter /FlateDecode
+>>
+stream
+x��YK��6��W�(1×(jQ��<�h�ݠ�MPhm��֖\K����3$%K�b�� 衇DZr83��8�Q��4���৻�˷R�$J���1�)�Jq‰b��$�#9�|�.�XgG_�Ӳ�x����x�0y�VY��������Q�F��Ds����4��ܻ���`c%���$��������=n�O���)��pĢp=�
+xZ��CAC��rޯ׃��
+����9����p$
7�l<sڲ�='f<OWf�����1I�j���H�v+dX����vjYdyeV��8��˃q�ץ�p�
�ksS�n^Vi>6^A�hI�c$�"��qA˾y�0�����0��R���L�f���������2磷��w����=������eel��ʸ���93�e<���f��W^���J:�(����`��!��Ìp�|?<,�j\䓬9�&�܁2� ?b�P)���GpH׮�8\�_R;h||��S��q����5�@��_�f�)g�8�����:�0罰�l$�� X2�����
m2HV~����>'������R,�pme�y	F>^B�X������.�.��{γ��K��Z<���wn�x2^.wqj]��QG�򠑜�4��D�	������GT�v���ګ�;u��U���զ���(�cny�1Ib�p9�Q@�����%��"ْy���VP׏��\]9���VnY�V�ł���J4wlF�J�EX���Jˎ-�H"�e?�l�*ֽ����	�QA�0VoIy�f�=W�,��`F-�^G���:��xޞG~e�V��5k�jP\̊�B��e�I��D%|��K�b���	€K������m�M���.8b{>��I_F��(��Pt��ƮǺ�B�ܕ9,)O^�"�ө�zS��.e8֔2W�D�Œ���X�q��)ȼ�q�̰X�;���q�~�*�3Z�
9T�����dNl܀��.0M����wܕ��(�y�*P�S�6��ⶤ0�@�P�fӓ6i�����tb�X������j�Fk?
}�<�2G��^G�h'���taPcaف{��L@*�!:)�"�F���o��g�� -!�Wa�l'}Z�I%܃+�!ҌB���&� O�F�T�����V��J%Xܵ�����.e��E6��8O�=5w\��Wo�]�l?4���a{7��-C������=��
+���^���T+���V8��r�j
����,��(��lzW?LϲڋҎ��X�ڕ{��ը��t�k�@�
T���t�����
\����4�����<�&t��g:�o]�Z������-����+��|�����s����ϟ���w����0���	cg�]���8�>
b��w?hQ��	ޖ����~��x{?�|�ٽ8���m��Z��	��ˋ���a�V}?8�v��<[���pIɿL��� ��o@s�"?N�3�K�&r��l������0�=y�{�J0��"|^���3֖�����[�?J�q	;�`/<�&�����m�(�z>�=�Þ߉��/���*�
+��*�����Ԁ��Jb�e$IP�Q��k��UZ�|��z����4E��|�E�Ƀ]
+endstream
+endobj
+4484 0 obj
+<<
+/Type /Page
+/Contents 4485 0 R
+/Resources 4483 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4365 0 R
+/Annots [ 4461 0 R 4462 0 R 4463 0 R 4464 0 R 4475 0 R 4476 0 R 4477 0 R 4478 0 R 4479 0 R 4480 0 R 4481 0 R 4482 0 R ]
+>>
+endobj
+4461 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.423 759.962 163.303 768.446]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4462 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [310.03 759.962 344.911 768.446]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4463 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.92 748.007 201.8 756.491]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4464 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [252.636 747.926 275.063 756.697]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+4475 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 650.89 148.111 659.455]
+/A << /S /GoTo /D (_element_8cpp_source_l00019) >>
+>>
+endobj
+4476 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 649.187 224.359 659.455]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4477 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.97 505.127 217.129 512.34]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4478 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 481.217 166.812 488.43]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4479 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 283.776 148.111 292.34]
+/A << /S /GoTo /D (_element_8cpp_source_l00086) >>
+>>
+endobj
+4480 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 282.072 224.359 292.34]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4481 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.97 187.1 217.129 194.313]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4482 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 163.19 249.911 170.403]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4486 0 obj
+<<
+/D [4484 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+650 0 obj
+<<
+/D [4484 0 R /XYZ 70.866 634.943 null]
+>>
+endobj
+4434 0 obj
+<<
+/D [4484 0 R /XYZ 70.866 590.118 null]
+>>
+endobj
+654 0 obj
+<<
+/D [4484 0 R /XYZ 70.866 562.922 null]
+>>
+endobj
+4487 0 obj
+<<
+/D [4484 0 R /XYZ 70.866 431.611 null]
+>>
+endobj
+4433 0 obj
+<<
+/D [4484 0 R /XYZ 70.866 272.09 null]
+>>
+endobj
+658 0 obj
+<<
+/D [4484 0 R /XYZ 70.866 244.895 null]
+>>
+endobj
+4488 0 obj
+<<
+/D [4484 0 R /XYZ 70.866 125.539 null]
+>>
+endobj
+4483 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F67 2922 0 R /F99 3885 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F81 3708 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4506 0 obj
+<<
+/Length 1315      
+/Filter /FlateDecode
+>>
+stream
+xڽX[s�F~ׯ��T�e٫��C��q�3Ml���A+�)����e�ȵ��A,{����������������D���[�<����� x��w�K$�3"���՟���TouV٥wiT���Z���u��XO�=JC�D�j=�������~�"��֜�H��������Q���X��z��2j��������+"�ܚ�����8E\p�ѵ��EV�n
��]�aG��g�D�2+}��
+�����$�ta��^�M����%ͤe�t�	Z]��+�$K�$ϬD�2�&�v��k���ˉw[���[�WV��M����Ż�@�����#؛A�$->P���,��qTV_1���,��@J��Ɇ��V�Vz�K�J۝Buv��R4��uDGL�fCu��,��錃�� �[4�>�p����1H1w�N�:b�6� ��2�pк�+���$�:jRe�� �h��C��~b��t�`9�����@�+��$"��4=���Ϥ���F��Unѫ��
+�㰭c+�[��>���)a���[��4`����_lgk_��>���μ8��dk�ԕN�5%��)&P�L9GcC7�.X��n��?n�x�갎U8�đ��Yn\~̐|�<��H�0i�@!c�P���4%ԏ
+���� ���2Fx�@r����@����XG�0g��P���C������YE�B B��r�S4��
�+�Z�=�+���}��0������㩷�\��[�ؒ[�K���z��O�TP!�_��
�r�B�&
�:��?�;b���HSF?���o��6���18N�
�����O���(L�j9�?����5���B.����*��h7%;��jm�M�6hR3�
8�W7)0�]��8^s�>��c_|�:���}����7�����<��������З/W���`�k�9�
+x�;p85�t��MJ��O3`C�˧���G�����O+��J�D�2��Z�{��>,���k]��~z������~�E�@�[����.����ź�,�>Җaa~P�ΞKۨ�7V���OvW�o�ґ>�bf�`vya
+��CRT�(�+|c�3z���Nii�5`1��$�󭣱q4�]&��C3�.eN�S]�2�q;��Կr[��~�1l6�Ԅ`n�(��̓h>�j�k�ޙL��@,�����*u��Y�Q.�����j��!Z�OY�d������﷨t�8ݤ'�Fw�"*�{˃�ѭ/����'㎋niF�6
+�M�Y3m���a���������4�c
C��j.u��q�<��w���ڠ�|�\�."�
+endstream
+endobj
+4505 0 obj
+<<
+/Type /Page
+/Contents 4506 0 R
+/Resources 4504 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4365 0 R
+/Annots [ 4491 0 R 4492 0 R 4493 0 R 4494 0 R 4495 0 R 4496 0 R 4497 0 R 4498 0 R 4499 0 R 4500 0 R ]
+>>
+endobj
+4491 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 710.668 148.111 719.232]
+/A << /S /GoTo /D (_element_8cpp_source_l00079) >>
+>>
+endobj
+4492 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 708.964 224.359 719.232]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4493 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 417.916 153.096 426.481]
+/A << /S /GoTo /D (_element_8h_source_l00264) >>
+>>
+endobj
+4494 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 417.997 219.876 426.481]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+4495 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 224.975 148.111 233.54]
+/A << /S /GoTo /D (_element_8cpp_source_l00026) >>
+>>
+endobj
+4496 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 223.272 224.359 233.54]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4497 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 138.129 138.811 145.792]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+4498 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 126.174 195.504 133.837]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+4499 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [156.887 94.141 182.29 102.522]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+4500 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.571 82.083 231.326 90.567]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+4507 0 obj
+<<
+/D [4505 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4436 0 obj
+<<
+/D [4505 0 R /XYZ 70.866 698.982 null]
+>>
+endobj
+662 0 obj
+<<
+/D [4505 0 R /XYZ 70.866 671.787 null]
+>>
+endobj
+4508 0 obj
+<<
+/D [4505 0 R /XYZ 70.866 540.583 null]
+>>
+endobj
+4431 0 obj
+<<
+/D [4505 0 R /XYZ 70.866 409.747 null]
+>>
+endobj
+666 0 obj
+<<
+/D [4505 0 R /XYZ 70.866 382.936 null]
+>>
+endobj
+4443 0 obj
+<<
+/D [4505 0 R /XYZ 70.866 216.806 null]
+>>
+endobj
+670 0 obj
+<<
+/D [4505 0 R /XYZ 70.866 189.995 null]
+>>
+endobj
+4504 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F81 3708 0 R /F73 2949 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4524 0 obj
+<<
+/Length 1456      
+/Filter /FlateDecode
+>>
+stream
+x��Y�o�6~�_�G��)�lK����.u��`P,�*K�$7���Hږ�ƱU{$��}wǏw�,\�~��.�D2�H	���}c$�bE� �,
n�\Lng�&�1������'!��������h�&+�v�z6�:"�dcRJ$i̗��[�0�.��)<�+�A�⑁ȃ���Fع����\��"�q�x9�?Lh4N�d�]M׭g�d���������㍇?�AX� f
+�l�`u�0g�D�
+RB�I�d�� �R��6#Y��L��\H��v�����u�,t2�˳�Y����"�-��2+n�
f�p��W�����ه1�x���u�X�'��J��r!�Ԏ�M(?���
+��N�F�d�(agD{�0�>���l8��qq<��1�R��/`�y��,�]&���������]�?[\G�z�;�����<��!WI���7�{B6�����r]��3�<9�CB�	&��t'6��M��n�U�m
+���u�"(*!�G�}���Y��K�*�Zw��N�*s�Ĥu[b��y�"K��ʖ�\�~�-�W�����.S�.�Q�.������1-����*鹘�y8�y_Z<������6D�uwOր����y�bĐ��c%��B��Ϙc�#ք�2�T��1!$�{�sC.�]m�*t�BZ�s���,�I(�����L����En씁n
*&��!Hy���i�T�r����ֵ�:K_}'{�޺';XλNZ/�@��A��<���_��+�0~��!�Ӟ|Q���[K>��#8z��v�/y�۲?@I�nNЄ��,uG
+��T��.˛��3+�xX�����mB�XW5��66�^�8L�>�E�r<�M$�i��*#���ĵ^�Z�7���^��P��ء�ad����]`�䋩(��'��=L<ځ���=��p�Ͷ���Y�@J�|\������z��%�H�C,�c�^�cBX?��g���I�?���&��.2'�:�N��I�+��c�ѝF��EB�E!�H)~�{P@�<�����o��lX�8�������#
+�q�7&�ܙ��
+�j�^,F����]^B�c$�~���r��u�(���/C�������~I^���M�}���
�P�3�$a�P�)9gs9&pL��t�
���\ّP(��^4X!�_�ҳ��I����$=���;�Lq���>V�~�O�S=;dAd��0&�n����$�z?��hGV[�]����$�[�0��\���/�NR����'�A֣����pQ����941�v5y<D��#�Ħ��`M.h�pk��)���>��
�1f!����>@0��C�*��Ҫ�����'Ȯ�a��%,A%�oS�o�1q���o;�{k�*���}�s�9�c��_����e|��ws�Ɉ#!�t�����8qY��ia��X�>�l��
+endstream
+endobj
+4523 0 obj
+<<
+/Type /Page
+/Contents 4524 0 R
+/Resources 4522 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4365 0 R
+/Annots [ 4503 0 R 4512 0 R 4513 0 R 4514 0 R 4515 0 R 4516 0 R 4517 0 R 4518 0 R 4519 0 R 4520 0 R 4521 0 R ]
+>>
+endobj
+4503 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 742.947 219.534 751.328]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+4512 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 657.019 156.58 665.4]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+4513 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 622.133 224.324 630.617]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a742c093a9caba778c16592c424c4a169) >>
+>>
+endobj
+4514 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 597.232 153.096 605.797]
+/A << /S /GoTo /D (_element_8cpp_source_l00155) >>
+>>
+endobj
+4515 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 595.529 229.344 605.797]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4516 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 476.646 166.812 483.859]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4517 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 419.047 93.059 427.499]
+/A << /S /GoTo /D (todo__todo000004) >>
+>>
+endobj
+4518 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 249.087 148.111 257.652]
+/A << /S /GoTo /D (_element_8cpp_source_l00098) >>
+>>
+endobj
+4519 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 247.383 224.359 257.652]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4520 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 137.534 249.911 144.747]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4521 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 87.095 93.059 95.548]
+/A << /S /GoTo /D (todo__todo000003) >>
+>>
+endobj
+4525 0 obj
+<<
+/D [4523 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4526 0 obj
+<<
+/D [4523 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3035 0 obj
+<<
+/D [4523 0 R /XYZ 70.866 585.547 null]
+>>
+endobj
+674 0 obj
+<<
+/D [4523 0 R /XYZ 70.866 558.351 null]
+>>
+endobj
+4527 0 obj
+<<
+/D [4523 0 R /XYZ 70.866 386.387 null]
+>>
+endobj
+3034 0 obj
+<<
+/D [4523 0 R /XYZ 70.866 240.307 null]
+>>
+endobj
+678 0 obj
+<<
+/D [4523 0 R /XYZ 70.866 213.429 null]
+>>
+endobj
+4522 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F99 3885 0 R /F95 3709 0 R /F81 3708 0 R /F79 3573 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4541 0 obj
+<<
+/Length 1057      
+/Filter /FlateDecode
+>>
+stream
+x��X�r�6��+�$gJ���t�x��4�-��L�� ��D�$��ߋ%Rk���.��� q���="�.G��ѯb�N����I�U� �2�P4���@aFL�����ogg��z���m��gM�7zR�Z�����Qs,$KGH�;z?�=��I]�S
++�|1��B��]#�y��w����b6G��O#�C �	35�(�{J(V��菐�AVg��:�4h�g�^�<��9K0�u��+cPL�$�Јzގ!���)1J!%,1)Q3�$TGr�2R�����b.ة&��*P"�`���jUL�����T�|`08�C�wwW��m�F�p�X�ڙv�|V�'����Y����yӝ�ۦ�qcQZELe6�[�L�OvB�i9����<�q����)��<�C���)K18s���Y�OӞMK��4=��~����βZOy�UǨ}վfՋ]�e3��U/�xa�O��
+dx��U]{7n�1KD&�p��!e$��S�|���̻"�:�$�VT�f��5�Zg���M�'�^����c,wv/��e��oH�ǟ�����֏>�7�#to�H� X�[y�
�����q�\nA��o��$�Jm�0�
+rF	���tU�&��D��
+$q*	��n��PU�08>��8;롹��f��X
+�ũH̷
+.�*hߣ�D^�M�\T?����ue�:��m�������naI`&k���ln�oV�?�������*���p��=�ـ�L�~�Շ��#73Ex�.���|��8���e:�u�p�Z�PXy�"��y�/W�m��!���q���&�JXY���iY�.x�\5]�z�ެ����E�׬���Z(u��-��0�e^C���8��Pj�,�%���}����=&�m�
|�/<��z�S�����a�;��'nX8Y�d#n17<*�A�3:����8�m���iVϯ#48��v�殶as�m{�m���=@W�7�6}si?�׭�p��?���$��$�}��'�/ߥ.u��k��z
+]T�s���t�@��.�T���
+endstream
+endobj
+4540 0 obj
+<<
+/Type /Page
+/Contents 4541 0 R
+/Resources 4539 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4544 0 R
+/Annots [ 4531 0 R 4532 0 R 4533 0 R 4534 0 R 4535 0 R 4536 0 R ]
+>>
+endobj
+4531 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 621.846 148.111 630.411]
+/A << /S /GoTo /D (_element_8cpp_source_l00091) >>
+>>
+endobj
+4532 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 620.143 224.359 630.411]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4533 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 391.492 153.096 400.057]
+/A << /S /GoTo /D (_element_8cpp_source_l00120) >>
+>>
+endobj
+4534 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 389.789 229.344 400.057]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4535 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 161.138 153.096 169.703]
+/A << /S /GoTo /D (_element_8cpp_source_l00110) >>
+>>
+endobj
+4536 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 159.435 229.344 169.703]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4542 0 obj
+<<
+/D [4540 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4543 0 obj
+<<
+/D [4540 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4439 0 obj
+<<
+/D [4540 0 R /XYZ 70.866 610.161 null]
+>>
+endobj
+682 0 obj
+<<
+/D [4540 0 R /XYZ 70.866 582.966 null]
+>>
+endobj
+4437 0 obj
+<<
+/D [4540 0 R /XYZ 70.866 379.807 null]
+>>
+endobj
+686 0 obj
+<<
+/D [4540 0 R /XYZ 70.866 352.612 null]
+>>
+endobj
+4440 0 obj
+<<
+/D [4540 0 R /XYZ 70.866 149.453 null]
+>>
+endobj
+4539 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4556 0 obj
+<<
+/Length 1224      
+/Filter /FlateDecode
+>>
+stream
+x��WQo�6~�_�#H]��1�UU��\�D�]/��K.:�Z8`������f�Kۜڇ*ڀ�����>�:wu�f���W�A�D$C�,W��$
+CG�>	��̜kWD�����!#���g*���澌ܓ:ݬU�'}QWh;{��}�10�ۅ�"����g�7��`�¡�Ǒ�-�N 8nQ:W��3��4!':�I8aԛ3J�[t���M֪W�G*(�&��T�$��#Qg�G������қ��������M����b�`P�H"�™3Fb!L���� ��1��Uכ8U3"�Pԯ#���|ᮋJa�c�>���t�pgf�I����$e�5��3��B	��-CP�xsE�y5lVi_����a�mZ��R����Ź?^�Ͱ^����Ç�q
+�Ms�z��;�S�1[y��u;8�-v�N��l��욺S:� p�ya��T��
���)R�
+n:�)��*��2�l[%�"5�4����P0H�/�/g��P�AI���7m�M�����}����@0�վ���Ҫ���D�Ǐ��vv���s9r������ox�U��cbC��?[򹽳ľ<�9�ڂ�bR��֠�+.����Msʤ| ��q����=��eI[$�X�^F�uD��*������C�x����
+�K�uL��"�/��p�9>6ǒJp��p�w�+�~�"+8�3�ƭ�3y$8�������G(��g���{�r�����O����o���(�1ڟ�<|�䌆ҽ�/Z���s�~���,�$eܽ�z��L@����'N�uk���)xl�f�Pm6`S�C����%Mϱ��0)�2	�VŁ*�I��=}����X�x��m����|�"]M1]���&�v�F�j�S��\f�o�>7w�0����*,�3e퍷���k��;2N�?���x0`2c0|J����R�nT��u{}�b�1��U٧��d<r��HΆ��`�&��i"�:�
+��`��Ñ�u��h��b��h���́"����S⌕Mo��v�a��g���9��d�ٷ}�c,�	4}�c�F&PFdhurO����:�a��K��"�'\	_��}f���~u�5-[c�l�<v�-��~k�
+
+kZ�`�Afg�nP�(�1)�N�����-ޕ���D�
+�P��_�>~C��0��" ,$��	R!Tv/6�j�>�����Y��0�?��F	�
+endstream
+endobj
+4555 0 obj
+<<
+/Type /Page
+/Contents 4556 0 R
+/Resources 4554 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4544 0 R
+/Annots [ 4537 0 R 4538 0 R 4548 0 R 4549 0 R 4550 0 R 4551 0 R 4552 0 R 4553 0 R ]
+>>
+endobj
+4537 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 613.91 153.096 622.475]
+/A << /S /GoTo /D (_element_8cpp_source_l00125) >>
+>>
+endobj
+4538 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 612.206 229.344 622.475]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4548 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 411.027 153.096 419.592]
+/A << /S /GoTo /D (_element_8cpp_source_l00115) >>
+>>
+endobj
+4549 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 409.324 229.344 419.592]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4550 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [472.774 291.339 503.656 301.813]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+4551 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 209.929 153.096 218.494]
+/A << /S /GoTo /D (_element_8cpp_source_l00148) >>
+>>
+endobj
+4552 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 208.226 229.344 218.494]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4553 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.97 125.002 217.129 132.214]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4557 0 obj
+<<
+/D [4555 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+690 0 obj
+<<
+/D [4555 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4438 0 obj
+<<
+/D [4555 0 R /XYZ 70.866 606.003 null]
+>>
+endobj
+694 0 obj
+<<
+/D [4555 0 R /XYZ 70.866 579.221 null]
+>>
+endobj
+4442 0 obj
+<<
+/D [4555 0 R /XYZ 70.866 403.12 null]
+>>
+endobj
+698 0 obj
+<<
+/D [4555 0 R /XYZ 70.866 376.338 null]
+>>
+endobj
+4432 0 obj
+<<
+/D [4555 0 R /XYZ 70.866 202.022 null]
+>>
+endobj
+702 0 obj
+<<
+/D [4555 0 R /XYZ 70.866 175.24 null]
+>>
+endobj
+4554 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F67 2922 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4581 0 obj
+<<
+/Length 1572      
+/Filter /FlateDecode
+>>
+stream
+x��Y[S�F~��У4o��+�Ӈ6!
�ip�B3a�AYrdB}�^d,!l��N��|�~�#��u�����'�N��4J�d�d)����J)�$�̢�X#�������w����)�”�_���V+�zn�	���M95���Y�9CB1��pDjWGo&�/#�8"qZ#My4]�.?�h{gF,�ѝ;����0n���b�q��	Qa_�#$ՀA� 	�:M�|��e�W��i�B
j&(�2ݥ#�Zm4���H1!�0�4/�¹���
+�(���q�=�jf''u2&"^�M�0����ǁ"�#��z�m=�Ĉ�"��>���?Y3���k��3���t�'�պ���?g�1`K�ZsSW	��+�c#��H
+~���c|7���y9�3�A�H��	�qVgӘ:!$�_R�H�s�f�B���i���U!�@�Ƚ�"�lg#�8�Pi]���m0�,�(�L�P��B$X!vu�ο��"iv��n�1�a&�b�M�5�mBEl|��~|�ڿU�h–���M(��4��rck2@=���
+�T`���B�q��r�R�҄�nn�u�o�g/L�"��D#̅�}q��!�*/m�vB�	Pm��ͪ1�n�,�.$����6bL��rah�!�E^���uZ}�w�v]�Lw�	�m�X�bB�$�t��AŮ9�F�%GZ?�%�A�����*��~`����x��Q�0	� -�\UU��%��6���vk���s�	�+�!(r�?WMm�ʉKŖ8j��?�/�N:8i�<��I�14k���ɨ�c2_o@oL�8+�S>�]���¿�<���PaR��6hv���N�����ؑs�z��".���l����&G�F��#cP�6�����OU[�X����P	A�@�y�ֻ�(��u��j�t{�jZ-�����n
�
+dBTc$K�����"��u��G�)"���4�¶�v��"�#����X�ab;Xl��_S���SK�m��g����yԸ]�ÜH�!�z�.���q�b�2"�BM�`�IB�هi?� �9����k�@��0�T=2��5K��C�v�dz&�쿧M�v�0�lӦ�y���*�s@�cg�v��u2�prr0}��Չ�ū!��T�B�=%��Rŗ�yݬ���E�0�[�z���2
�_�O��Q�l�ko��]���TW��S�k�ZV��}��mG[4��;��3e��j������������>_�S�`�x�
+��8�^������Ž_͛!]�T��{�*��ji�yV���~Ֆȕ���w��{�^&��}�Da�T_���I��b|H�� ������n����C��D�8m���|ʹ��q�P:7�b�s�E�Ж��M�}_�O��ېW��˃��z�_�k�+&��	�rpW���@q�~s��{�����@�mf�:j�$(�xڞ<�߷��5��3&��hF���;4XO=`�dLh��P�g[�;��a�ˤ��}o����o�p����=(�G�y����Q��3�Ώ'( ��K���C"�$ߚ8�p�c�@i��q�{]������)�*�hϕ
+endstream
+endobj
+4580 0 obj
+<<
+/Type /Page
+/Contents 4581 0 R
+/Resources 4579 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4544 0 R
+/Annots [ 4561 0 R 4562 0 R 4563 0 R 4564 0 R 4565 0 R 4566 0 R 4567 0 R 4568 0 R 4569 0 R 4570 0 R 4571 0 R 4572 0 R 4573 0 R 4574 0 R 4575 0 R 4576 0 R 4577 0 R 4578 0 R ]
+>>
+endobj
+4561 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 572.804 148.111 581.369]
+/A << /S /GoTo /D (_element_8cpp_source_l00038) >>
+>>
+endobj
+4562 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 571.101 224.359 581.369]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4563 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 297.351 153.096 305.915]
+/A << /S /GoTo /D (_element_8cpp_source_l00103) >>
+>>
+endobj
+4564 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 295.647 229.344 305.915]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4565 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 215.511 119.683 222.071]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4566 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [95.185 183.631 120.588 192.012]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+4567 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [169.727 169.788 197.631 180.263]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+4568 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [200.624 171.573 234.832 180.057]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+4569 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.825 171.573 281.223 180.057]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+4570 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [299.171 171.573 335.549 180.057]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+4571 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.429 101.69 205.226 110.461]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_add97197a51b3c44f9eb873a23329983e) >>
+>>
+endobj
+4572 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.745 99.987 261.069 110.461]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_aebb0f522c4ced342fbd33cb377eeb4b3) >>
+>>
+endobj
+4573 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [263.588 99.879 360.231 110.461]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) >>
+>>
+endobj
+4574 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [362.751 99.879 466.369 110.461]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) >>
+>>
+endobj
+4575 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [468.889 99.987 581.528 110.461]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aec2434faa57778dbc8783ec77a86d627) >>
+>>
+endobj
+4576 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [87.318 88.031 190.767 98.506]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a37198446b18018989419984f3ec82c68) >>
+>>
+endobj
+4577 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 69.686 153.096 78.251]
+/A << /S /GoTo /D (_element_8cpp_source_l00130) >>
+>>
+endobj
+4578 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 67.983 229.344 78.251]
+/A << /S /GoTo /D (_element_8cpp_source) >>
+>>
+endobj
+4582 0 obj
+<<
+/D [4580 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4583 0 obj
+<<
+/D [4580 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4584 0 obj
+<<
+/D [4580 0 R /XYZ 70.866 707.324 null]
+>>
+endobj
+4435 0 obj
+<<
+/D [4580 0 R /XYZ 70.866 561.119 null]
+>>
+endobj
+706 0 obj
+<<
+/D [4580 0 R /XYZ 70.866 533.924 null]
+>>
+endobj
+4585 0 obj
+<<
+/D [4580 0 R /XYZ 70.866 414.568 null]
+>>
+endobj
+4441 0 obj
+<<
+/D [4580 0 R /XYZ 70.866 290.437 null]
+>>
+endobj
+710 0 obj
+<<
+/D [4580 0 R /XYZ 70.866 263.763 null]
+>>
+endobj
+4579 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F73 2949 0 R /F33 2286 0 R /F54 2381 0 R /F95 3709 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4612 0 obj
+<<
+/Length 796       
+/Filter /FlateDecode
+>>
+stream
+x��VMO�0��W��Hĵ��NV�JAEUa9Q�Lbv#�c�
+���ʒ�P�Sv�3�/���F`8�>ͽ_�$0e���5�&��F�a0����Pp1?�a�p��L�s)�.#��{MvSɺ}��:�۟{�<�R�k�$�I����/���@��	�m2+Si��(����C[41���l�S�B�r!F�Dz����'z�ӭ�G �����!v�Y���,ʼ���ƀÔ#�j�R��ڮ�g�J�l&OG�$�僐'��	R׷E��	B����R�2�\�����(e�{x֎v�|99�&�]��/���UZ#�_����C��%�;�>Q9Y#�~?�6�9��,�Д��acHI�����J�0��o��3�
�
I���;:����"[�U%��h�u@�/ծ�t�WA��{�^IQw��X�ml�u/�ή�څ�\m]�D(��엲hm�l2Q����ឫ��F��P�Wv��S}�UO}e�7ȯ��a�qc�'5��0=n�^��Y�|���� ц�.j4PO�[>��l��- N�S̓�����[.��-V����!�m��d�m��h��7���V�\Ki_�`XoV��(�׃�O�Ʈ������t��F2�.FFc#�3��"��R��V�#+[�ݴ]q+/+Uy7�]y�M�U'*PJ;��5�������U�h��j�Ou8��f8'�L�*RIM{ʍ����O���pע�/����]S�f��
+^{�z;�ց����/7��F�`�Y�}�i��7��)H#ȁ�e+z�&h}����������c���Ӥ*
+endstream
+endobj
+4611 0 obj
+<<
+/Type /Page
+/Contents 4612 0 R
+/Resources 4610 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4544 0 R
+/Annots [ 4594 0 R 4595 0 R 4596 0 R 4597 0 R 4598 0 R 4599 0 R 4600 0 R 4601 0 R 4602 0 R 4603 0 R ]
+>>
+endobj
+4594 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [255.197 656.171 290.664 663.384]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4595 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 594.515 148.111 603.08]
+/A << /S /GoTo /D (_element_8h_source_l00032) >>
+>>
+endobj
+4596 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 594.596 214.891 603.08]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+4597 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 448.139 148.111 456.703]
+/A << /S /GoTo /D (_element_8h_source_l00067) >>
+>>
+endobj
+4598 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 448.219 214.891 456.703]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+4599 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [267.808 326.582 290.234 335.353]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+4600 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 301.762 148.111 310.327]
+/A << /S /GoTo /D (_element_8h_source_l00083) >>
+>>
+endobj
+4601 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 301.843 214.891 310.327]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+4602 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 155.385 148.111 163.95]
+/A << /S /GoTo /D (_element_8h_source_l00060) >>
+>>
+endobj
+4603 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 155.466 214.891 163.95]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+4613 0 obj
+<<
+/D [4611 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+714 0 obj
+<<
+/D [4611 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4444 0 obj
+<<
+/D [4611 0 R /XYZ 70.866 741.162 null]
+>>
+endobj
+718 0 obj
+<<
+/D [4611 0 R /XYZ 70.866 713.966 null]
+>>
+endobj
+4428 0 obj
+<<
+/D [4611 0 R /XYZ 70.866 582.83 null]
+>>
+endobj
+722 0 obj
+<<
+/D [4611 0 R /XYZ 70.866 555.634 null]
+>>
+endobj
+4471 0 obj
+<<
+/D [4611 0 R /XYZ 70.866 436.453 null]
+>>
+endobj
+726 0 obj
+<<
+/D [4611 0 R /XYZ 70.866 409.258 null]
+>>
+endobj
+4427 0 obj
+<<
+/D [4611 0 R /XYZ 70.866 290.077 null]
+>>
+endobj
+730 0 obj
+<<
+/D [4611 0 R /XYZ 70.866 262.881 null]
+>>
+endobj
+4429 0 obj
+<<
+/D [4611 0 R /XYZ 70.866 143.7 null]
+>>
+endobj
+4610 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4636 0 obj
+<<
+/Length 941       
+/Filter /FlateDecode
+>>
+stream
+x��V[o�6~ׯ��)�$���M��h���KZ�D[dɑhx��#EҖ'��۞DQ:��|�� p�^�4	L9'`���s �rV�(�E,����/�˷���F٫�����V�#�B��&�ї�5��@&��4����oW�C��%�h.I`S�o��/��5@��	8neZ5�j�1�5@_
�c�F1@
+Y����mT[��G���%�@�T l�X}7���X.{�U�&Zp-:�`��j"d��S�����9�UZ���P,����{�g�=�K��Z�����u�Ԭݭ��N��̬#�c��6�,<I*�Tx��9�Ǖ���i$���0>t2o��RU�Lu���8�:i�@D�Ua�BQ\��y����:��þ�+%]P���s"�w�Ь�8��^��H�I��ނ�i%,�ze���Hg��y�uH�&BY�2�Qx(��f8T�…O(	�ῑ&�E���U#�wZ�s.��Fo�
����)��*I��k
+'�"⮈v:z��.!6.��`��NuV@�#�� ط�WO0��!K���=i��!�
+�~<�7ƚ��cV��h'_��@����v'\zjh�U�dg_�����t��p�.]���������
+��1���Q/���6��;�N�>�!�$��)]����yi"��@CJ������v��D?i9;ͭ�wm�յ�4��z��3s}��13��2Wn��*/�q;L��A߫L+�(t�J��n^_/���o���C�����ֿ����(����I=�����V�{�q7`�%�{���?K�Y�V>����F,;9}��Cb�����ك����lt6uv2��qݵ�Y^�[�cX�����^İY�ԁ�9��"�x�w��!�œ�;g�U!�d`�^�V�۝�vn�g"ݞ�Ɔ�7{c��h��r���+��S^�����Mk2�����PN�U��_�56�
+endstream
+endobj
+4635 0 obj
+<<
+/Type /Page
+/Contents 4636 0 R
+/Resources 4634 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4544 0 R
+/Annots [ 4604 0 R 4605 0 R 4606 0 R 4607 0 R 4608 0 R 4609 0 R 4618 0 R 4619 0 R 4620 0 R 4621 0 R 4622 0 R 4623 0 R 4624 0 R ]
+>>
+endobj
+4604 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [331.257 652.801 353.684 661.572]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+4605 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 618.018 148.111 626.583]
+/A << /S /GoTo /D (_element_8h_source_l00076) >>
+>>
+endobj
+4606 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 618.099 214.891 626.583]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+4607 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [148.187 521.343 183.654 528.556]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4608 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 471.642 148.111 480.206]
+/A << /S /GoTo /D (_element_8h_source_l00039) >>
+>>
+endobj
+4609 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 471.722 214.891 480.206]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+4618 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [148.187 374.966 183.654 382.179]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4619 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 325.265 148.111 333.83]
+/A << /S /GoTo /D (_element_8h_source_l00046) >>
+>>
+endobj
+4620 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 325.346 214.891 333.83]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+4621 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 178.888 148.111 187.453]
+/A << /S /GoTo /D (_element_8h_source_l00053) >>
+>>
+endobj
+4622 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 178.969 214.891 187.453]
+/A << /S /GoTo /D (_element_8h_source) >>
+>>
+endobj
+4623 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 121.358 174.506 129.842]
+/A << /S /GoTo /D (_element_8h) >>
+>>
+endobj
+4624 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 106.622 183.974 116.891]
+/A << /S /GoTo /D (_element_8cpp) >>
+>>
+endobj
+4637 0 obj
+<<
+/D [4635 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+734 0 obj
+<<
+/D [4635 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4425 0 obj
+<<
+/D [4635 0 R /XYZ 70.866 606.333 null]
+>>
+endobj
+738 0 obj
+<<
+/D [4635 0 R /XYZ 70.866 579.137 null]
+>>
+endobj
+4445 0 obj
+<<
+/D [4635 0 R /XYZ 70.866 459.956 null]
+>>
+endobj
+742 0 obj
+<<
+/D [4635 0 R /XYZ 70.866 432.761 null]
+>>
+endobj
+4426 0 obj
+<<
+/D [4635 0 R /XYZ 70.866 313.58 null]
+>>
+endobj
+746 0 obj
+<<
+/D [4635 0 R /XYZ 70.866 286.384 null]
+>>
+endobj
+3190 0 obj
+<<
+/D [4635 0 R /XYZ 70.866 99.648 null]
+>>
+endobj
+4634 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F67 2922 0 R /F79 3573 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4656 0 obj
+<<
+/Length 1325      
+/Filter /FlateDecode
+>>
+stream
+x��XKo�6��W(PHؚ�C�#(zh^�E�����H�-T�SK�4�����v����!�,�83�|3�!����f?/f'�n`(�<f-,���,?��#�"�nl�:w�O�
+|��Oϲ�(�9��|Wk��Q�nr);�X����i�P׊׳�;l%�멖\[.g��REf]���ၙ���޵���PXߙ��}���_NO/r�`�Z++;�؊<�����R���
+2��[�%",P����2q��uS�j��J�w�`��(�m$N.�k���zZ)��L)�.��J����#	�����͏k��wC#p�Wk��X��V-�����c����>r	��(�)�߫{�e��
+�_��^l��e�ǒE�����]������1��^�o1��G++|i�B_ZA)�!xF�Iu���
+�������X�j�+�fςc�R��驲ȵ�|�@��PnGY%^��O�ӼL�,�WrT$��SZ�z
+��H�~P�j�����'q9?o�M}�bD]b$:�y�|��K�������6i,������#�I/��T�W[���;�(��v��]���z"��p�����oA[ߎS<�]���{TM�)�H!2����;��i�I����i,�����J�N�����"����DuCD��<��19$o�o
+]�#gZ�qʯFj�~�9t!���M�7n�e����y��!��]��&di˹����@���n������c��+��JV�*	v�@��-���t�JK���Tc4R��bq m^Y�Bf�i4��@M<l0D�����,�f�M̀81\1��!�}��S��ʍ�n��V�\��(gPKz�ڜ�.tN&��(˞
������
+��8���&�m�Nz��;��73�Ez�L��^�	�����\7{a���G�ސ	xL�I�F��4�}C����	��TTpah[
ӌ�����2�%}�w�in��r��	��+��AB�V������L���2ʓh�t
+�h�zZ���29�d�Iu�RO��.WMY�����jL듊��T��8?>�fUA�G�vN_pz��KH=h}����]e�PB��*�>,�4�_�wl
+
�vF�IV�h�#��kzl/WQ�;u�Q�uS�Jc	��k�r��������al)A,Ԑ/��ۛd�c?�A@=D�f�;[�Xf�_&����`��t���E�f��]�i�Pe9u}��j+���Y����	�,���/�oJ#o�P����_S'��#������QQ�s���$j�#�i�al����KȞM�۟�L-I�����dH@
+endstream
+endobj
+4655 0 obj
+<<
+/Type /Page
+/Contents 4656 0 R
+/Resources 4654 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4544 0 R
+/Annots [ 4625 0 R 4626 0 R 4627 0 R 4628 0 R 4629 0 R 4630 0 R 4631 0 R 4632 0 R 4633 0 R 4642 0 R 4643 0 R 4644 0 R 4645 0 R 4646 0 R 4647 0 R 4648 0 R 4649 0 R 4650 0 R 4651 0 R 4652 0 R 4653 0 R ]
+>>
+endobj
+4625 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 732.743 92.296 741.514]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+4626 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [92.796 732.823 118.119 741.307]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+4627 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 667.458 120.099 675.942]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a21bc467860d215a091d9f0d09b7223a1) >>
+>>
+endobj
+4628 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 641.53 120.099 650.014]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a30718fd8e647815e78b1a0b63d878fd8) >>
+>>
+endobj
+4629 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 615.602 120.099 624.086]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a8bb7c616cb01a03df35a73a4dd5edd34) >>
+>>
+endobj
+4630 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [294.251 615.602 326.639 624.086]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ad670fac86700dfca33f3fe79cc27602a) >>
+>>
+endobj
+4631 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.618 601.579 183.592 609.672]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4632 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 589.674 127.848 598.158]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ac25e85a1e15c6d2eb25565d6a362d867) >>
+>>
+endobj
+4633 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 563.745 171.655 572.23]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_aa02862d7713c094d7ae5819eab23765f) >>
+>>
+endobj
+4642 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [197.891 537.817 230.279 546.301]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ad670fac86700dfca33f3fe79cc27602a) >>
+>>
+endobj
+4643 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.737 511.889 129.89 520.373]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ac84d64e172ea5cbecf0e441c787872e0) >>
+>>
+endobj
+4644 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.737 485.961 129.89 494.445]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a2809b4d4200d001b62a5d3bd5d1aa04c) >>
+>>
+endobj
+4645 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 460.033 127.442 468.212]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a20887b8fedec14630adfda595d117a41) >>
+>>
+endobj
+4646 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 434.104 127.442 442.284]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a18e004d4a882a61c94a902a3330014e2) >>
+>>
+endobj
+4647 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 364.017 199.944 372.788]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+4648 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [200.444 364.098 225.767 372.582]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+4649 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 347.664 148.111 356.229]
+/A << /S /GoTo /D (_enum_8h_source_l00015) >>
+>>
+endobj
+4650 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 347.745 205.333 356.229]
+/A << /S /GoTo /D (_enum_8h_source) >>
+>>
+endobj
+4651 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 205.042 143.126 213.423]
+/A << /S /GoTo /D (_enum_8cpp_source_l00004) >>
+>>
+endobj
+4652 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 203.155 209.816 213.423]
+/A << /S /GoTo /D (_enum_8cpp_source) >>
+>>
+endobj
+4653 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 84.818 93.059 93.271]
+/A << /S /GoTo /D (todo__todo000005) >>
+>>
+endobj
+4657 0 obj
+<<
+/D [4655 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+750 0 obj
+<<
+/D [4655 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4658 0 obj
+<<
+/D [4655 0 R /XYZ 70.866 698.858 null]
+>>
+endobj
+754 0 obj
+<<
+/D [4655 0 R /XYZ 70.866 405.23 null]
+>>
+endobj
+758 0 obj
+<<
+/D [4655 0 R /XYZ 70.866 334.346 null]
+>>
+endobj
+4659 0 obj
+<<
+/D [4655 0 R /XYZ 70.866 304.753 null]
+>>
+endobj
+762 0 obj
+<<
+/D [4655 0 R /XYZ 70.866 278.483 null]
+>>
+endobj
+3037 0 obj
+<<
+/D [4655 0 R /XYZ 70.866 201.641 null]
+>>
+endobj
+766 0 obj
+<<
+/D [4655 0 R /XYZ 70.866 175.371 null]
+>>
+endobj
+4654 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R /F99 3885 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4682 0 obj
+<<
+/Length 1215      
+/Filter /FlateDecode
+>>
+stream
+x��X�n�6}�W�Qj.車��v/A-�f��$y�*L"��SK����;)ɴe����D�<:3$Ϝ3A���ɏ�ɫ�� �3�8��#M�Q
+�aE��]'�tʴI>����杖�d��������W��}bW�*lz;����Xj�Z ���ɻ���	���>��,L�b1��%�>���A����������'$��`&ݭ��)=�"E�aI��L$�*_�ƮRJ�������s���*�*��%�SIa@4DŽ���n�(�-a�m��1@�Xs�w��vφ��d����N��%���)�I>_ۑ�\���Ss�(���3:��G���ݒ�>�$Y��eU6e>/�ʛr9�1�;�j�e�S9q�U/��ݣ��2��,�[�����^�&��7�:/+:��z]]N�ua��
+���u;?��.�����l	AS%�1�ha�y:����H?Կ��8ӄ�
 �S�k���� h�!h꣦p�FJ۩�z��S]�VAv��hJ)Rx�n�..�fUV���Dj̍�Jyv�n�����l��ܾ�7�(A�I/�ߏ�W��ة3F���ad%-Z�E�˲��HVg%U7P��)��28g��Ͳ��e�nWݒ�y�ڷr
+��>]o/�	�D�\6������7�2�cO�Ȏ��H�`O��6$�}�Z�> ����0�
Ib@Ͽ�I�0��q:-�	E9��GOL{�Fh�>ǃ8$(��kۥ 8J�E��0<�D�A�٩h-�0�Df���qN��r�TQ�
��ԉ�G9e~��4/��S�H2ĪmP�΀#Q�hwP�����a����<���w���u�$D�0
+9ols>\i��6��p2������R�\��8�5�3��}��PG���4j�#���ѹAyn:�eB����|��Ύ�nX��1�O��5�q߷� IS�����rm��CJ���
+��I�3����O6l��uU+z�,@$��W�ѹ�k��i�-\�^�0�.��Ɍ�����&�{���L�������,���"q��I��N�{юt}����Vp?���#�\�������tt�� a�W�Y��x���[f�Xv	�(�ۯS���xH�7�s;4t�;]�É��HB2��p��[���uG��p����u�T0O(� V��[eWyc�h��Ǟ/_\_;�l��7��}
+endstream
+endobj
+4681 0 obj
+<<
+/Type /Page
+/Contents 4682 0 R
+/Resources 4680 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4686 0 R
+/Annots [ 4672 0 R 4673 0 R 4674 0 R 4675 0 R 4676 0 R 4677 0 R 4678 0 R 4679 0 R ]
+>>
+endobj
+4672 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 695.819 143.126 704.384]
+/A << /S /GoTo /D (_enum_8cpp_source_l00008) >>
+>>
+endobj
+4673 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 694.115 209.816 704.384]
+/A << /S /GoTo /D (_enum_8cpp_source) >>
+>>
+endobj
+4674 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 455.058 148.111 463.439]
+/A << /S /GoTo /D (_enum_8cpp_source_l00012) >>
+>>
+endobj
+4675 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 453.17 214.801 463.439]
+/A << /S /GoTo /D (_enum_8cpp_source) >>
+>>
+endobj
+4676 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 326.944 148.111 335.325]
+/A << /S /GoTo /D (_enum_8cpp_source_l00017) >>
+>>
+endobj
+4677 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 325.057 214.801 335.325]
+/A << /S /GoTo /D (_enum_8cpp_source) >>
+>>
+endobj
+4678 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 90.932 148.111 99.497]
+/A << /S /GoTo /D (_enum_8cpp_source_l00026) >>
+>>
+endobj
+4679 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 89.229 214.801 99.497]
+/A << /S /GoTo /D (_enum_8cpp_source) >>
+>>
+endobj
+4683 0 obj
+<<
+/D [4681 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4684 0 obj
+<<
+/D [4681 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4660 0 obj
+<<
+/D [4681 0 R /XYZ 70.866 684.134 null]
+>>
+endobj
+770 0 obj
+<<
+/D [4681 0 R /XYZ 70.866 656.938 null]
+>>
+endobj
+4685 0 obj
+<<
+/D [4681 0 R /XYZ 70.866 539.393 null]
+>>
+endobj
+4662 0 obj
+<<
+/D [4681 0 R /XYZ 70.866 446.763 null]
+>>
+endobj
+774 0 obj
+<<
+/D [4681 0 R /XYZ 70.866 419.958 null]
+>>
+endobj
+778 0 obj
+<<
+/D [4681 0 R /XYZ 70.866 311.203 null]
+>>
+endobj
+4661 0 obj
+<<
+/D [4681 0 R /XYZ 70.866 273.527 null]
+>>
+endobj
+782 0 obj
+<<
+/D [4681 0 R /XYZ 70.866 246.723 null]
+>>
+endobj
+4664 0 obj
+<<
+/D [4681 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+4680 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F99 3885 0 R /F95 3709 0 R /F79 3573 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4699 0 obj
+<<
+/Length 1164      
+/Filter /FlateDecode
+>>
+stream
+x��XKs�6��W�HNJo�:�q<�����8��JAg$�%����]<(��cEv�<������o0AD�������0��\)�&s�	6J!�3�(���u�Dz3y����h����jڶiƴI���fm�nڕu�dG��?#
+�ѭJc�a���
A3���s���	ɱ��8�}D��L��	�1�,�(!$)��M�L�?I��:`g��i�kB�e�к�蚞�� %ŎT�2�/^���4Sp��_�~�/��z<vgއew��������.���1eL�o���2�4)%�4���)��mZ;��6��EW7�w=�bY�����Vq[c���I��ǻ���~�f���4�u��ve]���s ��t��q	�Rzh�/Z�>8U;��{�a2j0q���-�+��U��o�q���A�[��V����]��UY��q�YD2��k/������rzWG4\T.ƛ5.no�t%8�d@zp�������ξ����;7CF
+uF)���m7�ۮ)�ED%wΓs#{T����}3X嬗:�TK�bnŢa~̨4$� O8��j� �����_������a����;�p�� �~ʒɲ���MU�y
qu���f�zTJ�l�ܕ�2���y�.~���h��D����Q���X�m �6 ��;��H�b$/�{�l��S�^�sʞ��L3lr����X��
	`4��t�����·�K&�1	����ԫzQ٦�|��(�׀��t����CW�:B �/�Tu�jsW:�M5��o�N��C;��-��q�‡r
[����P�
+&���r��!������9/�������d�L���(M�'7K�?��r�����{���\AQ<&p��!840��a�~q��辢<A}B1������G	(`���G��=��E�%\8pp�&;��A:�M�<����T0����P�_Ǟ�u<=�}9GTI�My����7��v�s%����y��s�T0��9O�9�p�c�`Tr=[�̣����q^>:�}�K�����i�^#X�_]�����-��6:opY=���z5��9��p��I�.������e��2�}�ȳMMJL8=�B�_�\�pR��.���R=M*�L����������������Ǎ=��e�Z
+endstream
+endobj
+4698 0 obj
+<<
+/Type /Page
+/Contents 4699 0 R
+/Resources 4697 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4686 0 R
+/Annots [ 4691 0 R 4692 0 R 4693 0 R 4694 0 R 4695 0 R 4696 0 R ]
+>>
+endobj
+4691 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 620.103 148.111 628.668]
+/A << /S /GoTo /D (_enum_8cpp_source_l00031) >>
+>>
+endobj
+4692 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 618.399 214.801 628.668]
+/A << /S /GoTo /D (_enum_8cpp_source) >>
+>>
+endobj
+4693 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 279.594 148.111 288.158]
+/A << /S /GoTo /D (_enum_8cpp_source_l00043) >>
+>>
+endobj
+4694 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 277.89 214.801 288.158]
+/A << /S /GoTo /D (_enum_8cpp_source) >>
+>>
+endobj
+4695 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 90.663 148.111 99.044]
+/A << /S /GoTo /D (_enum_8cpp_source_l00021) >>
+>>
+endobj
+4696 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 88.775 214.801 99.044]
+/A << /S /GoTo /D (_enum_8cpp_source) >>
+>>
+endobj
+4700 0 obj
+<<
+/D [4698 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+786 0 obj
+<<
+/D [4698 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4665 0 obj
+<<
+/D [4698 0 R /XYZ 70.866 608.418 null]
+>>
+endobj
+790 0 obj
+<<
+/D [4698 0 R /XYZ 70.866 581.222 null]
+>>
+endobj
+4701 0 obj
+<<
+/D [4698 0 R /XYZ 70.866 461.866 null]
+>>
+endobj
+4702 0 obj
+<<
+/D [4698 0 R /XYZ 70.866 398.167 null]
+>>
+endobj
+4663 0 obj
+<<
+/D [4698 0 R /XYZ 70.866 271.936 null]
+>>
+endobj
+794 0 obj
+<<
+/D [4698 0 R /XYZ 70.866 245.181 null]
+>>
+endobj
+4666 0 obj
+<<
+/D [4698 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+4697 0 obj
+<<
+/Font << /F48 2333 0 R /F99 3885 0 R /F54 2381 0 R /F33 2286 0 R /F67 2922 0 R /F95 3709 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4715 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/FormType 1
+/PTEX.FileName (./class_m_q_t_t_1_1_exception.pdf)
+/PTEX.PageNumber 1
+/PTEX.InfoDict 4716 0 R
+/BBox [0 0 500 337]
+/Resources <<
+/ProcSet [ /PDF /Text ]
+/ExtGState <<
+/R7 4717 0 R
+>>/Font << /R8 4718 0 R>>
+>>
+/Length 265
+/Filter /FlateDecode
+>>
+stream
+x����R�0��}�-�bYݲKf2T��)L�A	q���rb��
+��+��I!�3�m��׀�30n�jH�x���D�L��Ǵ�K�B�H��Ƒ6Aa�p��L��?����i�KpL�Ĉߢ��=K���q1��ŝۥ`6�HƊ�������a�J���*3�������.��V]w��x5+C�]9��HkX��©}+f_�IG"Y��'����v����:%�⥻���mz3�|p���4i��V[��$0�����,��Wl�
+endstream
+endobj
+4716 0 obj
+<<
+/Producer (MiKTeX GPL Ghostscript 9.25)
+/CreationDate (D:20220227230617+01'00')
+/ModDate (D:20220227230617+01'00')
+/Title (ClassName)
+/Creator (Doxygen)
+/Author ()
+>>
+endobj
+4717 0 obj
+<<
+/Type /ExtGState
+/OPM 1
+>>
+endobj
+4718 0 obj
+<<
+/BaseFont /TQRAUA+Times-Roman
+/FontDescriptor 4719 0 R
+/Type /Font
+/FirstChar 58
+/LastChar 120
+/Widths [ 278 0 0 0 0 0 0 0 0 0 0 611 0 0 0 0 0 0 0 889 0 0 0 722 0 0 611 0 0 0 0 0 0 0 0 0 0 500 0 0 0 444 500 444 0 0 0 278 0 0 0 778 500 500 500 0 333 389 278 500 0 0 500]
+/Encoding /WinAnsiEncoding
+/Subtype /Type1
+>>
+endobj
+4719 0 obj
+<<
+/Type /FontDescriptor
+/FontName /TQRAUA+Times-Roman
+/FontBBox [ 0 -217 863 683]
+/Flags 32
+/Ascent 683
+/CapHeight 676
+/Descent -217
+/ItalicAngle 0
+/StemV 129
+/MissingWidth 250
+/XHeight 460
+/CharSet (/E/M/Q/T/c/colon/d/e/i/m/n/o/p/r/s/t/u/underscore/x)
+/FontFile3 4720 0 R
+>>
+endobj
+4720 0 obj
+<<
+/Filter /FlateDecode
+/Subtype /Type1C
+/Length 2445
+>>
+stream
+x��UytSUi�w�`��!R�w���[� ���0�X��ծ�m0�YڤM��.ܤ{K�.��KY��
+��:3
+*�S83���8����R���s�;�����~�oQ�!�H$
+KUiXï�9M�6��ȯ�!�*1"���?'YE%����0
+��QX��%S��{y�n����h�+͈�ץ%�~x��
�8�E�*-32����0��&�5�J��ZaQΪ9������e�e,S�R�̶��2w�g���Lc�Y-�/P3I�B���IT�Z�0S���������*Nk�b�70�A���C�����רaͨL��@kd�#Ǩ�EjSq^�_�i��N�	r� L%q��H��1)v��>�
+�A\�J3\��Y�����$3���Ț�A�B�)Vt���+���U�.�*m���=[Z�/V��E��[�9>��.��Ԗųܢ�O�*��U�D�Ti
+Mf�Xf'�$2�l�I]����g��?)��j9]��`4��^,fw�R5��Q�KT��ZK�P�T�NeR�TGm�6Q����vR+���2!��P��z[+�rA�N��`hU�W�R�Ez7}����K��p�����}:�c��]���vO��m�,%����e�B+.�F�A4�$x�����P�P�D{efP�������[��y��UW&�+n�7ˢr�V�D�0�iX4�9��\��|�o�z� +�Z�#pķ��
+���o�2����]\OV���[�KN�+��UW�5����k
+��tW�X��9·�qc�n/�ִ�dm�Ԇ�d�3G�P�n�#�
�k+q
����z��]�G�8O"��|�C�|O�_I�ӧ�)?noZy�=�R��*=75s��sq��m9�S�������Wq�1so���,����2��$T��<����BM������
1�Q�3���a?�iWa��a�Wr�s$QXO77)�JKP���18H��%ô�c��>��I��٬/�@i��?
+��m��g����-���Ά6�A۪��L�+�Z����
�~tb�>3��V��Pt�:�>�����PӱY�/A�7�TjO2�ɝ}�>*`�x�2���\�_����H������:p�����u4Aiw��Ըw���m)�E������6 �<�.C���������a��[������6�Y�/0����Y��{��1L�4�$�{\�u
�O�
ϜUm�W��1�Y>l<‡kȋs˥�p+�.���C��@�[�����r����U�Pz��r�j�Gu���z(}�M���h�����N(���J�	�K�C�*�q ��=�����n[gĵ9�]@��
gd5t��cF��%��t�\�;�D��T���l�I]�A���ɓJi7�I����u�V�I��zƇG�w

)��%�@��X&0��Fg�DP��/�c��\?�F]�Sd�X�'�;4�5���&+�ow#��6��5�j���X���L"����z��Y��(겏�|MV� 4��:]{��V����&_s��P��wA�F�׍�rdq��|��^2"�X�?�7ʲ�J
�nL���}�S>GI������X!����sq�OgeT�*3�x���nFa�k'�ƦC��a�������^��{����2���o��f<�^h�u
+��i~���{I6 {����JH�����W�^�����f�v�{����~�=��qaVҹ��Y��/
��sb�W�?tV�,�Q������dϮ,s&Tʫ@���"x��Y�$;��(�D	y�,��9w,0;�L�X�\�j��R�wj�N�ߍ%�����te����q�D�-�~._���Q�����k��ė���s���5S��v�L�caU9��X��'1���EL�T�O�Y�'�G/�Kh��=��K�M�&1�o��x~y\F�ߜz�+��������H���O$YM�����8^0^q�0����f�4?��B����f�|>A6�f�G�oe��GD��i���6��l��]:�>�����v�Wg^=5{��BE
+}�.���^z'�;O	���l�J�����<mH>�ؙ��ms:����v4�oG@������2���q}�����ac�V��p��N�p�1n��du�=�pD��^�h�!���4���8@����%�M�H�,��š��󽂫�Ίn����+����58��Ue+I3@i6k��=��{��8�G�򶶷��OwA�T_Y��h�Jq8���� �c�F�!n��=3���E+I�0P�����8?���x�=�����-�2��JSXΫ��P�lщ��0;3���ʅ�u`1�`�G�y2�~�Z;�;<82���FIH�/���gD����B]&�����G�ܺk�5,�VO�R��"Q׉
+endstream
+endobj
+4723 0 obj
+<<
+/Length 1310      
+/Filter /FlateDecode
+>>
+stream
+x��XMo�F��W���~/W(zh�4��^l����L�"]����Yr)��,Y���c���̛�gbo�a�j��tt�^���̛�=�Q(��4E�xәw���`LU��2�N&��c�T%y�<�3�ʲ��j���)L�`�Wҗ"��~]NG���Y	CR�����=�f�ӡ�\�\z\0$8��Ի}჎K�p�y�`0&c�4���u��֞BZab�����^�%��Y%�ƪ�[�C!��˓Y0�`����l��L�\���P�ƕ�Ƅ -d�7�*��0C4"4l���+��"�Y��;cq��kD��ƔC���7�7����4񪀴U��4��+3k��,�MfS�Z���F�t����-B�6��;8�Y�fw33��wTs#*l����Y���`8C�����X6[?v�M
+���C7&�^�5���RSx��
�a�j���f��̪R�r
+P�Z5�(��d��$��E^l��)BO���+¡�B�w�z>��:��5�ulLK��BG����C��$6e@��k�$��X�(Y����� p
+i`'�`�*J��u<F�<���*�E�	hqub>��Q-Me+����EhM�����V/��<��\DȐƇ�&r���)5�������B��k�;��/��j�W�+��o�[@��v�mƑ&�TۃڄЅ�o��_���T;ߚ�y;	�mg)Њ���6E�Ba}͎��Z��1R���w�c�%]����L�̸����׫�w[��Wb�iv��@�tM�OO,5��'�`4J�&�oԏ<E�П�~���*�"�;T�P���U*�TA�J�QA��A���`������ <=B���S���PQ������3S��o �`>���H!t�;�Pυ�ݵU*Y�-��\�0-� �so� d��b����>�b�	;Y�0ۣ�ޱF��s�s ��F��$Q���a
+Y��u�iwʞ��WȞ�L�T==�
+�V�
j���e+�A�s�s4‹��
+��zA#�O4�@�>SL�N8�c��Y�1`��E����w���m����d�n��ȇ�MӦ���rs�r���H�B+�`�h�(�(ݒ}BH�,�+�.^P���B���
-
�P�Ik�Ѩ&wDO�l~�%�q�w�3�,�	$��^ka���y�P,.M�-�㻵u�����K���j��(��n��E����o;�R\�>�q��=ir?@�N�
���] ��1_Uۯ�Q%�F��`Z�\\�
+ꪧ�����Z��XXbXM<p�?3��
+endstream
+endobj
+4722 0 obj
+<<
+/Type /Page
+/Contents 4723 0 R
+/Resources 4721 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4686 0 R
+/Annots [ 4706 0 R 4707 0 R 4708 0 R 4709 0 R 4710 0 R 4711 0 R 4712 0 R 4713 0 R 4714 0 R ]
+>>
+endobj
+4706 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 539.577 148.111 547.836]
+/A << /S /GoTo /D (_enum_8cpp_source_l00055) >>
+>>
+endobj
+4707 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 537.873 214.801 548.141]
+/A << /S /GoTo /D (_enum_8cpp_source) >>
+>>
+endobj
+4708 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 254.597 148.111 263.162]
+/A << /S /GoTo /D (_enum_8cpp_source_l00067) >>
+>>
+endobj
+4709 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 252.894 214.801 263.162]
+/A << /S /GoTo /D (_enum_8cpp_source) >>
+>>
+endobj
+4710 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 197.067 164.948 205.551]
+/A << /S /GoTo /D (_enum_8h) >>
+>>
+endobj
+4711 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 182.331 174.416 192.6]
+/A << /S /GoTo /D (_enum_8cpp) >>
+>>
+endobj
+4712 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 100.9 97.264 109.989]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4713 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [97.764 101.299 136.948 109.783]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+4714 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.448 99.515 178.811 109.783]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+4724 0 obj
+<<
+/D [4722 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+798 0 obj
+<<
+/D [4722 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4725 0 obj
+<<
+/D [4722 0 R /XYZ 70.866 678.481 null]
+>>
+endobj
+4726 0 obj
+<<
+/D [4722 0 R /XYZ 70.866 614.781 null]
+>>
+endobj
+4667 0 obj
+<<
+/D [4722 0 R /XYZ 70.866 527.891 null]
+>>
+endobj
+802 0 obj
+<<
+/D [4722 0 R /XYZ 70.866 500.696 null]
+>>
+endobj
+4727 0 obj
+<<
+/D [4722 0 R /XYZ 70.866 393.295 null]
+>>
+endobj
+4728 0 obj
+<<
+/D [4722 0 R /XYZ 70.866 329.596 null]
+>>
+endobj
+3191 0 obj
+<<
+/D [4722 0 R /XYZ 70.866 175.357 null]
+>>
+endobj
+806 0 obj
+<<
+/D [4722 0 R /XYZ 70.866 166.915 null]
+>>
+endobj
+4721 0 obj
+<<
+/Font << /F48 2333 0 R /F99 3885 0 R /F54 2381 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4744 0 obj
+<<
+/Length 1292      
+/Filter /FlateDecode
+>>
+stream
+xڵX[o�H~�W�>����}�Hy٦�Zm�^��D+�'�
)�����������틱�̹~�;�p��m��2X\�8�����ˇPaK*M�$�r�DR���C&	��s��כ��fs���Hw[��I���
�,��Q�Ne���0�7w8\���!FL����6�!���M�%�ྛ�M�	>a���є�9QV'yjZ�VY����#ٶ7fGE����i���x�j�l�M���
+����H�$��F�R���S�H��6��9wc�nKë���E�^�����`����4H�DzM��ݽ
u��.<��7.��]���A����T���r���T��b�,����o��f.���<�ᡵ�N�|ݺ�>&3���5�h��`�z��b�Z���鸓ٚ�J���ի?[�Y^;&<m�+3r2���"�D��ZY�Xje�ϕF�@����k
+[��]Z��б\�)ET3�B��5�p%����X�w�G�{ύ�s�G���z(�q�/H	}vJF����	�(���2'S���V�M�����]�߁��^�ρ�A���&Tw�*?�M��8�^[ː���cHgs���9���l p�`�!u�m�ʍS�e��l�;�``	Ѫ��d�x�:V�v��~����"R��Q��;�.����ǔeQN%�;LՅ�AU���]V=NtC�S��q�ԏ�x)��:MV�jCe����z@�4A�pG��6oy���s��'�#l
+f�n7L7'4�]�ɦkN�8��H�a��1D�Z�j��%�M��K�hQ� MD�D��_�P�0�Z�h�I/hN<TnȂ�u �K͝Xf�xc���%��V�z�zĕ�����OX9��Űj�m
+��0;�Z�S�
�V�e{��x"pI�\r+�㫑�Oco����~<��3���{�?dUB��@~0�4
��6��3����@*���7m�^���m�=6L�l`t��K�R
�n�h���()�����	��+��N`��R[�)��F��_��4g��/uLHsȂv*��w���4�r�:�zt&�&Հ۱B��Q_�C��N��-����<Z���4��L��X���oe�g���4���(@���!l@?��4�~J���>
+E@�'�'�ˇx�β8
���n��F�YV�A׷z�]�U��=:���K;�h �5����u��/BbL���$~�>=M�JGg�0@�K����J�Z���	�.����ޚܔI�W�f�~�VCO��vw�L>��;��V]
+endstream
+endobj
+4743 0 obj
+<<
+/Type /Page
+/Contents 4744 0 R
+/Resources 4742 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4686 0 R
+/Annots [ 4731 0 R 4732 0 R 4733 0 R 4734 0 R 4735 0 R 4736 0 R 4737 0 R 4738 0 R 4739 0 R 4740 0 R 4741 0 R ]
+>>
+endobj
+4731 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 609.702 136.14 619.97]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_aa2e20db284b3c4825824d421dfc3694f) >>
+>>
+endobj
+4732 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.385 611.486 274.816 619.97]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_aa34f052cb61f915550c92b17621b58b1) >>
+>>
+endobj
+4733 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 581.806 136.14 592.075]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_acc088fa326f26d0ea21aa7bf250eeeae) >>
+>>
+endobj
+4734 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 553.911 143.888 564.179]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_ae4bb6d8901509f35649da27f9e681202) >>
+>>
+endobj
+4735 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.659 527.8 152.09 536.284]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_aa34f052cb61f915550c92b17621b58b1) >>
+>>
+endobj
+4736 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.857 438.549 455.25 447.638]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4737 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [455.75 438.948 494.935 447.432]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+4738 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 414.047 148.111 422.612]
+/A << /S /GoTo /D (_local_exception_8h_source_l00013) >>
+>>
+endobj
+4739 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 412.343 242.803 422.612]
+/A << /S /GoTo /D (_local_exception_8h_source) >>
+>>
+endobj
+4740 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 117.067 143.126 125.327]
+/A << /S /GoTo /D (_local_exception_8cpp_source_l00005) >>
+>>
+endobj
+4741 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 115.363 247.286 125.632]
+/A << /S /GoTo /D (_local_exception_8cpp_source) >>
+>>
+endobj
+4745 0 obj
+<<
+/D [4743 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4746 0 obj
+<<
+/D [4743 0 R /XYZ 70.866 752.092 null]
+>>
+endobj
+4747 0 obj
+<<
+/D [4743 0 R /XYZ 70.866 651.353 null]
+>>
+endobj
+810 0 obj
+<<
+/D [4743 0 R /XYZ 70.866 498.549 null]
+>>
+endobj
+814 0 obj
+<<
+/D [4743 0 R /XYZ 70.866 398.099 null]
+>>
+endobj
+4748 0 obj
+<<
+/D [4743 0 R /XYZ 70.866 353.274 null]
+>>
+endobj
+818 0 obj
+<<
+/D [4743 0 R /XYZ 70.866 326.079 null]
+>>
+endobj
+4749 0 obj
+<<
+/D [4743 0 R /XYZ 70.866 206.723 null]
+>>
+endobj
+4750 0 obj
+<<
+/D [4743 0 R /XYZ 70.866 105.382 null]
+>>
+endobj
+4742 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F25 2380 0 R /F73 2949 0 R /F54 2381 0 R /F99 3885 0 R /F81 3708 0 R /F95 3709 0 R /F67 2922 0 R >>
+/XObject << /Im2 4715 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4770 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/FormType 1
+/PTEX.FileName (./class_u_d_p_1_1_exception.pdf)
+/PTEX.PageNumber 1
+/PTEX.InfoDict 4771 0 R
+/BBox [0 0 500 337]
+/Resources <<
+/ProcSet [ /PDF /Text ]
+/ExtGState <<
+/R7 4772 0 R
+>>/Font << /R8 4773 0 R>>
+>>
+/Length 282
+/Filter /FlateDecode
+>>
+stream
+x���=S�0�w�
+�� l��=V
+af��ᖤ���c�	M�.�I���yբ"�*�1�n����p
-���P{��BC�V�e�ZA���Xb-3��r������Dz\|��G�=쯫,*X�hʜd�T��i�H�Q*&�)ъ��y6`$s�G킢��g\���l�B4��5��+��s�o}��tݡ��p��)=�O�h S9���=�Om��3i�d#�ٰ�?�,��L�l��a���=cybHzjn��9Run��u6�T�����
�nŽ~�|R
+endstream
+endobj
+4771 0 obj
+<<
+/Producer (MiKTeX GPL Ghostscript 9.25)
+/CreationDate (D:20220227230631+01'00')
+/ModDate (D:20220227230631+01'00')
+/Title (ClassName)
+/Creator (Doxygen)
+/Author ()
+>>
+endobj
+4772 0 obj
+<<
+/Type /ExtGState
+/OPM 1
+>>
+endobj
+4773 0 obj
+<<
+/BaseFont /OORNMW+Times-Roman
+/FontDescriptor 4774 0 R
+/Type /Font
+/FirstChar 58
+/LastChar 120
+/Widths [ 278 0 0 0 0 0 0 0 0 0 722 611 0 0 0 0 0 0 0 0 0 0 556 0 0 0 0 722 0 0 0 0 0 0 0 0 0 500 0 0 0 444 500 444 0 0 0 278 0 0 0 778 500 500 500 0 333 389 278 500 0 0 500]
+/Encoding /WinAnsiEncoding
+/Subtype /Type1
+>>
+endobj
+4774 0 obj
+<<
+/Type /FontDescriptor
+/FontName /OORNMW+Times-Roman
+/FontBBox [ 0 -217 775 683]
+/Flags 32
+/Ascent 683
+/CapHeight 662
+/Descent -217
+/ItalicAngle 0
+/StemV 116
+/MissingWidth 250
+/XHeight 460
+/CharSet (/D/E/P/U/c/colon/d/e/i/m/n/o/p/r/s/t/u/underscore/x)
+/FontFile3 4775 0 R
+>>
+endobj
+4775 0 obj
+<<
+/Filter /FlateDecode
+/Subtype /Type1C
+/Length 2465
+>>
+stream
+x��U{PSg�1$�7�bKLm�&w��-U�V�تd\X���E�6ɍy@IH$�� �BHy�[A�X�V����Zm�h��l��>fwٶ�]�;{cw������d��|�w~�;�wD�B Dg�jJ�t�.�D�W�qv�v�q����F�2"�Sx/+�&P�EG��t���y��,����}?��'�Ode���+�YG����			d�����L��t��\�?�S*F��4�xrE��2�,�U��rz��m)�)۲�JC�
+Ud��HE+�4ZIi�ԓd	�#U?��JFSLhF��'7��BR���4�2))mİ��R:5����$�'Ku�UL��(U��<����H����j�‡Jg��RGk
$�����
e������$S�{3Jc���6C!�ѓ�d��Qd1�ת
+�<.J���`�Ӛ�_�W�:��PW���w�F��?�W��Z���Y�����AO�J���"���{��6&�L#3�R��P�[�/���� A
�MJ��
F���J������D:��x�XN� 2�,b'�C$��b5�{�9bGl"�-DD��9A��[
+7
+{�$Q�Q?��k�T���)��7ư�(�>tNpk'�������6���%W��ʰ[���@�K;��8�fw�(�gzU[P��2'�T��M����f�u��ͻT��)����5���*��`���_
+q#�[�=�j'�������o�r��o��
+#����[Ɖ^M�T\�{�\����]�ߜ��*�cq�Pe��#l�{��g���I��]&��[��C-�|ŝ2�^���]P���ɫ�`���C�C����8� ^������xjG�.�@q�<Y�e��J~j�t����O�l� '�ݔ��16$��/A]�qvv����+Ƃ%��X E�ն��P�2�q�!�at����_��З���s)W8��A�G,Yj7��}h3�?7*���q�r}Z>��Ƴ�#��h���ٚ��kTV{G1,� �7�����%�5~Aʈs8b��{A�869[j|(1���s����l1��Eu��V�����c�x���_���X��-�հO\��K�&���oE��N:@�V�K<�$;b�m��^>���I;��v��U
+���3��og��4V���`db���[��ɃV�ˏ`o 40Z�y5I�U|j=;���t�12Gwu��ۺcߚ�	-����?I��R�]�аϹ����co��P��x`o܆���#��<Ż{W��H%+x�ɦU�n���o_����V��-m<|��4/�h��{$��댻���M�G_Sp�L�҇�edžN^����c��,=�ǵ�f�Hfq+�S*��Cq��F�ܹϵ��2w�U�Aɬ��r�>���
�
Pr�m�����=;*���u�#��X��W�@2�OqdV���χ��Wg�e)���֊w�}'�[n
��V���vʁ\5@L��j�U�j�_;t\!	��r+8]�aA� �6���x�h��_>1!Z$i&�c��:"É���<����PEPu�[���3���
+��en�5���UWu�ZW��Va
?�7B~��or����x�
+چ��}�s	�"�sO�̂��������7�r��Dž\2dv��i�1l��+����UҼ�R}��Roa�sW?��K���V���:����9�|j]nvEi�"��IA ���x,|�XpxL��˧FJzم��۸bF��sH��gEA`�߀�,��+�~��_^e�#�RVZ�ͨ�q��H��Ԉ֧���s"�an���x��#�S������Y���+t
��3o�EXt�O�>��S�ukF0�+�zi��ݚT��vj.��8G.A|I\s�1�Q��z������_�MB	��_{�o�_��q97�WJ}Ӈ�/�K����ٽ��p�1<ѣ�᪈�����`Ch�A4��i��}od��#:n=�T�X;�4�&$����is�Dx'�u5��Nh£]`C��}̋[���ҏ��}*=�V���^�	�{�b�������g2E����ۋd�w5�P�þ%�0����
]�	��˥Z��a�
�=݃���Y�	v�K����	!��v)�k~��8�	L��F�8/���8�*�6/U�	%��^�)�s<��t���Ÿ���峣� wp�?K�/b�������D7`�|�f�Y����	����ol��Ńު<�P�ղc?�@�;=:
+�a�<�m--}=����.KVpj�v������p[Bh
+�&041�y����
+��߳55۝��{=j����"������۳��t*@�u}�ί�l�R-2��v,�n,�l�T�۫�����
�=�Vp\�o�Ev����ȿt�N}���;�83,Z8{�Pkt�lg���_�3��
+endstream
+endobj
+4778 0 obj
+<<
+/Length 1133      
+/Filter /FlateDecode
+>>
+stream
+xڽWKs�8��W�#��M1�m��t�3m�[��*3�fd)+ɛ��/(R�Ê�&�=x$� ��@= ���g�"F16Jq��G��X)�
Ê���D��\1G������?R��de�?�I]��k{��$��-R�\q*���^ޭ?-.֋��DF��L�t���#h{����評�!!9���{��-�.ȫ�+���s�0[�(!$:8~K$�u��]�46�P�<"¹ٞ�ag��KI1�Z1�"�a��Dg(�U���BK�����,�������܎��\�'(1��q�+���L�A��4�Э�!X��/��yTA�d�O�ބfQS�'�*�l�r	�O~#)��]r�ηg�I�7�I��4�Wv�W�r��rg�Z�lm0i��[��S�l��V�_ t����������\��w}�@7���X�𨚑$!O�G������(�j���,lb���tk�q(UzjP�(f"��˒�(���m@�Q=�9G%	��g��{���U��%��
+�<��96B-c��Z�T�5�CJP̹���J@@����C�S��dfl4@v�2Ә��hy�1ʡ���
-_�xLm_J�ܳ��y�&�=v�1��4op��B�w"��u�&蒆c�B1�ho	aE����̳������]tE�=����i��7Ng�>i@@m峫���p/���=ČDz�ɜ�h�X�ɼй�=IL�x�'��1�<�GfƝ�v�e��ܙ4�4=�����yʼ�l��b�}Be��$�&�6>k;�En����Ӷ����s����{E��	)
+�Y0%&����a��lw�m���H�{},���M�.����j�Ӡ6-7���_��%+����S#�@iO�(�d�K���B��6lT���a�{�;$da��c6@�ՆYFE�����D�h����y����m�UQO���\�1s�I4D��z���9�☿�R�fBlg�p�p���f�jХ2�?O�\<����n�"p�.�~��+�s?�f�������i� ��M����~=���*�������� ����4F�nBe@#���֩S����p�+s�G��L����J��Ő�>I������u��@D������<�P
+endstream
+endobj
+4777 0 obj
+<<
+/Type /Page
+/Contents 4778 0 R
+/Resources 4776 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4686 0 R
+/Annots [ 4757 0 R 4758 0 R 4759 0 R 4760 0 R 4761 0 R 4762 0 R 4763 0 R 4764 0 R 4765 0 R 4766 0 R ]
+>>
+endobj
+4757 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [498.012 690.933 525.406 700.022]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+4758 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 679.376 109.054 687.86]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+4759 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 592.284 143.126 600.848]
+/A << /S /GoTo /D (_local_exception_8cpp_source_l00009) >>
+>>
+endobj
+4760 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 590.58 247.286 600.848]
+/A << /S /GoTo /D (_local_exception_8cpp_source) >>
+>>
+endobj
+4761 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 434.136 148.111 442.517]
+/A << /S /GoTo /D (_local_exception_8cpp_source_l00014) >>
+>>
+endobj
+4762 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 432.248 252.271 442.517]
+/A << /S /GoTo /D (_local_exception_8cpp_source) >>
+>>
+endobj
+4763 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 166.466 148.111 174.726]
+/A << /S /GoTo /D (_local_exception_8h_source_l00055) >>
+>>
+endobj
+4764 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 164.762 242.803 175.03]
+/A << /S /GoTo /D (_local_exception_8h_source) >>
+>>
+endobj
+4765 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.115 107.151 207.385 117.419]
+/A << /S /GoTo /D (_local_exception_8h) >>
+>>
+endobj
+4766 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.115 94.2 216.854 104.468]
+/A << /S /GoTo /D (_local_exception_8cpp) >>
+>>
+endobj
+4779 0 obj
+<<
+/D [4777 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+822 0 obj
+<<
+/D [4777 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4780 0 obj
+<<
+/D [4777 0 R /XYZ 70.866 668.418 null]
+>>
+endobj
+4752 0 obj
+<<
+/D [4777 0 R /XYZ 70.866 580.598 null]
+>>
+endobj
+826 0 obj
+<<
+/D [4777 0 R /XYZ 70.866 553.403 null]
+>>
+endobj
+830 0 obj
+<<
+/D [4777 0 R /XYZ 70.866 418.004 null]
+>>
+endobj
+4751 0 obj
+<<
+/D [4777 0 R /XYZ 70.866 373.179 null]
+>>
+endobj
+834 0 obj
+<<
+/D [4777 0 R /XYZ 70.866 345.984 null]
+>>
+endobj
+3192 0 obj
+<<
+/D [4777 0 R /XYZ 70.866 87.226 null]
+>>
+endobj
+4776 0 obj
+<<
+/Font << /F48 2333 0 R /F99 3885 0 R /F54 2381 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4793 0 obj
+<<
+/Length 1201      
+/Filter /FlateDecode
+>>
+stream
+xڭW�o�6~�_Ad� ?��o�����M�Ų6{J�A�G�-�������")K��&m_"�>�}w��3AkD�������\�(�F)���&8U
+ið��j����?]�C\Q�j�u��m���/�N�e�ﶶl���Jg;{s5�<�`J�]�)N�@�vv���|��M���,�HH��p!6���9�I6��!N�E"�S2_PBH��������}�0u0�?ػ9%��m����Z����AaZp�Q>�y����.���Vyִ�3�c�C@�Nϥ@0101E��~*�|�[Yo���ꪡ���~�p��&� ���3%��w����bT�esB�p=o�{[��Ȥh3W�.�U���]��O���wsN�������젎�'/ҎI�eJ�"S-�>�0U)���c�U|/���r����{F�E��8�IJ�<F
H*%�T_��ݭ�tS�>��v{kC��2w96��K֩���1�u~I��W��H�C�����9����
+�Y��
!|�����ڦ�����	��wxz���DݑH,)Ԙ�#!��8t�D���H�;�j-��pGIl���u�0H� ]N&ҝ����Ϝɤ*Vϭ���sT���.�!�`���`�H��JL�X.m��
+jn��.z�2s@J��������n��VwJ�R叅j���Y�+�bk��u]�A)�%i_ܶ��ѴE��ͽ?�N6b���ڂM���
+���(.�?��O�wd�C1�b��K�JR�ٓ����}:�S��J�������"c~�@
1�������9��'���h8X+ ��0��0FO����m46�Ȁx���á0��
+<:G���~ @���0���9;��@8P�}0lE���90����@߼�W�qr2�����޻���Tb��UG�癜���;��gz�^:��36;��q�������(�X�>�����N� �2
4P��cʃ0]ΙH�:���"��xN-��%Փ�%�������vP������>�Zt"�]t+�X9�#�x ��^L�Ԕ��H��!���A^���BǑ���o�<�T��t����A��j|��w臎�aD���s"1�{9�c��J����>�}\����7y����d#�RM8}�ĸs�4t�[:��ZJ�o5jraK[gmԼ�9#ɗ8������M�Ė��i���
+endstream
+endobj
+4792 0 obj
+<<
+/Type /Page
+/Contents 4793 0 R
+/Resources 4791 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4686 0 R
+/Annots [ 4767 0 R 4768 0 R 4769 0 R 4784 0 R 4785 0 R 4786 0 R 4787 0 R 4788 0 R 4789 0 R 4790 0 R ]
+>>
+endobj
+4767 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 724.275 90.79 732.84]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+4768 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [91.29 724.356 133.649 732.84]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+4769 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.149 722.571 175.512 732.84]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+4784 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 524.455 136.14 534.723]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception_a303fac04b1c83a4c5f8119344b6d8ec1) >>
+>>
+endobj
+4785 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 496.559 143.888 506.828]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception_a825ce3fc0f996f9de64b075bad9bc7e0) >>
+>>
+endobj
+4786 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [450.272 409.492 492.63 417.976]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+4787 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 384.775 148.111 393.155]
+/A << /S /GoTo /D (_exception_8h_source_l00011) >>
+>>
+endobj
+4788 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 382.887 221.373 393.155]
+/A << /S /GoTo /D (_exception_8h_source) >>
+>>
+endobj
+4789 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 112.98 143.126 121.545]
+/A << /S /GoTo /D (_exception_8cpp_source_l00003) >>
+>>
+endobj
+4790 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 111.277 225.857 121.545]
+/A << /S /GoTo /D (_exception_8cpp_source) >>
+>>
+endobj
+4794 0 obj
+<<
+/D [4792 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+838 0 obj
+<<
+/D [4792 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4795 0 obj
+<<
+/D [4792 0 R /XYZ 70.866 666.845 null]
+>>
+endobj
+4796 0 obj
+<<
+/D [4792 0 R /XYZ 70.866 566.107 null]
+>>
+endobj
+842 0 obj
+<<
+/D [4792 0 R /XYZ 70.866 469.166 null]
+>>
+endobj
+846 0 obj
+<<
+/D [4792 0 R /XYZ 70.866 368.643 null]
+>>
+endobj
+4797 0 obj
+<<
+/D [4792 0 R /XYZ 70.866 323.818 null]
+>>
+endobj
+850 0 obj
+<<
+/D [4792 0 R /XYZ 70.866 296.623 null]
+>>
+endobj
+4798 0 obj
+<<
+/D [4792 0 R /XYZ 70.866 189.222 null]
+>>
+endobj
+4799 0 obj
+<<
+/D [4792 0 R /XYZ 70.866 101.295 null]
+>>
+endobj
+4791 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F22 2379 0 R /F25 2380 0 R /F73 2949 0 R /F81 3708 0 R /F95 3709 0 R /F67 2922 0 R >>
+/XObject << /Im3 4770 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4811 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/FormType 1
+/PTEX.FileName (./class_s_o_i_l_1_1_figure.pdf)
+/PTEX.PageNumber 1
+/PTEX.InfoDict 4812 0 R
+/BBox [0 0 500 393]
+/Resources <<
+/ProcSet [ /PDF /Text ]
+/ExtGState <<
+/R7 4813 0 R
+>>/Font << /R8 4814 0 R>>
+>>
+/Length 371
+/Filter /FlateDecode
+>>
+stream
+x��S�N1��+|�L�8�
+q@*		��TK�h����i��r���d�xf��'h$��k�y�.f�a�>��,��KI�������H`,���& ;2P��x��Ln^�uu	�9���/\��ojZ�ger���Vو�:#�j�ɓԓ��ۇ�h�
+�f"9�8x�̢�1k�Uq��^�1Ў�f����޿z
19�ہ��
I����Hk)��SaQD�"itl�2!��3qW�O�ɬ�|l�����43�q-һ����z�� �-�N���B��mPB�C���u7�z$
+9�+�@�zT��w���![)��~"�K�r���i44��8yKsn���b�"L�m� �;�� ��c
+endstream
+endobj
+4812 0 obj
+<<
+/Producer (MiKTeX GPL Ghostscript 9.25)
+/CreationDate (D:20220227230620+01'00')
+/ModDate (D:20220227230620+01'00')
+/Title (ClassName)
+/Creator (Doxygen)
+/Author ()
+>>
+endobj
+4813 0 obj
+<<
+/Type /ExtGState
+/OPM 1
+>>
+endobj
+4814 0 obj
+<<
+/BaseFont /LTRURT+Times-Roman
+/FontDescriptor 4815 0 R
+/Type /Font
+/FirstChar 32
+/LastChar 121
+/Widths [ 250 0 0 0 0 0 0 0 0 0 0 0 250 0 0 0 0 0 0 0 0 0 0 0 0 0 278 0 564 0 564 0 0 0 0 0 0 611 556 0 722 333 0 0 611 0 0 722 556 0 667 556 611 0 0 0 0 0 0 0 0 0 0 0 0 0 0 444 0 444 0 500 0 278 0 0 278 778 500 500 0 0 333 389 278 500 0 0 500 500]
+/Encoding /WinAnsiEncoding
+/Subtype /Type1
+>>
+endobj
+4815 0 obj
+<<
+/Type /FontDescriptor
+/FontName /LTRURT+Times-Roman
+/FontBBox [ 0 -218 775 683]
+/Flags 32
+/Ascent 683
+/CapHeight 676
+/Descent -218
+/ItalicAngle 0
+/StemV 116
+/MissingWidth 250
+/XHeight 460
+/CharSet (/E/F/H/I/L/O/P/R/S/T/c/colon/comma/e/g/greater/i/l/less/m/n/o/r/s/space/t/u/x/y)
+/FontFile3 4816 0 R
+>>
+endobj
+4816 0 obj
+<<
+/Filter /FlateDecode
+/Subtype /Type1C
+/Length 3232
+>>
+stream
+x��V{TSW�?1�3J��TM�tZgZ�R�[��NSE@�u�`^�IHB"	���$�B�D^	/A��V�8��V����vͳ�����؇u���3�Zӿ�Z9+��o�������>��p8��ސ����#�IL�Y��Y��|�c~o
&��>��1��Q�W��c�_����2��ђ''̹ș�����Ϭ[�~�B�WI�K4��7o�����I�Z-)�SkѢ��*�2Z�I��i�Ҕ�T�DJS��f�ۿ����������V�I�Tm�TR@�%�\M?C)T�t�*P�%�B�N�v��<J��$�#ZW@+#����V�$j5ZS5U�ʓk�BJ��$���0b�)�J�R �I��T�Z�.PI�
+YLMٳ䣦$O��� 1�(B'�H4�i�$r5��u���|�*����<=��T)U�E�j���[��)]��*���E�T����N�yJ�T���b����K4jZZ��_"�ת�ŋ��+6Sb*�.�J�T�(����7�a��b�j�Z�v�N�/���I�3�2�-[�c�,[��c?�2�C�3X&�,��m��`)�,	{{{��"��&��`	�L�=�	Q�aQX9v��&gd٪e��ǹ
\6��wx^�+\���ɕd7�??8����?����OWĮHZ���
]1L�3��q>��)���I����hd��xD�:�f1eՒFX�'��m`��g�K��F�y�W�O���
ّC�~∻�
\&������9R�{�	��^bɨ�G�afc�3�G��G.t1����u��M��Zc��(�+���}\dVfo�cװ��{���+)�T�w�/޾}W�@Н�So��q] ��s+��s��@�g�X���) ����yk\������&��ٗL�@����-&�AQ}�l"T�a�'$�	8�nc��d^�[�|���g��v���m2�!�):�,?C@���f��eV	�]͎6@�5W��.d�loT!�l~b���7H�%���C��k����j����)JP
����qfj�ͩ:��; �g�g	����Q����*r����뫿���ߺ�����RG��FS;�GB9|��-�4��B�0��� �4w���6�|g%=�'�����Y���S���ZoV��M�;���Ʋ�-iY�҇�,��Ti����,��׭����1� +�$�mit"t��f�^�cG
+��PmW��_߼3�90&b�_+:�} n(|�Ơdc�0Y�0�ñ>Xþ9���61���k!��4��B�)�)����=ZYK�Ylv[�*P�wՓ��a��so]�2"4���V-�/2�~%����x�|���yx6���9x}�i�
+`&���vHGܷ�Z��E 7Y�^��9 �{�>��0^g��I�>-l&���iA�NS{��Y�Ŷ�QOj�K�E���H�G���6+�&�*(jL&�R+�����I�>dך�Ku�F�C�nb˥���Nt�B©)^2�7�O�Z����|T�	!9��\���; 6�*��G��~��mD�N�G5m���0F�y�ρCO�?.����0+�w0:�v��ٍFb���L��J���ث��
+S0N1�?|���t�~���L��б�٧�X��,˷�J���i?��r�<^�/(z�'�j�;������zr��'���
+B�܁;ڤ1J
+3�ɀ|�i���?t�@F�[�|��j8Unj��N
+���23A�@��&��S��
�:��Yv�%���^�����r� �MDm����q�!�U헅�;��15b��T�ՙ��rZ�:����HME��tX5�����"�Ȭ�
����P��Z�1�N�}.�$L�]�Nd��@�kw;���<�&E��4����\����#Y������`�>�0r/���zѝ�"#z?��aH�q��0Ypt[��
�r�7�㶑�����YTò��ӇA68��%��)`3�
+��/>��I!����>8sv̀^��EՍi���1��3[!΅�5�,`����SlΆᤫE7�(�= a6\
)��W���wE�7��dq�EpQ?v�ꑡ
�]R�{*�RTMI�q}&�ǻJ�_,�@.����������k�\���sp�,��������/���yA}gC?x���L��;<6���q�@���gv��N��-ֿ�s�u�m�����2�K����	��=�lj6KT�N�p1Un��pe,�p�9�;��~(�eJ�8��V�]^mS��E�.d�]I��~�H���5�rs���mUoU�V��"2���/>~�?yE8>�9���c�;\����T5�
557x\ P�k�����(4���i0P�c&Y��*����e@�i�\|p[!�{�����orZ��
+�^�7�:�]%m9��L����{�Ka��s �|�rn�#Xޟ�Y@@�*Z�g�|���7�6�L�����l���Vr��AG|\�b)K��Z�ݎ�D�ƍX5�l��bgx�%���p��Lnm:|3wCvy^�N�SVb_�
+����?����>�{���]�����hr�9}�f߻�e��e�쉌!V?��]��	>��J�F��քz�š���iLdط$�ػ�A���MGi[��j,�T�M$�����dB.8a(��H�y�0x�|:�J�G_���r�&_��ٹQ|
�d5� [����‣�ݟ��ڀ
i2���>���?<��ӌ�ظ��'o�W�k��/L�G�C'��:RQ�^�7�I�"���c��:�l�$G���Ӎ&_������vً��V��ng��z�^��	�(��%�Yn`�+�୎6G �[L�De8d2�kp?!n�j�H�s��y�@[��c��"�\�|6ő7�E��)2(�7W���czҡ��Nc+� �(�M-^o_�T�( �w������-���=i�D���	n��MN�t]�.e��-F�gu�A:��eN���&�a>����`V��CB�
I�8�d1�1�1�th�4���B�Z : �W3'2U�Tާ��*뗉X6��b�+"�����������x��%i�*`���{m��]�̦/����ڃ���&V�s��D��ȅ�.9]2q�D����O���<^��#��:��8�<�꓊�CE��� ��A|p���M�я��ð���/
+endstream
+endobj
+4866 0 obj
+<<
+/Length 1790      
+/Filter /FlateDecode
+>>
+stream
+x��Zmo�6��_!t� 5CR�(뀭i��5�4E�Ȫ�͖\Kn���HY����E����#���R�����������,I�u��{K`乮%$E.�&S��!B�#*<������E4۬�������������2D��g��ԌH1b2���X[�d^:�R���Ŭ_�}���T��]l�����B�ͫ����w�0�W��v�2:x6|(3�"�@x���`9x�[S����ȑ�u��\Z�;�3�/����|0�.A�]�=��q^q��«[���Lc�}
+�U%�-������5a�$�SZ#ʑ������z<����<�T�	q�wS3c<���p�bl�=�)�2A.8:"I����I4��������Ƅ��!W0=���`��,2��i�fk0��M�%�!�B,N�k�
+��_���|>1ls@�,�|�ج�+�bL�H;���f�"��h��gI���7�a~��0_&��tevq��6�(X���5��
�I�Y�q�ߺ�>d��MP�Ͻ
+�o>��8\��b��dYL�F�DM���Yջt\�4q���@«��-��'�];]g�ӳ��Dg^3�5�b�Eu���y��������L��2*���6�(%�\�s��k�je�	���
�P��&֦e���Q��c��m����e��
+��^��hk����{㟡�\���!����j��������,��p���:�ds�7fяC�!L+u��������I�l���)���f�Հ�	لJ�V�]h��biXb�i@��N,��zuv���E@2_wX�ȟ����v��eA
�����\��y�^Gk!wK�
+���)Q@-p�*��a�(q/Qy��T�3_�].�u���(�D1dT�U�b� �W��p<�<�ܮ7w*�(�!y.�B���M(NK�V���*"[<ډzŬe����/J��t<N��:��[e�lI	t$k0�X���JU�Qx�Ua�΋Ǯ�'��
8t���O#ST����fMOb(>;�!�X����N�&�����\�I�#�ё�6� �#�cF]��(�EQא=]PX߀���v�{�"Woq�,��C�ؓG���ʏg�>W��҃�W9Pu�� ��x(W�T�vs������o�@yR���}\�`n�D�>����ų�\�k�hyLHZ�+{*N<��rv!�Cؕ"G=u)�Z��2jZ�S`�����
,�Z�%��)�X�>�n��ܯ��i�P\ĀN����_�w��lН�c���B��n��̵*Ns��ɮ�
+\����2?�B��e�]W7�;*v.���&�Ӟ�I�D����-M�Y�k�VܿZ����
���}��|`�o˄`%#ag_`b����O�i�\C增� �s�����d�.I�C��@���{��{��pѳ�F���i�@���U�q � d%i��"��X��6�˚����H��p��K�!��v:�!���V��/e̐��Z*o��X�^�ߜ���'�C���o_�+:�n��n=>"�����E��b��S'(F��̝���Ѐm0T.p����hI��dr=_��k��H��7m�pl�����ɇ�^�[�i��ްMt��G��k;W7/��Q��I�ܳMl�
+�4ە��~6�r��0�7��j?�&!�j�ӜaƋ���M�ԳnV
+����>2���|�'����J��U8�������Te�E�]���9��#�͡x��a]Vy��8�)Wo�zf\>/��=���z���a����a������
+endstream
+endobj
+4865 0 obj
+<<
+/Type /Page
+/Contents 4866 0 R
+/Resources 4864 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4870 0 R
+/Annots [ 4804 0 R 4805 0 R 4806 0 R 4807 0 R 4808 0 R 4809 0 R 4810 0 R 4817 0 R 4818 0 R 4819 0 R 4820 0 R 4821 0 R 4822 0 R 4823 0 R 4824 0 R 4825 0 R 4826 0 R 4827 0 R 4828 0 R 4829 0 R 4830 0 R 4831 0 R 4832 0 R 4833 0 R 4834 0 R 4835 0 R 4836 0 R 4837 0 R 4838 0 R 4839 0 R 4840 0 R 4841 0 R 4842 0 R 4843 0 R 4844 0 R 4845 0 R 4846 0 R 4847 0 R 4848 0 R 4849 0 R 4850 0 R 4851 0 R 4852 0 R 4853 0 R 4854 0 R 4855 0 R 4856 0 R 4857 0 R 4858 0 R 4859 0 R 4860 0 R 4861 0 R 4862 0 R ]
+>>
+endobj
+4804 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 685.055 143.126 693.131]
+/A << /S /GoTo /D (_exception_8cpp_source_l00007) >>
+>>
+endobj
+4805 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 683.167 225.857 693.436]
+/A << /S /GoTo /D (_exception_8cpp_source) >>
+>>
+endobj
+4806 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.641 640.706 179.482 650.974]
+/A << /S /GoTo /D (_exception_8h) >>
+>>
+endobj
+4807 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.641 628.468 188.951 638.737]
+/A << /S /GoTo /D (_exception_8cpp) >>
+>>
+endobj
+4808 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.025 560.402 192.233 568.886]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+4809 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [210.182 560.402 253.58 568.886]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+4810 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [323.254 560.402 358.135 568.886]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4817 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 358.734 122.179 369.11]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8da920bd367b9a6ee8b70fcfa1f709ac) >>
+>>
+endobj
+4818 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [197.122 360.626 232.003 369.11]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4819 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [244.156 358.842 271.567 368.805]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+4820 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [317.643 360.626 336.582 369.11]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+4821 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.658 360.626 407.075 367.51]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+4822 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [453.151 358.842 498.63 369.11]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+4823 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.311 348.671 140.757 357.155]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+4824 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [185.245 346.779 221.13 357.155]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+4825 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [235.724 346.779 264.131 357.155]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4826 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [290.592 346.779 315.422 355.554]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+4827 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [318.666 346.779 347.073 357.155]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4828 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [381.998 348.774 405.41 357.155]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+4829 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [405.91 348.671 424.84 357.155]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+4830 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [428.084 348.774 451.497 357.155]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+4831 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 320.311 129.928 330.687]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a1f20334aa82abbb7d0e9d2322e5683d0) >>
+>>
+endobj
+4832 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 293.844 122.179 304.22]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4833 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.974 293.952 215.503 303.915]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a4e4d6c93a559d5e18178de9a79b472ec) >>
+>>
+endobj
+4834 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [242.911 295.655 283.772 304.426]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4835 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [334.074 295.736 357.271 304.22]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+4836 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 269.188 135.638 277.959]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4837 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.432 267.484 228.706 277.448]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_abb3fe4e331a9a5f2f53b011309d6c937) >>
+>>
+endobj
+4838 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 240.909 167.27 251.285]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aaf9b99da1c712f54d758c492830a7566) >>
+>>
+endobj
+4839 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.678 242.72 235.539 251.491]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4840 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [285.841 242.801 309.039 251.285]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+4841 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 214.442 155.265 224.513]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_af096fd3a66cdc35d18a1cbbf637dddf9) >>
+>>
+endobj
+4842 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.75 214.442 187.157 224.818]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4843 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [213.618 214.442 238.448 223.217]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+4844 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [123.305 200.411 149.071 209.949]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4845 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 188.894 149.365 198.35]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab47f2268fb3f31960ab7bc8473974b3e) >>
+>>
+endobj
+4846 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.851 189.969 176.263 198.35]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+4847 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.763 189.866 195.693 198.35]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+4848 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [123.305 175.647 143.229 183.482]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+4849 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 162.426 153.633 171.883]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a358a1060f3f04ea4aa1cb0b7705af4d9) >>
+>>
+endobj
+4850 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [181.04 163.318 221.901 172.089]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4851 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [272.203 163.399 295.401 171.883]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+4852 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 136.851 144.102 145.416]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+4853 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 135.147 169.512 145.416]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) >>
+>>
+endobj
+4854 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 122.805 132.012 130.547]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+4855 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 110.383 135.638 119.154]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4856 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [179.959 110.464 198.396 118.643]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6cebd6af4116112bb244b1444aa3a1da) >>
+>>
+endobj
+4857 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [209.852 110.464 233.05 118.948]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+4858 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.253 82.213 169.664 92.481]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a65998054544cd71fdb47c0b1b956e883) >>
+>>
+endobj
+4859 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [197.072 83.916 237.933 92.687]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4860 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [288.235 83.997 311.432 92.481]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+4861 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [314.425 84.1 337.838 92.481]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+4862 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [338.338 83.997 357.267 92.481]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+4867 0 obj
+<<
+/D [4865 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+854 0 obj
+<<
+/D [4865 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3043 0 obj
+<<
+/D [4865 0 R /XYZ 70.866 624.351 null]
+>>
+endobj
+858 0 obj
+<<
+/D [4865 0 R /XYZ 70.866 613.724 null]
+>>
+endobj
+4868 0 obj
+<<
+/D [4865 0 R /XYZ 70.866 516.613 null]
+>>
+endobj
+4869 0 obj
+<<
+/D [4865 0 R /XYZ 70.866 394.347 null]
+>>
+endobj
+4864 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F25 2380 0 R /F54 2381 0 R /F81 3708 0 R /F33 2286 0 R /F101 4116 0 R /F24 2940 0 R /F21 2941 0 R /F73 2949 0 R >>
+/XObject << /Im4 4811 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4908 0 obj
+<<
+/Length 1738      
+/Filter /FlateDecode
+>>
+stream
+x��Y[o�6~ϯ�� 1ˋHJA;�k��Ŋu��=�� �L,L�=�n���^��f;N2`�d�����08�	p����ٳ�(b����u 1��dB� �d|%}��� (���O_��f3S����v�
+��lU��g�'g�X�RC�1�i̖g���`���$�ە� ��ȈȃOg��᎚#����•����J��Vs��{�����_m���pcU���]1ְ�$c�i�:�/���'��1�"��p�C�Ms'�ۈ�p���jc|y���~gV�*�w���q����n��SX��H�Q�RD�I��(r4��Y���tf��:d��ơ(������3��L�H��.���T��Gt	5f	�q0�(œ�%�K��ljo��?����ʸx�����+�F:[�A/���T�ξ	�mt�\�O`9̘��_\l�Jqs�'�"���Z�[��'0ao�^� �e䗶J�dP˫H�$�����Q�M�hD��r��h����}��ŌT���ǣC���VK��I�KH�8i�������Dz��?�ō:�o!΢��&w��V�D>ȳu�tU�_��m_G��w�{�;����晩�U�~[,T�u�&D�&81főt1"����R�ȫ//�fVf���p����lx��BK����j��S�������D2J�z�VE�4��BF	n��g�v7����]Ƥ�~�y?��1�pۤIG+�@��d��Όg}���~y����Uv�-�lP>۞ ��;:�Y{{^3�=(b8�r|x�&�����$|[h�W�p��Yj�,H�y�D^����@���.o���ں��;@K��a���"�}�T���=�^��):W^�́j�^���!1Q�:W���C"��OWz��6���Y��	��-Y����=T�m�3�9Ydƹ��&6��6�
�sX���I©m��mV@/t�/�g%�0���2��7F��"���l<7��9���ʭ����)�����Jo�K���
+v1���J��͍��${�ղK���&r�����i�Wt�`�[�FL����
+n��P��U���(C��jFqX�2��>�(���$$l��C�#	�I|pV"P&H=*=-��8�]�"��������A�AM6����,2�J$N%�m��
��=Pb+]%au%��
+ʂ�����?0|F}�"PKȇ��@P�>�E�&%�Iq<�1c	P	_n����x���CK�1
ǡ�Bn�Lw�@�����¤�-�x�0poIZN3�ME��c��c���Sw�J���멗^�̮]
���hk���Z7���^5F�u���W�2&8{��{�3�qY�Q��R &���1@&
os�a9��I�V���F�����6��.o��żn�o��V����d��9D$����}
+TP�ü�9p��`L;|�@y�����{�x�ᩨcp�#~�0�_�k~�n�%�1�Q?�AM�v�W�x��zl=�w�A�H��)�/���X��\4:8���n�Vʤ��A�3H��`V�E����]��Ŏ����`7 �
+���	-e�&?fg�F����4M�\"�C�*����
��s`w��9��p��4!�M��Ctam�4�x�LK�?׺�@ޝv=���6�n�1b�r
��h?ϡ��'�����@��"{��#�QW$���sPZ���yW�;��ow7f'�����/��
+endstream
+endobj
+4907 0 obj
+<<
+/Type /Page
+/Contents 4908 0 R
+/Resources 4906 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4870 0 R
+/Annots [ 4863 0 R 4885 0 R 4886 0 R 4887 0 R 4888 0 R 4889 0 R 4890 0 R 4891 0 R 4892 0 R 4893 0 R 4894 0 R 4895 0 R 4896 0 R 4897 0 R 4898 0 R 4899 0 R 4900 0 R 4901 0 R ]
+>>
+endobj
+4863 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.253 735.141 160.187 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6dc0dda3c135fb3512486192a52e0f8b) >>
+>>
+endobj
+4885 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.253 707.246 161.307 715.73]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_af07e6f343402f0f9280ede65d4b26fa0) >>
+>>
+endobj
+4886 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 625.531 118.189 633.912]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+4887 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.689 625.428 137.619 633.912]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+4888 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 597.533 152.718 606.017]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+4889 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 569.557 135.638 578.328]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4890 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [179.959 569.637 203.157 578.121]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+4891 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 539.85 123.184 550.226]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4892 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.645 539.85 174.474 548.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+4893 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 525.106 134.715 534.643]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4894 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.665 375.233 191.873 383.718]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+4895 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [209.582 375.233 252.98 383.718]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+4896 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [322.174 375.233 357.054 383.718]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4897 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.733 351.242 152.594 360.013]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4898 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 233.939 148.111 242.504]
+/A << /S /GoTo /D (_figure_8h_source_l00048) >>
+>>
+endobj
+4899 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 232.128 207.279 242.504]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4900 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 80.598 129.247 88.914]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4901 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 69.746 249.911 76.959]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+4909 0 obj
+<<
+/D [4907 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4910 0 obj
+<<
+/D [4907 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+4911 0 obj
+<<
+/D [4907 0 R /XYZ 70.866 665.296 null]
+>>
+endobj
+4912 0 obj
+<<
+/D [4907 0 R /XYZ 70.866 499.792 null]
+>>
+endobj
+862 0 obj
+<<
+/D [4907 0 R /XYZ 70.866 478.675 null]
+>>
+endobj
+4913 0 obj
+<<
+/D [4907 0 R /XYZ 70.866 432.098 null]
+>>
+endobj
+4914 0 obj
+<<
+/D [4907 0 R /XYZ 70.866 338.58 null]
+>>
+endobj
+866 0 obj
+<<
+/D [4907 0 R /XYZ 70.866 218.026 null]
+>>
+endobj
+4872 0 obj
+<<
+/D [4907 0 R /XYZ 70.866 175.907 null]
+>>
+endobj
+870 0 obj
+<<
+/D [4907 0 R /XYZ 70.866 148.853 null]
+>>
+endobj
+4906 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F22 2379 0 R /F67 2922 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4929 0 obj
+<<
+/Length 1960      
+/Filter /FlateDecode
+>>
+stream
+x��M��F���TNR�5��a��T�q�NRq>l%�,��$	�����0×@ ���{�B��=�3==�`���ދ�7���[�{>�R2ou�)�|)=�)��[m�7s�XR��_����77���q.ޮ~xzK���Y*�g9���O}i4�H1b��������];�R���S_�}���ZH<��8�B{�Ux� po&ks�q-������3#{�t��#f���޼������Ӿ�!���`Hp�c�����;WpO!�0��d10TI�p��C���9d�(��S��V���_N�x�6O쨆��$i!����ބ��>�eQ�˗#<�D�g1<M�4N�K���+{��\��"��w��z1�D�� ������Jמ�ir����Ĥ�P>�!B#!��Zi̲)b����=3�M��A�%ED���%��3�#��>㍄R�X`�#���$b�7߉
i��_>?�[
�����h{��ZbkVw�])��6=7��Z�[�Uޒr�LnY�l���Ƹu���%��:K��n�dQG�?���N������ >�.l~x�����!=�N�;7|�q�����퉴n�靽nB���}i���pA��sd=��0N3�:���&����eA�<�C�@81r�N�
+�"����u�Z���X���'�����9"0Ɗ(v�j���R�G�r����F0�|AǪT���*$�n*���f����G+n�O$���7�~�͎�]
+����,u7�e��w�����![��f����Փ�$�х9���Ѕ}��%t�S�MW]�I}z�������S�-;�%��G�
 ��1���t�]m0C>��$&�1R�
L�"�%�9�F�(�S�IR]�Iuσ4Ni'Gu���A�܇�&x��x;���)�ژ֋7��I�L���Qq�m�g�/C�@�C���q*���+͏46���5=0�3����	�p6�D�j��\���&�5E�#��J��K�"�oI�d�S�MV]�9���4Nm7Mu������sPn���7����@��F�h�d��_�^��u��m.@��|�lM�����z&>\�p2�k��n��J˂�y�Ʃ����粖bPڇwV��*�"w�<�Y3}OL���n�;H�#s�˜���Y�,�;s��� {��۸q8����p��,�J�R��R2x���B+Wn2o�,$uC8Nw7�u�o�䭥�q��>�`wp�L�u
�hQ�8)�8Ț[o��R!����8;4��מL�ŀlĵ�6(,.���P�{�	Lh�P7
�I2�D!MըU���2z�Iȣ���y�ǩ�&���"{�`��8�=>
+N��cb��y�&�����Dή������GJ��ķ�9���n�n���$<_6#(�OJ�����p�7N�ʨ�-�����/�Ħ��`����(F���p�4�iU����Բ�\�:�-A�py@V��ڥ�C�Q}��F� {܅������剽D��g~|<��ء�DB4��4��L��fB�=�*iv�.h�<iN���I�����77v�O�5�
+���x3��?�`P
,R��2�g�FA���Q���s��-��x�m�7oT��IK���f	���ҭaN���x/�����}{L�՜�M��m�dAQhG�O5�u��8�����,m�������)�B�}�|����zx&M5�8,�W���’�’�ϊ3�+xI|X�\6�Xu��}�ִRI͆ڬb��رZH���L�_�J��4�e�ũ"̎f��yrh�I���K�M�mB�y[���U"4xJ�O�&����RyorS�7
WWF��L�k
+�����8�Y2No3�
��]���B�tE�^Q�S�1�M�i�� �Z�ڟH)����"
+��ɿ@��k��*>���S��r��t�~�Ca�+>�01��lM�����l��09]y���܃
+endstream
+endobj
+4928 0 obj
+<<
+/Type /Page
+/Contents 4929 0 R
+/Resources 4927 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4870 0 R
+/Annots [ 4902 0 R 4903 0 R 4904 0 R 4905 0 R 4919 0 R 4920 0 R 4921 0 R 4922 0 R 4923 0 R 4924 0 R 4925 0 R 4926 0 R ]
+>>
+endobj
+4902 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 699.062 157.248 706.725]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4903 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.813 699.062 251.716 706.725]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4904 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 688.21 181.158 695.072]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+4905 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [217.422 688.334 238.543 694.77]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+4919 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 473.596 153.096 482.16]
+/A << /S /GoTo /D (_figure_8h_source_l00218) >>
+>>
+endobj
+4920 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 471.784 212.264 482.16]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4921 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 363.861 129.247 372.178]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4922 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.617 363.861 230.302 372.178]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4923 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 315.264 153.096 323.829]
+/A << /S /GoTo /D (_figure_8h_source_l00223) >>
+>>
+endobj
+4924 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 313.453 212.264 323.829]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4925 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 157.546 143.593 164.759]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4926 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.595 156.442 261.972 164.759]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4930 0 obj
+<<
+/D [4928 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4931 0 obj
+<<
+/D [4928 0 R /XYZ 70.866 650.559 null]
+>>
+endobj
+4876 0 obj
+<<
+/D [4928 0 R /XYZ 70.866 461.91 null]
+>>
+endobj
+874 0 obj
+<<
+/D [4928 0 R /XYZ 70.866 434.715 null]
+>>
+endobj
+878 0 obj
+<<
+/D [4928 0 R /XYZ 70.866 299.209 null]
+>>
+endobj
+3038 0 obj
+<<
+/D [4928 0 R /XYZ 70.866 254.491 null]
+>>
+endobj
+882 0 obj
+<<
+/D [4928 0 R /XYZ 70.866 227.296 null]
+>>
+endobj
+4932 0 obj
+<<
+/D [4928 0 R /XYZ 70.866 107.94 null]
+>>
+endobj
+4927 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F95 3709 0 R /F79 3573 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4953 0 obj
+<<
+/Length 1369      
+/Filter /FlateDecode
+>>
+stream
+x��Xێ�6}�W詐�5CR�E��@�t��&F_�A��i[�-������ËdI��qv{	���D�rf��[z�{5�f6yvIO���Л-<����1E�x��w�����BN�!|g��X'UL����"�mT^'uV�z������	���#-��H��K7���؛û�Fa,�?�ʍ��Ho���M~�`'f;"��TNx.F���[9ߪzW����W.��o_`v�)E ΔH�#��]�A�\�=D��h�>��We����F=�O�Na���N�@b�������f�ʜi�<5V1�*�6�*ˢ��mY��N3��^���`���y��J��M�T* �G�9�N��^��1�yv ����c
�4I#9��ba4���M�ܕV����J=����8RR+�D���`J0�~�5�Ri@���/e�/���0��d�'P,0q�!�<3���l�I��JwV�\Z4��r�#&y���oU�l�F$����Y^�ɟ����	�c��jd�)��1�	A1sapW�կ�{��ﯯ���� 	��~���<n�����C��N���*��:�Z�:�j�Z���O�yU�>�8O�����g�c~aW�	+�)x�,�O�;5C%�q�:&�P�r5�!��6�f�e�MLA`��@;&5���WA�ޖ���ܮH*;�������W��v�Ij0le!,���RG����[mU�i>i�z���՚J���pC0�G
òM�a�������b���-�\��c4yt=�.�VU��u�uL�<�:4J+���x��Tm5�V-W�� �bm&DBG�?4������X�� �㐝���o���"�9�"�����H�`j	���iZ��NN�2���`&F?rGэ�b4��y���A1!�u/4Iz>�m�S p�OKۀ=��b�(�Kt�BS�x�]�pa���I��"�|I9�ӆ��l1��ZGЙ��lkVME�pR��Ws��\Y��!YW[�����2(���r��(堕��'�R.t�\�UeR[�}vf>D����!��p�N�N�{���J���8�T~ZU�h����-�>����E,�(��G�E\P���\��2@��n�C�!`x׭0(�#ѷ�2���p�~��	�<��ňĮ�:MUsk�f�,5�M#Zj�)��L�W=��y�8��N�3���S0� edf�o#W�� �h@��O7��?J<O"L�P��|�(>��|�|����M�>���ӟj�{�n:��AZn�5��gs5o�q~�D��x�rԸJr�PX�Ei?��ג��Ε1S�_pA�ܟ�	P�N�,ވ`D��+�W*׎؜�NwO����4�{w��e��C��
+endstream
+endobj
+4952 0 obj
+<<
+/Type /Page
+/Contents 4953 0 R
+/Resources 4951 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4870 0 R
+/Annots [ 4935 0 R 4936 0 R 4937 0 R 4938 0 R 4939 0 R 4940 0 R 4941 0 R 4942 0 R 4943 0 R 4944 0 R 4945 0 R 4946 0 R 4947 0 R 4948 0 R 4949 0 R 4950 0 R ]
+>>
+endobj
+4935 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [92.299 745.451 133.16 754.222]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4936 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 710.739 93.059 719.192]
+/A << /S /GoTo /D (todo__todo000006) >>
+>>
+endobj
+4937 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 675.885 153.096 684.449]
+/A << /S /GoTo /D (_figure_8h_source_l00248) >>
+>>
+endobj
+4938 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 674.073 212.264 684.449]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4939 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 566.15 153.158 574.467]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4940 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 555.299 205.068 562.512]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4941 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [395.621 528.607 423.024 538.983]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4942 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 392.918 153.096 401.483]
+/A << /S /GoTo /D (_figure_8h_source_l00278) >>
+>>
+endobj
+4943 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 391.107 212.264 401.483]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4944 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 301.782 143.593 308.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4945 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 300.678 271.536 308.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4946 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 203.551 153.096 211.932]
+/A << /S /GoTo /D (_figure_8h_source_l00271) >>
+>>
+endobj
+4947 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 201.556 212.264 211.932]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4948 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 111.127 129.247 119.444]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4949 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [197.813 111.127 257.19 119.444]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4950 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 100.276 205.068 107.489]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4954 0 obj
+<<
+/D [4952 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4880 0 obj
+<<
+/D [4952 0 R /XYZ 70.866 664.199 null]
+>>
+endobj
+886 0 obj
+<<
+/D [4952 0 R /XYZ 70.866 637.004 null]
+>>
+endobj
+4955 0 obj
+<<
+/D [4952 0 R /XYZ 70.866 505.693 null]
+>>
+endobj
+4879 0 obj
+<<
+/D [4952 0 R /XYZ 70.866 386.859 null]
+>>
+endobj
+890 0 obj
+<<
+/D [4952 0 R /XYZ 70.866 360.279 null]
+>>
+endobj
+4877 0 obj
+<<
+/D [4952 0 R /XYZ 70.866 197.308 null]
+>>
+endobj
+894 0 obj
+<<
+/D [4952 0 R /XYZ 70.866 170.728 null]
+>>
+endobj
+4951 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+4978 0 obj
+<<
+/Length 1517      
+/Filter /FlateDecode
+>>
+stream
+x��YKo�F��W�H�f��5��<��@SG��1FZ�D$R�('���}�)Y��M�����3߼gh�"��2�xͳ(CZJ�o#�Q&e�4E�D�itg��$�*�?��������l]��f���kJ#
w�tw9��[?�=��Ҟ'�/<�oa� K"Z��~~���|���ƉıY,�yc�Ε�M�զ��-Ƶ��DG�ƣ�F��H��,CH5Y��op4�w�"��΢���"�!�<ϣ�?F8(@	�h��j��Z$A��շ�Y6EU����Ad�",�1d�*�:dߙ��"RL���c4�4��Ё�S�b��P`@
+D�^�fzyY[[���|2u]��V"���
�� `G��(�wu�
��~5	�qk+�U�����v�P��u��T��jU��;�l�nV����g�<v�7;��7h_#��%?C#��$�q�{��i�7RCb�qvz�P�u�0�
������F�#����>,��h���J�����‚����;)2ϥ�����Ey Z0AL�sY�B�`��}�[����8��g��G*�8�T�������
+�5�g��� A!	=˓�N�u\��)��4�zPd�u�l
+ِE)�梽}k�_WDw��%�ɺ��M�`%�gA�7���ڶ�(
�_T�<×�#ƴ,��6o�:/Js�$�>�]�tm	��I0m½��)xЏ�(�e�N��GHR�1�k�O?b�������
+�p�����m_�I�wN�L�
W��D"��f�4%d�$��b��`)��m��9���������9%�m[
+��V����>�j�n�b�xeBF�V�c�[�Ck�6�}�6�S���S8�'`IO��Ӟ�R%f��)�� �~ U|����L3�	���Vj�x_��:��x��L�a�
+4K��h�	�2�@��9�$�_�Ns�'$n�ץ�l�Z�{�D�qD��^���S(�)�}q_��@�v�fHW����.#@��BX���US�gGu]��y5+&�n�՝��w��Á�����5 N�ҋ�^N�����붶8�8�,X�e>����7Xmi�C�����*[����"�b�LWΘ=X[}Z|-AhZ�i�#�f��KQ���߱��]����T���}�s/�o���.°k �!֯Ãy<���N���^�=T|R���ք�Sd��@�w��o~hj�����,f��9���2J����(���(�2•i>չM,v�9�$��K�^[��~]<$]�T�l~����2�b� ���R�d�=D�n!
�I�Y|��bM�D��f����T�~Bg�4��l�^�6wm��ۅ�WYo��p0D;{b&0�j~|ڥ���ϣ�'f����cb&��=ab>������tk�3�?��~���)Rd�f?�B�o;�@�F��3��Ƶx��=�ƾzZZ�!����7�7�/��ƬW|�N�m��#e�����{4�	%�<�k~�/�����u
.ܧ?���)M�wMx;B�痕�46��)���t�U
+endstream
+endobj
+4977 0 obj
+<<
+/Type /Page
+/Contents 4978 0 R
+/Resources 4976 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4870 0 R
+/Annots [ 4959 0 R 4960 0 R 4961 0 R 4962 0 R 4963 0 R 4964 0 R 4965 0 R 4966 0 R 4967 0 R 4968 0 R 4971 0 R 4972 0 R 4973 0 R ]
+>>
+endobj
+4959 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.205 605.875 218.608 616.251]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4960 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 572.903 153.096 581.468]
+/A << /S /GoTo /D (_figure_8h_source_l00259) >>
+>>
+endobj
+4961 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 571.092 212.264 581.468]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4962 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 463.169 153.158 471.485]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4963 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.655 388.957 246.294 399.432]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a57567b4cfe6b370e9af7c3ef6f10be6d) >>
+>>
+endobj
+4964 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [266.735 388.957 370.184 399.432]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a95274da091367dba743e0cf0052b4dd7) >>
+>>
+endobj
+4965 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 365.84 153.096 374.405]
+/A << /S /GoTo /D (_figure_8h_source_l00254) >>
+>>
+endobj
+4966 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 364.029 212.264 374.405]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4967 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 256.106 153.158 264.423]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4968 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 244.151 157.248 251.814]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4971 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.723 177.532 170.13 187.908]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+4972 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 142.589 153.096 151.153]
+/A << /S /GoTo /D (_figure_8h_source_l00284) >>
+>>
+endobj
+4973 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 140.777 212.264 151.153]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4979 0 obj
+<<
+/D [4977 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4980 0 obj
+<<
+/D [4977 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4981 0 obj
+<<
+/D [4977 0 R /XYZ 70.866 707.324 null]
+>>
+endobj
+4915 0 obj
+<<
+/D [4977 0 R /XYZ 70.866 561.218 null]
+>>
+endobj
+898 0 obj
+<<
+/D [4977 0 R /XYZ 70.866 534.022 null]
+>>
+endobj
+4881 0 obj
+<<
+/D [4977 0 R /XYZ 70.866 354.155 null]
+>>
+endobj
+902 0 obj
+<<
+/D [4977 0 R /XYZ 70.866 326.96 null]
+>>
+endobj
+4982 0 obj
+<<
+/D [4977 0 R /XYZ 70.866 207.604 null]
+>>
+endobj
+4882 0 obj
+<<
+/D [4977 0 R /XYZ 70.866 138.568 null]
+>>
+endobj
+906 0 obj
+<<
+/D [4977 0 R /XYZ 70.866 112.211 null]
+>>
+endobj
+4976 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F67 2922 0 R /F73 2949 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5004 0 obj
+<<
+/Length 1487      
+/Filter /FlateDecode
+>>
+stream
+x��YɎ�F��+x
+(�j���A ��X�el�DkH�LQ3��O��%R5q��'JT����U���f�^
~���:�(��E�O��HK��"I��4��~���$H+�ٻ���j5Q����d�Ȋ:��0�����S��K���<�,�p4���D�DGw�rq���&�<z7�m���<R(Q�l�	9��m�Omt������D�#�q���o��^�u�yK��K�ly��D��~oLw���L���������O�2<�C�O��V���j���|�9���]�)�0���J��9�����aI�(C		�l������R Έ�-ČN�\2Q�7�]V;p�7��`�b>-�r�U��q}�n���u�A�cj�����@�Z��,G��,0�g�@l�_���i�.�"��hç4�W�>	�`"7�|d�"�*AR�C>��"M���	�J�_�(���8�-�I0�XО�6VHФ3�j'*�HB��u�6�	���N�G�~l��tZK�Z!�'�}P���"`��c�8��H�j�<3�V�vt�j��q�y�u�ScA�V�������?�M����r]�CO�����m���Ha��4#�vHq��י��#�1��2�{��b9O�kj�CL`��f���ˬH����'����,���F�$H@o���R0ꍹ�?d�[��Ml�IY��ËV�NdW�V�X1�W�����hp6@B�`��B�
#m�(�b��\��Y��!n�(�-��m��6�fS?1��Mm��1�����u��*�s����u�#dE��N
+�Ml�1���@�ץv�@`�C�ŗI�4C�0���f/S����}�'8gHju��8�>��i��\�
+X�ӫ+W�b�}̪��Z��+���h�4�|��1�q���8I=eC��w�C��a��8�4�W��@w`�n�p��Ƀm��s��{�d��k}������Q��	�1$Otoi
$�h�C�2�^�e>\1�4o=�6
+vD[3-Qx�8$�{Fl���1�ߢ��}k��٨�p����P��^�K�B�	Kz���H�e0:�G��f����BZ�[B�4�t��z9=|����]A���&�������SDu�UNؠ���o�^��'������1�t���9E���e�΋�����a6�󝻷���I1�� �U�.�Cf��Hꕽ�5\'�ba��
5�6�`1"�Kw��&+\�i��7y���������je�)n����(���8�-W��ry�#D��ݸ��̇�+�JD���$�����+�"���F��J�Эj��C����Qx0Q��\������/��E><�������x��"�'`�_�vm�:N����@�aǛ�w��
:;�}��q���8���ѩw��b���?/wx!���9�D�?Ja.(�P.8�Kx�H����@	���އ�H�1����{��9�
h�d
+endstream
+endobj
+5003 0 obj
+<<
+/Type /Page
+/Contents 5004 0 R
+/Resources 5002 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 4870 0 R
+/Annots [ 4974 0 R 4975 0 R 4990 0 R 4991 0 R 4992 0 R 4993 0 R 4994 0 R 4995 0 R 4996 0 R 4997 0 R 4998 0 R 4999 0 R 5000 0 R 5001 0 R ]
+>>
+endobj
+4974 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 758.837 153.158 767.154]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4975 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 748.11 152.466 754.545]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+4990 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.823 682.156 157.739 690.64]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+4991 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 635.337 153.096 643.901]
+/A << /S /GoTo /D (_figure_8h_source_l00291) >>
+>>
+endobj
+4992 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 633.525 212.264 643.901]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4993 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 525.602 153.158 533.919]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4994 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 514.751 205.068 521.964]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4995 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 337.159 153.096 345.724]
+/A << /S /GoTo /D (_figure_8h_source_l00298) >>
+>>
+endobj
+4996 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 335.348 212.264 345.724]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+4997 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 227.425 153.158 235.741]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+4998 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 216.573 205.068 223.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+4999 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 204.742 152.466 211.177]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+5000 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 69.686 153.096 78.251]
+/A << /S /GoTo /D (_figure_8h_source_l00308) >>
+>>
+endobj
+5001 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 67.875 212.264 78.251]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+5005 0 obj
+<<
+/D [5003 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5006 0 obj
+<<
+/D [5003 0 R /XYZ 70.866 710.335 null]
+>>
+endobj
+4883 0 obj
+<<
+/D [5003 0 R /XYZ 70.866 623.651 null]
+>>
+endobj
+910 0 obj
+<<
+/D [5003 0 R /XYZ 70.866 596.456 null]
+>>
+endobj
+5007 0 obj
+<<
+/D [5003 0 R /XYZ 70.866 477.1 null]
+>>
+endobj
+5008 0 obj
+<<
+/D [5003 0 R /XYZ 70.866 413.401 null]
+>>
+endobj
+4884 0 obj
+<<
+/D [5003 0 R /XYZ 70.866 325.474 null]
+>>
+endobj
+914 0 obj
+<<
+/D [5003 0 R /XYZ 70.866 298.278 null]
+>>
+endobj
+5009 0 obj
+<<
+/D [5003 0 R /XYZ 70.866 156.904 null]
+>>
+endobj
+5002 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5038 0 obj
+<<
+/Length 1474      
+/Filter /FlateDecode
+>>
+stream
+x��X]s�6}���fb�$@�L�3mw��L��f=�C6Ėv1�����r ����4m<����~	�꼛�8���"'"��3[:��HGƜ��εƼ)������_��/�նT������N{��{��ջ�3=pFA�53/��A�f��X.	��f�룸?eIU��'��֛,����RK��\��9N�A�2D�����	�P����"�U�����:X�t(���yВk'}>�3����	=�\��,�	�ޔQJ݇/U��!�3v��#I,)��ԙ��D0��׍eZR�I?"<��X��	#�Ի�ʓ58D�3�83�4����pb7�b�b�����h����z7(3e"���0`$C��������%�Ģ��9�Z�az�;�:RH�(:���h%fg}�z��1����`<9n��i@$���0��E���F�a��^��,Ӆ��Z]ߧe�M��n��d�T0H�/ �
�;q��t�'�n���a�S�K��Ӈ�<-Q�~Qs6/�RU�"_���,ׅY��oA&��Z'���p��$ݑ�A�����.��r������6e�н�U�=�]HJoP�N��,�j3�����@��brn4�5
&0��"_z>u�塻N���j]�
c`O[
�x���+X�&��n��"�I�8���4tB��Z��(\�h�u��쌒���y�e�
+,�bmf�iy������{��S��T�S�m��w���~��r�!>C�n9Xl��Ju��m�W�^3����E�VZ�[
����U��kRh�j
�G����'�ȼoͶ�����)�7�3�<OMv!DR�g�����8�����Z�Ύ@�Ũ܍�;`FP ���b,�Z�@��C���yL�>O���hSH�K�}L9�3�/��
�&�'��,�����I��C��=�dp̌��)Z~
��-Gn�p�S���䟶�ꓤ��&s��_q&��kL��fp��R��q���x�,���L���i
+ב?�Qe�V�趪�uu�f���tnV
+��Cϊ�M4A���Gp��jW�R�c�{4H��=Vk���f�P�oH,�i�	��ծ������ZXY6=�aHx�7���+�e�T����;;x�*��f0����j�XY�c����A��)�y�U��S�X�Aa��oxK��>���gÃ�(}I"���<k"�8��'� m"J��^�L~���
+��/�a,LO�#�C�ONhs���X��U�ou�>o�:��b�]���Q>�P-,�"���������K��p�	W�>�٫�x� Qq�|��1���ţ�s﫚��
+:�TC�K���E�����?�� X�A�5��e�������hZ����ٖ��]�ms(<�^��j[��A�,h��t��#-k?{삦������|�s;1��*	x�ת�+� \���*���T��2i�=��N����
-��7R��
+endstream
+endobj
+5037 0 obj
+<<
+/Type /Page
+/Contents 5038 0 R
+/Resources 5036 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5040 0 R
+/Annots [ 5013 0 R 5014 0 R 5015 0 R 5016 0 R 5017 0 R 5018 0 R 5019 0 R 5020 0 R 5021 0 R 5022 0 R 5023 0 R 5024 0 R 5025 0 R 5026 0 R 5027 0 R 5028 0 R 5029 0 R 5030 0 R ]
+>>
+endobj
+5013 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 676.071 119.683 682.63]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5014 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 674.967 181.85 683.284]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5015 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [96.062 639.419 121.465 647.8]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5016 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [345.105 637.424 372.508 647.8]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5017 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [311.326 627.36 345.534 635.844]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+5018 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [364.278 627.36 407.677 635.844]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5019 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 613.974 113.705 623.872]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) >>
+>>
+endobj
+5020 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 530.79 215.868 539.561]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+5021 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 505.97 153.096 514.535]
+/A << /S /GoTo /D (_figure_8h_source_l00229) >>
+>>
+endobj
+5022 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 504.159 212.264 514.535]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+5023 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.037 396.235 191.414 404.552]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5024 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.655 322.024 246.294 332.499]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_af378abd9212084ebb270383d3cd4300c) >>
+>>
+endobj
+5025 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [266.735 322.024 370.184 332.499]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a9b112a792be9ae8647bc58fd4e28c5bb) >>
+>>
+endobj
+5026 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 164.906 95.773 172.569]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5027 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [116.517 164.906 175.895 173.223]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5028 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [343.222 139.318 371.629 149.694]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5029 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 116.492 148.111 124.568]
+/A << /S /GoTo /D (_figure_8h_source_l00077) >>
+>>
+endobj
+5030 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 114.497 207.279 124.873]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+5039 0 obj
+<<
+/D [5037 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4590 0 obj
+<<
+/D [5037 0 R /XYZ 70.866 773.016 null]
+>>
+endobj
+918 0 obj
+<<
+/D [5037 0 R /XYZ 70.866 745.821 null]
+>>
+endobj
+4916 0 obj
+<<
+/D [5037 0 R /XYZ 70.866 494.285 null]
+>>
+endobj
+922 0 obj
+<<
+/D [5037 0 R /XYZ 70.866 467.089 null]
+>>
+endobj
+926 0 obj
+<<
+/D [5037 0 R /XYZ 70.866 307.78 null]
+>>
+endobj
+4874 0 obj
+<<
+/D [5037 0 R /XYZ 70.866 262.955 null]
+>>
+endobj
+930 0 obj
+<<
+/D [5037 0 R /XYZ 70.866 235.76 null]
+>>
+endobj
+4875 0 obj
+<<
+/D [5037 0 R /XYZ 70.866 104.623 null]
+>>
+endobj
+5036 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R /F67 2922 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5053 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/FormType 1
+/PTEX.FileName (./class_s_o_i_l_1_1_function.pdf)
+/PTEX.PageNumber 1
+/PTEX.InfoDict 5054 0 R
+/BBox [0 0 500 541]
+/Resources <<
+/ProcSet [ /PDF /Text ]
+/ExtGState <<
+/R7 5055 0 R
+>>/Font << /R8 5056 0 R>>
+>>
+/Length 355
+/Filter /FlateDecode
+>>
+stream
+x����n�0���>�=L����X�.R��7��" 
+���8�qB9��g�?�G!Q	�~�x^y�9�8�j��_�F����#�2Q��+T��7�x�s������3�_/���s�?���(a	�PZR��C��(��h�2P��ƽ�A����J��Y�=[-4P܇`���V���a���z��Z9��M�J0�j�ؽURc�e����n#QG�2G�x/��<_է�寪o0����AI��"�Z2}��*�p���B�o)�GɆ�����56���
+]�-�BOGT̅�:��l�M*`��ʼ��O�6\F?��A~<�A��	���1*5�1Q�=ZK��#�W
+endstream
+endobj
+5054 0 obj
+<<
+/Producer (MiKTeX GPL Ghostscript 9.25)
+/CreationDate (D:20220227230622+01'00')
+/ModDate (D:20220227230622+01'00')
+/Title (ClassName)
+/Creator (Doxygen)
+/Author ()
+>>
+endobj
+5055 0 obj
+<<
+/Type /ExtGState
+/OPM 1
+>>
+endobj
+5056 0 obj
+<<
+/BaseFont /XHIQQM+Times-Roman
+/FontDescriptor 5057 0 R
+/Type /Font
+/FirstChar 58
+/LastChar 117
+/Widths [ 278 0 0 0 0 0 0 0 0 0 0 611 556 0 722 333 0 0 611 0 0 722 556 0 667 556 611 0 0 0 0 0 0 0 0 0 0 0 0 0 0 444 0 444 0 0 0 278 0 0 278 778 500 500 0 0 333 389 278 500]
+/Encoding /WinAnsiEncoding
+/Subtype /Type1
+>>
+endobj
+5057 0 obj
+<<
+/Type /FontDescriptor
+/FontName /XHIQQM+Times-Roman
+/FontBBox [ 0 -14 775 683]
+/Flags 131104
+/Ascent 683
+/CapHeight 676
+/Descent -14
+/ItalicAngle 0
+/StemV 116
+/MissingWidth 250
+/XHeight 460
+/CharSet (/E/F/H/I/L/O/P/R/S/T/c/colon/e/i/l/m/n/o/r/s/t/u)
+/FontFile3 5058 0 R
+>>
+endobj
+5058 0 obj
+<<
+/Filter /FlateDecode
+/Subtype /Type1C
+/Length 2637
+>>
+stream
+x��VyTSW~1��7�2S��"����.*Z�Ul�ZE�c��EE������`��Hؼ�;BY�&��k]��NG��Q�pڞ��ӎt����̙hk�i��s��߽��}߽"�o!����Y�aY$����}/�E|�<~��f�g�K�V�ܟ��b���F����<���_��՜�2�WtR4�����g�,Y��ՙ��L�~n͚5t����B�3u��^�_r
��b�\(�04����j
Coڡ�ߺ=�~:b�.:��2�d
�2�hԩ�R��h
�3t:��5st*�MSsjVk�_1�ɴAǤ��&Ɣ��|�����g�
�N�
t�>Y�1i4��jm�Ƙ����Y-G��,�gav�b
�!U��q4FT�o����L�|�56�l:^�Ʀ}��`��Z�1&·���ij�N�lƸؕN��
�hPk3�/��LF�>M�f���r??�GY'�t��^vv��j��h�C���R�z���vv
��#��&Y�S��~�$�-�Y����jܪLev�"�Qњ�	b�"Q�SD4��x��!�%���b��k�7����k�v"�X�g��#r���D���?,>$�V�A�O%%o��ȷ��������/BQy�_�����&Q����LVU^WZ)o�u�B(0�a�+��(�
�*�
p�B����
��:ө٪��vK�oQ���k�g(d_$^|%Ac�!�
\e��jGtnFtz��^Q���s1*�d�#+�r!�/�Q 
+��H�,�RxXage�W��ɾ�
i��r���p�����	y����t���jGL��o�H9����%�"� <)�&W���K�a� 
+�@��1��@V�t�Y6����)!�IoUU��Hۭ-�Q]d1z\r�KJKM��6����p�ͺ������# ����|�M��Iq5�P�T^[������D�P`�˵-���7�D!#;�SU[謗7��!��n�洩1��w+�
+�b�v�	W�m�A�?�3�7�\N��d���C�z�/���	����7氯/�Lh��Uؚ�
+iѓ�c�bmx�
+����ym|h��=�h��ҥ���}Y
+�8Ȓ���C��`Pt�9*)iK��X��62nS�@����ׇ��&(q?��4���9];엨\aE#Y]WQ��#U�¦�����S�|�����w+�]���{���{O^�S���~�9� �
+�M.�N�>F&��Qdݡ���`�A���Nړ[DI��W�BX\ZR^BI��-�'W�%]93�ynPn���[�F�n���ҩ�d�L:����G��itqZ�$�P�7��oVS��n��p�l!W;�^���6T��d�tQ��9��9/B�q�rd�b��)pbm�������B2�QR��V�\-np�xJ��-��:�&/Ri��*�-趰�N7Ya%T����>8r���G>6&	ReE�ٶ�����|�����$��
����8ܳ��<�	~0�M��8ܳ&0U����Ps�;�ߝCm�Yg�d�E�� �*��^5����hj�]����7��2�C�4�(	�U���W�uS�?�V��l�0DBjŶ������Í��:E���m5����=7�Z�;�@F�">���k)�ۡH|�Xs�������w���������(L�g}�v��I��K��`�8�����������7ba<�kf�{St�p
%�o����^AĨ\�����o>2�a'��<���6��wXt��:D��f�dB�"<!$,Xq~���O!��Q�Q�7ک�w�k���@*��$<i�~w�2(̇*����=�ef�3����5�?���w!�i�_GOQG�δ_�Ԝ"�Cg�`E��4�E�R
ڇ�˺KZu�[�|�X�;���wp�6��M=��wV�Rڂ;�_��~���]sr����k�T����TW���{�xV/���2N0�z�o}������9�GƔ��RPգ�7�5�t{F�)8f?��˼���%�'L���:��!gކ܇u���P<�X�
+��)�����#���C]NZ���a�'dg,)��`ɝ�jCNޚ^�Y���w�,��XAMiCYci-�a+����-�S��[+��|hH�8�#�q˶s�ގ�^/סU��چ�m��-p����q2
+�7�,�tBK����6����N���׵�s2��/�B~�̹�.��^�
ԫ�	W*/��x9G�	��vR���64���T�qaO֑c�ǂ�����D�'<:�x�r�qx��0:r�Ĩ)cH޿�)�Y��}���ף"T�9\=C�������	L�
+[���5�"a��C�Gu�h���8Y ��t��H��A~p����'����/m(���@�m��^6��lve!.��
�yu����b-�s�%(`ƃ����$R���#�k|�����=
+����u�лAL�����e5u��]c-C�:ޞ�Y!`وr8"}}�� ����R��
���ԥV]�B�������.��u�첬2{+<�R�z �u;�w/�{v�D��”ԇ�
+g�W+V�~�R$�>Q����h�����]����Y
+A��ɿ�m|L�n#����W��?��� A�yVr'
+endstream
+endobj
+5076 0 obj
+<<
+/Length 1119      
+/Filter /FlateDecode
+>>
+stream
+x��WKo�6��W��"��!c[��Yt[l�{��ʌ-@����I�}�")[��8�.Z�=� ���7�
gp�pp5�m6:��T�P,f���H	Ș"A��<�K1���� HI��ճ<��IH����f��&i��0�����눀(H�R)�h������>���*xh%WA�⑹">�>��f�M�۩!(Bt���V�szɣ@�XbbN� dp���P�W�<i���w$�B�K��w{t	ĕ���Z	�
+�}f�;dEc'�v��!�?
���E�Dl�_Z�-���A~s5�RB%"��s{xv���H?�ܶ�|������2[l*�;1�NDc�hp?���9O<�!z���S�i�z�!Ƿ�lt����=��N��Iıx�G��M�Z��.���,��̓&9���	�c4	Ym%�f���ҥ���r����/���E��u��z�(�^N�Qgi��Ov��&P�`S��6�|��g�a,�?�\��Y�R{[c�<+�0�	.zNw��7E�c�r�˚;`8/(��On�Ƚ�g�W�}��f>��M���~x�	����Y����5"�-�[7Gd�b�^�n���pݔ�z�q�ֆ��J�������8����kO�mt/\2�0��E�ݩ(ؿ����"��-z��/R���	�[�D��!��q8�uE���	}r�48������[�Ge
�ԏ�O�_�f�����҇�i�A��*(}����oh�4�:���{'�
+���&��a�jjlA�?^��X��κ���B�K�&��G�|�w<��<6mp!��:��r5p�U��9�`>˝�M�69JC!˨5��|��b\W�!��A���f[H1!��e��H ��O���qd����n�F���,R}��=�4u�^�yO4�{|���05T85���)+�|3wٞ�I��d��牭�D2�҄��7�C�2�� )�w],!`BxK�$*�Y�0��PZ�	�>��A����]0�
+1�m��46]��"\�
+�L�-�-�^�xp^BO���%[�(	�޴3��
�v��n-���@T����x�88,�H@�ze�e�n</�r�iaBx��� �
4���
+endstream
+endobj
+5075 0 obj
+<<
+/Type /Page
+/Contents 5076 0 R
+/Resources 5074 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5040 0 R
+/Annots [ 5031 0 R 5032 0 R 5033 0 R 5034 0 R 5035 0 R 5045 0 R 5046 0 R 5047 0 R 5048 0 R 5049 0 R 5050 0 R 5051 0 R 5052 0 R ]
+>>
+endobj
+5031 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 717.251 90.991 723.686]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+5032 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 716.023 153.158 724.34]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5033 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 669.417 148.111 677.982]
+/A << /S /GoTo /D (_figure_8h_source_l00056) >>
+>>
+endobj
+5034 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 667.606 207.279 677.982]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+5035 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.255 562.778 186.632 571.095]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5045 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 516.172 148.111 524.737]
+/A << /S /GoTo /D (_figure_8h_source_l00063) >>
+>>
+endobj
+5046 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 514.361 207.279 524.737]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+5047 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 410.637 114.901 417.85]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5048 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.338 409.533 223.715 417.85]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5049 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 362.927 148.111 371.492]
+/A << /S /GoTo /D (_figure_8h_source_l00070) >>
+>>
+endobj
+5050 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 361.116 207.279 371.492]
+/A << /S /GoTo /D (_figure_8h_source) >>
+>>
+endobj
+5051 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 305.958 166.894 316.334]
+/A << /S /GoTo /D (_figure_8h) >>
+>>
+endobj
+5052 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 227.134 106.248 235.618]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5077 0 obj
+<<
+/D [5075 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+934 0 obj
+<<
+/D [5075 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4873 0 obj
+<<
+/D [5075 0 R /XYZ 70.866 658.727 null]
+>>
+endobj
+938 0 obj
+<<
+/D [5075 0 R /XYZ 70.866 631.641 null]
+>>
+endobj
+4878 0 obj
+<<
+/D [5075 0 R /XYZ 70.866 505.482 null]
+>>
+endobj
+942 0 obj
+<<
+/D [5075 0 R /XYZ 70.866 478.396 null]
+>>
+endobj
+3193 0 obj
+<<
+/D [5075 0 R /XYZ 70.866 299.447 null]
+>>
+endobj
+946 0 obj
+<<
+/D [5075 0 R /XYZ 70.866 290.651 null]
+>>
+endobj
+5078 0 obj
+<<
+/D [5075 0 R /XYZ 70.866 171.846 null]
+>>
+endobj
+5074 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R /F22 2379 0 R >>
+/XObject << /Im5 5053 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5140 0 obj
+<<
+/Length 2064      
+/Filter /FlateDecode
+>>
+stream
+x��Z[s�8~����a��
+�$@�f��q�M*����O�0���tC�$��{�
h��dg���ƺ��#�`ce`���?�'/�9��!�1�X�#�1��1b,#��!B�y��ç��weq���7� ��煸]l�L$�XX6�939_���x�vy��	�E�A�E<y�1��ɗ_�A�G#���o�ȭ�6r�7��ɿOp�q�w}���k�����&������w-F^�W~�ζ[� q�ňxT�����1�X��̳O�t��1[ia/�6q���m��+�⼈NO�u���zWdr��w�>�C+	�z����#������ͤ��Iѓ����"N�	??d�H�[Z_�WP�T���h%NV�j+�8zB�L��x�"��z�n��@�p��K� �u�b�$�4M�t����+���'��i��K�`���."�`����b�
��f��4[��DSq`Q��/�P�����3�f��e�����w��;~=f,���d�U���%���3�g(��ĥ
��$Ѵ����&(����0��hո��=B��L5����ܻ��R��P?1�a��]��R?������"�F��4��Bl�)0k���. ��&���A]٪��ǎJ�U>�<��(xK�0xU�$q�b�>LT��E����;��yހ��,Y�Q��Q�ؗ��L:l�iFdrS��e�>1������@P
3:z~8�[+�v��zE��:|����Ş����ܧG�Ȧ�0���t�C�Uq"�)�|��e�⚉�/�H�/#u�g��B�-���
r���r�`S�%�/`�����<�߷�X�����#�i?#�r;�Y���(Jy�v́�	���HJb-B�!B� )�8��Y 9H��|�$�Ĺ �)�(Є����x��l�}N�u>A�wG��@ψ�D;|�5r�\.�OO?潈u�m���g1�y�ј�`����;���	��,��Ʃg
���4�9�d�h(�>^~�W}O�X�9b�����t��<v8�O�s��[�݄��������^!����>l����c���?:�;��m�n�!�4��dB������/H���jj�_:�k�k�Nr9���*�k�v�Y��Fc��@�����*�iq$�F\�Ĩ��gyj��G)�����$[۠���|�j�����=h�J�ú���������Awi�lQ�<�|�cM��Xn��.�C���X�y�nҿ���G�Gm�q"7�z?��A���\D|篧�I&�!��ۮ��wDZߤ�ނ?�T�b�i7�V������A�F�/Ahig����2�{����!;���/�̖z]�:%:�o�)$�b�jܯO�lA�o�`>�V.0��M���*�^�f�<\v�SD�c-Y�͏�8G�;�Z\.ӸI�	}�꼿0>������٣$�S^����"(?\^��Ǽ��w�#Y�5���o�J��[�YW��_��Fy`�D"$f��c��e>���$lD�$R�����BD(�T�K�� ���~���0�晀C���y&U��z�'%�(�ZvU
+(_�D����ʨ@f�綩����e"W���8������Ue9�˵P4šj�DXl�j�k�ݣ������P@�[TJ�[���q;��^m;b���i��)Drќ�e1�\�����-��-�u�HM����=)�rªKu���� ׍�N���4T�+���J+,�se��_N�Vo���B�.�i�]Oq�5�]�j�������\[Q�S��:-7��F[*y�rhGB_�KMV7a۝6�j^빵O^��Z��e'��n��C�*�4k����$��6d�B}t\\6H�+�9�Dp>9�|�@=��Ľ�FR�P��[����i�c5t�//w�T�Z�<��d{uV��ؕ3�7�HY*ݯ�Po�D�h���(3u�y��'�������#²F����׮u�7-���LȈJ�}mt�mn4�;%C���5ߘ:��VE����i*�v]�-�1u�u�5C�3�U~���1V�ljȂf�BJ�A�����Vrׁݢ�����-
+endstream
+endobj
+5139 0 obj
+<<
+/Type /Page
+/Contents 5140 0 R
+/Resources 5138 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5040 0 R
+/Annots [ 5059 0 R 5060 0 R 5061 0 R 5062 0 R 5063 0 R 5064 0 R 5065 0 R 5066 0 R 5067 0 R 5068 0 R 5069 0 R 5070 0 R 5071 0 R 5072 0 R 5073 0 R 5082 0 R 5083 0 R 5084 0 R 5085 0 R 5086 0 R 5087 0 R 5088 0 R 5089 0 R 5090 0 R 5091 0 R 5092 0 R 5093 0 R 5094 0 R 5095 0 R 5096 0 R 5097 0 R 5098 0 R 5099 0 R 5100 0 R 5101 0 R 5102 0 R 5103 0 R 5104 0 R 5105 0 R 5106 0 R 5107 0 R 5108 0 R 5109 0 R 5110 0 R 5111 0 R 5112 0 R 5113 0 R 5114 0 R 5115 0 R 5116 0 R 5117 0 R 5118 0 R 5119 0 R 5120 0 R 5121 0 R 5122 0 R 5123 0 R 5124 0 R 5125 0 R 5126 0 R 5127 0 R 5128 0 R 5129 0 R 5130 0 R 5131 0 R 5132 0 R 5133 0 R 5134 0 R 5135 0 R 5136 0 R 5137 0 R ]
+>>
+endobj
+5059 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.05 739.779 150.428 748.263]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_add2a16248e512d8efe813f2a27df73b1) >>
+>>
+endobj
+5060 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.633 739.779 259.514 748.263]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5061 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.929 737.995 298.341 747.959]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+5062 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [343.587 739.779 362.525 748.263]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5063 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.771 739.779 432.189 746.663]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+5064 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [477.435 737.995 522.913 748.263]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+5065 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 725.932 172.157 736.308]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+5066 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.713 701.006 157.84 709.49]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a8082d73f3dcb5567775dc2db5c291aec) >>
+>>
+endobj
+5067 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.836 660.341 173.643 670.717]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a7705b93afa26a8a3d3012d88a9fea04d) >>
+>>
+endobj
+5068 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [219.318 662.233 238.257 670.717]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5069 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.525 662.233 307.942 669.117]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+5070 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [353.211 660.449 398.69 670.717]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+5071 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [463.831 660.341 517.657 670.924]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5072 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.062 648.386 194.888 658.968]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5073 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [271.308 648.386 307.193 658.762]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+5082 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.836 609.613 173.643 619.989]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a6e6b923ef2cd3c534e831719ac6bbdb0) >>
+>>
+endobj
+5083 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [219.318 611.505 238.257 619.989]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5084 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.525 611.505 307.942 618.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+5085 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [353.211 609.721 398.69 619.989]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+5086 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [463.831 609.613 517.657 620.195]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5087 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.598 599.469 205.459 608.24]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5088 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [354.945 597.658 390.83 608.034]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+5089 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.474 559.804 159.051 569.261]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac3753d06d5d191ed95e63df56f51f680) >>
+>>
+endobj
+5090 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [204.003 560.777 222.942 569.261]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5091 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [267.403 560.777 291.82 567.66]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+5092 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [336.281 558.993 381.76 569.261]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+5093 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [445.648 558.885 499.474 569.467]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5094 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.85 546.93 176.676 557.512]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5095 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.096 546.93 288.981 557.306]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+5096 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 509.968 144.102 518.533]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5097 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 509.076 196.967 518.533]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a4cdaaf26db414f721aa0c79aaa38cd46) >>
+>>
+endobj
+5098 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.948 510.049 260.886 518.533]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5099 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [263.879 509.968 304.74 518.739]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5100 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 471.195 135.638 479.966]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5101 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [179.959 469.384 246.553 479.76]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a542306cc71842ef1fe4b13597a5b7d1b) >>
+>>
+endobj
+5102 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [291.534 471.276 310.473 479.76]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5103 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [313.466 471.195 362.791 479.76]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5104 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.713 444.377 163.038 452.942]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5105 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [163.538 442.673 188.449 452.942]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_add97197a51b3c44f9eb873a23329983e) >>
+>>
+endobj
+5106 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 430.156 132.012 437.898]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5107 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.477 415.856 211.232 426.124]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5108 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [211.732 415.748 258.089 426.124]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a636a905c115a1686caef9815c5b1aac9) >>
+>>
+endobj
+5109 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [261.575 415.856 325.353 426.124]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5110 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.757 403.338 159.82 411.08]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5111 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.477 389.038 211.232 399.306]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5112 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [211.732 389.038 262.572 399.306]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a5d0ba47fb669127afcbea1a3d192fe88) >>
+>>
+endobj
+5113 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [266.058 389.038 329.837 399.306]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5114 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.757 376.52 159.82 384.262]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5115 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [229.092 363.923 278.417 372.488]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5116 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [289.158 364.004 316.48 372.488]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac4d8391f2f588a467502f0bf9c8c7c7b) >>
+>>
+endobj
+5117 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [408.581 363.923 457.906 372.488]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5118 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [183.759 337.186 220.137 345.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5119 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [230.878 335.402 243.334 345.365]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a3fb541cbb68722263ff8d7ab9628a260) >>
+>>
+endobj
+5120 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.834 265.691 226.212 274.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5121 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [238.546 265.691 265.455 273.87]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a50cf5e875bee2f192e04271642175bf6) >>
+>>
+endobj
+5122 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [340.579 265.691 375.46 274.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5123 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [387.793 263.906 415.205 273.87]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+5124 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [461.484 265.691 480.423 274.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5125 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 253.735 119.194 260.619]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+5126 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [163.681 251.951 209.16 262.219]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+5127 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.648 251.843 289.533 262.219]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+5128 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.291 239.34 185.231 247.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5129 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [255.843 145.916 278.269 154.687]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+5130 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [408.32 145.997 443.2 154.481]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5131 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 121.094 119.683 130.553]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac4d8391f2f588a467502f0bf9c8c7c7b) >>
+>>
+endobj
+5132 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [226.882 101.904 270.281 110.388]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5133 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [311.626 101.904 348.004 110.388]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5134 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.599 102.007 430.003 110.388]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5135 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.674 90.052 155.078 98.433]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5136 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 69.87 148.111 78.251]
+/A << /S /GoTo /D (_function_8h_source_l00021) >>
+>>
+endobj
+5137 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 69.767 216.388 78.251]
+/A << /S /GoTo /D (_function_8h_source) >>
+>>
+endobj
+5141 0 obj
+<<
+/D [5139 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5142 0 obj
+<<
+/D [5139 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+5143 0 obj
+<<
+/D [5139 0 R /XYZ 70.866 300.92 null]
+>>
+endobj
+5144 0 obj
+<<
+/D [5139 0 R /XYZ 70.866 217.469 null]
+>>
+endobj
+950 0 obj
+<<
+/D [5139 0 R /XYZ 70.866 196.353 null]
+>>
+endobj
+5138 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R /F79 3573 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5171 0 obj
+<<
+/Length 1799      
+/Filter /FlateDecode
+>>
+stream
+x��YY��6~�������!�X��\M�iڬ�	�E��ڒ�#��}��lɦ�];-��CE������;;/G�LGO^x�����3�;F��;AD�O�i�ܸA8�8}�0��0`�N�>]�e9�� t��z%�*��<�sGϧ��#S�C�"���sf���G�$�����B竚�r<�����s=�c���$<��v�Q�14D�":����4�ʪ�gU^h+cEw���=�`g�ց����fr��1���='@Q����s��~����Y�{O|�'�(oþ��;���e�\^���ɧuUh]A����4G�:}ŝ9�w/G{�
+�G͢�K!�a�j��ia!��o����Q�k�8�.,��FQ@����4����b!od�u�X%�i'���G'���Z���|����ʗ��F�G�x�Ȣ��Q�mOi_�Z�����G΄z�&�UpApׄ�[-�J�@�\��[���R$fZ�GR�gUWB���չQ���҆&�`��s_�+����PJU����V�
+���Á�V��"�����f=족y^�+�U����(D�`ޗ1�Щe��%������7yY�Ic�]@[%
+�P!^���r�|�)B>���sqL��>?�M���ʙj�\�ɇ?�fD��f翏��
�	~G��p!ʢ�R�0"lW
+��Y5��	@:��=D81"T%� ��T��!JAR��ԡ�R	����*�vH �~W�N�ŐHt��N. >��v_��d𚧙DA��2���?!JL<�
�o
�KQu�����J����
�w�/���
�u��G�������t�g���3�|�g�c�Θ�ڪ^8����RY�{�|�Z;��j�r��76��sm��&����TG��`�Q�"�w������f�#�7BQ8�#/����8:M�F���;�ӴZQ���k���	�$�S�.
���h�<ؖ���B��=<��0�	�����0�=�|8Rh=��s�J;~�JU��Z+ݱ�`�4�`j�pLæ`=ذCT���!�,Y��l0�R
˧к�X'i�㪭s{I;���4�����v{=T=�P���m&ƀ�S��#Y&/+��ܩiM�e:0�ZWFrs%�W֎Hs�9�ևn�h���?����2��Ȣ>���,=����]�/�L��ؼ��Z��b��4����{�!��ȧA���z&\�vQ�A�;"�a���;����ċ!�w  �ʞ�uP[��8a��t��E��1-
+�y�2"�C��!NV𺊳$.�-()E�B��r�w>ȿ���*IL5�͂2Á����ηs�=�UΑ��oٖ[��k�O� ���Ku8GI~6gzC�ЏV�QO렪����4�!���ΠèZ��%C��Z�.Oh����K�|��?��(�#�˲���� '�q�_r�9)���'ҙڑ}t��?
{��b��~�U�>�wqv'��xN��Y>63���|>H�oE�&��BE���C��dz�����b�zE�F-m���1����Xp�}!֕����<o�y\/�O_�emw񠂆���oW���{K^73�m�`��_Œ�I�.���M���|[
+Ԓ�ZQ����S�K(�\�Mf{4�փ�Ӆb���JT�<Ѳ$Y��1nj(e�Q���a��ȳ�m��W`��eJt
~��,U�WC��l��rS�P3=��+�=��$��5�8�K��J��U��pT%�>Vmz�&q�aV�#<����?��/
n�A A�A���	eݠ����@u5ݑ�̦i$�m�d�wE�o���78�
+endstream
+endobj
+5170 0 obj
+<<
+/Type /Page
+/Contents 5171 0 R
+/Resources 5169 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5040 0 R
+/Annots [ 5159 0 R 5160 0 R 5161 0 R 5162 0 R 5163 0 R 5164 0 R 5165 0 R 5166 0 R 5167 0 R 5168 0 R ]
+>>
+endobj
+5159 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 644.216 249.911 651.429]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5160 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [259.844 571.596 296.222 580.08]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5161 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [373.456 559.64 408.336 568.124]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5162 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 425.268 143.126 433.649]
+/A << /S /GoTo /D (_function_8cpp_source_l00004) >>
+>>
+endobj
+5163 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 423.381 220.871 433.649]
+/A << /S /GoTo /D (_function_8cpp_source) >>
+>>
+endobj
+5164 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 318.264 148.111 326.645]
+/A << /S /GoTo /D (_function_8cpp_source_l00014) >>
+>>
+endobj
+5165 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 316.377 225.857 326.645]
+/A << /S /GoTo /D (_function_8cpp_source) >>
+>>
+endobj
+5166 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 131.992 185.94 139.958]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5167 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 121.141 205.068 128.354]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5168 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [319.811 80.056 360.672 88.827]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5172 0 obj
+<<
+/D [5170 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+954 0 obj
+<<
+/D [5170 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5145 0 obj
+<<
+/D [5170 0 R /XYZ 70.866 741.162 null]
+>>
+endobj
+958 0 obj
+<<
+/D [5170 0 R /XYZ 70.866 713.966 null]
+>>
+endobj
+5173 0 obj
+<<
+/D [5170 0 R /XYZ 70.866 546.897 null]
+>>
+endobj
+5146 0 obj
+<<
+/D [5170 0 R /XYZ 70.866 421.105 null]
+>>
+endobj
+962 0 obj
+<<
+/D [5170 0 R /XYZ 70.866 394.752 null]
+>>
+endobj
+966 0 obj
+<<
+/D [5170 0 R /XYZ 70.866 302.976 null]
+>>
+endobj
+5148 0 obj
+<<
+/D [5170 0 R /XYZ 70.866 273.563 null]
+>>
+endobj
+970 0 obj
+<<
+/D [5170 0 R /XYZ 70.866 247.21 null]
+>>
+endobj
+5169 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R /F99 3885 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5187 0 obj
+<<
+/Length 2354      
+/Filter /FlateDecode
+>>
+stream
+x��Z[�۸~�_!�
��*r��f�t{k2��
+���kK���d��{(Rɢ%�r����#��wx����	�� �\�����k&��4���I!�H$pp��a�\�H.�����77����ʊܼ{����||��-q�Hwi�N�+�U$�Z~������՟WH��H�D��`��z�!�� DT��s�r0Ng>o�wW��
+��!"\��
9�!0����v��"�>n�
+�#D.~]��w�6����EY�ڐ8m�Am���`�e!0
+"!���fsl!jE���F���HSڸ�7Vz�T��Hی��0bnj������H��3����H�*F}��%"����7�s ����9�
+>!@%���Q?F父_g�����mӼ<������-Vؼڦqn��>��d_�ɵy��Ļ�Y����%��e��%�T���/�</�U-{C��i�x�Y��gD�Q*���eu��L�N�%bQ�}f
:���j'��/9��3�����4,��U�!�S�r�[�~�Nնߥ�"O��d�Ӿ<!�;��b�R.(�Q��V�1��p'{��:�3��d�3�B(DaN��8B?�)�c�� ���Aґ����@pѩl�����!F�_�N&�a�8Q]��>K�<BXy�v���e���bo662˳?�6>�$ͫ��0$�o'�aV_�A�L-�°Z���P�t�@Z���Q?CJ^�n%�9s�%y����f��~�]'��%,u7VGnk�L5�?􀀇��3��k��P��,W���Џ�[@m�$-׻�
+��������	n5�M8��q�eM��/���9KZ�0��BA"G�,��Ј�B�0=GZ~�ni�I�yV
�ɏ�-�6�o?�z��Y�fv��.�z
j��f=z߬Hoߞ��d3���<1��YF[<R�ˑ	zMA=���!&ǥ���V��l3����ϓ�)�6���M���>�7W�e������������~�������![?�6M��C������9��X�Ʃf�����Ώ���⻴����š_P����7�0F�۹}���e\�S�1��=Yk*��<����ۭ�����t�F�4y����cw�G���>�j?-	_ěf����l9��D��A�}�{k��7W�{s_�U��vg�ܪ6��ܩ��C���,+H?��2�s�Hx���rls�����i@�^�n)��i�k�0�E��R�9�,S+����ym6�U�V{��n�挫ɗ�}�1.�F忇<lE&��O'֩�K�LO��K� D6	B�3���p[�o ȇS������0SoF ��>�p��@�P�sss�fٺ5DV0�a�h�$��wZOfr�����JRQ�k��4���=yA>�:�[�l��H6�r�\����6*� ����_�fiq8}zL�m�J@n���<��2��xrc�?$�7g_�{T��
+�S�%�{�zs'ڙƑ��vg�J�������>x�ݼEمJޘ��ܮ]&�f��ڙ��z�kv�����#��'�圾��{{X�7�t$N��>T��u]{�B�Hh��u!vf)�������Y��}P:�u���	1W�$ꁨ�ҶA�D��EV��:���C��o\�C �T�*�xYaɑ�Iw���
�&zޓ�̗2\<��~��!�ͧ��g�m3{BKs%_�5��5�,n�F
+�ئ�C����C���rAn˚n
mq���6����@S�?�m�4Xy3����xhf��>Ɇ��v�ڗiyt�V���~e��aeP>��i�>+_�eRx����lk/Uv���7������#譾J��u&D�pdM1rM6�,�	#�Ky�:�"$�X��'��z�K8��d�U����H�Y�9Ž'��ay��z�/�X��'�s<[�_kLF��{�/8� x�f�@X�b
+P��,P5�/�KL<	��m~�09��d����13�N�8��Gz���+L��HM+��0�	Jp?�b��1��S�I�<u�W�x�:��:��*L����@�h��faX-Q	���+L0�{r����JjsW������f��0�lL��,��a�
+	�@�	��J����t�Mz~���	n5�M�]a2ݲ�,`;-�!ƥ5�J+T� v��%�S�:GZ~�ni�I�+L<i�rj�^��d��}]�����7��YF[�!��
+L�B��qe�:�զ<��ď٩�6���C\L�pOҀ�ؼ��,[�����Y�~�ΠhS�_��;c�M�{�?���?�"9�^~2D�Ww�����%L�E�`�{>3`	a��M����j<\���|W�Y��^߸/���,�?ɉQ�
+endstream
+endobj
+5186 0 obj
+<<
+/Type /Page
+/Contents 5187 0 R
+/Resources 5185 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5040 0 R
+/Annots [ 5179 0 R 5180 0 R 5181 0 R 5182 0 R 5183 0 R 5184 0 R ]
+>>
+endobj
+5179 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [265.403 568.579 306.264 577.35]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5180 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 506.048 153.096 514.613]
+/A << /S /GoTo /D (_function_8h_source_l00234) >>
+>>
+endobj
+5181 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 506.129 221.373 514.613]
+/A << /S /GoTo /D (_function_8h_source) >>
+>>
+endobj
+5182 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 336.538 185.94 344.504]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5183 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [254.505 336.538 309.101 344.504]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5184 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.83 288.85 273.691 297.621]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5188 0 obj
+<<
+/D [5186 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5189 0 obj
+<<
+/D [5186 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5190 0 obj
+<<
+/D [5186 0 R /XYZ 70.866 678.525 null]
+>>
+endobj
+5147 0 obj
+<<
+/D [5186 0 R /XYZ 70.866 494.363 null]
+>>
+endobj
+974 0 obj
+<<
+/D [5186 0 R /XYZ 70.866 467.167 null]
+>>
+endobj
+5191 0 obj
+<<
+/D [5186 0 R /XYZ 70.866 276.08 null]
+>>
+endobj
+5192 0 obj
+<<
+/D [5186 0 R /XYZ 70.866 183.582 null]
+>>
+endobj
+5185 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F73 2949 0 R /F33 2286 0 R /F54 2381 0 R /F99 3885 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5206 0 obj
+<<
+/Length 2021      
+/Filter /FlateDecode
+>>
+stream
+x��Z[s�~���䉚Y�� �i3�z/M&m�]�i��ኴ�)E*�ī���hR�$����`SC��wp�����8�p���ϷWx�@�D��1FR� N($�͂��ċO�?L$c��7eڶ�%�e��^���Ү�+������oW���R"I�`����	<�!��%2x�-�A�③(�W���c3�	6ag����iUh+�aig�eQ��.cPso-{��*��[P����ޮ��.O@�����F;H!R7v��������LjP�[,	�8L��a�k�w}S��9�?b`x�(�1�0��s���M�v�i'��L"�c7z�`	ĥp
��&��u�X
+���\^�KQu�Ǘ�[1!	�:�o=�K�`	�%�3��Ef`?����������i�\c�+i���x�����k���P�5�����E��g�m6X���gy�j����i|1�#0�^�s�b��}Z��i�#��c�P&�kq��L��Mz6�h�MZ?:<���w���I;]��O&���%=��0�a��N�b��V]uuY�o����o|qC�$JFV�@5	�K"9����i�]��8L�l��<T�[����N�>7
������8�2S��M����E�ŒE���<X��Cm�ڇ��gf��n�UZ�[mqԭ�6�kjK<д��]��������yد��Ypl����Y��]��6��A�����	�o�ɶ�[�yZ_�n`�RX��Z��om�����x���슬���/��y��]� � 
+S]��E<]�(C�Q'�H�n5ZR*ÿ/h
]��@B�vb�/e��?��є�H�ɐ1�,�J.x%�{ZG��@�|%��+1�
8&�S6���~�)��2N&\���]F�V��$�t�4��"0K�s��!0�dD/��#*)h���|��O$D����������	�ۢim\&������Kb'}�V6&���m���������"4KL�z&B�Z@���?�VUm��l�eq7� 	�
+��2'n	�z�	��{^X��%9�ڳ]�/9���2�^aU+b�QmLQ����j�1zU;f��ê������}{@�w�ź�)70�C���r���DpL�g{_u��/�gCL���I����ҢMf$�+c��1�Ű�f�H�.°�saq�$��H2D)X���9�I
+�ŜA�I9�ø�dJ���Z��d6�d6��&lB�c��p�?W�o��E�W]�N_lN;�(Q4æ}��
+�"#$�Pp�<���)1����u4��+�	�>8:(�y�^MX�ү�j��i��M�����Q�9ے�qg	���"�\�a�u
+x�'6���x Q����<J�zƤ�HKo�͹�%�3�/��	��t�4-�����@���uu��x�$���J!:�+I}���Q�u5&UG�G�4�֯�1��{s��e���0Wu�SO���4��%����l�E!(y��.°Š$��K�+�'���,F��Ɯfk�Ά�ښE�֘�����r�	��P=�3ٻ�]U1��u��J�u�ۥ}��V���ݩga�\��=���b��{�,cHJ��eń>C��(���g��;��/�1�OCY��H�.o�j5��N�m����S��a��=<�כ���:�I��ܤm릊��dO�w����vǾBHv����8X:�	F1{��y��;�s:)�G�t����˟Q2��5���ɳ_7]��A�P��NCu�q8����dߞ,���M�w�����4�U�r�ߔ�Zf�uY� Nn�
X\u��'��ϯ������?]�8�تO�V��[���50LՅ��`�x8�����e���^	�>ZV�F���ث����:�V�'E�qf�[�����}agy�l��CLeZ�j��ɦ��������Z�nn;V�8����C<,����ڢ�Ԥ����+��Յa�:]��3r�7]�3�h,"���%E	a{�.��D`;�7�[���2���^�+̫]�
=w��
+endstream
+endobj
+5205 0 obj
+<<
+/Type /Page
+/Contents 5206 0 R
+/Resources 5204 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5040 0 R
+/Annots [ 5194 0 R 5195 0 R 5196 0 R 5197 0 R 5198 0 R 5199 0 R 5200 0 R 5201 0 R 5202 0 R 5203 0 R ]
+>>
+endobj
+5194 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 759.881 153.096 768.446]
+/A << /S /GoTo /D (_function_8h_source_l00229) >>
+>>
+endobj
+5195 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 759.962 221.373 768.446]
+/A << /S /GoTo /D (_function_8h_source) >>
+>>
+endobj
+5196 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 590.371 185.94 598.337]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5197 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [254.505 590.371 309.101 598.337]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5198 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.83 542.683 273.691 551.454]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5199 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 289.551 153.096 298.115]
+/A << /S /GoTo /D (_function_8h_source_l00243) >>
+>>
+endobj
+5200 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 289.631 221.373 298.115]
+/A << /S /GoTo /D (_function_8h_source) >>
+>>
+endobj
+5201 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.97 192.875 221.911 200.088]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5202 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 180.92 249.911 188.133]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5203 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.505 108.299 163.883 116.783]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5207 0 obj
+<<
+/D [5205 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5149 0 obj
+<<
+/D [5205 0 R /XYZ 70.866 748.196 null]
+>>
+endobj
+978 0 obj
+<<
+/D [5205 0 R /XYZ 70.866 721 null]
+>>
+endobj
+5208 0 obj
+<<
+/D [5205 0 R /XYZ 70.866 529.913 null]
+>>
+endobj
+5209 0 obj
+<<
+/D [5205 0 R /XYZ 70.866 437.415 null]
+>>
+endobj
+5156 0 obj
+<<
+/D [5205 0 R /XYZ 70.866 277.865 null]
+>>
+endobj
+982 0 obj
+<<
+/D [5205 0 R /XYZ 70.866 250.67 null]
+>>
+endobj
+5204 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5233 0 obj
+<<
+/Length 1897      
+/Filter /FlateDecode
+>>
+stream
+x��Z[��F~ׯ��<��7LU^։�N9;�-Wl�#Ј5����9}A	�L%�<L�����|}n�<콜�k1�����R2o��F���
+)��[��?@��o�
+�ww�^�޾���:-r;�<���޾MVs���L�e2�a$T�������O���3��#{� @��r3��	{1<��È������x\0$8���{7�u���Q�o�ř!U����;;��)��2�$uR�	�+�Y#�WC�gp��!È���O,� ,��X�0�d�l�� N������J�%C�z�3���;���`���c!k��4�n#�G�,"�h`��zσ.�5 ǖ��"�5̏�p�V3s_��/Y�X̹�<rd�O�J�������ޭ��E#y�,�$:��be����E�A=���K#v攌��H�I2�)G\>	�i�H�B���'tt�K�t�O�6��be�7K��y���q-����G�)����� �N���d8*Q@
�B��CL{���Q��Djc��.ij?�ڨ��m���S��)�3G�~m}����̓,�i�$òG���X�P��}���a�����O4N�%"�tk��Y.�T��LmΑiX5K��;a��.�d�4�Y�3"],���d�ìq����y]d�÷��˨�]mS���W���:=s1�:���"�e���$^.K6��I�j����+r�M�%��v��
D���t����8��F����?&:���C����<q�V�|p�}9�>�$�Xn�I~��l@BSj��v{$�Gz�z�ލ���C加���1��Qg��O?�?b�ᏜQ�E�B�oN4�bR4Qs�xs{�6��E^%�vJ@�˷�
�f�~���Ye+W»��
+�E�<��;�߿EKS	.����,+�gv�:&ݸ�Ɲ���oo�MT/�vIG6�v�F��e���^Z���{�B�ŘY�N��?|I�ze��=o(d�ڳ���y�w�y18�z׎�#���bN @=��i�P��}sC�I�ӥ���ʎ����z�\�G�Ův��*�V�޺}�v�J���&�U�InN^4��_��V|ַIܑ�U������.v��Y��m�M��A���
+
+�W��.Ae����N���(R�	�.@Kyу1MX]���dذ͙��?\a��6����#!{�v�l9�.2gH�`,r7j�)�	�W����Pzѽ�N��6�4q�L�e�LL4��}\���Q’*�|j-S`%a�)�@����&�$���!�$�N��G�OFB���
�5g(:���m�_l�|�vY����[w2n�z�<�'Bɑ#��	.v�29�ɫ�;����i��^ƕ�x�8����:��ݘpHf:��BX�0w!�nW?|�K�:��i�{��2Fg#F3ƁZ��+�l�d��u#aU�aEM&y`�q�k«�y����˿*)'��\v��mQ�E	�F�2#�NF.�q9e��`2꿹{�O��<���!%��Ƶ�hOb������-5>�8��6w���������wxl��D��n	���oc	ͼ{��kX��#T��3U����E��ajr��SD���X�҃�6�1k�qI_�6E��YuA��t=A���E<�|]�V�.�K��P�nq�|)>'G��ase��[��y���|��;�M\�A[����y6v[xf=/����������i��YG�m�?���X���
+&��`R�$¦�AJ�'(_	��#����{��6�`�2�7/l��+��M=!HjZq=I�k�+ �z���Ą���(�3_��%�8�^f�Q��ն����$t���QB ��5����ϔDTI�*q��
+�y��I��Q�w�,to���\:?�+�Ҭ��
+endstream
+endobj
+5232 0 obj
+<<
+/Type /Page
+/Contents 5233 0 R
+/Resources 5231 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5238 0 R
+/Annots [ 5212 0 R 5213 0 R 5214 0 R 5215 0 R 5216 0 R 5219 0 R 5220 0 R 5221 0 R 5222 0 R 5223 0 R 5224 0 R 5225 0 R 5226 0 R 5227 0 R 5230 0 R ]
+>>
+endobj
+5212 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 637.925 148.111 646.489]
+/A << /S /GoTo /D (_function_8cpp_source_l00018) >>
+>>
+endobj
+5213 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 636.221 225.857 646.489]
+/A << /S /GoTo /D (_function_8cpp_source) >>
+>>
+endobj
+5214 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 540.145 138.811 547.808]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5215 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 528.19 195.504 535.853]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5216 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.659 492.642 110.062 501.023]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5219 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.657 441.548 213.06 449.929]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5220 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 355.62 156.58 364.001]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5221 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 320.734 224.324 329.218]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae6913253b8e38f0f4eed9903058ae589) >>
+>>
+endobj
+5222 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 295.833 148.111 304.398]
+/A << /S /GoTo /D (_function_8cpp_source_l00046) >>
+>>
+endobj
+5223 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 294.13 225.857 304.398]
+/A << /S /GoTo /D (_function_8cpp_source) >>
+>>
+endobj
+5224 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 198.054 138.811 205.717]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5225 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 186.099 195.504 193.762]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5226 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [83.906 150.55 109.31 158.931]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5227 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [322.196 137.499 372.009 146.959]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac4d8391f2f588a467502f0bf9c8c7c7b) >>
+>>
+endobj
+5230 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.657 85.61 213.06 93.991]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5234 0 obj
+<<
+/D [5232 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5235 0 obj
+<<
+/D [5232 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5152 0 obj
+<<
+/D [5232 0 R /XYZ 70.866 626.239 null]
+>>
+endobj
+986 0 obj
+<<
+/D [5232 0 R /XYZ 70.866 599.044 null]
+>>
+endobj
+5236 0 obj
+<<
+/D [5232 0 R /XYZ 70.866 469.625 null]
+>>
+endobj
+5153 0 obj
+<<
+/D [5232 0 R /XYZ 70.866 284.148 null]
+>>
+endobj
+990 0 obj
+<<
+/D [5232 0 R /XYZ 70.866 256.952 null]
+>>
+endobj
+5237 0 obj
+<<
+/D [5232 0 R /XYZ 70.866 113.686 null]
+>>
+endobj
+5231 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5264 0 obj
+<<
+/Length 1834      
+/Filter /FlateDecode
+>>
+stream
+x��YYo�8~��У$,OI4�M�[�ۺO٢Pe�V+K^I��wxH�d�i��� E
g��9>�����j��|��%��� `�|�EA�����x�w�Gt�y��cAQ�`��}��U5=�a�_I�Qy�i�k�ɋ���	R쑎e��r/�L�>co��x1y7�r�q���ZD�}��9�N��C�p���GAX=?��)�ʨ5���%c;�)E ��DsaW�k�U��+�\o�\�}}x5�^���{�|��m�Wʚ�.��{ߖE��J-���b�֎���֋�1��ӌqF��W��fJ۽�,�����fTU4e�*��� ��I�ӿPaL�Ԝ�a�����:.N�1�K�^������-�EF��/(�E��"BC���`��4�r�_O���/��X6�{!�!&�
o�9�Nb6��[K�J�3�mP�6‹Ă��0����:;�����g��r!u�=���Ot��/[���.���Z��fi~
���� ��4WI=@R�O+Hq�
+q�2�є���-��p� ���Ӳn��]���4�BǮ��SH��J�}�ke�\ь��$�
��^Cp�{5�!�$���O�#JP�(�L�Չ�e	3�$���P%lP����
+�%Jlv7:Ng�p^�&s��
��vGhz����OAr��9�Ã�G�U��6v��R�_ϕS�Adɛ#I���Z|���V ��c�3��)��~�tyQM�:��y֭�HeG4��$uO��ӏ-|��\>�Y�X���@]�%��[
�$�e�?[v�,)6`�}�{ԟ�Ju�/��h`����փ6�w�e)=��$Iuq�c	)8
+{,˻�<`r��%֎jt^�͐]��{}ft����&p:x��
z	�g2[�JW�������Z��=���]�n��������W�v[8&vf�������ݶlL��Y�����I�@��M��,�~ʨ_TuR䋴`G:6[1��$�v�f�錢�I�ez�VC3��GJ9��(H�߿�lfFk8��.��f��g�6έ�l##Q�;��uYh��#�6�uݩX��x�3�Xx��|2<�OC���{��ře��,��EA�,q���R����c��EQ�0Ћ�d}<�9���EG!:H�� �/�A�Ġ�1@
+��`�a/��P��1C�쀎�X��e�wS!������"�p�����U�r9H6{>uGn��M>��l<�Tg�>�w�;�n�ޒ�h�:�6�^`�}�p�#'˞s0	8�1v���72��6�R�!�(����� ��� "���=��&�
���^ݎ����]=ޏ�Jщ"{!Kp��}�=�1�-��ɲ��@Ie�o
�۹��U�Z�V��;h�a#�������)�������B������<�塒"�_���;�����GW�1ܩ��wj��:5B����5�kԸ��.V6��j�����
�ZA
�kuR�"@"��?���msdng����N܎&D"!h�?1bɁ2�$�0�P�kDZ~�����c�g����k����v�z��a�	���潝�4�F:"D,�Z"M�.�~Ҭne�jx��ԗ	�wp��@�/�ܲ�3����^'i�s8aڈ�n�U�5wIv�c��l���ÅO'	�}��D�P�d<9�2��dۙp;�פ�?K�l�Rv����d�5�'{��v��Z0�T
\-o�dS)�j���䤩j}
=��vi��
+�#�΁mkt7�*)�eH�u�^�(�'y�/!�5�a��L�!d8<Q8/~��\�z����ԗەΰ�ʇ:�_nHg
+endstream
+endobj
+5263 0 obj
+<<
+/Type /Page
+/Contents 5264 0 R
+/Resources 5262 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5238 0 R
+/Annots [ 5242 0 R 5243 0 R 5244 0 R 5245 0 R 5246 0 R 5247 0 R 5248 0 R 5249 0 R 5250 0 R 5251 0 R 5254 0 R 5255 0 R 5256 0 R 5257 0 R 5258 0 R 5259 0 R 5260 0 R 5261 0 R ]
+>>
+endobj
+5242 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 745.634 156.58 754.015]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5243 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 710.748 224.324 719.232]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a3af3a05ec6058b8a8e058ceebe1d7ddf) >>
+>>
+endobj
+5244 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 685.847 148.111 694.412]
+/A << /S /GoTo /D (_function_8cpp_source_l00054) >>
+>>
+endobj
+5245 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 684.144 225.857 694.412]
+/A << /S /GoTo /D (_function_8cpp_source) >>
+>>
+endobj
+5246 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [181.662 589.172 231.475 595.731]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5247 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [243.137 577.217 292.95 583.776]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5248 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.651 540.381 236.976 548.945]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5249 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [399.135 540.381 448.461 548.945]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5250 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [238.706 466.357 264.109 474.738]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5251 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.619 454.402 177.023 462.783]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5254 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [247.954 339.611 273.358 347.992]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5255 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.48 273.132 213.883 281.513]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5256 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 241.951 148.111 250.516]
+/A << /S /GoTo /D (_function_8cpp_source_l00095) >>
+>>
+endobj
+5257 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 240.247 225.857 250.516]
+/A << /S /GoTo /D (_function_8cpp_source) >>
+>>
+endobj
+5258 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 140.767 114.901 147.98]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5259 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 116.857 181.158 123.416]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5260 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.523 94.555 219.926 102.936]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5261 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [198.938 81.504 248.751 90.963]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac4d8391f2f588a467502f0bf9c8c7c7b) >>
+>>
+endobj
+5265 0 obj
+<<
+/D [5263 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5154 0 obj
+<<
+/D [5263 0 R /XYZ 70.866 674.162 null]
+>>
+endobj
+994 0 obj
+<<
+/D [5263 0 R /XYZ 70.866 646.966 null]
+>>
+endobj
+5266 0 obj
+<<
+/D [5263 0 R /XYZ 70.866 431.593 null]
+>>
+endobj
+5267 0 obj
+<<
+/D [5263 0 R /XYZ 70.866 367.894 null]
+>>
+endobj
+5151 0 obj
+<<
+/D [5263 0 R /XYZ 70.866 232.661 null]
+>>
+endobj
+998 0 obj
+<<
+/D [5263 0 R /XYZ 70.866 205.727 null]
+>>
+endobj
+5262 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5284 0 obj
+<<
+/Length 1738      
+/Filter /FlateDecode
+>>
+stream
+x��ZKs�H��WpDU�d��V���Me7�X�'���I$� ����G2�(U{�!��_O�7���w�a�������9מFFJ�M��HK�)C�$�d�]�:Q���w����7�4�Vq���"X����|H�&a<
�#F���f�O�7��&�o��#;���ܛ.���7�wo<������ʥ�C�3�_x���)���^�6��ن$Hs��ɐk?\�.���T��A,�4L���뭮9H�΂"*i��D#Lv*�VAX
+O1�!M"`5GD'bk"Ŋ&R�r�)�f,7Q�W�GFuEdED#V|�P�?܆�V��޸� 
PU+jI�E��;@�"�<�G��(e�ɞՈ2�	(��{أ�k=ZD<��u�-�x��;b��#�=Z�A���&��d�gg�\Y$WQ��e��������!~h�s�_q�rZ]9�2�[=;�3�3*���Hk����%��k�U�>r
+�@F����M_�� =�P����L�'��@�g�`�z�vC�em�"�������l�H;���:�r��093�07]�4������g�m-�傔1ȉ[�t(��Wդ���9��^"�C)�����G�D"���Φq!.��`���]!Kq�`�5e��&���J�䛎���@���eԷ�i�X�c�w}۸���8�>bL�������>��wC��eE}�8b�v{��t��c\�q��=O�8H�R?�q� �W
m`�OC��`���z7p��"�,����ݟ�bW_©K�d����D���\�6�bz�<�?�~���֊W�"�Խ��ZD�P���t��{J�r ϯ{>�A�9�y��១�ّβx.�n'�v���j�]f��*N�(��7r��
*��_�6���c[8�/@@3�pY
+LV�∈��G7{�|�U��F�#���x�1d�#�1������6��������d�L8^g�4o˷+�)�dP�]��K�,�Z��h%c��Ñe&��,�Dq����?x�&� ��	~~��{ʌ؆7p���>~=����䁤�*�^���f�YC�=I�r�e�L�:����4���l����P�i�o¦ӳ'n�}Y�G=�����4yD28�n��앇�,x^�Ѳ̻<��!C�*
�W=��t�G�pD���_��[R��|7��?�7��ڻ��k���� �����N��x��l����}�f��aƾ��P@���$��,[���<c�<�ʟ�D��Z�2�w��<L���7W0�{��:�<�Ep�Ch�� -6[
�|,��4����V_�b�9׹������)���<4�HBA���<�0�Y:
+ާ�%"��$y��)��bf�D�����uM�b�ab{��q?���y����ˀ= ��c�Ď��-"�&�ɴ7}�rV���ރ��D8�j�(>	k���Q��0�#bkK�?��O&��~�u �~�m-≍'�)&:�����C%�n�[�PB�j�9�h�R���?>��Y;�)�&B#n���<��`5�ʰ?z��)�^]<U��P����p��q#�ljq"�Qή�O�\7�z�A���]7�z����U��Ӊd���2DP�3����rlH$FƐ^cC�4�ݶ��ۼws��1��Ս���Q�>���'2r������P@�f��
+��$U�YYJW��
+�0�ޕjWv|���������v����9�T
+endstream
+endobj
+5283 0 obj
+<<
+/Type /Page
+/Contents 5284 0 R
+/Resources 5282 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5238 0 R
+/Annots [ 5271 0 R 5272 0 R 5273 0 R 5274 0 R 5275 0 R 5276 0 R 5277 0 R 5278 0 R 5279 0 R 5280 0 R ]
+>>
+endobj
+5271 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.052 564.239 169.913 573.01]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5272 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 529.455 153.096 538.02]
+/A << /S /GoTo /D (_function_8h_source_l00256) >>
+>>
+endobj
+5273 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 529.536 221.373 538.02]
+/A << /S /GoTo /D (_function_8h_source) >>
+>>
+endobj
+5274 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 420.825 119.683 427.384]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5275 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 396.914 176.376 404.127]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5276 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [295.512 372.034 336.373 380.805]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5277 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [264.714 359.167 314.527 368.626]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac4d8391f2f588a467502f0bf9c8c7c7b) >>
+>>
+endobj
+5278 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.392 141.766 236.819 150.537]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+5279 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 106.983 153.096 115.548]
+/A << /S /GoTo /D (_function_8h_source_l00248) >>
+>>
+endobj
+5280 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 107.064 221.373 115.548]
+/A << /S /GoTo /D (_function_8h_source) >>
+>>
+endobj
+5285 0 obj
+<<
+/D [5283 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5286 0 obj
+<<
+/D [5283 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5287 0 obj
+<<
+/D [5283 0 R /XYZ 70.866 678.525 null]
+>>
+endobj
+5150 0 obj
+<<
+/D [5283 0 R /XYZ 70.866 517.77 null]
+>>
+endobj
+1002 0 obj
+<<
+/D [5283 0 R /XYZ 70.866 490.575 null]
+>>
+endobj
+5288 0 obj
+<<
+/D [5283 0 R /XYZ 70.866 347.416 null]
+>>
+endobj
+5289 0 obj
+<<
+/D [5283 0 R /XYZ 70.866 254.918 null]
+>>
+endobj
+5155 0 obj
+<<
+/D [5283 0 R /XYZ 70.866 95.298 null]
+>>
+endobj
+5282 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F73 2949 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5313 0 obj
+<<
+/Length 1303      
+/Filter /FlateDecode
+>>
+stream
+xڽX]S�8}ϯ�̾$�lIvfgg���2�c!o�0�Q������R���՗h��P�4ҕ�9�{,����8�Q�yL��(�<	E��Yp1�����$9A�a����eZף1��m�mV�h�&/�v�n:�g@`)H2�QL� [
.�p0��N��$���U��H��
�ׄ;����P"�Gc�1���3������������1���l~{z:s�U7�ɤ�M+9��f�Hvv&p6K��M��¦|v<��#���t�)�,��wL"�;��IAnj݊��N'y2Q��)4��!ƒ1�K3�����fQ�q1�ȋe^�+sh� ?�#� J���L�3�l�4ʆ��Dj^����̋FV�C�֍��)��|��B/�E�~�ܯe7�\J%J�!oj���B<D��Q�ު��;�*��H�ζIuw�]$J�xLb�#��N�
+M�]b��ĊQ^bL�\'k�y(V��Di؇O97T��3qF�^$�W���mL�n[�w_�حçk�+������~H�R�/{}�'�V�O�[^5�t�l���)~/�*�>^N�?2ʛ�2�����d�.�Y^,V�~3w�`^d��vuZ-�%[�N��j[���Bܩ��.�?Vg2_�M�™W�j?�F�l���We�����-z�Z���g]w���u���G\Y9���l۪�F�
S�a!0!�!����t��T[�Z����I�҄#�:
��yI)�ab��*;Pt<������3�6��'��z�φ�<8'!�i/p�FЃ���Bkz��?M&����5��q�L�貒E&{|2
+a.�蝿C�\�A�f
֚@l�m�]1�fl�ނҝ���"�;S�K �󉹂!ɋ	���7�(81,�N��YfrD
����F��3�G��qx:�j�����ݔ�U%�^T��;��w@��y"��DY`�����3(�M�@�2.�[Oe���+���	՛�8�=�S��]R_��X:e��<�W�7	DDH�l	�l�g��1���#�6�E���8�	&�l{z�#Bʼn7���+��do��7���M��(��3Ss���e��\�}3�-a�6�+��|X=^�T�f��.�A�C>v����5�MQ��5��8���=q�a��\��s���RPC&d�U�*3��*�ͻ��f���|�J�d<Or0���W����?�[���!F^7�3v�K���S�;�`���y�m�)�!������O@{�G��X�t�!�o��8�5��E�����o������VD
+endstream
+endobj
+5312 0 obj
+<<
+/Type /Page
+/Contents 5313 0 R
+/Resources 5311 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5238 0 R
+/Annots [ 5281 0 R 5292 0 R 5293 0 R 5294 0 R 5295 0 R 5296 0 R 5297 0 R 5298 0 R 5299 0 R 5300 0 R 5301 0 R 5302 0 R 5303 0 R 5304 0 R 5305 0 R 5306 0 R 5307 0 R 5308 0 R ]
+>>
+endobj
+5281 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.098 733.333 212.347 740.546]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5292 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.609 701.825 256.987 710.309]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5293 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 633.444 153.096 642.009]
+/A << /S /GoTo /D (_function_8h_source_l00223) >>
+>>
+endobj
+5294 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 633.525 221.373 642.009]
+/A << /S /GoTo /D (_function_8h_source) >>
+>>
+endobj
+5295 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 553.082 119.683 559.641]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5296 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.294 521.676 119.697 530.057]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5297 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 453.085 215.868 461.856]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+5298 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 433.695 148.111 442.076]
+/A << /S /GoTo /D (_function_8cpp_source_l00024) >>
+>>
+endobj
+5299 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 431.808 225.857 442.076]
+/A << /S /GoTo /D (_function_8cpp_source) >>
+>>
+endobj
+5300 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 388.912 176.003 397.396]
+/A << /S /GoTo /D (_function_8h) >>
+>>
+endobj
+5301 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 374.786 185.472 385.054]
+/A << /S /GoTo /D (_function_8cpp) >>
+>>
+endobj
+5302 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [105.753 304.82 136.643 313.304]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+5303 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 229.439 125.667 237.923]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a8c2a89d646c15f8da4c091ae843ae06b) >>
+>>
+endobj
+5304 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 202.763 133.416 211.247]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a582f222aea5015de7faceba2bab99bc3) >>
+>>
+endobj
+5305 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 162.347 158.663 172.615]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a5deae136de825a30bf627ec80a967a3f) >>
+>>
+endobj
+5306 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 137.454 236.637 145.938]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a00cfd65d186d606a4fc1572812315960) >>
+>>
+endobj
+5307 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 110.778 135.413 118.957]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_ac1a37929a88ca5eab2bba5d39105bdf3) >>
+>>
+endobj
+5308 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [120.554 84.101 138.355 92.585]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a4f80bf765513cdff089a634599cc534d) >>
+>>
+endobj
+5314 0 obj
+<<
+/D [5312 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1006 0 obj
+<<
+/D [5312 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4588 0 obj
+<<
+/D [5312 0 R /XYZ 70.866 627.005 null]
+>>
+endobj
+1010 0 obj
+<<
+/D [5312 0 R /XYZ 70.866 600.384 null]
+>>
+endobj
+3194 0 obj
+<<
+/D [5312 0 R /XYZ 70.866 370.249 null]
+>>
+endobj
+1014 0 obj
+<<
+/D [5312 0 R /XYZ 70.866 359.943 null]
+>>
+endobj
+5315 0 obj
+<<
+/D [5312 0 R /XYZ 70.866 264.06 null]
+>>
+endobj
+5311 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R /F67 2922 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5334 0 obj
+<<
+/Length 1022      
+/Filter /FlateDecode
+>>
+stream
+xڽVێ�6}�W詐���;�E[��֛M��~�
+�L�Beٕ�ۯ��"Yr�M�&}2-g�̜9$6ngϖ��9O��R�`�F���J)�$X���0A�E1UI�������Y�յ��̚�-��uDp�k]�:���
+�]������5#��$(�<�w���8X����#�&�{k��`Hp�2X�~��3�#%R9�-	��E��E�н>>te����=tȈU����X� Ws��!�D1�����T��w�2lq�vu}ݴ��6��ԡ�����'����	�k����{,���.�"�y����՜� ��V�0�(5E� �s&�\0��vǪ)6�^9��6��*�Y8��p�)�,"���V7��s��ߗnu<t�g���u5$GFI���Lt2ab�rȏ‚��s���p6�3��>n�S��)E4e���T|no�^D$�*��AR��wc�TO6��fT�K4�a|)/C�z�#�ǘMd
+
Kz����<1��C��Y�j�n?�T@�3b��G�����B�X5b�"�1�v�;D�9��F�YQv���&���ъ��0�#(�����X����,̈́�M���Y�v��ff��B*�}മ��afuL�?~��ge~,�� .v���l����(�y��n�X�����?���v���>\��i�i��I�����\u~;�j��uV����ƴ*l�qֵ���ӚH�I��ȓ��#��%p��g��IZ`�>`��xn&�>Z�޿�1�|�Ϗ;hbvb�袅
+�H�0F�;�Lb7Ws��P�0��c��f>��<��L��v�t�r\;��CV
+�J����~n���߃΋�k�^���8�N��v,���H� 9���2=F��>!���	U�1u�D�'�)�x��m{�SD@gGJ3n�;�N��]L�
d�Z"��1�OdP�����YS�h��_�E�ӈ���F*3�w������]��L=��@���ycwok	W�䃧5H�z�+]gmw/��^�����Ǎ���C���la
+endstream
+endobj
+5333 0 obj
+<<
+/Type /Page
+/Contents 5334 0 R
+/Resources 5332 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5238 0 R
+/Annots [ 5309 0 R 5310 0 R 5324 0 R 5325 0 R 5326 0 R 5327 0 R 5328 0 R 5329 0 R ]
+>>
+endobj
+5309 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [159.691 733.357 179.258 743.625]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a5bd6f0f8915dab9870ca8eb8a4d39a10) >>
+>>
+endobj
+5310 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [238.625 707.165 270.027 715.73]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a1478050616af6fac27055b9a5190a044) >>
+>>
+endobj
+5324 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 581.721 148.111 590.102]
+/A << /S /GoTo /D (_hasher_8h_source_l00014) >>
+>>
+endobj
+5325 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 581.618 210.453 590.102]
+/A << /S /GoTo /D (_hasher_8h_source) >>
+>>
+endobj
+5326 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 386.074 148.111 394.638]
+/A << /S /GoTo /D (_hasher_8cpp_source_l00019) >>
+>>
+endobj
+5327 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 384.37 219.921 394.638]
+/A << /S /GoTo /D (_hasher_8cpp_source) >>
+>>
+endobj
+5328 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 239.881 148.111 248.262]
+/A << /S /GoTo /D (_hasher_8cpp_source_l00024) >>
+>>
+endobj
+5329 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 237.994 219.921 248.262]
+/A << /S /GoTo /D (_hasher_8cpp_source) >>
+>>
+endobj
+5335 0 obj
+<<
+/D [5333 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5336 0 obj
+<<
+/D [5333 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+1018 0 obj
+<<
+/D [5333 0 R /XYZ 70.866 677.995 null]
+>>
+endobj
+1022 0 obj
+<<
+/D [5333 0 R /XYZ 70.866 567.374 null]
+>>
+endobj
+5318 0 obj
+<<
+/D [5333 0 R /XYZ 70.866 520.765 null]
+>>
+endobj
+1026 0 obj
+<<
+/D [5333 0 R /XYZ 70.866 493.57 null]
+>>
+endobj
+5319 0 obj
+<<
+/D [5333 0 R /XYZ 70.866 374.388 null]
+>>
+endobj
+1030 0 obj
+<<
+/D [5333 0 R /XYZ 70.866 347.193 null]
+>>
+endobj
+1034 0 obj
+<<
+/D [5333 0 R /XYZ 70.866 223.749 null]
+>>
+endobj
+5321 0 obj
+<<
+/D [5333 0 R /XYZ 70.866 178.924 null]
+>>
+endobj
+5332 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R /F54 2381 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5348 0 obj
+<<
+/Length 1393      
+/Filter /FlateDecode
+>>
+stream
+x��X[o�6~��У�,m�ڴI�Pl����ȴ-Ԗ\������"۲�Nl��<��|�h�\�Mo?�8�Q"%&� �(�2��$	&��&���v�9`��8b��ξ_�u=�(/ʬY�B�:/�v�a2�1 �dc2�QLy��7�8�»�F,���rp�����2��9�'Ä��&NDb�Gc.�z�
�����A��c#	���\��x|�2]Vnq��,px��/=�AL�튦��y��Ñ�H�E�gTJ�����sF7+�?]~�� -U��&=g�$��T�9���8	F�C	�q�O�Y�L���B����ߩ�n윘Q9�,�a�T���NS���ݐⰙ͆��rsi1u�J��7���iힵ��i��a�+I'��I�zHD��#�>Zy��r��f0��qC��T!ڲh3�6q3�5E�AsC��0C�D�h�
�0�7q��2����b�Z�ϽBQ���##�}�s�&����F���=�"����e����Mm�hFy�n��,P���p�?���G
+�"���Զ��Mӷߕ���Ru��y�>�Z�hT�h1�=�=(�
+��1���w��aL�|{D�w���c6\U�=i}�7v�;9��6�cwy‚kY{��z�g�E�Go�&	���Q�l�*/���Vk�4w4�%km�I���H����!�,C�$���e@�����r�c�2��M�뵪��V.�_�CW��qD�n�Ձ��(�q<s�Kΐ���'g���S��#�"WE���\��b�O�5 ��-g�9t�b^wY���_ޮ���*՞
+N�a��;�ôJW��0!a�	����XT�r#�eF<���IGl�j�p�3a�T>�Ӡ�V���D������H!�����e��#$h�u���C�pz兾;�%@�]�Vtq��A8�J����`�7qH�����@��S��N�) ���g��2��@�u����2��@���xY�>�,����B酕y� sZ���7�;;�C��%��u�;�F�:���ag�&�\�u
+����_�\/�+�$\W�q��Wc��7j�X��Uc�UcM���.��~?�ʠ�4rV�Z����P����R��x�3��Z��u�drR���4G�}�Q|�e>�U�>���T��X����}�6�Ǟh:veT^��ʨ��(�I+Jw}ea[��\W�%3㯵̀x{�t����(��2�^�馽|�p�t�V�[����*��B��魖���l�P��5u/�ڶ���c��v���g�bچ�Ҷ?s�]Y��U�w����Ԥ���r�9�-��j��Tv@Z��s~�iᑈFPz((	@�yL�
+���n�.��7(S�ǧ��
+Tb?��7��
+endstream
+endobj
+5347 0 obj
+<<
+/Type /Page
+/Contents 5348 0 R
+/Resources 5346 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5238 0 R
+/Annots [ 5330 0 R 5331 0 R 5344 0 R 5345 0 R ]
+>>
+endobj
+5330 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 547.7 148.111 556.264]
+/A << /S /GoTo /D (_hasher_8cpp_source_l00028) >>
+>>
+endobj
+5331 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 545.996 219.921 556.264]
+/A << /S /GoTo /D (_hasher_8cpp_source) >>
+>>
+endobj
+5344 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 234.074 148.111 242.638]
+/A << /S /GoTo /D (_hasher_8cpp_source_l00043) >>
+>>
+endobj
+5345 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 232.37 219.921 242.638]
+/A << /S /GoTo /D (_hasher_8cpp_source) >>
+>>
+endobj
+5349 0 obj
+<<
+/D [5347 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1038 0 obj
+<<
+/D [5347 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5337 0 obj
+<<
+/D [5347 0 R /XYZ 70.866 536.014 null]
+>>
+endobj
+1042 0 obj
+<<
+/D [5347 0 R /XYZ 70.866 508.819 null]
+>>
+endobj
+5350 0 obj
+<<
+/D [5347 0 R /XYZ 70.866 389.463 null]
+>>
+endobj
+5320 0 obj
+<<
+/D [5347 0 R /XYZ 70.866 223.915 null]
+>>
+endobj
+1046 0 obj
+<<
+/D [5347 0 R /XYZ 70.866 196.887 null]
+>>
+endobj
+5346 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R /F67 2922 0 R /F95 3709 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5361 0 obj
+<<
+/Length 1428      
+/Filter /FlateDecode
+>>
+stream
+x��X[o�6~��У��c��[ڢغ$oi0h6m��L����~�"eK�b�N�=d����G�h��r��f���\G)Yt3�FZ�H�$�n��m�a�U:��p��x�>)��O.�IY�핝
	�ma����F�Z
�n>~��; �Gd�Bk�)�&��������#ft�XK�".��~]��`6FT��[�!��9�$H�p��!ױ]�/�
+��Tǟ���I��l�!$.k[%�6����l��"E���W� K)���}��cD�$��NR�r)�f�q�^�\��:W#kk4aŻ��D""N�i�,}"UO����Yx��ʮ£ܯ�t�}���gHq��͆�%����b�iv���C
+�0��8��@����g$��i8�ˈ����"��RI$��01��l'����P��������l?3&�	z��N�������[�NmV�suv�P��sY[��,*��p������%���.k�C�P�w��4K�4ς�*�.�̆�qv�`��� ��%��Ux��3��<����1Z�`��=��8I��n
m���1�[����*C!�0	o3�"t��<�ܐ�b{��5����mv��R��<�4t��I��γ�&"�4�iR%�I'p��&���&w�ʡs�=���� T����o��X��p3����ߟp�	�/	��#^V����N����ʴ���H�꧖���@˔��Xge:�lȡ�"��n�W~yt#�ME�V.�����i£�i���M�I��]P5[�@S$'�V�BF�����F�e՛�!�w���S����U�k>J4�K�ͫEj-Ʒ�AxA�T�-A�N�z�qD�F�v�&��d�	1c�.������o�~��;���y�0�ڵ��7��ו�:�@�
+�o��$)�l��_���׷⪵�M��	�?�u�"����s�AG$�jY~������]Aʏ��<�j����w��
+;$k�a�㍊��rF�a��V���|��W�����1L9v��peRlK��a�ZۙZ�l~�;Zo���G�k�y3h���^ԃg�O���Ra���fE��!FF��s� �p���"����1��qդ
+"E�n{{&5��ۛm�����-�inyH{7F�+{ �'[�0	��8��1N��B�[��畭�E�mtͺJv7�C4�I��'MM��'%?^jN҉R]�O�-����y2��.7�t��Ɇ˥��.����_�.�����$I�;:c���}�ߏ6���W��|;�m��O�u�\g�m0����j��ҹ-�Cwn��Ͱ�i�"��$I�&)*�5T�N���l�.�l
+Q���>R&�+�6��3���a�S��ղ��*U���ф�vܥ�lLl�6�����
+��i� �5�?9�
+endstream
+endobj
+5360 0 obj
+<<
+/Type /Page
+/Contents 5361 0 R
+/Resources 5359 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5366 0 R
+/Annots [ 5353 0 R 5354 0 R 5355 0 R 5356 0 R 5357 0 R 5358 0 R ]
+>>
+endobj
+5353 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 632.312 148.111 640.877]
+/A << /S /GoTo /D (_hasher_8h_source_l00099) >>
+>>
+endobj
+5354 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 632.393 210.453 640.877]
+/A << /S /GoTo /D (_hasher_8h_source) >>
+>>
+endobj
+5355 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 485.936 148.111 494.5]
+/A << /S /GoTo /D (_hasher_8cpp_source_l00033) >>
+>>
+endobj
+5356 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 484.232 219.921 494.5]
+/A << /S /GoTo /D (_hasher_8cpp_source) >>
+>>
+endobj
+5357 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 184.73 143.126 193.295]
+/A << /S /GoTo /D (_hasher_8cpp_source_l00008) >>
+>>
+endobj
+5358 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 183.027 214.936 193.295]
+/A << /S /GoTo /D (_hasher_8cpp_source) >>
+>>
+endobj
+5362 0 obj
+<<
+/D [5360 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5363 0 obj
+<<
+/D [5360 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5364 0 obj
+<<
+/D [5360 0 R /XYZ 70.866 707.517 null]
+>>
+endobj
+5322 0 obj
+<<
+/D [5360 0 R /XYZ 70.866 620.627 null]
+>>
+endobj
+1050 0 obj
+<<
+/D [5360 0 R /XYZ 70.866 593.431 null]
+>>
+endobj
+5338 0 obj
+<<
+/D [5360 0 R /XYZ 70.866 474.25 null]
+>>
+endobj
+1054 0 obj
+<<
+/D [5360 0 R /XYZ 70.866 447.055 null]
+>>
+endobj
+5365 0 obj
+<<
+/D [5360 0 R /XYZ 70.866 315.852 null]
+>>
+endobj
+5323 0 obj
+<<
+/D [5360 0 R /XYZ 70.866 178.025 null]
+>>
+endobj
+1058 0 obj
+<<
+/D [5360 0 R /XYZ 70.866 151.373 null]
+>>
+endobj
+5359 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F73 2949 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F81 3708 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5390 0 obj
+<<
+/Length 1005      
+/Filter /FlateDecode
+>>
+stream
+xڽW]s�8}���̾��I���δu��3�ib��} ����n6��WH��Rw���X��ν���!��ﶋ�K?D!�8���	�CΑ��mSt無�m�y��Pxp�[}��M�.��u�
+Y�q�U�ڻ��]|_P�J�M�!���bq��������=u;�|uE�6��10�'f�zU�����\p��V���l:XS{��78��˗4�����Ƿ,���4�ɦ��,w������<LI����WBX�u���`VJ�EŦޙ �^-�]��GX�j���+��o,|����݀88y|�Xsp���n��v/��#.���#NU��>3�'G<�4pb�c'K��pY��B]����J}���нf5M9��S��e,��)��������_��0<�YY��Pb
_�)]��5��R��z�sL<��S�]RB�s}�ݮVײibݝZv��
+��TĻ�m�������QֲL:�L�^z>��W}*��J��q~Z`
+ʜHngnZ���o|�팛ۇ�#+�����
vBQP$L��sƖ��k
��&yb���H�3o�E�"��!$�����aR���^E5���۶��{����f��(ޖߡۿ�V��V6�*;N�Ѻԩќ��h�BC8����T��A�t:��֥��2�Oy��
���y�[��4�Wrn}�3�ig��=��{��g���C�g��;j��P=d�+{t_U���Z��:��[m��x��;<�~^�Ih�/<�CLMA\++��1k�$u�hG��Z�#SV7��d�R��E\�vN�K�6�oٰ���Cӷ����4��qՄ����i�<g�����bZ`g:�3���:��o���ml�G���d^�P��Mm��H1�}�8��a>[�:z���|^�,۳Z���Z�:m�0~�S�������:Y�cA�����Q���B��C_�`�_8f0�����4@�`�M�_���8�v����K͡?}�S�?�,
+endstream
+endobj
+5389 0 obj
+<<
+/Type /Page
+/Contents 5390 0 R
+/Resources 5388 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5366 0 R
+/Annots [ 5370 0 R 5371 0 R 5372 0 R 5373 0 R 5374 0 R 5375 0 R 5376 0 R 5377 0 R 5378 0 R 5379 0 R 5380 0 R 5381 0 R 5382 0 R 5383 0 R ]
+>>
+endobj
+5370 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 712.342 148.111 720.907]
+/A << /S /GoTo /D (_hasher_8cpp_source_l00038) >>
+>>
+endobj
+5371 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 710.638 219.921 720.907]
+/A << /S /GoTo /D (_hasher_8cpp_source) >>
+>>
+endobj
+5372 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.636 657.422 171.556 665.906]
+/A << /S /GoTo /D (_hasher_8h) >>
+>>
+endobj
+5373 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.636 642.809 181.024 653.078]
+/A << /S /GoTo /D (_hasher_8cpp) >>
+>>
+endobj
+5374 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [102.489 563.612 129.883 572.701]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5375 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 473.826 157.201 484.094]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_aaef0655958e79f05f192d205fd1d3c79) >>
+>>
+endobj
+5376 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 446.069 174.64 454.844]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_a563ac8f9dd9878dcc56ac46e9df171da) >>
+>>
+endobj
+5377 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.737 418.527 123.183 427.195]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_a2624104fd87f5343692fba4181c8c1f0) >>
+>>
+endobj
+5378 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 392.662 138.632 401.146]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_af1400f50c4a851e4b991e368c3e9bee9) >>
+>>
+endobj
+5379 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.774 305.768 168.168 314.857]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5380 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 282.325 148.111 290.89]
+/A << /S /GoTo /D (_message_container_8h_source_l00010) >>
+>>
+endobj
+5381 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 280.514 256.799 291.096]
+/A << /S /GoTo /D (_message_container_8h_source) >>
+>>
+endobj
+5382 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 93.631 148.111 102.012]
+/A << /S /GoTo /D (_message_container_8h_source_l00024) >>
+>>
+endobj
+5383 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 91.636 256.799 102.218]
+/A << /S /GoTo /D (_message_container_8h_source) >>
+>>
+endobj
+5391 0 obj
+<<
+/D [5389 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3195 0 obj
+<<
+/D [5389 0 R /XYZ 70.866 636.328 null]
+>>
+endobj
+1062 0 obj
+<<
+/D [5389 0 R /XYZ 70.866 627.509 null]
+>>
+endobj
+5392 0 obj
+<<
+/D [5389 0 R /XYZ 70.866 514.418 null]
+>>
+endobj
+1066 0 obj
+<<
+/D [5389 0 R /XYZ 70.866 362.02 null]
+>>
+endobj
+1070 0 obj
+<<
+/D [5389 0 R /XYZ 70.866 266.386 null]
+>>
+endobj
+5393 0 obj
+<<
+/D [5389 0 R /XYZ 70.866 223.786 null]
+>>
+endobj
+1074 0 obj
+<<
+/D [5389 0 R /XYZ 70.866 196.707 null]
+>>
+endobj
+5394 0 obj
+<<
+/D [5389 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+5388 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R /F22 2379 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5407 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/FormType 1
+/PTEX.FileName (./class_s_o_i_l_1_1_object.pdf)
+/PTEX.PageNumber 1
+/PTEX.InfoDict 5408 0 R
+/BBox [0 0 500 541]
+/Resources <<
+/ProcSet [ /PDF /Text ]
+/ExtGState <<
+/R7 5409 0 R
+>>/Font << /R8 5410 0 R>>
+>>
+/Length 353
+/Filter /FlateDecode
+>>
+stream
+x���MO�0���9�="M��4��Pu��4����ǒ�'�C�׎�>uNB"	�imzx�z�?�{8
A1-M/�jN�����x���h�/���Z�pW�_��r�ql�����6`
JkH\��3h�@�p�L�R�}wݓ�2�2g.�����E��@�h�����Ik�f����τ07V��ˬ�J��hT&��T�-�0�W.$��ch�*b�?P���{Yn����w�.0;B�2�YI��"O-�^*�c��Gv��ʣdCPV�������u11�x�Eխ�c%*��-;P�*Wnk`�0j�0�6�x4�㹶��)��[!�0L�D��L��1���c綠
+endstream
+endobj
+5408 0 obj
+<<
+/Producer (MiKTeX GPL Ghostscript 9.25)
+/CreationDate (D:20220227230624+01'00')
+/ModDate (D:20220227230624+01'00')
+/Title (ClassName)
+/Creator (Doxygen)
+/Author ()
+>>
+endobj
+5409 0 obj
+<<
+/Type /ExtGState
+/OPM 1
+>>
+endobj
+5410 0 obj
+<<
+/BaseFont /FJGCAD+Times-Roman
+/FontDescriptor 5411 0 R
+/Type /Font
+/FirstChar 58
+/LastChar 117
+/Widths [ 278 0 0 0 0 0 0 0 0 0 0 611 0 0 722 333 0 0 611 0 0 722 556 0 667 556 611 0 0 0 0 0 0 0 0 0 0 0 0 0 500 444 0 444 0 0 0 0 278 0 278 778 500 500 0 0 333 389 278 500]
+/Encoding /WinAnsiEncoding
+/Subtype /Type1
+>>
+endobj
+5411 0 obj
+<<
+/Type /FontDescriptor
+/FontName /FJGCAD+Times-Roman
+/FontBBox [ -70 -218 775 683]
+/Flags 32
+/Ascent 683
+/CapHeight 676
+/Descent -218
+/ItalicAngle 0
+/StemV 116
+/MissingWidth 250
+/XHeight 460
+/CharSet (/E/H/I/L/O/P/R/S/T/b/c/colon/e/j/l/m/n/o/r/s/t/u)
+/FontFile3 5412 0 R
+>>
+endobj
+5412 0 obj
+<<
+/Filter /FlateDecode
+/Subtype /Type1C
+/Length 2698
+>>
+stream
+x��V{P[U�i�=w-����ɝک�>ĮZp���V�i�����iCnHn 	IHJx�������
+B�X������j[ׁ�:Z]����;{CuuF�ڙ�ǽ�;�����|��|�o&�cTY�~u�����C�`��]*��4�f�&�RL�*|���c�_����,f��=�r���?��%��x����ʕ���Z�N��ɐ/����)&�'A�Ur��C�im�a֐�E2���RS��݊�7wm'�۾k/���P:��TRԪTR�J�4z�y2�֑�d*�IS1*Z�_C��'��^K����(c*��V�ZJ�����wR�'3tJ
C��M�4�jC���_O�5��Ѽ=���P
+Z��Su*-C򌊈m}d2���W���$���L�S
�h�gc�*��d(#��I��4�^�V�x^J�S-�`Ы4���"uT�R������������Z�ڴ�/����*FO����Re��������pRNFQ�R�[�/���� �aOj�H��y��f�<�ڭ��>��z
�vc
+l��`{��X�l+����a��K؟����+�Nl�-�k	��r������E[�C�.��r?��
Q�h_�����8����kQy�[�����a3�LRU^WV��ZK��+0�n�/&,(�
�+,
p�@���S�
C�8ש~S�Q��m�ߦ47H��o��d�^z=Imޱ]z8]�&�=&/�gt��k{}_��/���M�pO���\��+P 
+��_H����
�G����\]�-�D�oNK�ϑ���n���7g�ݔ�z��h�-T{��	�~n��a�
O�d=�$�x"TV:���K�a� Z>�n[cс,�L)�ح63]����{��z�(G"�niy���K�3��^\\f+l��Hb^`�ղ��G�Q�����&�dFX�>-i*�-k�DWm�AW`�ӹ#�O��
�����2�`pr�����Q/m��6B����;�Ӧ��(�
+�b
6���Z��=��]�fk|�
+��D�
+�}()F!";^Zz�y�h1*����������F���]94�ۢ�ꠃ��x����(��:�a�L�q��xu]���W,��M��<@aoOqk����ܘ���q��t�������ܯZ�!
@���``#*�v�,Ϣ6V"��x���B��H����IޗWL�g��Bg�Ӱ�����_�����O�z�D��!��>Ggv`P���=��x�7zй�h�#���4'D�$(�[����	7`���v����p�#CaD������
+JA���߳���C�b��J�D����X�oΠm|l!�~JR�'��O�з�Z 2�k%
�@p���EV�]kP�gA"���	����VX�ْ&L"�J��l�G�c�==��IQ�+J��F��n
+�Տ��� �G�@7��ו��Ny@xy^�h�ݏ�g*xw��`���_'|����\�A���j�I�Ki��i
+Dy���VCb���R6�Գ�>EO͡E��ئ���ړ��+��;3r���.���w���'����K��@[$f��X̙i1�0H��o�U
��,�o65ݭ�]��Jĕ?�Dad��Y�E�*�XQ��붐]�B%�"3�Q���)?\����F{z���PC������vOǥ�3��s3Rd	��p=�=yw
�o��tzz��>��H3����]��$�6%kv�(�ܧ�l:�*�&�4^���O7�5�t,&��&J�?E�	Nz����*�&���JR���4���t��_���?#��g7"\�~�I�h.�[�%���GvE�E��@	(�(�{�l̻2��u#+!��w�6���8�r��¶-7�άc����X��fĝ>��"!�����bl�\�Eȇ����q45���Ρ<$X"V�褤���h7�/�Mv�;82
�'�'�}�'_�]ͷ�\�ŸHA��g�869�����_a��l�_Ouu
+�����Z�\�4��"��?�H���Gz���GB���i�s)����z�=����f�Qo�u���p�)#����#����y�~�X���(pɅ�p�"�
+.����ޓ��׌�'�$�N�Qf�Iٙ�+K}���X�-U[��{�����h�r�b�n7C4W�k�PSzz���dx�|H��6)a���h䧸E�O�jm�9PO����e��"
+H�2x?�)j��rOYC�;��'�=N�rb�`<�/���Y��S7eˮ(O��ʼn�NM3���������BNs��׆��j�U�c|���I��rC���<PY�v���`PG�9Y6���Jt��B���
+-�Qm>f���A�1�
�Ǚh��O�2��A�w�D�04����u���2ق<��&����^L2_�v{��ϝ�G����8j.���vS�����F��4^�mu�H��A~|���|7#�x��*������u����l��Zm�"�����"�^$����g���A^�-=/�7��G��g����,�]��O�U�0,�Gy�ĺ,�p�@���jꪫ�:&[�!q�=3R���$�n��M�D�YZ�5U��ɡ�Ӑ�ܪ
�q�lRP���o�� ە岵± ��#i�n���g��tYճ��5LN|̏!�F~���v����	(�=(��e�5]������,���f- ���mC1mx�#���k��g[�Ű�9duv
+endstream
+endobj
+5429 0 obj
+<<
+/Length 962       
+/Filter /FlateDecode
+>>
+stream
+x��Vߏ�8~篰t/ ]ۀ
�t�{���jۼm�@�h	�in����!,ͶRUݓ�0�<��g{�!�n��V��&JP�S�C��"Ap�9)Ü��=�	�q�`"�߽��'�ެ?ʢ���:�:;}+�%�leS�������"��,N����+�ѣ`$�~�.Ip�"T콇m��+Dp�&�h<�(�,�`5z��{��8�d�C�f��B�G��X�7q�N�z!A���lfM�@��_߯VY�Zv]��W���m�9Ϧ��\Noo!�0E�,�]0�-�9��K"����U����c'�`�K�K-��ؗ�5�J��_�Ju�m��T�Jg��,�p9�JY���N��I�(�}�Y�{BX���j:�|&�s�"�\�2�!|�ԡ5�j�(�i[� 2���fc'�Uc�B5���Z�U_��@��he/텇mǕ��:��:��N�5H�O��g,�uHD��/ L������V�gG����Fr��Щr���Z���	#]R�M��\J	*h퇑�-B>T�jdZ&5��n�'-�*���tSuP��ge�	UM�oU�\U{��*.՝���dY׷U��\��li-�*�P�zV�cY奊ve^׮��	N�O?�T�‚M�2ߨⰇ�F���b4U���@=c�0��G}U���N����{�.�m���-t]+��h
+}�5;�r,aX������S���][,�Z���k�U@�Y���)�)����b�"��uF�?�v|�sƘnwr�3*�ۘ�r8W)�0>s��V5E}�H����:��k����XD��`㱔M����s�s�tc)yr�û�\��H��M1���K������rL��n�#4uCK���Ш%�?	uK��A-M��hj~
˜ay���ZA�w�l���&G�R,����+�����Lr��F�dz�N/����Z?COv~�Lc����es�p��
+�P
+endstream
+endobj
+5428 0 obj
+<<
+/Type /Page
+/Contents 5429 0 R
+/Resources 5427 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5366 0 R
+/Annots [ 5384 0 R 5385 0 R 5386 0 R 5387 0 R 5401 0 R 5402 0 R 5403 0 R 5404 0 R 5405 0 R 5406 0 R ]
+>>
+endobj
+5384 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 702.888 97.264 711.977]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5385 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [343.976 702.888 371.369 711.977]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5386 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 666.43 148.111 674.995]
+/A << /S /GoTo /D (_message_container_8h_source_l00032) >>
+>>
+endobj
+5387 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 664.619 256.799 675.201]
+/A << /S /GoTo /D (_message_container_8h_source) >>
+>>
+endobj
+5401 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 520.054 148.111 528.619]
+/A << /S /GoTo /D (_message_container_8h_source_l00039) >>
+>>
+endobj
+5402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 518.243 256.799 528.825]
+/A << /S /GoTo /D (_message_container_8h_source) >>
+>>
+endobj
+5403 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 373.861 148.111 382.242]
+/A << /S /GoTo /D (_message_container_8h_source_l00017) >>
+>>
+endobj
+5404 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 371.866 256.799 382.448]
+/A << /S /GoTo /D (_message_container_8h_source) >>
+>>
+endobj
+5405 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.115 314.255 221.382 324.837]
+/A << /S /GoTo /D (_message_container_8h) >>
+>>
+endobj
+5406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 231.546 97.775 242.021]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5430 0 obj
+<<
+/D [5428 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1078 0 obj
+<<
+/D [5428 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5397 0 obj
+<<
+/D [5428 0 R /XYZ 70.866 654.745 null]
+>>
+endobj
+1082 0 obj
+<<
+/D [5428 0 R /XYZ 70.866 627.55 null]
+>>
+endobj
+5396 0 obj
+<<
+/D [5428 0 R /XYZ 70.866 508.369 null]
+>>
+endobj
+1086 0 obj
+<<
+/D [5428 0 R /XYZ 70.866 481.173 null]
+>>
+endobj
+3039 0 obj
+<<
+/D [5428 0 R /XYZ 70.866 307.281 null]
+>>
+endobj
+1090 0 obj
+<<
+/D [5428 0 R /XYZ 70.866 298.839 null]
+>>
+endobj
+5431 0 obj
+<<
+/D [5428 0 R /XYZ 70.866 175.82 null]
+>>
+endobj
+5427 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F22 2379 0 R >>
+/XObject << /Im6 5407 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5471 0 obj
+<<
+/Length 1659      
+/Filter /FlateDecode
+>>
+stream
+x��YYs�6~ׯ��C�D����L�'�][}J2J�%�<q�_�]��D��%��S�D������.H��A���o�ޛ3�>	\�6Fw�G�ﺆ0�Z�(2>��]�k߳a�\}��e�0�7O�I���
+�8ϐ�w:�}�Y@J
k����ϸ1I{?S#�w�%v���25�c���ĸ��٣jZ�xN��	J�F��zܷ������"�B=����+�~
�7g��f�����㠩���1��E�TL�q7�=���q\�j�UL�-��f~�-�h8,ga!�/�@�7g�gҢ���q�ϚѦ�M�)	��l:M�abK��ʗ~y��9�mj��l���N0p`9f�M�О��8�dd�(S�"E��h��2�;��r��l��\Đ7��D9�T��K�.M3P-w8s	�8�,8�"����<��$�.6u������M�x�uO"Ή�
8�٣U�'U^�j�]�4`����0���;��_�Z���b+�ڴ�c��2u�����\�ۖN�1����K��_�<���c�I-vC}�}�̶Y+��q���.����a��G��.���W���#�cp6�fU��*�5�}R�0z����?����KI�0I��Ϩ���EB�"��e�Q���{P9J�yo���	�{�y�x�S/�T{�o�S)䙣��V�Y��XK�1Bmk�P�����'�|sfQ"��/S�����j��]�SQ��T�K^+o�3=
��L-�Ƿk�M��8�Sq��B��8~M<?)�綾�wj������_��,���`$Q���?9�p::=Fj��\��>�1n�hl7�0�p����e���R3��� �ı�6D�B�׈@g��S���q "Ա�[�g���N��b�sH�!����=�P�-�F�= �G�+��%d�Ú�f�ys�l�Yv�wsX�S}���{�L�ͅu(�(�����䖫�U���`���Ù�nA���	�r�w��9��_D~��nD1���.��(�JD�ZN�Dl���S|b9N5�Rj��*��f�	:~��D>���=�͘�s���\�f;�$�����x���[�'Q�b.�u�C�d��y
1aSs��z%���j�ֿig�B��m��4����XY�x�u��7�E�(+�Je\�
+Yj�'�R�l��mF�rl�W�8��K@6-u�bSۼ�Ųq�W�L�B-�Q$����PK�	P���U�(*u=�K�����e=���1�+ȁ[g;43E��4�S�u����+R�Uz�D���2h���$źcm���Km��9DP��LV	���`��sM���wE��'y�y�������i�3|������-���̅��<CG����n7,������4�C�,�X��C�s_͋��e׌�v)���V�m�V��O���Q4��RI��(�L�P�i0]�|Wxh&ڐj���ˮ��r��Ey�#F�a�$�4�^���u�6� ���?j��'�I\-�@w�pp*����Y��2Yҵ@�Jg�\�Z~Wϋ�N����yDf{�H�}ɣ��Dݲ�f�����Z~�ѭ�����q��C��5���K��Qk�@;�p�%��6�|&�pyf���.%z�)f�:�����
+endstream
+endobj
+5470 0 obj
+<<
+/Type /Page
+/Contents 5471 0 R
+/Resources 5469 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5366 0 R
+/Annots [ 5413 0 R 5414 0 R 5415 0 R 5416 0 R 5417 0 R 5418 0 R 5419 0 R 5420 0 R 5421 0 R 5422 0 R 5423 0 R 5424 0 R 5425 0 R 5426 0 R 5435 0 R 5436 0 R 5437 0 R 5438 0 R 5439 0 R 5440 0 R 5441 0 R 5442 0 R 5443 0 R 5444 0 R 5445 0 R 5446 0 R 5447 0 R 5448 0 R 5449 0 R 5450 0 R 5451 0 R 5452 0 R 5453 0 R 5454 0 R 5455 0 R 5456 0 R 5457 0 R 5458 0 R 5459 0 R 5460 0 R 5461 0 R 5462 0 R 5463 0 R 5464 0 R 5465 0 R 5466 0 R ]
+>>
+endobj
+5413 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 733.357 122.681 743.832]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_ac821d8158a2c4214b15cb1d9be8954dd) >>
+>>
+endobj
+5414 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [197.541 735.141 232.421 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5415 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [244.491 733.357 271.902 743.32]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+5416 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [317.884 735.141 336.823 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5417 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.804 735.141 407.221 742.025]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+5418 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [453.203 733.357 498.682 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+5419 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.311 721.294 160.196 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+5420 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 693.506 130.43 703.981]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_ab0d8fb2cb9e32c16ea631ed93e7a5d57) >>
+>>
+endobj
+5421 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.243 665.611 186.153 675.879]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_aebb0f522c4ced342fbd33cb377eeb4b3) >>
+>>
+endobj
+5422 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 652.554 132.012 660.296]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5423 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.253 639.5 160.187 647.984]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a0d2c97d0d9a71ec307211897d596bbde) >>
+>>
+endobj
+5424 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 611.524 170.866 620.089]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5425 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [171.366 611.605 195.639 620.089]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a5dabf727c8256928d1f019520a34be1f) >>
+>>
+endobj
+5426 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.125 611.524 248.45 620.089]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5435 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.253 583.709 171.78 590.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a5480dbba0b410666dd030006e86b1108) >>
+>>
+endobj
+5436 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 554.029 165.531 564.298]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5437 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.031 553.922 212.388 564.298]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a24b2c5323d9f5f0651d48d3d319eb225) >>
+>>
+endobj
+5438 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.874 554.029 279.653 564.298]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5439 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 540.973 132.012 548.715]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5440 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 526.134 165.531 536.402]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5441 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.031 526.134 212.388 536.402]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_ac6614134cf7d4c7caaaae13fac999978) >>
+>>
+endobj
+5442 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.874 526.134 279.653 536.402]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5443 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 513.077 132.012 520.82]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5444 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 498.239 165.531 508.507]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5445 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.031 499.05 224.349 508.507]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4e237fb0358f5adaea25f2ac95b8b5e7) >>
+>>
+endobj
+5446 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [227.835 498.239 291.614 508.507]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5447 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 485.182 132.012 492.924]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5448 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.822 470.343 192.727 480.818]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5449 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.468 470.343 215.924 480.307]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a98e9761c2be5e2acdfe673f48259172e) >>
+>>
+endobj
+5450 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.308 388.525 219.213 399]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5451 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [233.02 390.31 259.929 398.489]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4ce4f8d21682f894c34f447d2a62cd30) >>
+>>
+endobj
+5452 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [336.527 390.31 371.407 398.794]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5453 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [385.214 388.525 412.626 398.489]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+5454 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [460.563 390.31 479.502 398.794]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5455 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 378.355 119.194 385.238]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+5456 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [163.681 376.57 209.16 386.839]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+5457 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.648 376.463 289.533 386.839]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+5458 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.291 361.815 177.605 371.441]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5459 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.726 255.575 189.153 264.346]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+5460 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [190.048 253.872 217.953 264.346]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5461 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [449.826 243.804 475.23 252.185]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5462 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 196.953 93.059 205.406]
+/A << /S /GoTo /D (todo__todo000007) >>
+>>
+endobj
+5463 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.058 197.065 139.462 205.446]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5464 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [294.879 196.882 351.718 205.653]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+5465 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 150.143 148.111 158.708]
+/A << /S /GoTo /D (_object_8h_source_l00018) >>
+>>
+endobj
+5466 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 148.44 207.915 158.914]
+/A << /S /GoTo /D (_object_8h_source) >>
+>>
+endobj
+5472 0 obj
+<<
+/D [5470 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5473 0 obj
+<<
+/D [5470 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+5474 0 obj
+<<
+/D [5470 0 R /XYZ 70.866 430.177 null]
+>>
+endobj
+5475 0 obj
+<<
+/D [5470 0 R /XYZ 70.866 336.404 null]
+>>
+endobj
+1094 0 obj
+<<
+/D [5470 0 R /XYZ 70.866 315.288 null]
+>>
+endobj
+1098 0 obj
+<<
+/D [5470 0 R /XYZ 70.866 134.196 null]
+>>
+endobj
+5476 0 obj
+<<
+/D [5470 0 R /XYZ 70.866 89.371 null]
+>>
+endobj
+5469 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F24 2940 0 R /F21 2941 0 R /F73 2949 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5498 0 obj
+<<
+/Length 1702      
+/Filter /FlateDecode
+>>
+stream
+x��YM��F��WP9�*k<�[I�W��ĉw}Z�R,�%Rd@��O3 ��dI�O>l���u�������^M~��<}�/@��̻��)�)=R$�w�xw~���Ψ
+��7�]_]���Gǵ}�,���޾�����y��n_{�3$K
NH��ɋ�ɧ	���#�� @�^���}�^���0ba�=4#���
X��L���S���Ed:#c�N�=�����S(T���A<k^�O|���F3Y�ƕ�f��PH�ZU'WW�"*u���.���(�#�
+��,�]�r����ɖs`�ɰ}�E��:�ݫvQ����Q�ɽ��#{!W�q^?Y�a)��S��Y�i>�
+�@���u��"�ag��R�DWq���ȿ
+~��EV�-�~��~1%%
+y�K�2֣��8�f�CP��x�ɰ�3�q���_�uQڧ͠���C�K����2����W�z���(�t�l����%�:��;��o�Mn�
���Ƣ��K՛6D,��K�N)��8Q8!~5�x,	I�@�A#�69��B�t%<���C0�C:#�I�@���J�C�zs�9�ˑ滹�`zAϴ���#X!AáM�EF��Ix��׉d����ݛ&�Z��47��9��M.G����C�V���ǻ��a�؟-�K�D��?�kd/eQ��.�����f���Ћ�|��r��R_��"?��gY����9��,��DX�.L�|��y���֎ei�M�cLu��D�:���@�\Ƣ�0��*�x�(8J#%�R�8�β8N��MS���YV�iԷ��z�3HLIt?����ƽq�9՗ݝW���0]����KIpd&
++q�>P��3�s��q��l6u����b�����`�J=�1�g�U'��K	��$��Va8Zq
+B��W*�c���
��A��,�Ӫg�k?���<��t�Y~�5>Mud;�lZ���S��FnXg���Z����U��>�4cȕi0��l=yڻL&/<BO�h��a��lʠgj-�t�j�RCk��]w`��0�X�t1�tB� n�j���:owr��dU��D�
+'o��&�<,�"�^'�
M���j����E���Ҷ��=��IJ��馌��cY��Ý1k��.��fG������j�:��tA�+� ��"�#a�7��CQ��4��F\8���8�ĨR2���[P"�W0ZG�2�:��ڻQ�C1$������xSO�81cΪ��!0,�Lafi�B�/#�û�>��E��ʎmG���]�fP`ﶛ��4<�2 ��n4%�c-x�[cj�3+�I1�H��"͚$g�җ';�Ʋ���.ӵN\��v�C6��.��.~�u=lx��X�ah֋��� F�V`fQ��H��쒛Bo/	V�M��`�D([Q9@���	ҿ��}+S�\��f>ϋxmv)j�n�q�Q;���#�a����D�|F8 [K��T[��.n0�{ue�����Bh��V�]�?]���U��S�!���*��â}/�=s�
�\r[��Kf�Hh�_�US��&󚛤�i�<��4�8`�-�d��IU*�km�6���j�٩��1F$��H0#�k��jP,��.�4K]/�dD����&�lL�}H����GZ՝���`��m�����t Œ�����l)U���q.��.�^�\���7������0���87��u�����
+endstream
+endobj
+5497 0 obj
+<<
+/Type /Page
+/Contents 5498 0 R
+/Resources 5496 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5366 0 R
+/Annots [ 5467 0 R 5468 0 R 5488 0 R 5489 0 R 5490 0 R 5491 0 R 5492 0 R 5493 0 R 5494 0 R 5495 0 R ]
+>>
+endobj
+5467 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 716.132 249.911 723.344]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5468 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.159 643.43 182.586 652.201]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+5488 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 451.228 143.126 459.609]
+/A << /S /GoTo /D (_object_8cpp_source_l00004) >>
+>>
+endobj
+5489 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 449.341 212.398 459.815]
+/A << /S /GoTo /D (_object_8cpp_source) >>
+>>
+endobj
+5490 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [358.88 342.247 393.76 350.731]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5491 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 308.66 148.111 317.041]
+/A << /S /GoTo /D (_object_8cpp_source_l00014) >>
+>>
+endobj
+5492 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 306.773 217.383 317.247]
+/A << /S /GoTo /D (_object_8cpp_source) >>
+>>
+endobj
+5493 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.97 174.625 212.347 182.942]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5494 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 163.774 249.911 170.987]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5495 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.843 92.454 156.748 102.929]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5499 0 obj
+<<
+/D [5497 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1102 0 obj
+<<
+/D [5497 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5500 0 obj
+<<
+/D [5497 0 R /XYZ 70.866 631.328 null]
+>>
+endobj
+5477 0 obj
+<<
+/D [5497 0 R /XYZ 70.866 442.444 null]
+>>
+endobj
+1106 0 obj
+<<
+/D [5497 0 R /XYZ 70.866 415.586 null]
+>>
+endobj
+1110 0 obj
+<<
+/D [5497 0 R /XYZ 70.866 292.866 null]
+>>
+endobj
+5485 0 obj
+<<
+/D [5497 0 R /XYZ 70.866 254.212 null]
+>>
+endobj
+1114 0 obj
+<<
+/D [5497 0 R /XYZ 70.866 227.353 null]
+>>
+endobj
+5496 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5527 0 obj
+<<
+/Length 2204      
+/Filter /FlateDecode
+>>
+stream
+x��Z[s۸~ׯ�#5cq%A���o�[�N�ɛ١I�bC�Z���߃%J�dI�N�����1�|��u6��.��(b��)�1�Q�	E	fy�&t�u�[�"�d��;3�s�����2|_g�����+�J����&N,��EJ�$�A��<|�A�~0b�^��E�C�ke�y��	vfbD�~ԃ3:�G��rg��)�aڤթfJH�˼�QA=��#���`�H1K&�X�ĉ0!<H $4�!�QĜ���6"���L�\����.#A���e��2F���l�l�8�1�Cş�9��]�E�Q`~t��������_*���q��Vv�QٱU���|���OOS���K���Fٳ`�?�1�CS�����tFdv���ȑ}�h��~�i��|��S9�M��U���yj�Ἡ���Ҳ|���R�֊P\��1����V���D�Ks�E2��*q�d�!	����IgiҦ�
+J� ��uG�Z]-��
+�S�>N)K�qk|N�ew�A�2�\$â'J"�~��.�����8|�T9��M��j3(<D��r���X:ӄq0m��L�M��:ݰTh�aG�u��,I�DGS,�dE2FX�Y�E�@i]uuY?�@�y�G5P}�U�VI��JA���)�靫y�Ƭ����-�k��b�9�m��Y=E.�ը|/`O�{l N��{���TĀ��=�ب���?ɽ,7nm,�8��ù5"f�3�������F.�F�ݰϕ�s*�X���i�e�[��3�W����ԋ�f��
��a�W�z�Q,����U[�[��V�r!���<�}��a<�DB�f=%�r�#�-7ɖ�-I��-����ʽt,XBO� ���1���S�?rU+����&9�(���3����诳����O�]�U��}�@���ۻ�kk���@��,����L��@DP��Z߶h��Dl�AUቿ�X��M��;��OWn�@M�����"����d  ���mVo�b���7㻥�`�(�ŘU�CQ>���8@S�����h�UZ~�b'
��M���QR&iHoLp@y:%ag�3�G�$�`���n����N��s~�RzQ�����Ho�6�w�ݰ֊�'HϦ������ٍ�Z�n^�@�E�!cxk�VUfO���ȽJ�$���'{���N��n�y���y�*s�Lêv�:���	�y�
+C�ʮ�H���^ziQ9y��L_��-�0q	���!��灣���P-���GC�����9�iAq��u���=䥪 ���>NEk� �M?���ـv/O�ڢà�����b��۠R��$� �딫�!��[\�Ur$L�M���^X|���u��3/V��/���eS/�u�tf��R۹odo��;p�ԛ� H�F ����W��_�x�[�*נ��SU�\-K�6Z��T-D����nI|�������m������g��
	���cꥀu+g�=t��1,O� ����\����w��n'��9�0v���v�9{&�k��c㫄�M��Weg�M6���6�Шn��%B��Q�5�y)�H������R�J3u�4�Fq�&�X�XZO������A���)�ה!L����
+*9|#Έ������ɰ܅�dL�v�X�#܅Q�H��.g��.��ڏQ4�l�C�""��j���z���nn�J�Vض5���d�Q��LJb;aW�M*Y�{(���]o�B���"DD��Pz��RL��\"3�~��ߙ*�Q����.�`�<�����wۯZ���IGzN4@�2���}O|�	[7�u׫&S@y�{���^��e�Ȣ)����']Ǫ�T���_u����W��=��x���ovl��~��߀e5���5T���)��_\��c�_g�<F��Ά,�Y�Uw2��C@�	�7g��$<�?&�h�Y8M�ϛ	��FO�i���ͬT�a����C\�=�0���Z�9>0������>������o�|�����obt������i�O����\�}���MG��\2qa�}��׸�b��q�@=ਅڙ82�V���X���M&6J��@/Z�襅�ݹ�	Y�xC�t��5���@����w1�7�&Us�����r�G`#��8F_�@��S�����t&qĵ`=�(�����*դ�X9z_&��Rg�m��&F��
+endstream
+endobj
+5526 0 obj
+<<
+/Type /Page
+/Contents 5527 0 R
+/Resources 5525 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5366 0 R
+/Annots [ 5504 0 R 5505 0 R 5506 0 R 5507 0 R 5508 0 R 5509 0 R 5512 0 R 5513 0 R 5514 0 R 5515 0 R 5516 0 R 5517 0 R 5518 0 R 5519 0 R 5520 0 R 5521 0 R ]
+>>
+endobj
+5504 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 579.552 148.111 588.117]
+/A << /S /GoTo /D (_object_8cpp_source_l00018) >>
+>>
+endobj
+5505 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 577.848 217.383 588.323]
+/A << /S /GoTo /D (_object_8cpp_source) >>
+>>
+endobj
+5506 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 481.773 138.811 489.436]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5507 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 469.818 195.504 477.481]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5508 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.144 434.269 253.547 442.65]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5509 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [329.347 421.218 379.16 430.678]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a5480dbba0b410666dd030006e86b1108) >>
+>>
+endobj
+5512 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 320.705 219.534 329.086]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5513 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 251.703 156.58 260.084]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5514 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 229.898 224.324 238.382]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae0d3b5ab1757e069f38c55e2d5ecc3af) >>
+>>
+endobj
+5515 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 213.272 148.111 221.532]
+/A << /S /GoTo /D (_object_8cpp_source_l00075) >>
+>>
+endobj
+5516 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 211.568 217.383 222.043]
+/A << /S /GoTo /D (_object_8cpp_source) >>
+>>
+endobj
+5517 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 141.222 138.811 148.885]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5518 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 129.267 195.504 136.93]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5519 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [223.814 101.994 249.218 110.375]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5520 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.921 88.151 112.826 98.626]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5521 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [453.56 88.943 491.418 98.402]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a0d2c97d0d9a71ec307211897d596bbde) >>
+>>
+endobj
+5528 0 obj
+<<
+/D [5526 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5529 0 obj
+<<
+/D [5526 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5483 0 obj
+<<
+/D [5526 0 R /XYZ 70.866 567.867 null]
+>>
+endobj
+1118 0 obj
+<<
+/D [5526 0 R /XYZ 70.866 540.671 null]
+>>
+endobj
+5530 0 obj
+<<
+/D [5526 0 R /XYZ 70.866 348.782 null]
+>>
+endobj
+5481 0 obj
+<<
+/D [5526 0 R /XYZ 70.866 209.862 null]
+>>
+endobj
+1122 0 obj
+<<
+/D [5526 0 R /XYZ 70.866 183.571 null]
+>>
+endobj
+5525 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5562 0 obj
+<<
+/Length 1795      
+/Filter /FlateDecode
+>>
+stream
+x��YK��F��Wp�*k<o@U�$��u%eg-��.+fW�d@����$V�$���@��oz�Gػ���f��|��5���R2o~�ERzaL�$�<�n�Li��]�9����G-K�-O��>^���`_U�X������9C"d �����N~�O�M�G:qQ�"ʽ�jr�{)̽�0bq�=�/W��kf��a��;0�B?��$��$Aw�(��*Y�FU!~m4kY�j��4dDkv~ga)��ň�����9‚9�%�{1��J품!J���C�G�b?6�=W$~�C$h<�Ru�ܫ�#�-�
$	Ј����E�ʊ{v-��w¯�L���?���`8z��mT�v@�࿮Ժ*`�J-�6���ϋ5��M�~ݷ�EQ�ΰva'�2�^�á�r$�qS� �PJcD#�?Pz��q�����f�<����c�/�/#����o���
+�ѸN�e;�8Z��)۩����j���d��,�����8񀐡�Z�_�fS�C�wBG)��2%œ���6�}yAr��eQ�a�nU�e����6)ƛ:�Ga�Z���:W+U4-���\Wt6��#e����0�8���|}�>aL�����e��Y��|�+-�5��[� �Ǩ�;�.A��W� �x0%c�i���7�',0��3�M�
+Qb�2(8��\;���(AP���Ͷb3��?g46<�A��]y63�Ž|���R¡��;�_X7
��/b�m�Y�%��"D,o�δ5�ء�����Dq��|���S>���R���ex�U�&�?[6�}
+ہ���չɸ�
+�B�	S����QSInr�~nw��7�Wk��a�!�·|b�,���^4��5����b����[:���2E�J�?_���m���n�-+�j�-��ͨ\M�-kBٞr�`A��cFc%��4��-u���J|d6H�_5��zYn��}-J�M'.=������K�����iV���ɾe�c��]��B�z-�X�-kT�nU<����
+eԂ�n��u�6��lڮ�޸�d�'��2}�e��#�p8q�m�6r����v"sI����L$�&��c
=���ISZ`>Y��f�eKN���
�9/ﳅcX�s�Uw�%w�)+����E�{V��Q@��ƘG�jPݟ��m���
������Ҿ��<�՝�[�,ly�ރ}'��F�H��S�V��P1&�M����i�</����j�e������q�v£J�ح\�$+�f]�{�ໍ��4.#�-��sx�n&[g�,A����-�<h��'��R����op�}K
+;��<KB��ʋ�����+{f��U�JEd���r;|P�6
+��4�ժ�kW�l\��:�t�Zj��ׯ����~ݴ���u�N�S5ꊇ!���7
+n!�Ee�e<l��8���;\(@���j�I��2��'�'x�U�)�N6v]��rB/���(����2����;�г$�#�/��]�yb����s\%�l�>�����t'�$�(��_t� ~ʛ�B"~�ME��M�d?�&AĈ>�I�&�զ��ӯ̵ 9ػ�^#�>�+�=9�=>Ew���(�[x(�b2�����QG[x9-��!B^��Ǝ7T���%�V�@i[zM{\��SSK(L���ԍ����/M��\��P�z�,yOz��N��E}����.
+趾�ݜ��F��h&�V�X�D��&+{���nz�O����UhO�)ֵ�3��J�˕\ )��U�*��_������^#�WŮ��0��^
+endstream
+endobj
+5561 0 obj
+<<
+/Type /Page
+/Contents 5562 0 R
+/Resources 5560 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5566 0 R
+/Annots [ 5524 0 R 5534 0 R 5535 0 R 5536 0 R 5537 0 R 5538 0 R 5539 0 R 5540 0 R 5541 0 R 5542 0 R 5545 0 R 5546 0 R 5547 0 R 5548 0 R 5549 0 R 5550 0 R 5551 0 R 5552 0 R 5553 0 R ]
+>>
+endobj
+5524 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 742.947 219.534 751.328]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5534 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 657.019 156.58 665.4]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5535 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 622.133 224.324 630.617]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae6913253b8e38f0f4eed9903058ae589) >>
+>>
+endobj
+5536 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 597.232 148.111 605.797]
+/A << /S /GoTo /D (_object_8cpp_source_l00054) >>
+>>
+endobj
+5537 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 595.529 217.383 606.003]
+/A << /S /GoTo /D (_object_8cpp_source) >>
+>>
+endobj
+5538 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 499.453 138.811 507.116]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5539 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 487.498 195.504 495.161]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5540 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [243.556 451.949 268.959 460.33]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5541 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [463.637 439.84 525.406 447.541]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5542 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 426.505 209.347 436.403]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a5dabf727c8256928d1f019520a34be1f) >>
+>>
+endobj
+5545 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 351.143 219.534 359.524]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5546 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 270.479 156.58 278.86]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5547 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 239.661 224.324 248.145]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a21b1e78bdca84f9fd04fd026a0c3ea9c) >>
+>>
+endobj
+5548 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 217.333 148.111 225.897]
+/A << /S /GoTo /D (_object_8cpp_source_l00063) >>
+>>
+endobj
+5549 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 215.629 217.383 226.104]
+/A << /S /GoTo /D (_object_8cpp_source) >>
+>>
+endobj
+5550 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 128.658 119.683 135.218]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5551 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 116.703 181.158 123.263]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5552 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 94.477 106.248 102.961]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+5553 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [320.661 94.58 346.064 102.961]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5563 0 obj
+<<
+/D [5561 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5564 0 obj
+<<
+/D [5561 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5482 0 obj
+<<
+/D [5561 0 R /XYZ 70.866 585.547 null]
+>>
+endobj
+1126 0 obj
+<<
+/D [5561 0 R /XYZ 70.866 558.351 null]
+>>
+endobj
+5565 0 obj
+<<
+/D [5561 0 R /XYZ 70.866 379.22 null]
+>>
+endobj
+5479 0 obj
+<<
+/D [5561 0 R /XYZ 70.866 208.221 null]
+>>
+endobj
+1130 0 obj
+<<
+/D [5561 0 R /XYZ 70.866 181.307 null]
+>>
+endobj
+5560 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5592 0 obj
+<<
+/Length 1377      
+/Filter /FlateDecode
+>>
+stream
+xڽX�n�6}�W�Qj�wIAQ��M�,�&ݸO�`�H���,y%9i��3$�X�sq�[䁴H�rf&4�48�:������$Z�`zD��ZQ‰f�4.�D�����#���weڶ�	���}����Ү�+�;:����l�[��csd���
rX�P"�8��;�T�(�W�����0)�
+�8x�:�jx��w�of����zQ{�)N�NA��e08�`$��S2h b�˽�
+�Ɇ*"�%"ɉ�Nm�����>����]1�1�Z�b��`�8 8�q��͍��O�
+��1W����������YUw~�+*�#�c�X�f�{?�Xаw���4�����s��M�!e8���4�0F��;��+��ͮ�۲t5�{�=���9u73���'���n�}:=���>O��De�z[�-��$�Ŧ�Wgc�~Sa��`��ZE��sZu��L�}*:�f�~�
+�(��`おK��+p7A��o��e���t$�������0m҅A�2>OUZ+�$QNc""����&�Q�V�(&�6��)��J	��kTI,� I.��{����_{��������:��s���~�nP�aI�?��X�}�8��sB��%Peϛ]��󿧻��QB�d�xǮ����|��8�
+�T�K��H�[�øm�-qH`�
�F��B��?&[g��1����
M���1i�|��Ϝ���a��ڞ����e�fu�����I4L���h;�x�I�X8��7�(�U�S������|ROu(�4/�ɖ�m
Y�[.�+-�B�zO������ˮ��es�=��$B��g�j��j�)(�3t�d���e$X_2���;�n�t*�����~� *i����y�ċ��?���ܣ#>��t|����D�x��o�<�q����t^Z���9��	�2R�/�m���|�~��D�u�[L��6�=[L�
w�~i�Œ+}�ֵ���"�)c�<[��N��J����	���{{E|��c2�Fa7?$�� �"t@���n���CGF)[�ܻ���h�UZ>�ɽ��2�h�в�N�1������cv�r�&���X���k<z��"�1��l����kw�ݺi�iᷮڮ�s+uU��m����j�O@��>.��"���|?#�
+_����9d,�|É�@�re&�McqH׋��Z����~�.����K)�
���`epH����[5��"�����U3���9b���(�絗�=!�h��N���<�_*w�–���p�����?��l�xL}Y�?u��>bÙߔ��wN�O�CJ
+���>������@�RI��p�"Z{?1�i�5�!���e-~?C�M���?^O��
+endstream
+endobj
+5591 0 obj
+<<
+/Type /Page
+/Contents 5592 0 R
+/Resources 5590 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5566 0 R
+/Annots [ 5558 0 R 5559 0 R 5572 0 R 5573 0 R 5574 0 R 5575 0 R 5576 0 R 5577 0 R 5578 0 R 5579 0 R 5580 0 R 5581 0 R 5582 0 R 5583 0 R 5584 0 R ]
+>>
+endobj
+5558 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [269.726 729.489 295.129 737.87]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5559 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [459.36 729.489 484.764 737.87]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5572 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [138.325 655.239 163.728 663.62]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5573 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [92.299 583.969 117.703 592.35]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5574 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.646 582.081 315.551 592.556]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5575 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [403.767 583.969 429.17 592.35]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5576 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 549.185 148.111 557.566]
+/A << /S /GoTo /D (_object_8cpp_source_l00044) >>
+>>
+endobj
+5577 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 547.298 217.383 557.773]
+/A << /S /GoTo /D (_object_8cpp_source) >>
+>>
+endobj
+5578 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.97 451.222 183.654 459.539]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5579 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.609 413.787 248.514 424.261]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+5580 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 330.603 153.096 339.168]
+/A << /S /GoTo /D (_object_8h_source_l00149) >>
+>>
+endobj
+5581 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 328.899 212.9 339.374]
+/A << /S /GoTo /D (_object_8h_source) >>
+>>
+endobj
+5582 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [280.27 173.365 305.674 181.746]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5583 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 148.361 148.111 156.926]
+/A << /S /GoTo /D (_object_8cpp_source_l00040) >>
+>>
+endobj
+5584 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 146.657 217.383 157.132]
+/A << /S /GoTo /D (_object_8cpp_source) >>
+>>
+endobj
+5593 0 obj
+<<
+/D [5591 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5594 0 obj
+<<
+/D [5591 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5595 0 obj
+<<
+/D [5591 0 R /XYZ 70.866 683.522 null]
+>>
+endobj
+5484 0 obj
+<<
+/D [5591 0 R /XYZ 70.866 537.316 null]
+>>
+endobj
+1134 0 obj
+<<
+/D [5591 0 R /XYZ 70.866 510.121 null]
+>>
+endobj
+5478 0 obj
+<<
+/D [5591 0 R /XYZ 70.866 318.918 null]
+>>
+endobj
+1138 0 obj
+<<
+/D [5591 0 R /XYZ 70.866 291.722 null]
+>>
+endobj
+5480 0 obj
+<<
+/D [5591 0 R /XYZ 70.866 136.676 null]
+>>
+endobj
+5590 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F73 2949 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5605 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/FormType 1
+/PTEX.FileName (./class_s_o_i_l_1_1_parameter.pdf)
+/PTEX.PageNumber 1
+/PTEX.InfoDict 5606 0 R
+/BBox [0 0 500 460]
+/Resources <<
+/ProcSet [ /PDF /Text ]
+/ExtGState <<
+/R7 5607 0 R
+>>/Font << /R8 5608 0 R>>
+>>
+/Length 468
+/Filter /FlateDecode
+>>
+stream
+x����n�0����܆�%J��a�`���/PnҢ�дŶ��X��C��(��Pԃ6�����܎��UԻGe�N=(��z~lG����]2�t��Q;�������G������fsq}�����^�g�����?����y�.���d��%?+��H���<� �����0:!e���{E���I�Ռ�{�������z���t�{>��������:�qQH��)��U�?�i�8����ȁ(z�%�^xfm�CDj,�����ie����F!Ն�L XE�IݵW.�Y������@�0J��}�����jx��|�+.��R}R}�OZ�+P��vg�q��.kHF�zc���͛>�t��|����z���8��>D�`�$K^�RK�9�����桚�ȅ`���L%~:�n	�K��Pd4d���(C1�q-�2�����T�M����h�2�$�R����i
+endstream
+endobj
+5606 0 obj
+<<
+/Producer (MiKTeX GPL Ghostscript 9.25)
+/CreationDate (D:20220227230626+01'00')
+/ModDate (D:20220227230626+01'00')
+/Title (ClassName)
+/Creator (Doxygen)
+/Author ()
+>>
+endobj
+5607 0 obj
+<<
+/Type /ExtGState
+/OPM 1
+>>
+endobj
+5608 0 obj
+<<
+/BaseFont /AJWBGF+Times-Roman
+/FontDescriptor 5609 0 R
+/Type /Font
+/FirstChar 32
+/LastChar 121
+/Widths [ 250 0 0 0 0 0 0 0 0 0 0 0 250 333 0 0 0 500 0 0 0 0 0 0 0 0 278 0 564 0 564 0 0 0 0 0 0 611 556 0 722 333 0 0 611 0 0 722 556 0 667 556 611 0 0 0 0 0 0 0 0 0 0 0 0 444 0 444 0 444 0 500 0 278 0 0 278 778 500 500 0 0 333 389 278 500 0 0 500 500]
+/Encoding /WinAnsiEncoding
+/Subtype /Type1
+>>
+endobj
+5609 0 obj
+<<
+/Type /FontDescriptor
+/FontName /AJWBGF+Times-Roman
+/FontBBox [ 0 -218 775 683]
+/Flags 32
+/Ascent 683
+/CapHeight 676
+/Descent -218
+/ItalicAngle 0
+/StemV 116
+/MissingWidth 250
+/XHeight 460
+/CharSet (/E/F/H/I/L/O/P/R/S/T/a/c/colon/comma/e/g/greater/hyphen/i/l/less/m/n/o/one/r/s/space/t/u/x/y)
+/FontFile3 5610 0 R
+>>
+endobj
+5610 0 obj
+<<
+/Filter /FlateDecode
+/Subtype /Type1C
+/Length 3481
+>>
+stream
+x��V{TSg�?1$�Ez�4D�3��i�Rjbk���i�����C�$$!��ח�^!@"��� (�U���N۩�۫�S���Nۙ�����p_�δkM��k嬜s�w������"–,+<ER$V�O�e�B�qt�^��^͆�l�}n+g5!�d/��g�𰓫�������9����aQ��d�g�=w0���k׮K�+tJI~��ziӦMT���?	�C���˨5��D,�+��2u,�,S�1�'�������{����۽� �[,+��T�&[*ɡD��L%~�ʓ+)���#��J��LKmSQY�J!Α�����"$XG)��"�J��)���Wf���\J-�$��&7d�ϓ�ԔB)��",���*�*G)Q�)l1qǮE�Y�]��)y>�+�ф���L�%��(�X���S��B���v�*�R���F%��o}��g)s�bՂ�*��G� �,�B�[�V�p�o�%j�X��OR��QQ����7Q"*I���f)�^�}��$���w*w��{4{��"]�xb~�$9EZ����-���~"�XC$� R����D*���H'����."�x��C�L��x�x�x��GD,"�XM��D�3\iDQB\a��^�r��Iv�	{-�'�3��ȭ�~
+�?���𓮥ۗ�/�`�a��e�/�����o���3���^z��g�h�,��~���l��@2�d8,d��&��iդxAZ������p��u�{�{��@�I�:���]��"�t���W�eH�o�<�V�a�ĜR�-Z�� ����l�3��Sqk�5(E~�H�V����$���Xˬf8�v����s�D(�Tv�!�z��A��O{M�EMcZ_�7�W�����M�����*��Tp�,��]�m�$�(�zM�x��\kv��l4��G!��"%7���.��.C�Kd/���3���Z��6��$��i4l�"y;��i�a ����i���W�ۜM�VH�6�2N�ӭַ�1@V/���{�5i���t�����"h7��<���v�K�ܒ;�T9R5��D-F�=�C3?���V�2>����3��]6�+���q�����0�l�ZEjѰl�7���$��g�����:AG[���t�����[h���u�7�#~5Z�1skk+�uu�0�-���u4j4��1�����r^/)�PAi���4��ӥ��Vt���eL���n�w`tx�&�V�m�
+l�@ug̽__�=��?*d�_��
�0}f0x�ڀdC� 
Z.��C�Tż3���5ҩ|��k�m�s��
+[��"N�<RVM���6k�JXc�u֒���c.s7d޸8�siX`j)Q�-�g�/D���[n�\���:�c��ct�1��G���mi��&}̠ܳ��a��-�o���L\�(]e���N�1-L*���$?�z��-��,څc[E���U�s�y!����x�zp����I�@y��hVh��E��=qjB��@�5Fp����3H�6_H���x{  �������v�?���P����|,p�����-S����lr���O����3[�ݝւ�U�f�
�F��Z�u:�'����W����>���UH��mSB���T�o�ьf�!�~�a��_��s��U_�sk����u����L�;��L���(��$/M4u|f���K3�琫��l�)x�ud����CiUEI��(�(�d��Ԥ��gG��)2�i~�e/
>�2�\),m�N1O���/P�/0�>d��2`������\��V��u�R�?J>�;=�����^&��`�i���3Q��T�m��Dг^ /wy�^�_��=�G���9l�
u���Zr����o[VA�F��z�Qm����!�����0"�����������!��\e�D-=.��#��g�,Z����1p��+ʪ�l5V�L?P����[�a��=��AdA_u��Q��L]���[Loχ�hhP��E�b��m��aqi��z=Ndi��pH9�х���BK���4�8�Cp����z��Q���|U$�������|�c�k6h坺�0����}u����gӏ�w��$�ԃX�>w�}pT��9��PX#��,z��ٚ){&��~�5ݘu�v�D3��,�ʡ�ь��`:<�K�f+v�M$#��*_}z�>Z�o�����=r�+$�l�(�ߣ�S�KoA\6���x>�̬b�a2��]> �.�}�� ���*D��odSn
+Eo]�����n���Ã�!�&�v��P�juA�1]*̀�:�/�"6|��Ļ���Ů+�\d�3h�4f�}��kO���)~_mG]�/7O�����	㘢?g��z��\^���f�_�ҲպHݛ��P��tIX����[G�y!1��F�C-X(�k�e?Zы
+�]AV�6*���B:�?��B��ԭi�R4+\Ő�ݖ'
+�?,ju:���Pf*������l�C�B�G��?�է��&.	�;���utb���7D�:�M���G�Mu�:'��z��ix�;zG�4��6��u~%����"$�8l�?�5��|���환�П�7�#���E�΂��K&�
+2�g}� b�E裿a��12���7�_�,m��b�QC�G�����P�o�'M����g��Bx�sy����f3ܱ8
+-�o�0�x�0O�Q��:P3�A�ryi�G�G�`K������K�򵂌��Z��hO�e�?Z�8����0q�;J�4/�p�����؛`t��`�0�b�Z�,^��U�����NC%|�Z-�w����]�Au�L���8����Y�?��#d�64�qٖp��f�Z n�F�7ܖ��x"&��
+��,x�1����/e���L��"��gl� ��"�j��S����D>{k�7�F�>+�d;Sy&��?��)0Qw�O_Ϛ���+c��Mh�G�'ڊ��n��o�_&XȍLj{��������|��$�7zB���2@\إ�f��=\�™��ژ-�nbu�P\Ē��Y�o��o��[퍐j6�x�hUa��^ �/o�WH�KP�8�[v�#�|8�/��"Q����U��l��}MeG�LCH�!��PzA����I4����������TW�N!��8�lN
+�I�IvC�E"��<�k��x!��W���V|H�Ŏ"���G�l�����r ���A��$p�rc���o�iZ��������YH򈍦B\�'�c����zG�����'�'����V��*ƚ����^��^�/�������Й���V���E�b��W�?���?X�W$d���{A�X�����x�L㋃o]���,J�>�Bz·�5�K�t<�<�/�j��[$�_��������s3�&9]0~�@��x'OtkG�v{����pCh�il�U�����
���Gu�q�����AD��N��?w`��e���;��o"6w
+endstream
+endobj
+5636 0 obj
+<<
+/Length 1187      
+/Filter /FlateDecode
+>>
+stream
+xڽW�R�F��+�*�*n�-ɕ�"�!CM�cX�mDd��d<�}n?d[����I���ۧ�=���V��������'Jq4_���X)%+��tĘ�pʢ8����i6�
+9	�:]�V������c(�DB�`���ߜE�J0����1	~u7|�/#�,�4�ݩ�����H����CE�~*�V��k�)�պ��U		i@'g��׉�!���cCT�zr{G�~�@�$F[k�FBr,�u�n&�'�]���e�9��)%��^W!#���B$�?��E8�58M9�1�Y��*_�S�]�.�u��f�Y�_�ABp��$�R��(svԸ����9��MZ�98?�d��0�x�Ӣ�O3��?�l̃���+,M�T��n6��ɑn���rF�b�6�M�Vk��7x�&/�M*��*�O�烶t��W>���tk��5�_y��σӳOg�3�[=AYCm�m^��c����p8�2�]�f�[T�;�Mx�L[L�ʴ�Tϲt�Ժ1��&��
0�
+\���6o|��`좲yt�m^n��ս�[�Zr��KmN|y�BV�&&g���P�i`!�#ʌWKw��� �J�����)�#m�+p=�wF�;c��T�aS�\�v��"��.�f�q������9�>)��|��1�_�\�}\3YUC�=U�"/W���A�-7e����̊��:�W��.[?M�r��n7�ԛ�;0��Y��
����)���ڀ���e�a��Sc"|3El4��\�(��59�m����e
��M�]-��c���3������v����K���l~ӽ��Am�$����o��L��Y��=vEfA��2G���r�5���TA�"[+Q���˜r$�
+�:;1�:y�������f�4����W
a���Rig@��0�=�egݫ���`�s��><���c�up�K*�Ct
����Xv�
+�������D8)o/V�ܫPRl����sž��z���~3��f����"�y}r{P���Qtե
+?��)�#�t�㥠ty�|,��y�:�j�6OW����H�v4���/
+�M�����P��k�]�]☳�"��7m���y��W�@��ze���	8�,AK�Sw�o�|\G����蒽14��`���	<:?��w��ӽ���
+�H���	��R�����V���ie�����@��p�/��U�
+endstream
+endobj
+5635 0 obj
+<<
+/Type /Page
+/Contents 5636 0 R
+/Resources 5634 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5566 0 R
+/Annots [ 5585 0 R 5586 0 R 5587 0 R 5588 0 R 5589 0 R 5599 0 R 5600 0 R 5601 0 R 5602 0 R 5603 0 R 5604 0 R ]
+>>
+endobj
+5585 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [330.835 691.435 356.239 699.816]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5586 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 654.475 148.111 663.04]
+/A << /S /GoTo /D (_object_8cpp_source_l00049) >>
+>>
+endobj
+5587 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 652.772 217.383 663.246]
+/A << /S /GoTo /D (_object_8cpp_source) >>
+>>
+endobj
+5588 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 557.8 119.683 564.359]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5589 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.294 521.148 119.697 529.529]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5599 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 435.969 215.868 444.74]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+5600 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 411.332 148.111 419.713]
+/A << /S /GoTo /D (_object_8cpp_source_l00024) >>
+>>
+endobj
+5601 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 409.445 217.383 419.919]
+/A << /S /GoTo /D (_object_8cpp_source) >>
+>>
+endobj
+5602 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 351.834 167.53 362.308]
+/A << /S /GoTo /D (_object_8h) >>
+>>
+endobj
+5603 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 338.882 176.999 349.357]
+/A << /S /GoTo /D (_object_8cpp) >>
+>>
+endobj
+5604 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 257.85 113.268 266.334]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5637 0 obj
+<<
+/D [5635 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1142 0 obj
+<<
+/D [5635 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4589 0 obj
+<<
+/D [5635 0 R /XYZ 70.866 642.79 null]
+>>
+endobj
+1146 0 obj
+<<
+/D [5635 0 R /XYZ 70.866 615.594 null]
+>>
+endobj
+3040 0 obj
+<<
+/D [5635 0 R /XYZ 70.866 331.909 null]
+>>
+endobj
+1150 0 obj
+<<
+/D [5635 0 R /XYZ 70.866 323.466 null]
+>>
+endobj
+5638 0 obj
+<<
+/D [5635 0 R /XYZ 70.866 200.34 null]
+>>
+endobj
+5634 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F33 2286 0 R /F67 2922 0 R /F101 4116 0 R >>
+/XObject << /Im7 5605 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5688 0 obj
+<<
+/Length 1462      
+/Filter /FlateDecode
+>>
+stream
+x��YIo�F��W9Nf%�F] M�Ԁ[�&�C�4��J�,Rq�����E��HYnz�A6Aͼ�{�6f6�F�z�7�\�����`$m�p\�lbxS�����ޅ�l����^���܏�Ei��&�
+?	�P��x����� %I)��ܘ,F?cc
+�]1W�Ʌ�C�ks�f�a�kb��ڛr�P��j};&؜�L�K��U���tN�xq*_A��)c�9�1,�AҌ�'JE�J��j�+w}62>ZB��՘c�_i	��J���58�95?a��dzt��+5��L�coN)5\�����JQ@�sN�θ.=A�ť���6��[a�l$Ey�}�,A�x�zlq��LQ��"��Y���:��3C�� MU<ɏ.K׮�qa[".\x �vLNsM j����y�elN���
+�_�|q�1Ȑ�sɅ�(L�y4{�"���뎛���g����A&y���Fe��y
����P�P��.�V�U�ݺ	�8��V#� ����W�C:�b��o�'����\����,2I���
��&D���Ķ�qD���]��}=s��$�Vc�Mԕ�-
+H��
+eH��֐��'�n�Giѝ�@פ�>`؈�@,ޫ�@q��V�^�"O]���)�:Gi\���‚
+$튋*��B���*��<n�Q�`��_&~v�B�@p�?���mL��j�^�jQ&an�Y��q0ӎd���s�=����"�U�Vc>�o��R|"hUH�H�����7j��֩j�)�T�+U��O+�$�����<p�*^B�~�����f���T�b��,��*n��Pq�ϊ�F��Z���L������J���;;�2���\�x�~��)����"�U��ߦ�w��1g[<���='�r):&V*���ΐtݡ�v�_�HWf�]h��ЗU�v��
+s��ar�0���=���{���>�*D����&�1l�\~�#��z%�u��(��
DI}Y�+�&%(��}��e
+X��R�KzL��ڑH�UL��\F>����1��5(ӵ�]�aiX�",X��F���ҿ�i*�@Ɨ;�GJ�ٍ`6�s�~�@ {����5Y)?Q[[2P�ߖ��㩻��}d"|o�Zwc��!�(��e7�ʱ�0$��Yp���O��#+%�l$d)����6�,��V_�13CHu-�86h�vo�(H�e��N��������=o�����I�9�Zř�
+�iK
�C����nР�G�g.�tq賀�N����%3ت�,K�2�J�ۇnw���Wܫ�f%j�����oٓ���+�ߩ0�4�����zڦI�Z�O9M���֟hT�>\?���:�q3خ��v�M���g���0�ӓ�&�*H��u���y�l�X4���]A'G3V���a�@��!�����>��Y�Ǒ<m�l���B��KpS\�_�u5��8;bS�u���m
+endstream
+endobj
+5687 0 obj
+<<
+/Type /Page
+/Contents 5688 0 R
+/Resources 5686 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5566 0 R
+/Annots [ 5611 0 R 5612 0 R 5613 0 R 5614 0 R 5615 0 R 5616 0 R 5617 0 R 5618 0 R 5619 0 R 5620 0 R 5621 0 R 5622 0 R 5623 0 R 5624 0 R 5625 0 R 5626 0 R 5627 0 R 5628 0 R 5629 0 R 5630 0 R 5631 0 R 5632 0 R 5633 0 R 5641 0 R 5642 0 R 5643 0 R 5644 0 R 5645 0 R 5646 0 R 5647 0 R 5648 0 R 5649 0 R 5650 0 R 5651 0 R 5652 0 R 5653 0 R 5654 0 R 5655 0 R 5656 0 R 5657 0 R 5658 0 R 5659 0 R 5660 0 R 5661 0 R 5662 0 R 5663 0 R 5664 0 R 5665 0 R 5666 0 R 5667 0 R 5668 0 R 5669 0 R 5670 0 R 5671 0 R 5672 0 R 5673 0 R ]
+>>
+endobj
+5611 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 735.141 138.175 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a698d4320aa3e34bf080f9e416fb12ce4) >>
+>>
+endobj
+5612 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.66 735.141 249.541 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5613 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [263.235 733.357 290.647 743.32]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+5614 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [338.458 735.141 357.396 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5615 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [405.207 735.141 429.624 742.025]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+5616 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [477.435 733.357 522.913 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+5617 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [138.268 723.186 154.714 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+5618 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [181.637 723.186 217.522 731.365]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aed57214457012af12a859669e182e841) >>
+>>
+endobj
+5619 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [290.271 721.294 326.156 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+5620 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [343.246 721.294 371.653 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5621 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.101 721.294 428.931 730.07]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+5622 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [432.175 721.294 460.582 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5623 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [501.993 723.289 525.406 731.67]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+5624 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 711.231 113.706 719.715]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+5625 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [116.95 711.334 140.363 719.715]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+5626 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 683.336 145.924 691.82]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a3c7401cb8d13756cc70d1df4e16db2e5) >>
+>>
+endobj
+5627 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 655.44 138.175 663.924]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5628 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [190.97 653.656 231.499 663.619]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a905eb12cd0e50cf245f2003643602acf) >>
+>>
+endobj
+5629 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [258.906 655.359 299.767 664.13]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5630 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [350.069 655.44 373.267 663.924]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+5631 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 627.464 144.102 636.029]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5632 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 625.76 169.512 636.029]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aec2434faa57778dbc8783ec77a86d627) >>
+>>
+endobj
+5633 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 612.704 132.012 620.446]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5641 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 597.865 165.531 608.133]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5642 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.031 597.757 212.388 608.133]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a37602b6b8f95595a78b70a9b0eb865ad) >>
+>>
+endobj
+5643 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.874 597.865 279.653 608.133]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5644 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 584.808 132.012 592.551]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5645 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 569.97 165.531 580.238]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5646 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.031 569.97 221.857 580.238]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_ac58916de16e381e40123bf9633a151ad) >>
+>>
+endobj
+5647 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.342 569.97 289.121 580.238]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5648 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 556.913 132.012 564.655]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5649 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.822 543.859 208.221 552.343]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5650 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [218.962 542.074 231.418 552.038]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a3ee4708c79c724f7905eecb9e2b2cc08) >>
+>>
+endobj
+5651 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 514.179 133.647 524.142]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aadc9c63027042e0e834b183698e964b9) >>
+>>
+endobj
+5652 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.178 515.564 276.749 524.653]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+5653 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.465 500.67 171.319 509.05]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5654 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.76 434.145 235.158 442.629]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5655 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.418 434.145 276.327 442.325]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_ae6326c41af3bca1b02f8d8dcca05ecad) >>
+>>
+endobj
+5656 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [353.377 434.145 388.258 442.629]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5657 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [402.517 432.361 429.929 442.325]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+5658 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [478.374 434.145 497.313 442.629]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+5659 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [125.428 422.19 149.845 429.074]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+5660 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.847 420.406 242.325 430.674]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+5661 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [289.327 422.19 305.773 430.674]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+5662 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [330.718 422.19 366.603 430.369]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aed57214457012af12a859669e182e841) >>
+>>
+endobj
+5663 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.374 420.298 473.259 430.674]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+5664 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [489.25 420.298 517.657 430.674]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5665 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [112.989 408.343 137.818 417.119]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+5666 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.062 408.343 169.469 418.719]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5667 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [204.394 410.338 227.807 418.719]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+5668 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.307 410.235 247.236 418.719]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+5669 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [250.48 410.338 273.893 418.719]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+5670 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.291 395.301 191.549 403.136]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5671 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.253 328.417 160.187 336.901]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a57567b4cfe6b370e9af7c3ef6f10be6d) >>
+>>
+endobj
+5672 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.253 300.522 161.307 309.006]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_af378abd9212084ebb270383d3cd4300c) >>
+>>
+endobj
+5673 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 218.704 150.1 226.883]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aed57214457012af12a859669e182e841) >>
+>>
+endobj
+5689 0 obj
+<<
+/D [5687 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5690 0 obj
+<<
+/D [5687 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+5691 0 obj
+<<
+/D [5687 0 R /XYZ 70.866 474.013 null]
+>>
+endobj
+5692 0 obj
+<<
+/D [5687 0 R /XYZ 70.866 368.285 null]
+>>
+endobj
+5693 0 obj
+<<
+/D [5687 0 R /XYZ 70.866 258.572 null]
+>>
+endobj
+5686 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R /F24 2940 0 R /F21 2941 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5715 0 obj
+<<
+/Length 2410      
+/Filter /FlateDecode
+>>
+stream
+x��Z[��6~���P���!u!��v��$3M�`ӌ�/i��-�-@���܌�����EY�ܺ�>$�y�xn<7
u6u�f�X������s�Y>8���sG���Y��W7"������~�����ܧnR%;��j����w������q��)	�������!�/`��<��>��<�#�� ,�]�&O�Z�-眺r�ϓF�/�a�`�������}X��3C�N QD"�j��}��:)���P�Ǒ�M��9A�0��=w�g���@�@�cޗ2g��b�1E�Ҭ��"�5�����F���'�[��Y��H(�/|�D�8)����QJ���I����^��*�#�b"y����a��@�6���U��?T��%��vAs���h�RB�wxϊF�<����`���`~�(F#«m(Up�^�C�W�Q��h���{�%k u�_ALD쟌����U�ӈ�{ħ��CgP�n}�b��֖�����]k���Jֲh���ࢡWc�_�f�W5��N�\�y�O@>I����B��ܯ�-����k.���%��G�\�!�ۤ�Z��@�������z�W�Y�eM&[�
ꥁ�	>\aY��6*k
+�Ve���@
+�bMT�#��P��iVp�m�9TC��p���am��mb Aj�2��a���x�-y��Wfl]u�’�%P?;Q�EI-�'�/\�3
������aq�* ?��n�,R�@Z���sM���A�zH�oi��EiЖa�2g=ґ�?v2�A��nV���-�y�����@�V%,Dū����R ��l��if��aS��Ţ�#�,�c �?�u+G�g����گ�Y#�hd���bXq��/�H���J"j��l�:�/�!��G����C3j��~+�W�ޮU������p�~��>��D[s���#�*�aY(V������:��~(f#�B�$Ec0�t��ͳͶ��"<������k�	4��u��
+θ�=.ӧ��z$�*�nr͉�c=�F�'�C����7J������D֘x�MB�2iL}X)��8�u/%(K��M�c��q]i*��� ��;�w�Zz���D�.BU2I�!��R��#�ݮi�>8�	ݶo�=��b��^��E�|�C�[���$_��������Ҙl=��q�O���a���K��$A���^��y�����_��t‡��7���2V��fm��qϤI�D�dc'�����a���z�Ԥ����U�� ��$�f*��`���o����9�F�pd�(����iZ��*QUC:Ί�����l�_�z���}$�ʳ=�*�Q�H�P���Ȭ-F�� ���T���P֕)-4�D!�T\���a!3�H��+��(ȟ���Y}�uY,^{��-b���D�aP�t����xm�9U���k�:WGו�M�o�0��Q<���E��	F���}݉��x�U���i^��t�7�܅Xi�!�o�Hy(�S�]7���-I�Uf��6���������
+�&)Lb{���ك����s���^�)!-�#�v>3u�,�%�}���MN��{�վ�Xm���5V�)��N��F��G��wང<7�3�O�z�d�x�nNh�u���[U�X\2�����B��پb��2ٟ
(�t#�5PK���V�hF�q��]"���t����3
+�-�u���^��M���D�J��&L�����Is�ঈ����49�9U\{9x�����Oj}����da&t�g���PU��憑�*�Y^�KӲhK+c�Pj��o�}P?6s��&]�E��k�l��YW�j�({{!7�����B��́���������A��	��4=j���a�[��
{k�t�o������]��~_�]�:�����p�D��>^�KH��\L���$b�XR��J�h�P�'a��{��Y�Ǖ~�.7�<��������q0?B��v�G���.(H<�1n[�����=�b�W��4���]�X��Z�&$<��I�SA�R��j֗�s�hЇi��k�N��o���GxzZ�6��%6%�Q.�LA�tVW#�X0߃
+&㳩��=��Z����ᐥ��f���|	0Z�����8=}������>xU������IܙQ۸�n�C�����{_M~Y4e^nl���wW��
+cj��yɠ-v��	Fn^�b޳�D�H2,N�0�~�x!���u���Lj���K�[^��E�U	����$�?}p5m�M�{���P{�9cHMO�|O�-CO��Lbs7"M*S�+���^�ϰ��gɟ�g�>�ˉ�zt�R>>[�c}�Ԯ3֐��=u���>��:�s�\EjH�O���:�(��MA[@J#0<!����;Y�*��j`�~,R���3�L�\YI�/$�*�
+endstream
+endobj
+5714 0 obj
+<<
+/Type /Page
+/Contents 5715 0 R
+/Resources 5713 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5566 0 R
+/Annots [ 5674 0 R 5675 0 R 5676 0 R 5677 0 R 5678 0 R 5679 0 R 5680 0 R 5681 0 R 5682 0 R 5683 0 R 5684 0 R 5685 0 R 5702 0 R 5703 0 R 5704 0 R 5705 0 R 5706 0 R 5707 0 R 5708 0 R 5709 0 R 5710 0 R 5711 0 R 5712 0 R ]
+>>
+endobj
+5674 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.309 650.37 189.736 659.141]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+5675 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [190.927 650.451 234.326 658.935]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5676 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [239.984 650.451 283.383 658.935]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5677 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [302.714 650.451 336.922 658.935]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+5678 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.683 636.603 168.086 646.979]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5679 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [385.588 589.682 423.446 599.141]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a57567b4cfe6b370e9af7c3ef6f10be6d) >>
+>>
+endobj
+5680 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [441.394 589.682 485.23 599.141]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_af378abd9212084ebb270383d3cd4300c) >>
+>>
+endobj
+5681 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.841 565.957 184.245 574.338]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5682 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.525 565.957 274.929 574.338]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5683 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [173.695 539.142 201.098 549.518]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5684 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [246.828 541.034 290.226 549.518]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5685 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [327.967 540.953 368.828 549.724]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5702 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 405.85 93.059 414.303]
+/A << /S /GoTo /D (todo__todo000008) >>
+>>
+endobj
+5703 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.058 405.962 139.462 414.343]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5704 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [294.879 405.778 351.718 414.549]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+5705 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 362.259 148.111 370.824]
+/A << /S /GoTo /D (_parameter_8h_source_l00034) >>
+>>
+endobj
+5706 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 362.34 222.96 370.824]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5707 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 213.131 143.593 219.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5708 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 201.176 249.911 208.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5709 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 116.386 157.248 124.049]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5710 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.813 116.386 251.716 124.049]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5711 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 105.658 152.466 112.094]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+5712 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.73 105.658 209.85 112.094]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+5716 0 obj
+<<
+/D [5714 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5717 0 obj
+<<
+/D [5714 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+1154 0 obj
+<<
+/D [5714 0 R /XYZ 70.866 753.893 null]
+>>
+endobj
+5718 0 obj
+<<
+/D [5714 0 R /XYZ 70.866 707.315 null]
+>>
+endobj
+5719 0 obj
+<<
+/D [5714 0 R /XYZ 70.866 518.12 null]
+>>
+endobj
+1158 0 obj
+<<
+/D [5714 0 R /XYZ 70.866 348.237 null]
+>>
+endobj
+5694 0 obj
+<<
+/D [5714 0 R /XYZ 70.866 305.781 null]
+>>
+endobj
+1162 0 obj
+<<
+/D [5714 0 R /XYZ 70.866 278.809 null]
+>>
+endobj
+5713 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R /F73 2949 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5738 0 obj
+<<
+/Length 2067      
+/Filter /FlateDecode
+>>
+stream
+x�՚_��4���)"�Rik�7qV��r��8���	��l7(MJ���g;٤q�6)H<��vݙ����xl�l켞}��}���D��1g���I�s��"�8˵s�r�q���<����w巯�0���K��lu�Fiq�����������!�H)���Ymg�������`��<�-�	�T$ί�_fؘ��U=�ўo1ZYȍ��攻�>�FE����e�H�������B.c����2žp| LD�h�Ĉ(�Dp'�!�������G$��
�1AǪ^f�`	����=�aQ,|D�ъYK���\������]����C��/�e�{��hU�����yx��]2�O&�5I���rĽ��ED�9t�Si����p��=l�Skg����l&ɳf�4����x
H����4L��DЩ�j�!����P�v�%����Fi���ԙ�Jу�(�v��Z�?l�t���u�iN�������]jMw�Ar?�dh~��C�=a(�b ��c�0@#U�	j*]G�
+�"�xgτ*�F�`ǩi�)��M�кܴJ��/b��i2[���x�a��`�-O��s����VK�!�{���j�<�����ݫ;�PiA�����P���w�A���}�|���vv���?�
�5I��˃Y
+�k��Sĩ<�q*�p5���4/¾,}�j;`M��dY��&	�&n���cT<�)�cl��ͩpäη�
+��Tj�.�B�11�M�`�b/�w0��O��n�J;wM�YZdI�y��n�j;wM�?W�K|��Üa7�
��*��h��9��!IL���8����H��즛��]��Ѻ׋{ޅ
D��Nv��,lZ���@6����I�ҎlS�^M|�nz�
+#uۙm��:I2瓲�*m�T~,9��5��!���5op����"o�oA\�N*�A:��@XY\�V>��{�.�.� K1�&�0>@Ui�_���Q��8'���M�EܷS�֎S�������C��nj���!Ua�4����l"���莯�%$FBR=��F�l��/3>�E/����Ε!������s_�����������h2 �ݜc�T4�%{�]�x$�-K�GG�YxIi�v���`��[R�� ��W0�i�$�j�d�"|���?��Q��o�� N΂$����$,"���U`�%_X$z03^ՠx�EeEh�a�.��F?bU�V/�lQF"����Ĥw����@�A�����oo��g,ͩ:RQ�g��� �y��/o�}z>5�^�'�1���V��L^Z�`x����hMΩhy܂p�p��T)�|�Fu��$��U��>`��S\<f�j~ȋlkV�:��3���+�6a��k�|xƷ�ڬ�o3 P������w�t�ҽ΁d7b��M����}^��������NmVټX�������bom��a�i���#��8r�/cS6<3RZ1��g�hk�
+�2X,h���vt�O@�K�mu<|bܬ}jO��Ǻ7V�L�~{�E�ʆ��IQ�VǍVɦ�h�����e�_�����*<,�ĖOY�X$BF�յȒ�/��!Lr���ߎ6��@5�}��͙i�m���Ձ@��{F�x^+mv����.�\�տ��(���ZKukA�ϑ/i��U-��N	a���6�5'�7o�zu��r{{�`u�6̵�b/;������ǩ��>�@���e�Q�8�"սkf��LPg���~@VG��t�~ը��%z��!/k7�P��V߭�i���t�fުmI��e��	7mY��+:꽾��pT�E��r�.�s�բz�6����uYUeiM�����R;؆��[U
�5�N%U�]�1�y����$�
+Wϫ���]����D�[kGW�p�L���jR"L��Na.�pD����^&�`�9�?F)���7T�S��~b�P{�[j�i�`A�N��6A��J�\*��9�`���/*����Sz��E���i[��$��]@溢Œ\re����!�+'�|Cp�
+sx�&�d���4�âi<�<y�j*����Q����q�o�.�
+endstream
+endobj
+5737 0 obj
+<<
+/Type /Page
+/Contents 5738 0 R
+/Resources 5736 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5566 0 R
+/Annots [ 5722 0 R 5723 0 R 5724 0 R 5725 0 R 5726 0 R 5727 0 R 5728 0 R 5729 0 R 5730 0 R 5731 0 R 5732 0 R 5733 0 R 5734 0 R 5735 0 R ]
+>>
+endobj
+5722 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 579.402 153.096 587.967]
+/A << /S /GoTo /D (_parameter_8h_source_l00202) >>
+>>
+endobj
+5723 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 579.483 227.946 587.967]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5724 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 470.772 143.593 477.634]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5725 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [213.963 470.772 258.994 477.331]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5726 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 421.071 153.096 429.635]
+/A << /S /GoTo /D (_parameter_8h_source_l00213) >>
+>>
+endobj
+5727 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 421.151 227.946 429.635]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5728 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.97 263.353 226.693 270.215]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5729 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [297.063 263.353 370.786 270.215]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5730 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 251.397 249.911 258.61]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+5731 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 166.607 157.248 174.271]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5732 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.813 166.607 251.716 174.271]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5733 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 155.88 152.466 162.315]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+5734 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.73 155.88 209.85 162.315]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+5735 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.397 130.956 169.795 139.44]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5739 0 obj
+<<
+/D [5737 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5740 0 obj
+<<
+/D [5737 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5696 0 obj
+<<
+/D [5737 0 R /XYZ 70.866 567.717 null]
+>>
+endobj
+1166 0 obj
+<<
+/D [5737 0 R /XYZ 70.866 540.522 null]
+>>
+endobj
+1170 0 obj
+<<
+/D [5737 0 R /XYZ 70.866 406.827 null]
+>>
+endobj
+5701 0 obj
+<<
+/D [5737 0 R /XYZ 70.866 360.298 null]
+>>
+endobj
+1174 0 obj
+<<
+/D [5737 0 R /XYZ 70.866 333.102 null]
+>>
+endobj
+5741 0 obj
+<<
+/D [5737 0 R /XYZ 70.866 106.15 null]
+>>
+endobj
+5736 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F25 2380 0 R /F79 3573 0 R /F81 3708 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5769 0 obj
+<<
+/Length 2532      
+/Filter /FlateDecode
+>>
+stream
+x��Z�o�6~�_�G�YR)*�+�n��)��\�{J�b1�Z[r%y���o�K�dE��Z}H$Q��p�q8��x���ɻ�o�W_}��@�t2��	�'a�#N&�d��	D�t������77wS����7�����������I"|�DD~�����2=ZJF~@\��T`��h�l���~�H��W_���f��7�r���vWҴ�˧)��Bf�Dx��(RB��ί��Rb���	�bs��Ox��#�ɳ�"P�_O~����N���U�r���$��|L�Wj˜�^A=�됅�@���¿��0g�0�X8$z�H+A{�
���=a@Qs���f��K0M�H�!m�/D̏�:3���Lay�V��ʕ�E[���&�f����q�comQ�o
#�x�5�s���"?>G��#Qc��D1
+A�i��Sُ���D��b:#�K�U�ghgB?��&��Ӧ��:۴c\��\���dXl5���P���)l��x
�Ʃ��VS�.K�<�Sۏ������훷B�}��9(�@ߣ%��hx?���u�����d8���E2�x��ė�`���4�F��WS�"��*��6Ru?������3��_0����?�d���J?T��懟�>�����5׼�˗��w��p�DQt�.�a�'|�!�{\p$B�
+�Sً���<��u��`o��^�Tp�5�
+������ VJ��ܦh����k���\���TVrY٭7[�En���d��g��nBq�2�^$�B�����K@6��O^AF��lSi�&>Ζta��~�6u�^�
+�Ϛ'��A�Q�8�C�lFN��vvXղ��Ĭ�x���6�{ �?�&�[1Ȥ&!���5�c�fz_^g{�� ������d�5�����C!�Y��3y��50Ne�h*��!�<Rm?��j����v�)d�i��ث���T��g��H ���x��c�:Y8B���~'!��r��c���L�–2�XZ���]Mt��V��6�Oun�O����^�����1�UG,��"��x��hTB,�vcog�Z��T���~��1r`}�(���ʡ��1�*W��=èѓ
+�9a�xڒ��u��[��:3����\R�[���nþG102X���j�O;����Fn������w77����-G�Β��֖�u�����E����!��
+�u����;��#��3ss�f_Z���	�3�	��n����3`piC3GQP�bU/�u��3۳������rW����%�������^z<�6����'�!�bt/X<��L�����'Yirh���.^4R[�d�����fp�]���!<SX��*��2*V��*��A��d�:K�X�ϱ	�N��_�"T}�����w���҈V!N�����۹yT���Ƅ7_9S�v���Eջ��N�;��ʖ�BnYʬ�]�MŔ�,��H��80��cR�U�q���8Le|Y�V��ӭo�Ktn���*C���A�T9��n��r��։���ъ�Y��'�f&����$- A\�ͷ�m-w�u���o���e����hwH�������6�Dc��PK�2�:L�&qv����&}#�2*ZgI����P)=,��F>�$�F!���u���L\&�d��R*��yf�DfKDw��lG���l[Jm��Kn1�b��vr�8�C�5�f�|�V�`���L���N&ms���u�]eu�l�bUU&��8�f���a �D����\@�}�ECP�_Q4���M�u��B���GhS�O&�0p+�>M[9~��ZX���ʽ�鄃�#^�
+/�w�B@����	D��2H�-�̟P
+����^�Y���{w1�S�Z�@8���]��/�,��f�m���KR���w;e�n��W
+Kn aq��|s�P�Z@��C�F�(t��1[���6�����mfkl�����-$�a�Cm�n�v{ �=r��>�Q�6�vgSw�.µf�p_3�0����-42[x��l���l�}���nJ@�7����{�X�\6X��
�O�m�tc��79�����۔nn�d;�)��Q�u�@9�6�H�<1��u-c�a����Q�7m��[MN�ސSx�hռLN�S��rf�)���t��	TH�"<0R��Ռ���"��k8i����/�Ia#1�Z8�U刐�Su5sn�
*�;�7��.K)�kU1P�|�;�~�{�~_�V��B��t|�3xEq�IҳL~5�-{VjD�kg=��og
�,dZ��Cվ��d�����|��6>�;G�s�Z�n�2o-T:c$~1�:��?����F�7���a���
+�>�fm�RX^���|cjBʐ�Y'M�c��M����5�CH�Gv啦56��H�]F������а,�ef�o�a�M)ۧ:��xa��I�ѢMڞSw��p_Jw���ߍ<�u��HI]3�;����6��W�[uj1�B�9?;v����8d��<����Nf�������\����kd]����
+endstream
+endobj
+5768 0 obj
+<<
+/Type /Page
+/Contents 5769 0 R
+/Resources 5767 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5772 0 R
+/Annots [ 5744 0 R 5745 0 R 5746 0 R 5747 0 R 5748 0 R 5749 0 R 5750 0 R 5751 0 R 5754 0 R 5755 0 R 5756 0 R 5757 0 R 5758 0 R 5759 0 R 5760 0 R 5761 0 R 5762 0 R 5763 0 R ]
+>>
+endobj
+5744 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 608.502 153.096 617.067]
+/A << /S /GoTo /D (_parameter_8h_source_l00218) >>
+>>
+endobj
+5745 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 608.583 227.946 617.067]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5746 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 498.768 138.811 506.431]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5747 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.601 499.871 215.325 506.734]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5748 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 486.812 195.504 494.476]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5749 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [227.857 451.264 253.26 459.645]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5750 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [95.993 439.206 139.392 447.69]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5751 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [116.225 426.258 154.083 435.717]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a57567b4cfe6b370e9af7c3ef6f10be6d) >>
+>>
+endobj
+5754 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 387.222 219.534 395.603]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5755 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 315.771 156.58 324.152]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5756 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 292.073 224.324 300.557]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae6913253b8e38f0f4eed9903058ae589) >>
+>>
+endobj
+5757 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 274.249 153.096 282.814]
+/A << /S /GoTo /D (_parameter_8h_source_l00254) >>
+>>
+endobj
+5758 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 274.33 227.946 282.814]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5759 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 186.521 138.811 194.184]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+5760 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.601 187.625 215.325 194.487]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5761 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 174.566 195.504 182.229]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+5762 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [229.549 146.095 254.953 154.476]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5763 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 121.089 113.705 130.548]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_af378abd9212084ebb270383d3cd4300c) >>
+>>
+endobj
+5770 0 obj
+<<
+/D [5768 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5698 0 obj
+<<
+/D [5768 0 R /XYZ 70.866 596.817 null]
+>>
+endobj
+1178 0 obj
+<<
+/D [5768 0 R /XYZ 70.866 569.621 null]
+>>
+endobj
+5771 0 obj
+<<
+/D [5768 0 R /XYZ 70.866 415.299 null]
+>>
+endobj
+5699 0 obj
+<<
+/D [5768 0 R /XYZ 70.866 269.642 null]
+>>
+endobj
+1182 0 obj
+<<
+/D [5768 0 R /XYZ 70.866 243.22 null]
+>>
+endobj
+5767 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5798 0 obj
+<<
+/Length 1976      
+/Filter /FlateDecode
+>>
+stream
+xڽYI��6��W�(1K���A K�&h�Ib���F�m��������>��lڴ<��q�Ƿ��[h�,켝��O~z�GN�� ��|�EA������3�K0�~��wh@PR��O�*���μ0r_Wi��e��yU
+�ɯ�����)v��3�P��N��|�����;�8rzʵ�3��/DΗɧ	Vzb�11�uZ��J�۩�I��y��)!n�k�YZ5��#R"4
0�p���ƈ�QO��0��E��;1���K"�<�	}�bph��r6D�w�H����bS�7M���#],��Y�ЈL��ʴZ��R��Y/���o'������0�|��;޴����曺J�$�ə����G9N7�޴M����4�G��"���]�ҫx(�z>b�iS#�P��ȋ�'��2�v��
+]'m���er�ݕ������t��[���vŧ�h�$�J�'j�Ѐl+��7㪫S>ʳ�;�����<�Ǚ	"��t�g�vui&��;:�CTf$B����]���.ͦ*n��Q�T�ɚ>�83��QQmW��\�c�aQW�ӊ��|�E�Ve��0��!�������+�>��(����|\�D6�h���	�SCz��_�x�]����W�!)C"DD�?�A����}�~��?"7C�
+Qb�6S�2��[�NZ.)�x�B��B].�l� �@��^�)�Y�Z�����e+��O<Z#�R1~n�<#�3kc8�u!���w����eծ����
+|o�|M�HS̟�&>�t��S.���)ى#�w&��F��p�nn�UR��M[[DC�)1̱��fa�7}�4���"oV�΃8��3���6��3�aC����B�P�x������E~����c��{���5o���I�p����Մ���׼���cD�a!�Z����"�
+oA��u��A��5�J�����?�H�|���~�+38?s��O�^�Q_-��j��jC#r�\��e���c./G��	��J��l�P�o:��w�2�Ţ+ӭ�k(��Ց�8+aAD]>�p�6E��m�(�Ҥ����4ҏ��0�^�4lu���D�T@Z?�
�߸�DԔ��B
��UWL���f¢���r1� kbCG��yQ�������vUuꏴ*ۺ*�d-���V
+�!�U�5��B8��uZ�*`0s����a�˪�Ĩ��ڞ7sK�&NW�5�߫D�P�+���R:H�\��=@1�9Ag�\����^�rGh�6�"M	x�6�#�	����E5o��Ԡ��V�q@�8�Y*��	��Ha�W�\���r�m�ᨳ|x�8�,T�zQ�W-C
+�q��n�ϼlڤl�d(츈���7^a�Z3��/�O?�y��5	�˭�7ԝ����O��(+��(F���M�u<d'����N��!�;�EZ;YC���[�|T��?�hq�'��w̖�0�ȩi��֧���|`�镀����'�)S<���H���D��+TԈ�av�T;�v�~� ����sIӧ%z�>��UU�v[e�Ӂ���=g*��m�!�����*�^�Ca�R-��o��:�	�{�	�tG��2�C�"�v��}S$KUK�x{�t�c�E
.	����}JWE�1�k�!�Dn��:����=E}�y͋�*�^B�ʓrx����Ճ���I���P���}�;[�jyX0��v
+0*�ͧĵ�z��"��濒�����>RU18��aN�ZIԷ"0�6�4����y]r����X��N��9�v7Ody�� ��(�Ç��'��B��֬��g�����B��{w�BY���d]�s��q��>�T��ˮ涴���勡|Rտy�n�*��Ҵ���mѵ�싞��&��V�ۙ�h��j#@��Y���5/�T������%�AH"��N�G�#��`>��d�3�?oy��m�������^��Yk�(4��>(nh
+endstream
+endobj
+5797 0 obj
+<<
+/Type /Page
+/Contents 5798 0 R
+/Resources 5796 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5772 0 R
+/Annots [ 5766 0 R 5775 0 R 5776 0 R 5777 0 R 5778 0 R 5779 0 R 5780 0 R 5781 0 R 5782 0 R 5783 0 R 5786 0 R 5787 0 R 5788 0 R 5789 0 R 5790 0 R 5791 0 R 5792 0 R ]
+>>
+endobj
+5766 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 742.947 219.534 751.328]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5775 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 657.019 156.58 665.4]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5776 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 622.133 224.324 630.617]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_aec711995a2b463d35443e66e4eb70533) >>
+>>
+endobj
+5777 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 597.232 153.096 605.797]
+/A << /S /GoTo /D (_parameter_8h_source_l00268) >>
+>>
+endobj
+5778 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 597.313 227.946 605.797]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5779 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 488.601 167.504 495.464]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5780 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 475.722 288.168 483.859]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+5781 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.427 427.537 409.821 436.626]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5782 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [252.595 378.806 279.989 387.896]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5783 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [105.758 316.554 175.328 325.643]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+5786 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [280.663 250.912 308.057 260.002]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5787 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 136.898 93.059 145.351]
+/A << /S /GoTo /D (todo__todo000009) >>
+>>
+endobj
+5788 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [341.301 136.907 375.509 145.391]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+5789 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [394.912 136.907 438.311 145.391]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5790 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.06 123.06 162.462 133.436]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5791 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 92.795 153.096 101.359]
+/A << /S /GoTo /D (_parameter_8h_source_l00300) >>
+>>
+endobj
+5792 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 92.875 227.946 101.359]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5799 0 obj
+<<
+/D [5797 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5800 0 obj
+<<
+/D [5797 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3041 0 obj
+<<
+/D [5797 0 R /XYZ 70.866 585.547 null]
+>>
+endobj
+1186 0 obj
+<<
+/D [5797 0 R /XYZ 70.866 558.351 null]
+>>
+endobj
+5801 0 obj
+<<
+/D [5797 0 R /XYZ 70.866 294.247 null]
+>>
+endobj
+5697 0 obj
+<<
+/D [5797 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+5796 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5822 0 obj
+<<
+/Length 1731      
+/Filter /FlateDecode
+>>
+stream
+x��Ymo�6��_�O��,_DR�[�-�k�}I�B�[�,y��6�~�ɒ��uR�݇�E><�q�p�b��l��2N�)!X0�	$F��T	��U� "�)�I����^\���*]�FW�����KJT�QLc���v3��hL��(����g������U���}��u��f���^o��n䍾��U���!BXL����߉���4�$(�c�ד�k,�۫�#������b��������	>�eA�@4%���*m��w�c�#�<$R��)#(�1�д'�3���d	�\��d�%OD;����.8�
+e�'�Ɋ�u>��lL�B����M�b������0S"bP-�A��؛_��:���IF����P�
>���>�����鞳Wv�3N�Dw���Nc,�3���� �1K�(�R� 	���󲨛�
+xVM����|z	7��V-:��M�>�C$Tg�։�����"��_�5���aJE1�7�1�[�[]g����f�]�6�<�[�7U�f�0#,L��y�i�oY��`f�U��_����j�sXM9Z�I+à�z9Q4e��/�k�Ȁ��;���v�q���`e@\zj�	�h�A�&�"mg��6e�_f�m���K���Hs
H$���\���w�\b�S���zcĩ{
+�q��X�`0U*����a�%��{���1�^y�d�(���J�#�`UQ7��g�R��UUV�ѓ��Ƀ����J�H��ʙ�'�So)�d)�my�q�3;��Ȍ��z�_�a�m�}����6����
v:1_оJ☠��|�����*��l�|���؋8�G��D��{z�x�5�� .�	;&a`�����a8�����(�Y�v!��Ġ�>�eCw�y ]z���%X"N�pӝ����b�y��CW�ࢃ���$����� �b���[@HAgI�c���������F7�jfv9�@�a3A8����]y�SwG^�m����u�b���u��6����\�Øَx�Ƶ&�9���P�.=s�\�+��MV#XG̣��=��`jP�	_�m��x-FRJ}�Z�5>7����l��P�&$b�K��L���b���D�^��^��>�ğ��9��I�k$疚�m~�sT�}-�|�z[f���f~I" I���71��8���ޱ]�.��7e�i�I�����P��d�b��sm���5��-�!����c`��k0���[����1�|<c!�?c�”�0+�.~\�|����*��������I�I�fy�iĎi�e��FA�"�'�g�MU6zq텺�ͪf��g���)����yDq�э4�4"a�~.\�v�}]0ܠ-�?��w��B�׏۬Xz��p�k]�5]Y>)���mݔ�oQ�Y���e6wkK/P�!��G�����h���{�Y؇k���tz�+#*����
+ش��z�aعz[�Nc����Ԗ�-v�l��*��f�~�,��2�-C�v�4�Y@�L7�҃��ڴ��

MUu�
+S���cPQ6+{K��>x�_�T7���Ny=�y��~}��C��ƿj($�9�������U|��Y�&d�s��Q�`9�[�d���;.(��������[���o�aF��ե��E@)fSW^�@��{�]���6@��`��K�7wKC]�.�"���b7
+endstream
+endobj
+5821 0 obj
+<<
+/Type /Page
+/Contents 5822 0 R
+/Resources 5820 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5772 0 R
+/Annots [ 5793 0 R 5794 0 R 5795 0 R 5805 0 R 5806 0 R 5807 0 R 5808 0 R 5809 0 R 5810 0 R 5811 0 R 5812 0 R 5813 0 R 5814 0 R 5815 0 R 5816 0 R 5817 0 R ]
+>>
+endobj
+5793 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 716.132 143.593 722.994]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5794 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 716.132 285.882 722.994]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5795 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 704.176 205.068 711.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+5805 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.201 665.529 148.604 675.905]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5806 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.205 501.245 234.604 509.729]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5807 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 474.056 153.096 482.621]
+/A << /S /GoTo /D (_parameter_8h_source_l00225) >>
+>>
+endobj
+5808 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 474.137 227.946 482.621]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5809 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.97 380.523 198.001 387.082]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5810 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 380.523 285.882 387.385]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5811 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.609 348.623 264.008 357.107]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5812 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 279.006 153.096 287.57]
+/A << /S /GoTo /D (_parameter_8h_source_l00166) >>
+>>
+endobj
+5813 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 279.086 227.946 287.57]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5814 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 185.472 167.504 192.334]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5815 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.7 107.805 222.319 118.387]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6dc0dda3c135fb3512486192a52e0f8b) >>
+>>
+endobj
+5816 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 89.651 153.096 98.216]
+/A << /S /GoTo /D (_parameter_8h_source_l00243) >>
+>>
+endobj
+5817 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 89.732 227.946 98.216]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5823 0 obj
+<<
+/D [5821 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1190 0 obj
+<<
+/D [5821 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5824 0 obj
+<<
+/D [5821 0 R /XYZ 70.866 654.57 null]
+>>
+endobj
+5825 0 obj
+<<
+/D [5821 0 R /XYZ 70.866 590.871 null]
+>>
+endobj
+5700 0 obj
+<<
+/D [5821 0 R /XYZ 70.866 467.227 null]
+>>
+endobj
+1194 0 obj
+<<
+/D [5821 0 R /XYZ 70.866 440.562 null]
+>>
+endobj
+4984 0 obj
+<<
+/D [5821 0 R /XYZ 70.866 272.176 null]
+>>
+endobj
+1198 0 obj
+<<
+/D [5821 0 R /XYZ 70.866 245.511 null]
+>>
+endobj
+4591 0 obj
+<<
+/D [5821 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+5820 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5851 0 obj
+<<
+/Length 1434      
+/Filter /FlateDecode
+>>
+stream
+x��XKs�6��W�H�D0�$5mi�4��q��`�@I�Ą"U����]��DJ�㎛i6 p�������"��������\�AL�E0�
"Jb��(�D�`2�BF��fr�H	x�.���u=�(ߔ���M�de������_�4`;�qLb.��jpuC�9<�(I�[�U � J�y�i�ǀ>i'�D[Cc�4$��4��\��5U�Zuv�d�$�U�`$�#X�o7f����8�(9�1�*j��.MT�[�f�6E�2Ñ3&nx冬h��ka{bc��o�d�u�V���w��1#�%��`�H��{����r<��}�Zh��W֞O��:_�xҘ��R�L�	�@`��I+1y�a����	�wQ�m��>����"H#�PN����$�I2��W坩�lnn�UWwY�l����-�A�� �d��1wj���2L� ��18��ŧ�;����ye���L�.�yV,�RS�qi��d
+�B�`;=�{�GM�J�Ր���p�od8�8'ˬv*o7�̖�����!S��W���hdCA�1����Pа����p����L
+8��<���f]�ɺc��h��2|��@]��H�|�
���1ż�5�r��ڃ`���l���1B�����)X/::H�<�U��h�MUԽ�l+��v�h�#*}�������D�l�ɠ�l��{z[���}u]�{�����A�1ה�"ۇ,�ɳ�<��_>vD��*�Scy�����7��&I�&U֘o`��b�ǩ�_>�3�"QDK�$W����)��\���sE��(�&��
+��Q@�k�����RǟЪ�Z���=k�Ά��_pE@��:r�
+�4��ƅ)��uBs�U�Y��
+��}��-���T�~�E7uS��v�u��~��\d3��,��}ϋ�2D������s� �i:���()�p�
��4��Ӛ��ƶ��ڻ[��5TЀ�xYY@PaV!�\�;�����w����=�~���j�t�sdD1f�slUUݴƔ��e�tq�Ss����!��ͩ���
v�-�{OUg�	$!׶
+�Uҫ�N�2�}�N�PE�=b��	�@m1��g֓t�H�
+����DBB8������;��x�J�'�	U�V�'���jj�/Qi�>p�:&���C��y�p���#��G��G7��QV��)��h�(�q�	g�[TӲ�_��ؿp�y����iOA�(�)���t�׀�I�]�t���K�nmZ6��|�K�����,9�'i4�U{�L��:�mj/P�R����I{��w�֝�w|��q��pr�t��0�q6t��݋�S����uo�d��k2�n�xو��5窏�R:�����كP�4d�)����7 ��9���O?��HKLf�$c%�Dk�^��=n��uS{\�.�RB���6�
�a�D
+endstream
+endobj
+5850 0 obj
+<<
+/Type /Page
+/Contents 5851 0 R
+/Resources 5849 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5772 0 R
+/Annots [ 5818 0 R 5819 0 R 5829 0 R 5830 0 R 5831 0 R 5832 0 R 5833 0 R 5834 0 R 5835 0 R 5836 0 R 5837 0 R 5838 0 R 5839 0 R 5840 0 R 5841 0 R 5842 0 R ]
+>>
+endobj
+5818 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 716.132 119.683 722.691]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5819 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 716.132 196.196 722.994]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5829 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [96.554 679.479 121.957 687.86]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5830 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [348.058 679.376 391.457 687.86]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5831 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [401.242 665.529 428.645 675.905]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+5832 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 582.345 215.868 591.116]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+5833 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 557.525 153.096 566.09]
+/A << /S /GoTo /D (_parameter_8h_source_l00233) >>
+>>
+endobj
+5834 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 557.606 227.946 566.09]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5835 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 448.894 167.504 455.757]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5836 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.7 361.517 222.319 372.099]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_af07e6f343402f0f9280ede65d4b26fa0) >>
+>>
+endobj
+5837 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 338.507 153.096 347.072]
+/A << /S /GoTo /D (_parameter_8h_source_l00248) >>
+>>
+endobj
+5838 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 338.588 227.946 347.072]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5839 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 180.789 167.504 187.651]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+5840 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 131.088 148.111 139.653]
+/A << /S /GoTo /D (_parameter_8h_source_l00046) >>
+>>
+endobj
+5841 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 131.169 222.96 139.653]
+/A << /S /GoTo /D (_parameter_8h_source) >>
+>>
+endobj
+5842 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 73.558 182.575 82.042]
+/A << /S /GoTo /D (_parameter_8h) >>
+>>
+endobj
+5852 0 obj
+<<
+/D [5850 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1202 0 obj
+<<
+/D [5850 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5042 0 obj
+<<
+/D [5850 0 R /XYZ 70.866 545.84 null]
+>>
+endobj
+1206 0 obj
+<<
+/D [5850 0 R /XYZ 70.866 518.644 null]
+>>
+endobj
+1210 0 obj
+<<
+/D [5850 0 R /XYZ 70.866 324.263 null]
+>>
+endobj
+5695 0 obj
+<<
+/D [5850 0 R /XYZ 70.866 277.735 null]
+>>
+endobj
+1214 0 obj
+<<
+/D [5850 0 R /XYZ 70.866 250.539 null]
+>>
+endobj
+3033 0 obj
+<<
+/D [5850 0 R /XYZ 70.866 66.503 null]
+>>
+endobj
+5849 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R /F67 2922 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5877 0 obj
+<<
+/Length 1544      
+/Filter /FlateDecode
+>>
+stream
+x��Yێ�6}�W����M4�	 ٸO�`��h��L:�����;�i%_�x��O��̙�����������'ϣ��P�$�7_x)FY�xi��x��{�g���Y�f�����ś�vJ�_3����xVR��+�P������Y��<�	��&�''Lc����eA����ث`Q�gޝ�\{Q�8
+���M�N�|���x�?!� ��@�6x��~�̆� j؛�1Jpb*+�����{�m)$A�dx� ���yy9X
+k)� ^��O��uWQ#AY
+!�F�=�R�F�� Z�Q��(��V�W#��a=�"3�(�ěE� �ԚH��At}�B���e��#��"K�f���� �OG7������q�e[]\�@��g|i���g��qɖ�Vv���A+��i���� ed�s)U.�$O�KA��<��E(�l��A4����V4����ˬ�܏??2��x�Xx5��kb�ّ%E�l@����@$(0�8\�s�@����V����l�o�;J�)�Ξ1����a�g���ԚJY,�@���G!��~jh[0~�Y3*~<;̮���i�4
b�j��1xK���[Eq\o0
+������Έ�(��J�J�$4M�6O��Nr��?Em/�o�H��$?�ܵj']ݲMM���B�I�(XuS)8�,"���fnz_@���8Xv�
+D���>m�ؙ�I㶅�f����G.ӏ���G!NCO�۫!�9�_�������ީ��<����=sY��Tt�S5���"Qi�h��ZX�����7��
��j�8=��{Ν�wԆ�S��݃��{�+*2������wb������̎v�Q�T+��C�7���
P:�*�������h|P�:���օJ���Z~����qf[+zۖU���W���K?�X�UV�࣪p%���b�A�w�]2ٺ��Qy�c	���s�3{�>\%!b/�.Հ[����e�6ο=7Deql��WL%;
+��^<E�_ܪ2�0���5��6�(���ba�c;�H&��;����=a��Ӷ�ga�Ϻ������7����y���iN��iO���a��)*r���c�%�[C"��&�oC��R��(�;i����iA]���M�Lm��qzlu�
+_L|֚
�)��Qp�Y(3w��~��q���7�`��sњ�`�e\t��7[�R���>AI
+�JQ�k�0K�Yx�/����ˮ\�E�B?�Ͳ��äW-bب��ȅ�����,J�c\���kWF�H�ߵ����.m�tޛ]�q]�f!Dk�f�
��3(�!�~�8�\�y��uKU����_��-���ɹ��n��^k3;�����^]�Z[�5c9i�N�����Ui�P��3�f@�J�|��$P��˹�����(b���z��5���m �J���&P���Jj�0U7A~��}�`�pI�$g6�ʚ�l;����ڃK��{��|I���j��z���o�8F8$_��7"AA�D�?#�%��k��)Z�44PˠK�����R���m��#�B
+endstream
+endobj
+5876 0 obj
+<<
+/Type /Page
+/Contents 5877 0 R
+/Resources 5875 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5772 0 R
+/Annots [ 5843 0 R 5844 0 R 5845 0 R 5846 0 R 5847 0 R 5848 0 R 5856 0 R 5857 0 R 5858 0 R 5859 0 R 5860 0 R 5861 0 R 5862 0 R 5863 0 R 5864 0 R 5865 0 R 5866 0 R 5867 0 R 5868 0 R 5869 0 R 5870 0 R 5871 0 R 5872 0 R 5873 0 R ]
+>>
+endobj
+5843 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 723.957 97.264 733.046]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5844 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [97.764 724.356 136.948 732.84]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+5845 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 632.661 133.961 641.145]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a9cf2cb13cc906810ce3f403c4ce646ac) >>
+>>
+endobj
+5846 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 604.766 141.71 613.25]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a60b4c5ff7ca2bfee4b13ac00d954c205) >>
+>>
+endobj
+5847 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 575.086 144.433 585.355]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a45246cdc54d4972c4639018549605bbe) >>
+>>
+endobj
+5848 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [148.708 561.578 173.562 569.958]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5856 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 547.191 144.433 557.459]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a6096485cddc28d316dd37cd32de809a7) >>
+>>
+endobj
+5857 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.454 533.683 192.308 542.062]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5858 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 521.08 146.881 529.259]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_acb20d6b57d5a4e5285f35aa19e42ba93) >>
+>>
+endobj
+5859 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [150.367 519.188 235.978 529.77]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+5860 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 493.185 146.881 501.364]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a027fef266eed826037e4188766f165f0) >>
+>>
+endobj
+5861 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 465.289 154.852 473.468]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a10e8765c67285d1b9a969c531d091e08) >>
+>>
+endobj
+5862 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 437.394 158.34 445.878]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_ac3a08d98f8387d2859c500c982bb243e) >>
+>>
+endobj
+5863 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 407.714 171.798 417.982]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a4af13f0d9c7dd02c7eb707122d551801) >>
+>>
+endobj
+5864 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 380.63 154.906 390.293]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a6a1dfbd4bc21455ac307e73c4aefda3d) >>
+>>
+endobj
+5865 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 352.735 169.037 362.192]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a725aac90d42d1b9e09e25d3e3347575d) >>
+>>
+endobj
+5866 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.737 324.028 166.257 334.296]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a23f69f0d29a0f7e98d0ed2c0a74c47bd) >>
+>>
+endobj
+5867 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 296.025 152.36 306.607]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a2904eace56884e6d996113707a729a15) >>
+>>
+endobj
+5868 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.845 296.025 241.457 306.607]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+5869 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [250.26 208.666 277.654 217.755]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5870 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [342.668 208.666 370.062 217.755]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5871 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 138.407 93.059 146.86]
+/A << /S /GoTo /D (todo__todo000001) >>
+>>
+endobj
+5872 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 103.553 148.111 112.117]
+/A << /S /GoTo /D (_publisher_8h_source_l00035) >>
+>>
+endobj
+5873 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 103.633 218.746 112.117]
+/A << /S /GoTo /D (_publisher_8h_source) >>
+>>
+endobj
+5878 0 obj
+<<
+/D [5876 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1218 0 obj
+<<
+/D [5876 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5879 0 obj
+<<
+/D [5876 0 R /XYZ 70.866 672.529 null]
+>>
+endobj
+1222 0 obj
+<<
+/D [5876 0 R /XYZ 70.866 267.036 null]
+>>
+endobj
+5875 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5904 0 obj
+<<
+/Length 1355      
+/Filter /FlateDecode
+>>
+stream
+xڽXMo�8��W贰���OQ
+�K�m�]$���� K��]Yr��l���P$m�R��)z($���̛�`o�a�z�a1��#����ϼ�ʓ��ɐ"�x�Ļ��g��<�H�ϗYTU�9���������N�\�����|�X�=��P�ś��7�%��<�Xx��ʍ�C�k�w7���?	FR�~�Qp
+;OD$��9�O/����&���x��uV�?�?��撠���
D���f9#x��Ճ*�b��1(�{��� |¢|�],..`���y��}��Hm��x\
+oN������8D����Pt,	�X \���݈7s����U��Ub<H�z܇��ҁ/���y��<�|Ġ�n�>F�u"='!F"$ޜr`�M��#�[L;Y[���M6òrm���z�ݷ�t��
+�#�}I�.i�~�j�V=M����2�8�2e���bcޚJ��I[q�(c
Q�
��5֣eS���Ө�6�W�V=���HH	�?��~.�.8�	�
+�1-Q)-D[���bA����D��l�#��`���皔]�,����d�(����k�Gl�)���7�W�~o,��P�c:�cj�-U�
��-�˲�G���ٜq>��#p�VMfW������Q*�s���[�E�2R��,��6K�gV�
+*6C�\m͠�-zn�(W���ݪxw��z���i��͏�m�t����6�`��(՘���)�Xi�0�Zt�ӳ?�5�`[��	�,(���8�_*X��a�{����m�7\>�6�<R��90^�]���4q,��7�����U��|���_g+�1���mq��"qk���*NTr��'w�4��T����c�n�x@���D�J����R3ѱ-'Ksu\���p�Ӹ�7=ՠ{l����V2T�>���RA��+A��C�ȽJbxM"�WR���s"BB+B�3"�l?��h(�.���H�qi�d�ۨ�$Ć�Eߕ)���l������{�N���brt8t�Ҳ�����,��������ΙZ�nj��\jݔ�3���G���`@�[��?����7��]"^Z���Bw0����8�Ň��=(0Iߒ]F}Q봪]�#��*A��Rrq�U�z�n�ˋ��-�Aۀh���$H��g��#ٓ�I"����ˢ�)���!�R����Fš��W�)�t�B(̊0��(�혆��$o�0�G��O�=�P$|���9�����ۈpل\��E_�@	�}/�|�,��%G�
+����N�o���/s�t�gՊ}��>"�/T+��� f�d)w��|ު���z�з]t�U��e��=�듻��i�i�/���}�*��
+endstream
+endobj
+5903 0 obj
+<<
+/Type /Page
+/Contents 5904 0 R
+/Resources 5902 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5772 0 R
+/Annots [ 5874 0 R 5895 0 R 5896 0 R 5897 0 R 5898 0 R 5899 0 R 5900 0 R 5901 0 R ]
+>>
+endobj
+5874 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.521 607.062 158.915 616.151]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5895 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 481.594 148.111 490.159]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00066) >>
+>>
+endobj
+5896 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 479.891 228.215 490.159]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5897 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 335.218 148.111 343.782]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00082) >>
+>>
+endobj
+5898 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 333.514 228.215 343.782]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5899 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 176.396 224.197 184.713]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+5900 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 69.686 153.096 78.251]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00196) >>
+>>
+endobj
+5901 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 67.983 233.2 78.251]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5905 0 obj
+<<
+/D [5903 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1226 0 obj
+<<
+/D [5903 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5880 0 obj
+<<
+/D [5903 0 R /XYZ 70.866 741.162 null]
+>>
+endobj
+1230 0 obj
+<<
+/D [5903 0 R /XYZ 70.866 713.966 null]
+>>
+endobj
+5906 0 obj
+<<
+/D [5903 0 R /XYZ 70.866 594.718 null]
+>>
+endobj
+5881 0 obj
+<<
+/D [5903 0 R /XYZ 70.866 469.909 null]
+>>
+endobj
+1234 0 obj
+<<
+/D [5903 0 R /XYZ 70.866 442.713 null]
+>>
+endobj
+1238 0 obj
+<<
+/D [5903 0 R /XYZ 70.866 319.27 null]
+>>
+endobj
+5892 0 obj
+<<
+/D [5903 0 R /XYZ 70.866 274.445 null]
+>>
+endobj
+1242 0 obj
+<<
+/D [5903 0 R /XYZ 70.866 247.249 null]
+>>
+endobj
+5907 0 obj
+<<
+/D [5903 0 R /XYZ 70.866 139.849 null]
+>>
+endobj
+5902 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5924 0 obj
+<<
+/Length 1201      
+/Filter /FlateDecode
+>>
+stream
+x��XMo�6��W�(��R�^�t,P`w�[6(d��ٕ%W�7Ϳ�P�I����{0(�����<R8�8x�>�|�q�DJL��Q,e��$	&Y�ƈ�hLU��u2�����F����rwyZ���~�����LGc�E"C�E�4�<�c2�wD�4��T���`�=>� ���F,���f�2��!�<��_��#|�}��1D�1����(�l�?b}���$�B����	a-5��
}r���acFP=����ɢ�3�8���z���Z�>y�,c�!&~
w�d�u�ۅvӪ�Qp�S�b>�cL��nM�6e�:��?[dS�i�������t���[��W��B�
,�@�)t��n�����o��A��>������	KB�%��!��V���������Ov)A�{". ȁ�K�������
h�l`���v#+��$'�
+f�i��H����0vL�X��&�*#"Ÿ&�ٻ����pNZ���H����S����IW�`3I���`#*l�mcC.� �ڻ�|�(�*]j�!a�ۯ}U�+�X,�UIˀm��`�l0	J�:��9D!�M�J�<Ie�BP�i�!
�P."����	�B/5��%X!A���}L��f$\]��n�6~��@X	�_ϯ�~
�e�Q�j�ʗ�w}�)�/��<��]�����u<c7h-�H)y�%엫���j��z� �
+4~�)�
��3{EeS�f^h�u�kaWI$E�׆�Y�r�s�]�㴒HvRU0FDT徳
+��\����Ȏ�qV��x�+�=����i�U��m�z�
ʙm~lUm&��
+v�VPA��X�ј"C&�uN+(S�$�h��X|Z+.4�W+zF[r�Z�YX^j��<Aվ�I�V
�#����^��+=<��.�xcj
y���\�G8ܹ8xw��v���	���x>�A�e�N��#ԯT!�j˄W����"����A����bZ�����C=�
+z��;n�Q�x�Wq�ЎĶ�J�,��}d�?����Ŭy�`)�٦�t�nJ;��� ��M]ӑ	x[�1�K3��P���M�i'
��K60l��\/�t�m0�ၟ�/�M���%7S����Lz52�<����[�~K�ce�9�;J��D"�$����(����p;l/`�K���Җ��^�u�.�.���c
+endstream
+endobj
+5923 0 obj
+<<
+/Type /Page
+/Contents 5924 0 R
+/Resources 5922 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5928 0 R
+/Annots [ 5912 0 R 5913 0 R 5914 0 R 5917 0 R 5918 0 R 5919 0 R 5920 0 R 5921 0 R ]
+>>
+endobj
+5912 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 638.325 153.096 646.89]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00132) >>
+>>
+endobj
+5913 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 636.621 233.2 646.89]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5914 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 528.59 224.197 536.907]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+5917 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.128 461.766 225.353 472.348]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+5918 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 415.596 148.111 424.16]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00093) >>
+>>
+endobj
+5919 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 413.892 228.215 424.16]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5920 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 199.218 153.096 207.783]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00157) >>
+>>
+endobj
+5921 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 197.515 233.2 207.783]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5925 0 obj
+<<
+/D [5923 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5885 0 obj
+<<
+/D [5923 0 R /XYZ 70.866 773.016 null]
+>>
+endobj
+1246 0 obj
+<<
+/D [5923 0 R /XYZ 70.866 745.821 null]
+>>
+endobj
+5884 0 obj
+<<
+/D [5923 0 R /XYZ 70.866 626.64 null]
+>>
+endobj
+1250 0 obj
+<<
+/D [5923 0 R /XYZ 70.866 599.444 null]
+>>
+endobj
+5926 0 obj
+<<
+/D [5923 0 R /XYZ 70.866 492.043 null]
+>>
+endobj
+5887 0 obj
+<<
+/D [5923 0 R /XYZ 70.866 403.91 null]
+>>
+endobj
+1254 0 obj
+<<
+/D [5923 0 R /XYZ 70.866 376.715 null]
+>>
+endobj
+5927 0 obj
+<<
+/D [5923 0 R /XYZ 70.866 269.314 null]
+>>
+endobj
+5890 0 obj
+<<
+/D [5923 0 R /XYZ 70.866 191.87 null]
+>>
+endobj
+1258 0 obj
+<<
+/D [5923 0 R /XYZ 70.866 165.148 null]
+>>
+endobj
+5922 0 obj
+<<
+/Font << /F48 2333 0 R /F99 3885 0 R /F54 2381 0 R /F33 2286 0 R /F95 3709 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5947 0 obj
+<<
+/Length 1544      
+/Filter /FlateDecode
+>>
+stream
+xڽY[o�6~��У�,/"%�mk�b���ҠPd&�*K�$'�~�ERmى�t�.��s�w.<��}����_瓷�$HP*�wA�Q"D�	��uH������ (�|ؽ~WdM3��8	�W�f%�6kUU굓��Kq@z�$A	��|5����~�#���I�ح\g�GZD�5�<�V���(׷�b���"B"F�/���eө����c��)E |F�#n��O	�a=�n�1Wݙk^���[�xc�e��wS��L?�g���̂��	3���W�i�:�uf����Vc���޺���Ipݭ I�d_WV7
\<�is;�
+�,e=�8D�z�j��!	f��$�ƌ�1$�I�p��oYd��۪��9�?b�x�(�1�@H�: U�� ��<�_]�~F��+������9X�v����]{����fъ�8�V���Q����C�`���Ÿd�Ք�p�2/:�`�����R�Ks�,�M�0���ߵ�uo�G�%���F�Uޛ�[e�ʦ��e�9d��+����JQ�S��_I��1��E�0C�M��Xm�~R0�
+m~�YɄm<���~G~0yA���(b�bM�!�i�hX5��V�9��\*k������,;ë:��T���
+r��l	���6�YQ8���c
�3�p�Z2��륬�A�os���[����=����B?[�D��F�{��kY���od�s��������ۜ�w�P?��� �%��b�䚼�7#Iof�y�ﶪ��omn_���vquմ�&�ю�r0(�N��Z��͘zv���6o�[g�}L�����jF��*�'������Բ�T9��X�V�l��~� (����P.�&��v}��̷a�V{)��Ky��"cab=?������j@���:��?6r3�C���8�0�2<�¬�V�� $$���X{H!�$=�=|e������Y|VGsf!�>ԫ�	�<
+I�"^�,�o�	&�qz��x�I�c�!�{B� ��1���r�X \�!_��;���R�2���ʬ_x�A2�Ʒ�C�A�v�	��Βˈw�%f�鳦P�>G<�B���<���
+u�z�z�I��P�'sVS�n���m���5iZ�-	[uk~�y'[��L�㸌x�@ޑX�H<B\M�gxGR�p�<��9�;O(�	�9w���
+|����*��MV�ݳB#
UTn=�~�R��'e��*o�P��x����0�oW��_4k�+݃�ݤ�s�����k\�Ξ��?/�����6u�{�y�!{��9"�oh��m?����HM�^"V��ә����˂�2�zJ�_��!�`/�"g����m�~ ��<�C����u,���H/�^G��j��ۺ2� �ݵ�v�;I<�ѓ���@rEO�8qvǹn���f�.3m'��|4����>�Ï:��AP��r��4y�S�gp�w��Dm�Pw�+'�Q�jQR�E��\bWp.����%=r�0;�]�?ı��Y&��tq$�-Je)�ߠ���}Օ��{=�	e������
+endstream
+endobj
+5946 0 obj
+<<
+/Type /Page
+/Contents 5947 0 R
+/Resources 5945 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5928 0 R
+/Annots [ 5932 0 R 5933 0 R 5934 0 R 5935 0 R 5936 0 R 5941 0 R 5942 0 R 5943 0 R 5944 0 R ]
+>>
+endobj
+5932 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 710.668 153.096 719.232]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00184) >>
+>>
+endobj
+5933 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 708.964 233.2 719.232]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5934 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 431.794 153.096 440.358]
+/A << /S /GoTo /D (_publisher_8h_source_l00261) >>
+>>
+endobj
+5935 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 431.874 223.732 440.358]
+/A << /S /GoTo /D (_publisher_8h_source) >>
+>>
+endobj
+5936 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.197 262.099 247.591 271.188]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5941 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.262 191.753 182.656 200.843]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5942 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [428.624 191.753 456.017 200.843]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5943 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 86.896 153.096 95.461]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00207) >>
+>>
+endobj
+5944 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 85.192 233.2 95.461]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5948 0 obj
+<<
+/D [5946 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5891 0 obj
+<<
+/D [5946 0 R /XYZ 70.866 698.982 null]
+>>
+endobj
+1262 0 obj
+<<
+/D [5946 0 R /XYZ 70.866 671.787 null]
+>>
+endobj
+5882 0 obj
+<<
+/D [5946 0 R /XYZ 70.866 420.108 null]
+>>
+endobj
+1266 0 obj
+<<
+/D [5946 0 R /XYZ 70.866 392.913 null]
+>>
+endobj
+5949 0 obj
+<<
+/D [5946 0 R /XYZ 70.866 249.647 null]
+>>
+endobj
+5883 0 obj
+<<
+/D [5946 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+5945 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R /F99 3885 0 R /F95 3709 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5967 0 obj
+<<
+/Length 1661      
+/Filter /FlateDecode
+>>
+stream
+x��Y�n�F}�W���^y1�>4im��ޜ����Ć&���~}goW�$K
+�<�����3gg�8�8��1�x͓ Ai�`z�%Q�)E	���6L��'������w��1�aY�٘/ˬm��y���FV�Oi�?Oߌ�������Y�J�P����8���7F,M�'=�!��!�ܗ����>�~D���J��1��?a��(�^�N� Fi��J�*O5�-}A?�Q��FM�	#(�7z�]]��I���2���^�[�VYW�8�cL��Ȁ�����Q�]��q�;��������E���ڮ)���'n��6b-u#�zY���P<�(�n.�ן˃l�l.O�MQuC�)"t���z���i��R��5��eE5�Ș����2c���s�bQ0�2�f�tQ@�2�Bw�*_9
T~�ʮ�����c* �ۢ�̃�~�C�ZԤ�ys����_�O��O�"�ofrY�EgMgeiM�小;k�H���j3�e��I��ו\I#KY537s����l����R1>dڌz�����7r����/mV�T:HwNU0Ե�s���l����B;&"DZ1Z����
�X��f�O`
�,ލ)�&{��#ak �ijD˜���?C�D������9D!�Zҁ�)D�FZ��4��@,�.ww�!�=�d�Oخ���oT�ހ]�Nζ�%*�O|�m�S�读7W�ZE7ɤ~��e��v@+��NI�N�L�>�)��E<���H�$�ࡀj%&�3xx��AzF{z����Yd�gy��k���]�G��y�4r���l-�u3ۖ���r���9�Փ��3��C��E��P���H�QXq5���gp�<��\��:��OO�j�o����!���P���i��Z�WYYt�}����P<�(�*L�S���/꺵�6�Ā
+�B��×ٯ�H���쬗��o�2/>����b��I��[�wn?XdʡǢ^5�
l�\mR�������jO{b���[�!��T��:��'3c7��<a�l�� �Cv#Ο��gr8��F7��=	}�����~]fsW��n�up9h�N;C���wM�E1�Ae����-p�����<�]~'�8�c8�� z)�c���S��g��[5��q׭���1J�V��c1�8�����&-TY�·�W1��>��OJa3�^Y��e'g{j���)Q�dr퉕j}\��G�|[��LIu����㚙+�(Nl�^I��U��ìsNuD�)�Cz�$Y�G �m��ව	�������:h�Dj)�y���Y#mn��3�'�m;�.�c]�����h�b��ms��t�îB�H������N�YT&�EXe���o����ay��R�1_m��<3
+�
e�KS'�m�ߍ��-�%�[�tie��:�tW���Gy�aR���N�j�y%-�p�.�����6����m�G�mP6y<�(�rf�{$UT�|A9TE0t@�~V��2'�`�[J)߿s]�a�+�9l��M�!�q��"8A���ՙ&�+���V����I���UT
,"�o9��G‘H�~�R� 8��E'C�F����\.��8�yz|0M�@��SjC�5(����@�"�Y�&[WW�f��Z�,����j���ǣ|
+endstream
+endobj
+5966 0 obj
+<<
+/Type /Page
+/Contents 5967 0 R
+/Resources 5965 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5928 0 R
+/Annots [ 5957 0 R 5958 0 R 5959 0 R 5960 0 R 5961 0 R 5962 0 R 5963 0 R 5964 0 R ]
+>>
+endobj
+5957 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.262 572.56 182.656 581.65]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5958 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [428.624 572.56 456.017 581.65]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+5959 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 440.289 153.096 448.67]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00224) >>
+>>
+endobj
+5960 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 438.402 233.2 448.67]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5961 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 281.773 153.096 290.338]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00138) >>
+>>
+endobj
+5962 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 280.07 233.2 290.338]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5963 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 69.686 153.096 78.251]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00179) >>
+>>
+endobj
+5964 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 67.983 233.2 78.251]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5968 0 obj
+<<
+/D [5966 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1270 0 obj
+<<
+/D [5966 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5969 0 obj
+<<
+/D [5966 0 R /XYZ 70.866 630.66 null]
+>>
+endobj
+5886 0 obj
+<<
+/D [5966 0 R /XYZ 70.866 428.42 null]
+>>
+endobj
+1274 0 obj
+<<
+/D [5966 0 R /XYZ 70.866 401.224 null]
+>>
+endobj
+5889 0 obj
+<<
+/D [5966 0 R /XYZ 70.866 270.088 null]
+>>
+endobj
+1278 0 obj
+<<
+/D [5966 0 R /XYZ 70.866 242.893 null]
+>>
+endobj
+5970 0 obj
+<<
+/D [5966 0 R /XYZ 70.866 135.492 null]
+>>
+endobj
+5965 0 obj
+<<
+/Font << /F48 2333 0 R /F99 3885 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+5989 0 obj
+<<
+/Length 1930      
+/Filter /FlateDecode
+>>
+stream
+x��Ym��D��_a		9R��]{�!$h�B���֢�go����q���ݵc;N�����z<;3���Qg�P�������9���s6['�$
+'�9	��ɜw.�����K��B>����i�+F��*=�l�VU%�.��,�X0 ��yF�����ݯ����K�/��;MY8������y��eA��[!#�B�Ɩ+F)u�~����U�~h��J�SAᏡ|Oo��$)Cf�Yy��i^+�-Wp���f�~}��U���z���,
2����pV��Xëi3���U�3�bp���#�Yt��\FB{��UV,`��>������%��k��pU&ͭ�{��s�N�+����^��M��,n�YU���^�v�Ve)�Vf�gb?V�uU����v������P�C]��i�J�zk�l&;�,Ap��E	�
+|��T�@�H ��h�_/��&uR�V�K��ư���i�)	~
�L������#4N@p����H��B�@&k���y�s@%#�E���NF���=1�ѐ���zr6�;
�Ǟ=�>1`�����pw�g�p.�#�9�����8��<��by��'ܷ�|O)/���'�er�m|�wV�7/�;M��x�Dv�sXd�?��)^���KA]����ѡ!�����;�@Ì��tP��.���딦�0�tqi'K�	T�Bֶ��Ih4L��O���d�l�c�Y@�(��	e6��LM�%D�6u���Ӌ��1�~ĩ�F�#��_8rz3:
�i1C
1�X���P���Ȧᷯ~�q�~�������,9��$�s��'�.�}e�����`}��\��7�h�~�͠��,�8����Fn��ez	�g�W�mP��-6���r�g���AZ�Q�,7	�/�B�i~̬1!ğ(!��q4��WHB?��hVF>�C�7cKHm"��ԃ`W�(�6��"(5z�$��NǛc���6D�ø��P�3Dφ��E[��3�Y��B[H��PCXhw!S����H��hMEuL��x�5�V=�k��8�66z�0�P~��Z?�j�d��S�M���/��?���Ըiz�8瀎a'�5S<���'!f��q6�s=E�
+�6���f�nm��j�k{��bh5�������P�Q@�T���������p�~�y�^�ll7{�^W�MIjkdV
+��]���E<�(�ܡ/߾��3X��ⶪ���\��)�
�_��F�  ���(I~���IV�gݹd6=aE��V&�<�mݫ-��ai����>�'>dZͶ�
+����F�ag�k�����,�_�x4�|��Ŵ�1\��n6�C��l���uY��	�$��5�c(5�k�2 �F�^$DgUmu�C9�V扃��,���L���O�T�\�ԯv����49�(�L���ݱ���Z�>��X��|���W�����X����p��'��р�yn7����L��ؾ�kw�V���u��&M��Ǚ�;�����1�h�?U���-�Ꟊyt���p�23������f�w{��ͲHP�{��V��RYn_��Ԯ��釞��&<��Oj9g[�"'c��΢�m���j_�Yc��>0c��76~zӿ��mJ���3$���X�����	�g�JU��fO����O��0�,w�~�xy�^݆��X�1c��F��L�#75�t�3�t_��d	�
Ea�[c){x>1܌����
����O<P�z��( �X+��
+D��#?襐
+�o'Ʀc?@�8)���M ώ��c��~��M5�?�3�n�)��~�M�bб���۹4��-�n�P��{q���E��N��u>�u	(�e<g)ȩ	�����i�ݾ5���iH���y6즵�эM���I��B�����? <D�A2ЏC{��Km�8�9
e4���3�k��Är*�_���
+endstream
+endobj
+5988 0 obj
+<<
+/Type /Page
+/Contents 5989 0 R
+/Resources 5987 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5928 0 R
+/Annots [ 5974 0 R 5975 0 R 5976 0 R 5977 0 R 5978 0 R 5979 0 R 5980 0 R 5981 0 R 5982 0 R 5983 0 R 5984 0 R 5985 0 R 5986 0 R ]
+>>
+endobj
+5974 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 573.061 153.096 581.626]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00169) >>
+>>
+endobj
+5975 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 571.357 233.2 581.626]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+5976 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.115 533.662 183.329 542.146]
+/A << /S /GoTo /D (_publisher_8h) >>
+>>
+endobj
+5977 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.115 519.781 192.797 530.049]
+/A << /S /GoTo /D (_publisher_8cpp) >>
+>>
+endobj
+5978 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 452.375 98.277 462.751]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+5979 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 383.555 123.184 393.931]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+5980 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 357.369 123.184 367.745]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a97c8857f5b22eb87ca35c1c21a1bd814) >>
+>>
+endobj
+5981 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 331.182 123.184 341.558]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a7f49766e22783da9259eee242663581b) >>
+>>
+endobj
+5982 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 304.996 130.932 315.372]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_ae371a8bd8d3c27d3e77b4e563084b19b) >>
+>>
+endobj
+5983 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 280.621 144.102 289.186]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+5984 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 278.917 169.512 289.186]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a65b2542daa4ce48d6738533e6e417ade) >>
+>>
+endobj
+5985 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 266.715 132.012 274.457]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+5986 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 254.515 139.448 262.999]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a98473208bab6e8563fef085b9c71cd53) >>
+>>
+endobj
+5990 0 obj
+<<
+/D [5988 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5888 0 obj
+<<
+/D [5988 0 R /XYZ 70.866 773.016 null]
+>>
+endobj
+1282 0 obj
+<<
+/D [5988 0 R /XYZ 70.866 745.821 null]
+>>
+endobj
+5991 0 obj
+<<
+/D [5988 0 R /XYZ 70.866 638.42 null]
+>>
+endobj
+3196 0 obj
+<<
+/D [5988 0 R /XYZ 70.866 516.225 null]
+>>
+endobj
+1286 0 obj
+<<
+/D [5988 0 R /XYZ 70.866 505.169 null]
+>>
+endobj
+5992 0 obj
+<<
+/D [5988 0 R /XYZ 70.866 417.958 null]
+>>
+endobj
+1290 0 obj
+<<
+/D [5988 0 R /XYZ 70.866 226.924 null]
+>>
+endobj
+5993 0 obj
+<<
+/D [5988 0 R /XYZ 70.866 195.091 null]
+>>
+endobj
+5987 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F101 4116 0 R /F22 2379 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6012 0 obj
+<<
+/Length 1324      
+/Filter /FlateDecode
+>>
+stream
+x��XKo�F��W�T�@����(zh�
�uԓ�#��R%ڮS��w��+�%)�\䒃Ar�;3;��7�
+Gw�.G?OFg︎42R�hr)����2IMf�u��ɘ*�����Wiy��	���f�������T��9bl�+tZF��0c2d����Ao�t�v�M	Q�/�����Uv��HWY9�C+l���/��_#kGd�q���<�ޏ�op4����0bFGO�������,���?F�'���>|j�H�$Hs��u#b�����t��gU�J��u���`̂"*龘�H����m���SH㽹���c��:I�5���l)��@ڂ��s{JF�5=���m�i�V�K�ۄ�x�rO�|:w���OXY�AU����q�}˜�٬?1͏�@�����o����F?�ޖ4IA}"]
+�*_�.)i�E^f�6�՝���r]�3(o!ߏ.n�zk�8`�>"b4цW�M�05��h(��o�QKu�o�Z=L�����"k_,��Y	��[���r1D4} �l����3aLM����R��&g��͂����~ژ߄-U�k���i�ABu��eQ"�e�`ˣ�J��F����|਺Q�8�ј@��OҶ�d�s��ph`�I�i>-	�;�gwAu�a�1"��ƔC?!�j*I
+_Tp�"v8~����*O#�"T�}��r���VZ�_,̳�&�m;%��	�l��K1�ж��.ėkWCv�P�~�o��*���|�\��V	J>D�K��P��{	~��s`O���Tr�ރwf�.g�����1�IΖ�J[��n>`�2���vݢ�M�B�r���L��/@v��,�����΂��2��t�5O^u%�rU[y�g��cB���P`��$��a(C�	���K
�m�l!evK��l8�KAsH�Q�IS<�XZ3݂��U�w����F��|=�cKi�����3`���Z�縅n�$�Z����	D���^I��5���I�9Ɇ��R��`��G	$�
+��r@M���v��8���i����[�a���gO+�N���m�qQ���ӵq���r�z�0H��m�� ��)F
(]�]�}#)��Ӻ���?f���P�^/��Z�M��s���'�W�`�:���z�ء�8%NAٗ�f����/=��)�j������l��i��Ƕf�#�f���%P%<��skxN��T7����s�C[�M�¢�b�̳�*�����Y��*\���)��?!rs[�m�_tP0
+�0#/�q7�B.U��-�r|��|���
+x�o���s�9�ޡ�~�<VvC���h�
+endstream
+endobj
+6011 0 obj
+<<
+/Type /Page
+/Contents 6012 0 R
+/Resources 6010 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5928 0 R
+/Annots [ 6001 0 R 6002 0 R 6003 0 R 6004 0 R 6005 0 R 6006 0 R 6007 0 R 6008 0 R 6009 0 R ]
+>>
+endobj
+6001 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 693.656 148.111 702.037]
+/A << /S /GoTo /D (_range_8h_source_l00024) >>
+>>
+endobj
+6002 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 691.661 208.283 702.037]
+/A << /S /GoTo /D (_range_8h_source) >>
+>>
+endobj
+6003 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 534.65 124.465 542.616]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6004 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 486.053 148.111 494.617]
+/A << /S /GoTo /D (_range_8cpp_source_l00058) >>
+>>
+endobj
+6005 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 484.241 217.751 494.617]
+/A << /S /GoTo /D (_range_8cpp_source) >>
+>>
+endobj
+6006 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 376.318 124.465 384.284]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6007 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 229.964 153.096 238.528]
+/A << /S /GoTo /D (_range_8h_source_l00151) >>
+>>
+endobj
+6008 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 228.152 213.268 238.528]
+/A << /S /GoTo /D (_range_8h_source) >>
+>>
+endobj
+6009 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 127.771 124.465 135.737]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6013 0 obj
+<<
+/D [6011 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6014 0 obj
+<<
+/D [6011 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+1294 0 obj
+<<
+/D [6011 0 R /XYZ 70.866 677.416 null]
+>>
+endobj
+5995 0 obj
+<<
+/D [6011 0 R /XYZ 70.866 632.699 null]
+>>
+endobj
+1298 0 obj
+<<
+/D [6011 0 R /XYZ 70.866 605.504 null]
+>>
+endobj
+5996 0 obj
+<<
+/D [6011 0 R /XYZ 70.866 474.367 null]
+>>
+endobj
+1302 0 obj
+<<
+/D [6011 0 R /XYZ 70.866 447.172 null]
+>>
+endobj
+6015 0 obj
+<<
+/D [6011 0 R /XYZ 70.866 315.861 null]
+>>
+endobj
+5997 0 obj
+<<
+/D [6011 0 R /XYZ 70.866 220.704 null]
+>>
+endobj
+1306 0 obj
+<<
+/D [6011 0 R /XYZ 70.866 193.774 null]
+>>
+endobj
+6010 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F67 2922 0 R /F73 2949 0 R /F33 2286 0 R /F99 3885 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6036 0 obj
+<<
+/Length 1491      
+/Filter /FlateDecode
+>>
+stream
+x��XKs�6��W��!g*��I�&�N�D�K�-�6�tE*���x�%J��L�=� )pw��߇��e��糟��q�hd�d��"Qi)e(�$Y��w)!8��x�0I�V^􏟔y�ds�t��^n׶j�+7w��b�׌�T��ަ�HS�,׳wp���^&1��?s�p����E����1�1N��p�n�QK5���ǰ_e���&_��n2B��G֙���3ODH�DZ�>�/l� ,E�,
�S6`6�l�h§D��@J�t)�Q�(ΐb*d���
�1A��a��
+	j�N�b]�̈́c��v�F�9t�0r�6�8�˶ބ&�/�X�경
+�4�i7�������#�L��A;�0�N�����o�0�і4)!C����S�Ȃ�L����Xr�l.cD��ϒw~r���+�3\�a�u^]ڌ�]�J�{��[8�K���׈hD3�5`phxՑ�{���5�7�I6'�L���G��7���Ľ1�b�9
+"����u��6�Wfg>T��>��',J$��&��׶*���t1aP�a㞜<�����B��dN2]�o~���Y��n�O:�Ze�O�T�	�G1�J��Y�E>b�+��+w��n���:���HD���z��{���*߬BO�l�l�B�c��tN�
?Uu�ۦ�בe�3l�g��v=��?R9�-����` ##9EX�2�h�����F~}���Ú��!�aS4D�ZE$�]f��+��(N?�@'����	\~��<^!��3a� ^�5`��.�$CJ\Q|s��B�W�����r�o�u#v�s�A��˭���j$
��k�1�	�7�#�I�Bٜq��\��ʵ����pY|ʨHmn����M��X�g`"\\o�3�vn\�����:z��es�d��_�wQM%}��N�qHU��7y�x@)1����7�i�����nZEZ�'m��p�B��+*�0�эJ�_ ���4ֲܮ쪻�Ϙ���-��C�B��ԅ�8���O��e_P�׹�)ګ��nN3Hy��a������D�5��:�
+n��>�=���~
+���NE�j���e2��s51�NiL'��q���LD����ܦ���#�ƫ�;�D�8y"��c�Pdy��3�
Hy��m�p�-�z.��,�����X��<���kស(�HvJ���j��#��A�!(������6�2r�p�p[�ͫIBx6�x1fʁ=����r!=^=j���H�	8{j>�y4ʼ�?��:-�`�����������&~sz�q��8�cy���_R����@ r��h͟j���M
+6I`o��(F�l����';�ek��A�_D�Ϋ���p��oA�����*#P��eG���O�����n�>B�)!d7-��u_��yݖ�D���L��;��e��Dw���M��}>�v�ݱ:ljx�A�s��H깭��ڹc���\���m��R���/�>
+endstream
+endobj
+6035 0 obj
+<<
+/Type /Page
+/Contents 6036 0 R
+/Resources 6034 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 5928 0 R
+/Annots [ 6021 0 R 6022 0 R 6023 0 R 6024 0 R 6025 0 R 6026 0 R 6027 0 R 6028 0 R 6029 0 R 6030 0 R 6031 0 R 6032 0 R 6033 0 R ]
+>>
+endobj
+6021 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 694.576 153.096 703.141]
+/A << /S /GoTo /D (_range_8h_source_l00156) >>
+>>
+endobj
+6022 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 692.765 213.268 703.141]
+/A << /S /GoTo /D (_range_8h_source) >>
+>>
+endobj
+6023 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 584.841 124.465 592.807]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6024 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.143 584.841 192.045 592.504]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6025 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 536.244 148.111 544.809]
+/A << /S /GoTo /D (_range_8cpp_source_l00068) >>
+>>
+endobj
+6026 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 534.433 217.751 544.809]
+/A << /S /GoTo /D (_range_8cpp_source) >>
+>>
+endobj
+6027 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 377.422 148.376 385.388]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6028 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 199.425 148.111 207.99]
+/A << /S /GoTo /D (_range_8cpp_source_l00085) >>
+>>
+endobj
+6029 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 197.614 217.751 207.99]
+/A << /S /GoTo /D (_range_8cpp_source) >>
+>>
+endobj
+6030 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 104.204 119.683 110.764]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+6031 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 103.1 177.068 111.066]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6032 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.933 71.681 141.359 80.452]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+6033 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [336.452 69.87 363.855 80.246]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+6037 0 obj
+<<
+/D [6035 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6038 0 obj
+<<
+/D [6035 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5998 0 obj
+<<
+/D [6035 0 R /XYZ 70.866 682.891 null]
+>>
+endobj
+1310 0 obj
+<<
+/D [6035 0 R /XYZ 70.866 655.695 null]
+>>
+endobj
+1314 0 obj
+<<
+/D [6035 0 R /XYZ 70.866 520.189 null]
+>>
+endobj
+6000 0 obj
+<<
+/D [6035 0 R /XYZ 70.866 475.471 null]
+>>
+endobj
+1318 0 obj
+<<
+/D [6035 0 R /XYZ 70.866 448.276 null]
+>>
+endobj
+6039 0 obj
+<<
+/D [6035 0 R /XYZ 70.866 316.965 null]
+>>
+endobj
+5999 0 obj
+<<
+/D [6035 0 R /XYZ 70.866 192.053 null]
+>>
+endobj
+1322 0 obj
+<<
+/D [6035 0 R /XYZ 70.866 165.329 null]
+>>
+endobj
+6034 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F25 2380 0 R /F79 3573 0 R /F81 3708 0 R /F95 3709 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6073 0 obj
+<<
+/Length 1226      
+/Filter /FlateDecode
+>>
+stream
+x��XMs�6��Wp�3i���
R��q���ĉ��lh
+��R�*Rq�_�JI�#�%x�x��v!�88�6Lf<BIɂ�]�0
+�TD�$�|\
CD�ј�pxy�ǟ��E�ߏ���f~6�QD��J��#������Z� QN��>|~߃BC�Q���c0�^�6�����Bߍ�o[�'ڼb<B���|�����5c��jpu����,��Ea�`W�.�+.��ѷ"*�G�p�J�C��H*Y�|���6/�[m��8<l���1	��}vy��m5G�޻3]��+������|0vH� F�
+�D_cL�L�y�`\V�,���6���j��͞@0��GDQ�ٴ��ȼ�/�mI�����d��y<�1<\o�/�2u)����؊ݗ{��I�����]����	�ek��!5�8]1��&�P����kJE�&!��&SP��5�Y����7�|ES�@��+!�d�>#�H���c|D$&m����&TW(�`��O�hAq�dW)����~jZ�E(QdN��;�r��[���h����d&xC[��S�'�nѧ��O
+��g��RH�Z��j�!g=tb�D$+
+0u"������[CA�&����V�B�����h�J+��}�4�I�^JM��Q�T`�#���Q�j�(���C#��Q��� r���τ��,hQ�P�F|zc�#ъYr�s��:MtѥeL8C������6v���Ȥc���L@;
�7�����ӳ�Ƴ���K{i�;���:]O�'��v����R'#��s#��][u�.zc����~y5����`(�=j�o�t��U''$V��;!��Ӊ.�4���.�m��3D7M���R:�ˍN�8K�m�0�<c��9�7�h�A�y��%�g7�,�I��,]�nR���z�y�X�ـ2Ƿ&8���T����9�G�B���
��#�ҏ;����8uk�n�Kʚ�7��{�O���{��R!y6�yu�x��5�E�]�`h1�� ��c��Л�����Ʊ����~�ҭު�F�����
�#Ȱ=}3A��Z=�Ó0����⬎֟H��#n_���ا?�>�N����}S�c#sd�EB4Ə��ֈE}�h����M�9�GS���9�ZԚcz���DF�V���@�yɏ��o'Q��7��\@���j����U�o�ژ��7��y�����y�
+endstream
+endobj
+6072 0 obj
+<<
+/Type /Page
+/Contents 6073 0 R
+/Resources 6071 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6079 0 R
+/Annots [ 6043 0 R 6044 0 R 6045 0 R 6046 0 R 6047 0 R 6048 0 R 6049 0 R 6050 0 R 6051 0 R 6052 0 R 6053 0 R 6054 0 R 6055 0 R 6056 0 R 6057 0 R 6058 0 R 6059 0 R 6060 0 R 6061 0 R 6062 0 R 6063 0 R 6064 0 R ]
+>>
+endobj
+6043 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.705 743.747 146.61 754.222]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+6044 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 714.317 148.111 722.698]
+/A << /S /GoTo /D (_range_8cpp_source_l00072) >>
+>>
+endobj
+6045 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 712.322 217.751 722.698]
+/A << /S /GoTo /D (_range_8cpp_source) >>
+>>
+endobj
+6046 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 660.114 167.898 670.49]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+6047 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 647.417 177.366 657.793]
+/A << /S /GoTo /D (_range_8cpp) >>
+>>
+endobj
+6048 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 571.117 95.193 579.601]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+6049 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [95.693 569.225 124.1 579.601]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6050 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 484.347 123.184 494.723]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_ab17c214a8c1af57e06e292b19ce1ae38) >>
+>>
+endobj
+6051 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 471.651 123.184 482.027]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_abd3d86c944aa61089231909a8d24e7f8) >>
+>>
+endobj
+6052 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 458.954 130.932 469.33]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_ac783001a590c29c1b9f128d3ad293c2c) >>
+>>
+endobj
+6053 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 448.068 144.102 456.633]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+6054 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 446.365 169.512 456.633]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_acb0783d3e05740740715a4fb8948a2d3) >>
+>>
+endobj
+6055 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 435.452 139.448 443.936]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_a4099d35a82c3b57745d3c4d0165f590b) >>
+>>
+endobj
+6056 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 422.755 139.448 431.239]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_afd07b4bbc51b9b69f1ad8798fcc77fa6) >>
+>>
+endobj
+6057 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.856 422.675 220.664 431.446]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+6058 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.645 351.58 166.052 361.956]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6059 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 330.763 153.096 339.328]
+/A << /S /GoTo /D (_range_8h_source_l00131) >>
+>>
+endobj
+6060 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 328.952 213.268 339.328]
+/A << /S /GoTo /D (_range_8h_source) >>
+>>
+endobj
+6061 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 193.145 124.465 201.111]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6062 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.841 194.249 154.962 200.808]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+6063 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 103.226 124.465 111.192]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6064 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.841 104.33 154.962 110.889]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+6074 0 obj
+<<
+/D [6072 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+3218 0 obj
+<<
+/D [6072 0 R /XYZ 70.866 641.462 null]
+>>
+endobj
+1326 0 obj
+<<
+/D [6072 0 R /XYZ 70.866 632.241 null]
+>>
+endobj
+6075 0 obj
+<<
+/D [6072 0 R /XYZ 70.866 523.914 null]
+>>
+endobj
+1330 0 obj
+<<
+/D [6072 0 R /XYZ 70.866 406.967 null]
+>>
+endobj
+1334 0 obj
+<<
+/D [6072 0 R /XYZ 70.866 314.947 null]
+>>
+endobj
+6076 0 obj
+<<
+/D [6072 0 R /XYZ 70.866 274.615 null]
+>>
+endobj
+1338 0 obj
+<<
+/D [6072 0 R /XYZ 70.866 247.659 null]
+>>
+endobj
+6077 0 obj
+<<
+/D [6072 0 R /XYZ 70.866 184.696 null]
+>>
+endobj
+1342 0 obj
+<<
+/D [6072 0 R /XYZ 70.866 157.74 null]
+>>
+endobj
+6078 0 obj
+<<
+/D [6072 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+6071 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F67 2922 0 R /F33 2286 0 R /F101 4116 0 R /F54 2381 0 R /F25 2380 0 R /F99 3885 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6105 0 obj
+<<
+/Length 1150      
+/Filter /FlateDecode
+>>
+stream
+x��XKo�F��W,P  �r����6vk4M�'�(d���聊����g���l�ɡ�H�����};3+�f��������Ld�U�������+��StQ����b�9,,����y�0m��7�n���I�ج����x����)At��l�@�jpuC��] ��5衴\!!9��m�DȓqBL�
+�`j1��E0<cY0gʙ���"�&�x��K���l.'�Y�Pe�D��2/��v2�<�����V�$�bJ-J8�TZ��û_���,x�i
ϴm���9����yR�L�jћ��|���cKie��G��OaiTe0yCK%�X>�s���@W�"$rh��7�g���-�L(�Pb ����;�`��lu�m�6�v봔e�R; (e	a�^1
~�1�Ҙ��SS�3�DYK��>�+:d7=H'��%���fyπ�3Ťo�"1ٓ����t�����4���H�-�Ul����f��A� ���U E6eC�s��,wYO��`ey��k�$�@�q�)��-����_,/Ki���(/�W���@b%سt��ցĆ�^T���c�Y��DH��_�����Ezk�גN�Č��V�)���(��ߢ�~��¬�)8o����%L`�²�<�`��壻��h�F1_��&�����h~̲548�"��ͪZ�5�.����T�{|M[f�v�
+k�ϸ֡�]3&�%NJ��t�-���¶x���uT昑^�a_���U"f$����<��s�����\ꖘ�����o��yX�<*���<�1�^fw��l��ӬO��P�p᪒�
+`�
+����y��ὴ롓����b�.w�c
K{�5�Z���̓�q#�}�5�'ũ3>���:�����7A���$T&��H�R'��q��V���Xǟ�����Y��*|���ƊD��'m�����跍Ν�����i�E��a*��J^�t����H���P�LGJ����}�X-��@N2=��
�*;����qg�<z�8.)8�p�4/�)��#����J�]w����
+=>�]�M���R�����D�/^���� Ҿ��Ą�S���.�
+3
�NW�$}(��8
+͹��u�uy}�.|����9��u7�/�[�
+endstream
+endobj
+6104 0 obj
+<<
+/Type /Page
+/Contents 6105 0 R
+/Resources 6103 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6079 0 R
+/Annots [ 6065 0 R 6066 0 R 6067 0 R 6068 0 R 6069 0 R 6070 0 R 6085 0 R 6086 0 R 6087 0 R 6088 0 R 6089 0 R 6090 0 R 6091 0 R 6092 0 R 6093 0 R 6094 0 R 6095 0 R 6096 0 R 6097 0 R 6098 0 R ]
+>>
+endobj
+6065 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 727.678 124.465 735.644]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6066 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.841 728.782 154.962 735.341]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+6067 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [180.489 727.678 206.392 735.341]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6068 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 584.788 148.376 592.754]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6069 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.752 585.892 178.872 592.452]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+6070 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 573.937 209.85 580.799]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+6085 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 478.26 148.376 486.226]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6086 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.752 479.363 178.872 485.923]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+6087 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 372.834 119.683 379.394]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+6088 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 371.731 177.068 379.697]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6089 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [186.444 372.834 207.565 379.394]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+6090 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 303.111 167.898 313.486]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+6091 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [95.916 221.76 124.323 232.136]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6092 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 132.228 123.184 142.604]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a635b0935b69730c81232c9f26267e5ec) >>
+>>
+endobj
+6093 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 119.358 123.184 129.734]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a940f37a4449075b3d335deb546644df1) >>
+>>
+endobj
+6094 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 106.487 123.184 116.863]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_ae8c03e56fc933a95c0fec0d69b81da55) >>
+>>
+endobj
+6095 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 93.616 130.932 103.992]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a280aacb2fb5b4ad22c866a83671967c5) >>
+>>
+endobj
+6096 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 82.557 144.102 91.122]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+6097 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 80.853 169.512 91.122]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_ad5847bdeceb2dcf632de0e7c0c3bc73f) >>
+>>
+endobj
+6098 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 69.767 139.448 78.251]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a030f2f9b3f2e56f0e832956e069226d2) >>
+>>
+endobj
+6106 0 obj
+<<
+/D [6104 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1346 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+1350 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 713.51 null]
+>>
+endobj
+6083 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 669.416 null]
+>>
+endobj
+1354 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 642.296 null]
+>>
+endobj
+6082 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 562.887 null]
+>>
+endobj
+1358 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 535.767 null]
+>>
+endobj
+6081 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 456.358 null]
+>>
+endobj
+1362 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 429.238 null]
+>>
+endobj
+3219 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 296.46 null]
+>>
+endobj
+1366 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 287.77 null]
+>>
+endobj
+6107 0 obj
+<<
+/D [6104 0 R /XYZ 70.866 173.292 null]
+>>
+endobj
+6103 0 obj
+<<
+/Font << /F48 2333 0 R /F25 2380 0 R /F54 2381 0 R /F79 3573 0 R /F81 3708 0 R /F99 3885 0 R /F95 3709 0 R /F33 2286 0 R /F101 4116 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6134 0 obj
+<<
+/Length 872       
+/Filter /FlateDecode
+>>
+stream
+x��W�n�@}�W�r$����B<@I!ڼ�
+w�X�퐸������c'.�
+�x��سgfΞ�4G�f�d*2�*���i��RH[�E�st��h̴	O>�}ppe�ј�Ѝ�f�&SƐ��LU�����/�A�%�	�Xl��M�N�rL(l�Am��V���h����Q��e��G�R�K���,����m�ƀ3��48=#�޽Csk�Ue�"!9���n�N�O�a��Ҫ.��b��Ӓ9B�CWD�ҝ�h�&^'�"�3�$p�M��1��3s�rq-��Qe^��/��|B�y���Q�N=�e�6�1�/.F���ڣ�>@t2��،���?�Z����X�7�$M���8_��f�gu2E�i�%i����m�H�rk.��e�b����L���h���L˒m�Q�����S��%LU�x����;P!n���t�^P,z����~�g@�e\4d?kw���0�/S��V=��Ж6��Uն4?I�G=��Hc�	����R���S:�g7�0�J�Y8�W��ض���&S��)���ݾ����̍}���17r�/����M��o�������Tۘ2��2�RT��":!ƫ��R�DqХ쩄=B%�*���Lʖ4V
+Jڀ,(�
����RԬ� �X���2�z>�u\[=r����c�~o6�O�z:]�D�����a�ۗ����р��f�Qt������l[F~���W��d�HF���=���E=3�����-%��i�E��p�ܡ�Ŕ�����������A	��D�
�w9����~��C;m:��~u��;���mJ{�n�f�&%&���֜�fe�̈́�n^�z�2����4�u�Hx��W��~\�%��/H}�R
+endstream
+endobj
+6133 0 obj
+<<
+/Type /Page
+/Contents 6134 0 R
+/Resources 6132 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6079 0 R
+/Annots [ 6099 0 R 6100 0 R 6101 0 R 6102 0 R 6114 0 R 6115 0 R 6116 0 R 6117 0 R 6118 0 R 6119 0 R 6120 0 R 6121 0 R 6122 0 R 6123 0 R 6124 0 R 6125 0 R ]
+>>
+endobj
+6099 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.645 726.749 166.052 737.125]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6100 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 704.274 153.096 712.839]
+/A << /S /GoTo /D (_range_8h_source_l00110) >>
+>>
+endobj
+6101 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 702.463 213.268 712.839]
+/A << /S /GoTo /D (_range_8h_source) >>
+>>
+endobj
+6102 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 559.66 124.465 567.626]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6114 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 536.418 143.126 544.982]
+/A << /S /GoTo /D (_range_8cpp_source_l00003) >>
+>>
+endobj
+6115 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 534.606 212.766 544.982]
+/A << /S /GoTo /D (_range_8cpp_source) >>
+>>
+endobj
+6116 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 440.299 124.465 448.265]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6117 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 393.33 143.126 401.406]
+/A << /S /GoTo /D (_range_8cpp_source_l00007) >>
+>>
+endobj
+6118 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 391.335 212.766 401.71]
+/A << /S /GoTo /D (_range_8cpp_source) >>
+>>
+endobj
+6119 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 297.027 124.465 304.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6120 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 262.013 148.111 270.394]
+/A << /S /GoTo /D (_range_8cpp_source_l00011) >>
+>>
+endobj
+6121 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 260.018 217.751 270.394]
+/A << /S /GoTo /D (_range_8cpp_source) >>
+>>
+endobj
+6122 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 165.71 124.465 173.676]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6123 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [213.963 165.71 239.866 173.373]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6124 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 142.467 148.111 151.032]
+/A << /S /GoTo /D (_range_8cpp_source_l00029) >>
+>>
+endobj
+6125 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 140.656 217.751 151.032]
+/A << /S /GoTo /D (_range_8cpp_source) >>
+>>
+endobj
+6135 0 obj
+<<
+/D [6133 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1370 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+1374 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 688.277 null]
+>>
+endobj
+6108 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 644.628 null]
+>>
+endobj
+1378 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 617.491 null]
+>>
+endobj
+6109 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 525.266 null]
+>>
+endobj
+1382 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 498.129 null]
+>>
+endobj
+6110 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 381.995 null]
+>>
+endobj
+1386 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 354.857 null]
+>>
+endobj
+6111 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 250.678 null]
+>>
+endobj
+1390 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 223.541 null]
+>>
+endobj
+1394 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 126.47 null]
+>>
+endobj
+6113 0 obj
+<<
+/D [6133 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+6132 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F33 2286 0 R /F99 3885 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6145 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/FormType 1
+/PTEX.FileName (./class_h_t_t_p_1_1_resource.pdf)
+/PTEX.PageNumber 1
+/PTEX.InfoDict 6146 0 R
+/BBox [0 0 500 92]
+/Resources <<
+/ProcSet [ /PDF /Text ]
+/ExtGState <<
+/R7 6147 0 R
+>>/Font << /R8 6148 0 R>>
+>>
+/Length 740
+/Filter /FlateDecode
+>>
+stream
+x���[O�0���+��Vt�ǗYU}�D/R%nQ�an����������%�-!��C�}>���Ni@��O�9_V���������*l�����R}�全Ĉ!���ZQc�0�h��yU/�7���p6;n�oW��m}]���Q�����~�,_�;���m5ĠB���+Q�3�-ʢ(��rR:�X�]��	>�fII�R.�u����r�l�yr���l��h���C��
+�drv����;��c���F���B �.�o�j��C�/W��棪��{L���vHgXBo � I��
,ʢ(�)mƢ�FB﹬�2C�0B
+�F�ћ݌��ԟ]��L��C�~6+���<�>�36��<�0Sx�7�ۛ��Y�P�eI��p�:�@d�HbY��k�lH'�ή������zí"�%�n�0+"�F���@��r�u��X����e�Ь�u���%��6d�yQ��"X��ݛcE�P,g2��$\J������O@�<]]��-�Yb�x`�2!{�m����7�ʚ	Y~�$�O$�Mԁ�*������Z:H2oH�ѩ �ͺmN��P7��Q.��w[f^����]����rr-���B�:�7]V��TZX�6ǘNʩ4�.�I����%m�u�5�6di�mo�J_���TM�H[��I��#�
���ƚf&6��~�(�n��l����������j-�'��,��(��mM���h̻�./B1N/�Q��t
+endstream
+endobj
+6146 0 obj
+<<
+/Producer (MiKTeX GPL Ghostscript 9.25)
+/CreationDate (D:20220227230615+01'00')
+/ModDate (D:20220227230615+01'00')
+/Title (ClassName)
+/Creator (Doxygen)
+/Author ()
+>>
+endobj
+6147 0 obj
+<<
+/Type /ExtGState
+/OPM 1
+>>
+endobj
+6148 0 obj
+<<
+/BaseFont /GXOHKM+Times-Roman
+/FontDescriptor 6149 0 R
+/Type /Font
+/FirstChar 32
+/LastChar 121
+/Widths [ 250 0 0 0 0 0 0 0 0 0 0 0 250 333 0 0 0 500 0 0 0 0 0 0 0 0 278 0 564 0 564 0 0 0 0 0 0 611 556 0 722 333 0 0 611 0 0 722 556 0 667 556 611 0 722 0 0 0 0 0 0 0 0 0 0 444 500 444 0 444 0 500 0 278 278 0 278 778 500 500 0 0 333 389 278 500 0 0 500 500]
+/Encoding /WinAnsiEncoding
+/Subtype /Type1
+>>
+endobj
+6149 0 obj
+<<
+/Type /FontDescriptor
+/FontName /GXOHKM+Times-Roman
+/FontBBox [ -70 -218 775 683]
+/Flags 32
+/Ascent 683
+/CapHeight 676
+/Descent -218
+/ItalicAngle 0
+/StemV 116
+/MissingWidth 250
+/XHeight 460
+/CharSet (/E/F/H/I/L/O/P/R/S/T/V/a/b/c/colon/comma/e/g/greater/hyphen/i/j/l/less/m/n/o/one/r/s/space/t/u/x/y)
+/FontFile3 6150 0 R
+>>
+endobj
+6150 0 obj
+<<
+/Filter /FlateDecode
+/Subtype /Type1C
+/Length 3755
+>>
+stream
+x��W{TSW�?1$��!M%�Ink��J�}�����1*�R���!	y@��@�k'�+	��3�Q��Y촽>z;j;EWg:����ν��s�݁�iך�5k嬜s�}���=���6
Z��h��xq�H�>V�/�����b	�����ε�me��m����`::���������/��i~�m�#��/�]�n�L�U�srU��6m������.��)�9R�jtS(����"�*�'�U�"~�X"��8�����K{��IE
+���ΐ�3�q�H���ϖ)���~�L�%V�eRe$��/�+�L1�H����u|�H�/V*�=_���(�R�(������L�:+`�ϖIU|�B���H�T�Ȕ*e�B,W�Ř��1�r���]����l�2K��x�O�J(�*�*�F��!�g��r�P��"Ur�x�Z)���h}_!�*�$"��@T~����r�D��la�?�UJ�$;�8?C��/$�P��/�NJr���_%?���� �a/He������}BM�@�):�+�ˋ�$��{�u�1�����5X<v{K�^��c��l=����vcQ�k�^�u�W��~�M���;��a4,[��,[�J�
+�˴��%˗�П�Wө����22�3Y�z������Ė��O�����ޥaKӖ�.�kpW�_�Y�+D�2kB�J�!�_�}1w��[���u5��&@��)<ʆ�X�!����\�T�o�<��?��<���}<J��Q�X���S%������+�R%��{��q�=E+6�s�E�������O�5d:�z.j-ť"�]
�`����p٫�Q��2�����J�q|�{Yٝc�<���[�6�ݹ���$^�i8q6�h�a~���"�w�2f2��+��!g�����,��j�0�-�]�Dԫ���
+��`��ʎ���
+�����#������]�J�c��d�4�Y]������.�~{9�ک!O��!
+�>�of�Nr9�]�`kDWCq���A�Ų�������<�*����tO]C����bh�����i���h��L��/�'�s�1������\R	����������tG�����~�G�pm2n-'4pЋo�5��J����U��6Jr��%>2�gl{��tkk�O�)��`��UU����
+����� X��jumA��ؤq����
�*���vB�$���5�®��U���r1���v����:�H���S�q���nM+
�(�ײ}��������7tpCa��"<��ԁ�e���L`�n������ʵ�ZK-fQ|���
+���d�Zʗ�J[UM���u���/����΋�\cS�BgVN���#�Y3C�Q�/L��^��>�W�СRl���;MMw������w-M&�c!��%����߫3�Pe�x�J�9	�sZ�<�'���ȷ[
�۳p7�m��f�3SMMS<�=�g
����f�LP%8��&�ZR�����y�Vx�Zm��W�� �����I��m���NL0�q���j�7�����V�\��q�!il�dc%�;��7���gp?s�fk�i
������ڈ1_��F�w�]�
+���2�Y��'l���\��=Ƀ�����N�p�7뷥T���Γ���jG��W�P]�D�@�؅��A��<�+K��b�G���i3�gN^��\����3����$�^��
$奅%J�����S�Z\?3C&�@O�{h��9��aJ@Q�d�z&���=}-6��ڠ������JJ�
+I��Dk,2��e��S��.g���P������=�V�SLjS~�ْW���=����sz\>�}��7��j�+h-yU$�r�G�����k:\?�.��.��ˎ9�2F1^g�N@�5�
+y�-��A�0�	\_��l}���᜔"nB�����ߥB)�����wt������ہ����u"�J��͊�Fb/s��n�G����}߁�8����r����h�!�<��@�)�,9㣑2���=s������Zi�B�R8���+\���<�	;
+P��h5�� ���)����[r���*�.�P�������SW�CERT��P�z�
+\u�#�u�����N��^Z�]:�<�bݕ��D��/ ����_�Lٍ�:u��M{p�۽Wv�ۘ�T���KN���	����~v����Ӊ�}}�hoB��ći�:�>�5]�Ă�^�U�e�j��3̲�ͽ����ԓ� ӊ��2�;�&���y��}~b�\�\�n�w����2���a���i� ���t���h6G��VQ���.�]�.�k@�d��a꟥�?�	nn^���)0�>q)�=������R�N�R���&�Tp�-�?q*�1�t�����s��ą�ˀXd��18}1�_��bH[ƒ��p��]�Z�
�K��πO��aDޛ9��=b�V&�UDY��ݬ̼ղH�k�&����A=Ng��ql�+1�^d��U܅R�
+_��e]0o���o��=~:�G��G��E@_S�Tׇ��@Dn�%�}���h�:ky��X�@asə����<�M$�K���{���#��`�86���bׅ'�
���z����5�[媮�����g��Ӡ���0@P����A����fИsxk�x�p�d��5>�s�o���CS�ݺ�n[ns*�"⤹����
�{x��|���;����5JOQ�.�SW_�`�@�w�����3�݁x�2Yg5��e�&�s�f�%�YQ<��: �MƯ�a)5Ào2YI�GɇlS�����Ʌ�
7� ׺5؏&���!yv��[��
+wƥW�z���lw���sa���`�ٴ;0��=�>GYc��Yd,d�U*��]���h���:�<T6�a���Έ}a�B����ġ�-dV�L&0�Y�	֠;;��DD:H��Is%Z!H�L����;��]���(��ɩ�7.��d���G�2ڙ,�����D����kA��#cec���~�1~���5�$�D\�qv\�3��?�.h�Asr����Z����������������5NG�.�7��V*LEV�������ԝ�v�Q����'�T���뿁��X����\PPO%�4N�ND��9�=_���L�����E�Xkp�����]�A-!:�V��1?ôR[��NH��� ��?ڟf��9:���dk��b��p�7_��#��%����%��2A>�+�:�y���:��7���{�M	5�˕m& �yI>�f�N����}V�<�u7�kA��mC]ޫ�/T�
`��T��	���MM�Q���Zy��p
+?����������P|�G����6�O���(�p`�ot:�:&Z��1ٞ��G!f�3�b5���6}+�A@�71�6��m�h���ee�-h�̃����60ʁ8|:��-��
+�j��{��4 3D���i!I�Nz�����m
���d���b�fGSm����Z���
���d䕩�K���Ja���l+n�	�hB�A)1A:�A:
� ������K������_Нϣ��yJΘ��w��hG���n���_���l�u�O�k��'���yt1�U�����`��2V�W��?<;>$�sG��*Ub.���p��f����N�l�uֲ��#�<4����h���>
+�X�Z�#|0���{��Ҿ���m�!�����
+endstream
+endobj
+6190 0 obj
+<<
+/Length 1152      
+/Filter /FlateDecode
+>>
+stream
+x��X[o�F~�W�T�2R=�}l��C�M6���f�SvU3w��`���g<6�,��j[��3���\AD����hr.�P)���H(�tȰ�h:G7�b�a�qEq�9\�����L�Y�lV&��*-r+;z5ݏ(�Dw:��L�d5��@�~{��a����
+	ɱ�D�ލ~��~�O�u4��a:�)!�KƔxK���>�'���Z�&�R �CM�UE��	VZ9-�������E�����
+����m]���4���ɹ;z�’���~�2�����(�y��:�N�@�Ԙ���q@�T+E	��q\;l��S�����C)�hR�e��.��:;���	%V����lc�aV�.�=��w���@ �g�2'|f���fSM��r�Y��㹱B��9-n�}�7;���J'ww=evAP���X��5,��Y��ٷ5�(�W�h�쳙H9���KRQ����S�ƠOE*4ր��t�1'9H�x���1���16˵���;]�~~�9��1'^�v_�e���d�n��V�|Y�ܬm��+3o4��U{�t�fYa�n���GWF�NS�5��綷����}��T^�N&����u�Yh�ip(��/h����f�JH��y� ��!��m�����
+*˔�fmH��ٙz����n�&O�1�G^[�8{�H�c�I�Ugqi����j2�L5��%�M�'�f޴n�:�0��P��K@�]�h}s���
+�֪�+z3�A�a�н�|	��!�����y/,�𫁂��-1� ��wXR�%1��W�]Q�G�����O����`r�
+�Y��~aiE�F����.3�`-C��f�[W3	�63e�&.�_�jf�(�7yb;F����-û�>��A��j�����0,�D���f����nVG�q��n�
+R'���P���'ēc2���m$��q����@AɋC�LM�x�5���<���!Ղx�&�N�2S�Av����2S/�gG�L�6�y��ʔe���w����*Y������6GS2D��D}Ԡ_�6��[��X��+K�ū��_:cw��-cW�?+c_����?����e�Ą��L��(̴}@�	�%���M+�,0��d�T2�k���#;�����۶g��Efg
+endstream
+endobj
+6189 0 obj
+<<
+/Type /Page
+/Contents 6190 0 R
+/Resources 6188 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6079 0 R
+/Annots [ 6126 0 R 6127 0 R 6128 0 R 6129 0 R 6130 0 R 6131 0 R 6141 0 R 6142 0 R 6143 0 R 6144 0 R 6151 0 R 6152 0 R 6153 0 R 6154 0 R 6155 0 R 6156 0 R 6157 0 R 6158 0 R 6159 0 R 6160 0 R 6161 0 R 6162 0 R 6163 0 R 6164 0 R 6165 0 R 6166 0 R 6167 0 R ]
+>>
+endobj
+6126 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 728.161 148.376 736.127]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6127 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 693.791 148.111 702.172]
+/A << /S /GoTo /D (_range_8cpp_source_l00044) >>
+>>
+endobj
+6128 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 691.796 217.751 702.172]
+/A << /S /GoTo /D (_range_8cpp_source) >>
+>>
+endobj
+6129 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.165 599.492 205.76 607.458]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6130 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 564.938 148.111 573.503]
+/A << /S /GoTo /D (_range_8cpp_source_l00033) >>
+>>
+endobj
+6131 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 563.127 217.751 573.503]
+/A << /S /GoTo /D (_range_8cpp_source) >>
+>>
+endobj
+6141 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 508.42 167.898 518.796]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+6142 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 495.606 177.366 505.982]
+/A << /S /GoTo /D (_range_8cpp) >>
+>>
+endobj
+6143 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 417.27 95.273 425.651]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6144 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [95.773 417.167 136.132 425.651]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+6151 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 207.875 135.136 216.359]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a5d1c2122fd6f7ea51c03c3b5cb45f2fc) >>
+>>
+endobj
+6152 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 180.253 142.884 188.737]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a188f4a9d639f416317a9f5a6992e6ec5) >>
+>>
+endobj
+6153 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 150.847 163.899 161.116]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6154 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.399 152.632 193.308 161.116]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a742c093a9caba778c16592c424c4a169) >>
+>>
+endobj
+6155 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.794 150.847 232.177 161.116]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6156 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 137.928 132.012 145.67]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6157 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 123.226 163.899 133.494]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6158 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.399 123.118 210.756 133.494]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae6913253b8e38f0f4eed9903058ae589) >>
+>>
+endobj
+6159 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.242 123.226 249.625 133.494]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6160 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 110.306 132.012 118.048]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6161 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 95.604 163.899 105.872]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6162 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.399 95.604 210.756 105.872]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a21b1e78bdca84f9fd04fd026a0c3ea9c) >>
+>>
+endobj
+6163 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.242 95.604 249.625 105.872]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6164 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 82.684 132.012 90.427]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6165 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 67.983 163.899 78.251]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6166 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.399 67.983 215.239 78.251]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a3af3a05ec6058b8a8e058ceebe1d7ddf) >>
+>>
+endobj
+6167 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [218.725 67.983 254.108 78.251]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6191 0 obj
+<<
+/D [6189 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1398 0 obj
+<<
+/D [6189 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6112 0 obj
+<<
+/D [6189 0 R /XYZ 70.866 683.101 null]
+>>
+endobj
+1402 0 obj
+<<
+/D [6189 0 R /XYZ 70.866 656.034 null]
+>>
+endobj
+3220 0 obj
+<<
+/D [6189 0 R /XYZ 70.866 489.18 null]
+>>
+endobj
+1406 0 obj
+<<
+/D [6189 0 R /XYZ 70.866 480.318 null]
+>>
+endobj
+6192 0 obj
+<<
+/D [6189 0 R /XYZ 70.866 362.287 null]
+>>
+endobj
+6193 0 obj
+<<
+/D [6189 0 R /XYZ 70.866 246.564 null]
+>>
+endobj
+6188 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R >>
+/XObject << /Im8 6145 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6213 0 obj
+<<
+/Length 1389      
+/Filter /FlateDecode
+>>
+stream
+x��X�r�6}�W�)C�T0��h��8��8�֮�7'�HXbK�
+���wq�LI�/��i��A�ݳgw�vfv��N'~�D(ϙ�8!FQ8aLQ@�I�\��d8�a�~�L���.��R��̿+!����	vy�K����\B������x2�2 �;d�)�PD}']�>c'�w��8rn�ʅ�31߃q�\�`k��%��Y_�>ġ�Gp�b��,B�K�Jr�4��ˉE��Y��!�.�Xyp�y��(E4���(fV�'Jٶx��k^G>ve���6�k�|Y��oHٻz�����x�%��	3�W'���p!�6.�Ɍ	s2�2��"���L��/�i�~D�� 샲E�ڭ>�������oǓ���F�7oK���E���@I9�'�>��yW-e�^�g�ӳ?.�̛�${e�}8><����O�,���&�=���r�q;�`ݷ1���=�ܦBm������5�J^K�Rvp=O��Ћ�G}�G����خ"�Ubm׌̂Mb| 1�af��ED	U���-�v�B�r/F�� �<#�R&2O���f��ʢ}��/� N�O�2ݭ�[�!
+#����| dEG�ng���_�*�c�_���I���+Pm"�:/oTtT����Қ�5����'�z��*�Sɳ��K�V�g���,��J^˱
a�W���7�}��*m2Y;�����P�:���F��;��܁��NMUm�u�+��:?F��m�����v�:�R.����*�z(Y���=lݫ*)�Jyը̮�.��Z�Rg"A��"oS��P+���EZ$���	������O�>W�R^�Ւ?h_���J%�������$�-2�ue���R<k/�g]�JO��،1v��L�y�EZ���fˁ��r�&B]�����K54e�6I�[��Z��v��'Ҍr�3_,��J�1j���v�^�SyZ+/$Jـ��?tO�D1���
+I�[eC��ZYMSk�h���V��O�V�6p����u���\c$��t��S./�[���(�d;
+�֙�^���Y�O�q�
+�S�QG����
����ߏU��Z���~JK�u�υ�]T3դh8@�:@�[Bԯ�<pr�.�X�ꦌ�
+��0��A[��\'E�wO��A�.����V�s�`���دW6����I{Ѷ=uo�nx`}��� �;�z��:�6���GqK�0�*�M�-�3����b|���V:Q-�M�HR~����Ιy
��e~��
+���jFq_gQ�m{�i��$6��۾]�Tx���E��"�8i�!o��u�ژ>��F�d���w��y�mp{��>|�s����2����N֝O[T�}��m5S�\�c⿹���
+endstream
+endobj
+6212 0 obj
+<<
+/Type /Page
+/Contents 6213 0 R
+/Resources 6211 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6079 0 R
+/Annots [ 6168 0 R 6169 0 R 6170 0 R 6171 0 R 6172 0 R 6173 0 R 6174 0 R 6175 0 R 6176 0 R 6177 0 R 6178 0 R 6179 0 R 6180 0 R 6181 0 R 6182 0 R 6183 0 R 6184 0 R 6185 0 R 6186 0 R 6187 0 R 6198 0 R 6199 0 R 6200 0 R 6201 0 R 6202 0 R 6203 0 R 6204 0 R 6205 0 R 6206 0 R 6207 0 R 6208 0 R ]
+>>
+endobj
+6168 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 760.065 132.012 767.807]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6169 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 745.226 163.899 755.494]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6170 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.399 746.037 222.717 755.494]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae0d3b5ab1757e069f38c55e2d5ecc3af) >>
+>>
+endobj
+6171 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [226.203 745.226 261.586 755.494]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6172 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 732.169 132.012 739.911]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6173 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 717.331 163.899 727.599]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6174 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.399 717.331 220.225 727.599]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_aec711995a2b463d35443e66e4eb70533) >>
+>>
+endobj
+6175 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [223.71 717.331 259.093 727.599]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6176 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 704.274 132.012 712.016]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6177 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 689.435 163.899 699.703]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6178 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.399 689.435 227.2 699.703]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_abc5c8dc34053d3b02eae489f5c1afda4) >>
+>>
+endobj
+6179 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [230.686 689.435 266.069 699.703]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6180 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 676.379 132.012 684.121]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6181 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.54 661.54 163.899 671.808]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6182 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.399 662.351 218.234 671.808]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a812b69953a8704e2528165c7d79012a5) >>
+>>
+endobj
+6183 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [221.72 661.54 257.103 671.808]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6184 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 648.483 132.012 656.225]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6185 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.647 633.644 164.005 643.913]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6186 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.612 633.644 236.613 643.913]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_aad145d8d9ff6e9b1d0044b7e26678800) >>
+>>
+endobj
+6187 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [240.205 633.644 275.587 643.913]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6198 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 608.633 132.012 616.375]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6199 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [184.662 539.871 235.727 550.346]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a4d76365792fb2684cc05a36ee2573dad) >>
+>>
+endobj
+6200 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [239.213 539.871 274.596 550.14]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6201 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 458.054 174.291 468.322]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_aa65b75aa0006d4dc26b92dc6ae8017eb) >>
+>>
+endobj
+6202 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.777 458.054 220.135 468.322]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6203 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [230.071 377.047 301.605 386.504]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a4a78094cb756c0886c787f93462621c0) >>
+>>
+endobj
+6204 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 348.341 189.605 358.304]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a9d14fee20d1db0e8bd76e6f151e606e6) >>
+>>
+endobj
+6205 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 320.338 199.961 330.713]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a8cb354f4fa7e6d76bdd748f50728b752) >>
+>>
+endobj
+6206 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [401.851 221.526 427.254 229.907]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6207 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 172.611 148.111 181.176]
+/A << /S /GoTo /D (_resource_8h_source_l00020) >>
+>>
+endobj
+6208 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 172.692 220.235 181.176]
+/A << /S /GoTo /D (_resource_8h_source) >>
+>>
+endobj
+6214 0 obj
+<<
+/D [6212 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6215 0 obj
+<<
+/D [6212 0 R /XYZ 70.866 581.523 null]
+>>
+endobj
+6216 0 obj
+<<
+/D [6212 0 R /XYZ 70.866 499.705 null]
+>>
+endobj
+6217 0 obj
+<<
+/D [6212 0 R /XYZ 70.866 417.888 null]
+>>
+endobj
+1410 0 obj
+<<
+/D [6212 0 R /XYZ 70.866 291.349 null]
+>>
+endobj
+1414 0 obj
+<<
+/D [6212 0 R /XYZ 70.866 158.367 null]
+>>
+endobj
+6196 0 obj
+<<
+/D [6212 0 R /XYZ 70.866 111.838 null]
+>>
+endobj
+6211 0 obj
+<<
+/Font << /F48 2333 0 R /F73 2949 0 R /F33 2286 0 R /F24 2940 0 R /F21 2941 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6243 0 obj
+<<
+/Length 1314      
+/Filter /FlateDecode
+>>
+stream
+x��Wێ�6}�W詐���U��C�4�(��F_v�@���
+YrtI���E�$k7{)ڇ�����y8g������ի���[y�Ðy�Ob��'c�B�m2��'$>m�{,$(����E�4����S��A�m��U�mW�nV_VL�G�(B�^zX]}�^��{�8�˃�C�k�����a���%�"�	���������T]c����^�ܓ(��h$�$s��f���®M�i�C��8�ȡ16��(�4]Ho�M���tEk��uU6m

+�K۪�_�O�j�~�{eɶ
+��k@���>�.�����������Ea��*�|P���=弦U������;-��ŕ�;��ec�'��z�1-sC��.�RZX>�;G���+��X��}���f��^�?@�	"D��8��=�	� ���p��֒
+/KjKN�=�1�hI�6$ߚLj��~
+�u��!��4�HNz0��Cdv�3*g�.&g�rd,+Dz�i��o��t
p��E��S4�y>�$��8E0�"�8EX���+I���V����+�SZg%�������cԡ�%�c�����WI`�<��}��̲aN=
܃6#�ܱmP��ޚ@�B�;B�S���X?��b1�M������h�,	�f�������uժ�U٧%f!���)�~щk#Ȗ��o+;�K�\�z��)��!Wm���P�����}�X�ͅ���z��W]f�[eS(���奋n�>�h�Yv����Vm�I'�2/w�|4ƇU�cc�5w�D�4��iSc�a'N��#�J'�����L�ܨ��!��O�tI����d�����������"Ƈ.�߅�
��(4Hq|3s�L�=i
+TXJt����/��=����^��.>�k3�;�e3ϒ#�'z�\<aJ2�<T�;	��U���1�	���wF
+� c�^=�|�z(h"8�g��P����
+����V��>-x`�~��̥�:}��}�ۙ������m��Iv��R��,'�6��hI��$Q"��X�<~�?����>�PD�X̯y�vI�(�dRW��\��k�t�#�g8<i̙vﶷTv0�ʽ�%-J,��fNǼj@Z9�rG�#�M��
RZѵ��k��5����8⃕S�l�*�oR;
/�fIH�I�?��;;(����)wϺ{/�R�z�� �7Y�
���5�����I�fx��_���{���R�iW�߁yۯ.��3ta}�p�T��:5����!7ݞ�H���@a��KU�:i���f�i��NS�W�<��]$?
+endstream
+endobj
+6242 0 obj
+<<
+/Type /Page
+/Contents 6243 0 R
+/Resources 6241 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6079 0 R
+/Annots [ 6209 0 R 6210 0 R 6228 0 R 6229 0 R 6230 0 R 6231 0 R 6232 0 R 6233 0 R 6234 0 R 6235 0 R 6236 0 R 6237 0 R ]
+>>
+endobj
+6209 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 678.386 148.111 686.95]
+/A << /S /GoTo /D (_resource_8cpp_source_l00067) >>
+>>
+endobj
+6210 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 676.682 229.703 686.95]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6228 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 532.193 148.111 540.574]
+/A << /S /GoTo /D (_resource_8cpp_source_l00074) >>
+>>
+endobj
+6229 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 530.305 229.703 540.574]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6230 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 373.187 171.594 380.85]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6231 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.896 349.594 184.299 357.975]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6232 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 248.659 148.111 257.223]
+/A << /S /GoTo /D (_resource_8cpp_source_l00050) >>
+>>
+endobj
+6233 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 246.955 229.703 257.223]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6234 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 150.879 138.811 158.543]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6235 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 138.924 166.812 146.587]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6236 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.79 103.376 250.194 111.757]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6237 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.332 91.421 192.736 99.802]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6244 0 obj
+<<
+/D [6242 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1418 0 obj
+<<
+/D [6242 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6197 0 obj
+<<
+/D [6242 0 R /XYZ 70.866 666.7 null]
+>>
+endobj
+1422 0 obj
+<<
+/D [6242 0 R /XYZ 70.866 639.505 null]
+>>
+endobj
+1426 0 obj
+<<
+/D [6242 0 R /XYZ 70.866 516.061 null]
+>>
+endobj
+6222 0 obj
+<<
+/D [6242 0 R /XYZ 70.866 471.236 null]
+>>
+endobj
+1430 0 obj
+<<
+/D [6242 0 R /XYZ 70.866 444.041 null]
+>>
+endobj
+6245 0 obj
+<<
+/D [6242 0 R /XYZ 70.866 324.793 null]
+>>
+endobj
+4528 0 obj
+<<
+/D [6242 0 R /XYZ 70.866 236.973 null]
+>>
+endobj
+1434 0 obj
+<<
+/D [6242 0 R /XYZ 70.866 209.778 null]
+>>
+endobj
+6241 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F25 2380 0 R /F81 3708 0 R /F95 3709 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6272 0 obj
+<<
+/Length 1395      
+/Filter /FlateDecode
+>>
+stream
+x��YK��6��W�T�@��S���f�n�`SǷݠ��\ۍ,9��4��×"ي]�4�aWE�73�f8�`�������K.��(b��1�1�Q�	E	f��.�����e��l�n2����Vc��L�����p����R��ʰ�2$$��]�F�F�q@Z$)��<�֣�8�÷�F,���rp����y�~��;�1�B�����DI�y7�<L�t�U�		k��9�!�3xА�a�j��2‘b� Bz
+Vs�s"�Kp	��K$C�1g(������!� &蹐1��14郮U]�5�,0Μ��z�"j�>�M���U�pǮ1����w-�{�p���Uuc��:�o*���LRs;��g�^7��㾵Lr.v���c`8���"���#7�r��4ATF����A���N�ly����s�����:�����|��f���lܤ��O�\�	ٔ�ӪnC��R�l�>�@�.$��2N� �8�Z�OU�������;GG)��rE$œ�ݷ�fQ^�\�MYԪd�g�c)f^�\9�G�dޮ�z���*/���w�|{�f2���v�
�A€���v��u�1-Vͪ,\��D\�0Z,�\�)���G$L=���dP�r����)u���+�1�i1��_s�C�p��?�%L
+�Qc�3(;���������`uk�LM&=�Y�5������6�xЩK]��/�Q>:p���3먞=Wne�(7��m�ܑ-bĤheۜ����>:����&X �[1f�N�w�WU�M�vW/6!���,?�!�VP�B
h���Ȩ�47�R���+��f/?�a��S�"-u(��>���V�y�V��o�g�v
+*�e9G�+.i8[zm�Ef�̨�,���ݩ[�@p�����U����z�d��.m�H�����	:��Jl��{��9��.�gNl�m',�8l��K�kP4F��4�SVZ�?������u�@�ӽ����u�bSqv?�q�xrѝv�[g���'�8�r&���3!���n�L��J���Cv�[�G0-��Hz��R�Q$�tp� ��$�y��$�b�΄dh��hN�n�M ��y��[�("R\�����}�[eGZ��;¢����V��[#�Lm�a�u�Ž@y��)�:M������ ��u}�aǭ�)��$��]�}Y�L��a��9�f�6%z�*���͗������ھ���uZ�c.�n��h�������McT:����KZ*��������_ΦF/��u�y�=�����$f��J�54v�K���%�Z5�Ω�����U`�3��7��ǵ�OS�m����)�i�_b��#޹��@Q�B�*T�6Ci�Ei<�u���bW�h� �
+endstream
+endobj
+6271 0 obj
+<<
+/Type /Page
+/Contents 6272 0 R
+/Resources 6270 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6276 0 R
+/Annots [ 6240 0 R 6250 0 R 6251 0 R 6252 0 R 6253 0 R 6254 0 R 6255 0 R 6256 0 R 6259 0 R 6260 0 R 6261 0 R 6262 0 R 6263 0 R 6264 0 R 6265 0 R 6266 0 R ]
+>>
+endobj
+6240 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 742.947 219.534 751.328]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6250 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 657.019 156.58 665.4]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6251 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.612 622.053 204.912 630.824]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a0f046d3e28928e07013a07b7e5b8e5a2) >>
+>>
+endobj
+6252 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 597.232 148.111 605.797]
+/A << /S /GoTo /D (_resource_8cpp_source_l00078) >>
+>>
+endobj
+6253 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 595.529 229.703 605.797]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6254 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 499.453 138.811 507.116]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6255 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 487.498 166.812 495.161]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6256 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [226.042 451.949 251.445 460.33]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6259 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 399.071 219.534 407.452]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6260 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 313.144 156.58 321.525]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6261 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.612 276.473 197.936 286.948]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4e237fb0358f5adaea25f2ac95b8b5e7) >>
+>>
+endobj
+6262 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 253.357 153.096 261.921]
+/A << /S /GoTo /D (_resource_8cpp_source_l00136) >>
+>>
+endobj
+6263 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 251.653 234.689 261.921]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6264 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 155.577 138.811 163.24]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6265 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 143.622 166.812 151.285]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6266 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.837 84.163 300.24 92.544]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6273 0 obj
+<<
+/D [6271 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6274 0 obj
+<<
+/D [6271 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5532 0 obj
+<<
+/D [6271 0 R /XYZ 70.866 585.547 null]
+>>
+endobj
+1438 0 obj
+<<
+/D [6271 0 R /XYZ 70.866 558.351 null]
+>>
+endobj
+6275 0 obj
+<<
+/D [6271 0 R /XYZ 70.866 427.148 null]
+>>
+endobj
+6220 0 obj
+<<
+/D [6271 0 R /XYZ 70.866 241.671 null]
+>>
+endobj
+1442 0 obj
+<<
+/D [6271 0 R /XYZ 70.866 214.476 null]
+>>
+endobj
+6270 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6303 0 obj
+<<
+/Length 1629      
+/Filter /FlateDecode
+>>
+stream
+x��Z�n�F}�W����I
+m��v�)�:B_������F"�J����IQ�E�[�!��\�=;sF2��=�]
~�����HJ�M���PJ/�(�ě̼��p�q��c��0`��ug�pD�пH�ەJ�8_���;��>L�)m�!
+)�����G����k#���f���!�5��{?�}���Q�?��Z-^k�s�ݐr?��+��͐?3�&[=x�#2�aTz��6�Rx�!GW
+fs�s&̒�E�$T�%	��8C,�Y�E��L�+$�a�HШ�RY߫d�E:#��̊֐_%�t�H�ݶk�ͽ��x7��/'�w5b����UYn	;��7j�I���ّ�!��7�y���Y��>�G��I!;D��0�я��l8�R���'C�":�R!���d;K��jȰ�u�����j7�v�V�/Klä<��y�̖�q0��Nӵ�ڑ/��yj�I7�cq����&]�#�<;�}RQ�8�G�^611'C�]=EL�%�+���
���U�U�O�G�
���U���˄�v�az�`[-M��|^<���R5h��Yi8�n��)�o�P`"�=Iy��3���±+\�*�n��\)����A�8�¾�v�ߧ=�^�N�L���V��T�e��y#��(]\��4Y��\I�E���KD��n�Gmxy��uA7"|�6��&96�0�F��0t�2D�;�����罾�U���7L���`�L38��m�ސ���X�F���&��@W�����?��^�������V����D�GP	:㚔{fש��ͬ����`
ېuX(J�6��8~����Յm�,ť3vC�͗�&��ˏ��ڱvrS*Fp
�����tJY$0�c��L��e0V��Tv0��BA�2��/�85�NJx�z��˫YiŌ����rb��3���y���6��C�����n���������
+���b6SI{��Hc���N[��j��*�3���З	l���ԝ�01�gvd��ބIW�5�3�HrcG�I�t"�X[.o㩎��u�a�O=%7�1I�Ttn"9ѵ�/��
�~6�
+�p28��M$'�V��VA![UP
�H�;#7t�J�u�'�D�8&�C��3y��ci/��,[�<�Vg�@"x�W![YZ=��-G;�r������%����J���);�8S�3N�����ת�Er���o_�������yS[?{ȫ�P�c(��-�F���ޝu �y��~hw:}sR̘	���Ww��b�
+2Z��SC�����
+�a`B32+6{aە��B���+�{z@�/
+���Yi~��pYݽzB��gOHk=����sϺ���g?���ZC(��
!#�UI(�!�#EC�NJ�jg*�a�!�3�5����d��+��nA
+C��޾�����M!�k
+��]Sh|�ێP�U�⡎�L�VAG�]?�Gx�gEA/U�˄U�p����J	2Z�����[ev�d/�
�UfWq�d'xv�{���^��e�}Y!!��G�A2
+�UE'�VrV!O���P[�YE}
����� {'��Muϔ3rΟ�N;H�w��Д$�SAW*Q�8o;������E!i���:�<'
+endstream
+endobj
+6302 0 obj
+<<
+/Type /Page
+/Contents 6303 0 R
+/Resources 6301 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6276 0 R
+/Annots [ 6269 0 R 6279 0 R 6280 0 R 6281 0 R 6282 0 R 6283 0 R 6284 0 R 6287 0 R 6288 0 R 6289 0 R 6290 0 R 6291 0 R 6292 0 R 6293 0 R 6294 0 R 6295 0 R 6296 0 R 6297 0 R 6300 0 R ]
+>>
+endobj
+6269 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [195.861 742.947 221.264 751.328]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6279 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 642.362 156.58 650.743]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6280 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 607.395 153.096 615.96]
+/A << /S /GoTo /D (_resource_8cpp_source_l00158) >>
+>>
+endobj
+6281 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 605.692 234.689 615.96]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6282 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 509.616 138.811 517.279]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6283 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 497.661 166.812 505.324]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6284 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [221.897 462.112 247.3 470.493]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6287 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 409.234 219.534 417.615]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6288 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 323.307 156.58 331.688]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6289 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.612 286.636 197.936 297.111]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a24b2c5323d9f5f0651d48d3d319eb225) >>
+>>
+endobj
+6290 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [200.929 286.636 313.568 297.111]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a37602b6b8f95595a78b70a9b0eb865ad) >>
+>>
+endobj
+6291 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [316.56 286.636 420.009 297.111]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a10c29b035a567af07850dd1f27e218fe) >>
+>>
+endobj
+6292 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [440.45 288.34 502.246 297.111]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a636a905c115a1686caef9815c5b1aac9) >>
+>>
+endobj
+6293 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 263.52 153.096 272.084]
+/A << /S /GoTo /D (_resource_8cpp_source_l00120) >>
+>>
+endobj
+6294 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 261.816 234.689 272.084]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6295 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 165.74 138.811 173.403]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6296 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 153.785 166.812 161.448]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6297 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.194 118.237 250.597 126.618]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6300 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 65.359 219.534 73.74]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6304 0 obj
+<<
+/D [6302 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6305 0 obj
+<<
+/D [6302 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+5240 0 obj
+<<
+/D [6302 0 R /XYZ 70.866 595.71 null]
+>>
+endobj
+1446 0 obj
+<<
+/D [6302 0 R /XYZ 70.866 568.514 null]
+>>
+endobj
+6306 0 obj
+<<
+/D [6302 0 R /XYZ 70.866 437.311 null]
+>>
+endobj
+6219 0 obj
+<<
+/D [6302 0 R /XYZ 70.866 251.834 null]
+>>
+endobj
+1450 0 obj
+<<
+/D [6302 0 R /XYZ 70.866 224.639 null]
+>>
+endobj
+6307 0 obj
+<<
+/D [6302 0 R /XYZ 70.866 93.435 null]
+>>
+endobj
+6301 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F95 3709 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6336 0 obj
+<<
+/Length 1386      
+/Filter /FlateDecode
+>>
+stream
+x��Y[o�6~��У��"el�vIZtK�{I�A��؈,���5�~�"%K�l�r�C�y�s�>����G{�_F��s�<�� `����� �dHQ@��Ļ���?�R�����px��t��S쏵]GYf�7��O���:1OVT�����чޯ�ޗd�
+I)�(�����=�&�샇��w�s�q����w������Ո�0S38��bS�Q kԍ�W�$+�ڔwv�X�8��D!̅=}���Y��s��ή���wW���֗:[�I朗�v��>/��Xg���e��g;/p6�dOF�7p�1��bV�w��4��4���܎�,���%����>XFp|@���y"|�n��Yؠ��f��k�!�d@0��4J&��+]��OX`�#;�8;ܓ(��8Ɍ k�䊾����V'�X�M�~�Ǩ��	A\
+�
+A�%Ӿ��5���CQӓ��B“���~���XW5��
� �p�ͣ|<�G��DL�Jv����G;�Nם�L�@Wb�]�~��}�-�U��S����u��p�Hp?����,��8���0��_��v����_�T��`�nb��ֻ�K�v�JJ1Fn�������~��|�N`��MK}V���6��4]ť�N����-�f��.6����m��d6_�z��<Z���RV����:r�_������h�o��|}6q��Y3$�5H�B��(�KVZ��F�'�꜁���y#*��!L���}
+~_F�e�"�o���! ��4ؗ:1�CV��e���+H,{S솛 �Q�(�`!x���!J=a���d;i�QЮ��~;	�Hа	�O���yW�F\ "�J�&��d��Oȩ6�ڔ���TΦ��i�Z�8�!���m���_�a��$ò��z�"���J6fiG�V�6@�d��ю��m��fӧ��Jw�Q>-�W�XI�u��e�|')�7o�P<d��I�� �Ȋ�s�zR��_m��K���^J�%�ռ�z�q8��/!�z"*Pmu~vwt}g	��ɪ����N#�"8)w��d�"��[$S��屟6*��Dj~�Yg d����/\���i�/�پ@��xڭ�'60�u���}�ھlv/�(z�X���W��ة�������^�yk`��2Ϙj�T������s����j��c`��c�F�Uc�p���c���{�4��1�"C( O��'���!�(&���]	BH��p}���>l��b:"�V�
�W��o�6�@���Hz��Raj�]�ÿ i7�v��0�0a�Z�}-���m��8�����e��I.�7?:��BN ��1?�?@Oe��t~�+ .t��QަܻԤ�oϏ���u���?�BQ�
+endstream
+endobj
+6335 0 obj
+<<
+/Type /Page
+/Contents 6336 0 R
+/Resources 6334 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6276 0 R
+/Annots [ 6311 0 R 6312 0 R 6313 0 R 6314 0 R 6315 0 R 6316 0 R 6319 0 R 6320 0 R 6321 0 R 6322 0 R 6323 0 R 6324 0 R 6325 0 R 6326 0 R 6329 0 R 6330 0 R ]
+>>
+endobj
+6311 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 745.634 156.58 754.015]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6312 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 710.668 153.096 719.232]
+/A << /S /GoTo /D (_resource_8cpp_source_l00153) >>
+>>
+endobj
+6313 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 708.964 234.689 719.232]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6314 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 612.888 138.811 620.552]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6315 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 600.933 166.812 608.596]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6316 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [221.723 565.385 247.126 573.766]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6319 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 512.507 219.534 520.888]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6320 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 426.579 156.58 434.96]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6321 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.612 389.909 248.061 400.383]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a62d80e5cd14d377d3bea90e6332b0b72) >>
+>>
+endobj
+6322 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 366.792 153.096 375.357]
+/A << /S /GoTo /D (_resource_8cpp_source_l00148) >>
+>>
+endobj
+6323 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 365.088 234.689 375.357]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6324 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 269.013 138.811 276.676]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6325 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 257.058 166.812 264.721]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6326 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [223.927 221.509 249.33 229.89]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6329 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 168.631 219.534 177.012]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6330 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 82.704 156.58 91.085]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6337 0 obj
+<<
+/D [6335 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6218 0 obj
+<<
+/D [6335 0 R /XYZ 70.866 698.982 null]
+>>
+endobj
+1454 0 obj
+<<
+/D [6335 0 R /XYZ 70.866 671.787 null]
+>>
+endobj
+6338 0 obj
+<<
+/D [6335 0 R /XYZ 70.866 540.583 null]
+>>
+endobj
+5802 0 obj
+<<
+/D [6335 0 R /XYZ 70.866 355.107 null]
+>>
+endobj
+1458 0 obj
+<<
+/D [6335 0 R /XYZ 70.866 327.911 null]
+>>
+endobj
+6339 0 obj
+<<
+/D [6335 0 R /XYZ 70.866 196.708 null]
+>>
+endobj
+6334 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R /F95 3709 0 R /F73 2949 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6366 0 obj
+<<
+/Length 1397      
+/Filter /FlateDecode
+>>
+stream
+x��YYs�F~�W�Q�Z�sꠒ<$���M�����J�0b!��ج�}z	�J�T���>f���3u����wq�C'D��3g�����E>qF��%{���	
+��OI\^��{��W��q9�R%��y���# �R�CR���{�L��#�ΟZr�p����D���~��M?k�|•�7r�X&Ry"'Ƴ�q���O�C7o{Ν~{���`0�8v��#�!K��EW�:��2H8A���3"
�F��Jb��ƹo�_��ܢ�
+2R-��:lߎ<�$�>�>	ba��)��5�.�'�i:��
ǥ�y*o	a�ႝ���89��F�*K����-}��-�a��C�U!�1y}�1vgq:I��ˬ(?a���q��Jpا(�Īe�[��jߍF����[fi!����R-�#6,{Z@��>��΄�H�
+��W7�5N2�V��ZȢ���٤F4}+i�F�('�A�����,i��CԺ����{3l����-�Dq�FK����{�e���8�oI�>Lb_4��Noh�����)`��ya�q�$*{���\IJ�P����Q�Vz�y�ޫS�>m5���)j-z��0���'(
+�l��>��*_W�ؤ�vl����s�l�R�z
+��8'�6�SY�������U�x��U&�B�f��j�ݡ'���~"=ذx������J��W�R^f[��i��7�3e�%�C<V<�Y���3�Tm�ޡr6r�2���v�Q�ז^BܢqTm�Dp�5	�FT/	�^��:��`�v@HCfU�V����!C�Pٔ��tQ�� 
+z�ɠ٩$h�4j�N�e�϶���H�M���q�����]�-�
�M�5}��x��e��!��*P�=)Wi?yڍ��z;#�]�1
+c�
��tX��	r<"�1�B�R}J�3َ�M�u�ۃ���ct��/�sڪ	�to1�@�2.g���Vr]j��V!�ʓ����\:O�Q%m�1��o�k�È!`{�*Wy��
+{nȔ"�p)F���r�*�Y��b3{�U�9Vc&œ��[�GA�:�����v��������$ 
.@�X��DW.�zuT@�˨���ԏ��5P3P���¶���P�������\�j�ұ�8�mdj*�8�T@������R��4{�@#:����Oک��q��]�Y7�E����� HU)r�u���KV��Q*p���kV���G��0B���n:,J�|N^�
+� B�g߀��L��t��*p��v�n�}T���v*8���u�H�U_�����j�����r\�%�S����8���@��S~@�~��,|�P�G���-���T�q�vt����|}��;�+�m�\i
+endstream
+endobj
+6365 0 obj
+<<
+/Type /Page
+/Contents 6366 0 R
+/Resources 6364 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6276 0 R
+/Annots [ 6331 0 R 6332 0 R 6333 0 R 6343 0 R 6344 0 R 6345 0 R 6348 0 R 6349 0 R 6350 0 R 6351 0 R 6352 0 R 6353 0 R 6354 0 R 6355 0 R 6358 0 R 6359 0 R 6360 0 R 6361 0 R 6362 0 R ]
+>>
+endobj
+6331 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.612 758.177 257.251 768.652]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_ac58916de16e381e40123bf9633a151ad) >>
+>>
+endobj
+6332 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 735.061 153.096 743.625]
+/A << /S /GoTo /D (_resource_8cpp_source_l00130) >>
+>>
+endobj
+6333 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 733.357 234.689 743.625]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6343 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 637.281 138.811 644.944]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6344 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 625.326 166.812 632.989]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6345 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.382 589.778 250.785 598.159]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6348 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 536.9 219.534 545.281]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6349 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 450.972 156.58 459.353]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6350 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.612 416.005 206.409 424.776]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a5d0ba47fb669127afcbea1a3d192fe88) >>
+>>
+endobj
+6351 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 391.185 153.096 399.75]
+/A << /S /GoTo /D (_resource_8cpp_source_l00125) >>
+>>
+endobj
+6352 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 389.481 234.689 399.75]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6353 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 293.406 138.811 301.069]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6354 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 281.45 166.812 289.114]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6355 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [222.105 245.902 247.508 254.283]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6358 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 193.024 219.534 201.405]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6359 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 124.255 156.58 132.636]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6360 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.612 100.846 197.936 111.32]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_ac6614134cf7d4c7caaaae13fac999978) >>
+>>
+endobj
+6361 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 86.301 153.096 94.682]
+/A << /S /GoTo /D (_resource_8cpp_source_l00142) >>
+>>
+endobj
+6362 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 84.414 234.689 94.682]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6367 0 obj
+<<
+/D [6365 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+5268 0 obj
+<<
+/D [6365 0 R /XYZ 70.866 723.375 null]
+>>
+endobj
+1462 0 obj
+<<
+/D [6365 0 R /XYZ 70.866 696.18 null]
+>>
+endobj
+6368 0 obj
+<<
+/D [6365 0 R /XYZ 70.866 564.976 null]
+>>
+endobj
+5568 0 obj
+<<
+/D [6365 0 R /XYZ 70.866 379.5 null]
+>>
+endobj
+1466 0 obj
+<<
+/D [6365 0 R /XYZ 70.866 352.304 null]
+>>
+endobj
+6369 0 obj
+<<
+/D [6365 0 R /XYZ 70.866 221.101 null]
+>>
+endobj
+6221 0 obj
+<<
+/D [6365 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+6364 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F54 2381 0 R /F95 3709 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6390 0 obj
+<<
+/Length 1482      
+/Filter /FlateDecode
+>>
+stream
+xڽXIS�H��W�(W�N/j-�����$�4'B�d�����¿��M���B�$����m�΍��������k/tB�>s�k'�(�}'�(���K7D�Lg4�7q|6����l�)�n*���<�k�z.������e8��K��U�n��'_'8c�t����s����
+;+�{�`ĢйS'7�����ܹ��3���	�}�Ct c�_[Q7���Z�P~�ß���k�9�L$9��A!�)Jwb9��W��|�-�[P�z}��b>��/�	�A��n��O&H�ܙ�"�k>皂��u}�:�=�h��Q6���q4��̜��>_7����$M��W�y�X�;����O����c;�9��#�N���������+}����f�z�9�<C��.�7��T�6dI�뗺��3���,��S���ka�r�AVz�*7��Y���ʮ6��^�Yc��绋ӏ���{��3{�<�Z\��� ���2I%$��#Ѭ�U=%�E�I	����������!L��Ϧ�s�*"�G�z���H�=�X����H�H|fD��g
+(�GNN83$T"��E`
�Kk�Q
+�"�ᔲ��A"R�Oe��Kp�8��LMd�p�An|*�A��$�!�EZn����s�e�0��0(~o+q[�)�$L�,%\��{z�uS��<Ԗ�da�m"H����0J��A)ň�AU'�P*s]��J��r�}�]%x�O�;��>���h��m����S�mҬ�~b�rȦ�[6�V�0��/��P��&(��
�aaP��Áta��PߊaQ���Q�����a�;���`���e�WdnM�:�0�E��չ:+������Ŕ$� `{9Uy!�����Xu���G���U�k�uz��� 6KQi��&1oe�nD�h�Y�����SD���v��މ�g�)<����o"m��p�?��1��#�|�C�P��in�s-�ɐ u7��!���=��LK-���PZ��h	�
+*�A�>�pea�� ��ռ�z,���H'����-?t�o]R���m.��e�Rrl���ԇ"�����2�|Ga?B�;z,t7	���9�(�E-[��E<%Pɏt<2�#�p(9^�_ċ#
�3u����zcWO/,�}z�=�x1ݮ�Y�<���ٿ��T��u��ĿG�5��A���b���jYe7Y�j|>:h�ذ&6�V>��X����&�膭~�ٲ�'ұߦ�ɓ�\�[��-̕�jO�_�f1�`����8mQt���V�W��v�����HMZCț6@��pS�lmR�F�8ޥ@4,��Ư�'m_�1
+	�a��eݤe��l�B�}k�{�~�h;{�,oʹ4^���m�Z+/˶��ik��{pK���l󕍺�����|����D7�>{]����{'d�f�W~��?QA��^��8�}�Q�*iƆ��R"�����nW�"��M��
+endstream
+endobj
+6389 0 obj
+<<
+/Type /Page
+/Contents 6390 0 R
+/Resources 6388 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6276 0 R
+/Annots [ 6363 0 R 6375 0 R 6376 0 R 6377 0 R 6378 0 R 6379 0 R 6380 0 R 6381 0 R 6382 0 R ]
+>>
+endobj
+6363 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 715.028 166.812 722.691]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6375 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 638.557 219.534 646.938]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6376 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 517.662 143.126 526.227]
+/A << /S /GoTo /D (_resource_8cpp_source_l00003) >>
+>>
+endobj
+6377 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 515.959 224.718 526.227]
+/A << /S /GoTo /D (_resource_8cpp_source) >>
+>>
+endobj
+6378 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.929 347.202 157.332 355.583]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6379 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 310.427 148.111 318.808]
+/A << /S /GoTo /D (_resource_8h_source_l00042) >>
+>>
+endobj
+6380 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 310.324 220.235 318.808]
+/A << /S /GoTo /D (_resource_8h_source) >>
+>>
+endobj
+6381 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 103.499 148.111 112.064]
+/A << /S /GoTo /D (_resource_8h_source_l00060) >>
+>>
+endobj
+6382 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 103.58 220.235 112.064]
+/A << /S /GoTo /D (_resource_8h_source) >>
+>>
+endobj
+6391 0 obj
+<<
+/D [6389 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1470 0 obj
+<<
+/D [6389 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6392 0 obj
+<<
+/D [6389 0 R /XYZ 70.866 666.633 null]
+>>
+endobj
+1474 0 obj
+<<
+/D [6389 0 R /XYZ 70.866 501.715 null]
+>>
+endobj
+6223 0 obj
+<<
+/D [6389 0 R /XYZ 70.866 456.89 null]
+>>
+endobj
+1478 0 obj
+<<
+/D [6389 0 R /XYZ 70.866 429.694 null]
+>>
+endobj
+6225 0 obj
+<<
+/D [6389 0 R /XYZ 70.866 298.558 null]
+>>
+endobj
+1482 0 obj
+<<
+/D [6389 0 R /XYZ 70.866 271.362 null]
+>>
+endobj
+6224 0 obj
+<<
+/D [6389 0 R /XYZ 70.866 91.814 null]
+>>
+endobj
+6388 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F79 3573 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6413 0 obj
+<<
+/Length 1400      
+/Filter /FlateDecode
+>>
+stream
+x��Xmo�6����Rҭcl`UUj�KN'UJ���;�8	-�����w��K�I��>�.k�g�gf�عs�s��u�:9"'B1羳�uB�"Ν0��g�9�.���������(�a�z�[�����a�Vi�e�tyUʵ�����+K�C�Q�"8�nu�;����ȏ#�A��9���s��c���	>a�h�(A�5��iUv�ԗ�ҩ�38!�CL��)C�1����ͦ횼�����n/6�K�V}���fbN�{]7U'�Nd���?r ���~��6���'�Yn��D��(sE#2��ƣ�}�������"o��{*n=�I_tfQW
�����5�S�Id�L��S��ɟ��p��n�1�O�'�i�+��q6�"/�+�͝Ʌ��s�V0l����խ�/�G,\�㿟YDd��H��سIʪG
+��������A���w��G����t�T;�]��E%�>��ڇ�n�N��(�X���?Q��@1�ݶIO.�_mO���9|c�������Č�^8(&��t�����`�_jjW���ݯ°2�9�����H����1
+p�m�^\<�M�0 ˔�b:��O�ᇼL�>3�@��WB_��~Z��0���b֜�,!4Qb��WHp1
+Y�5�8F>�Z�"�Aࢿ��A�k����Y_���iD-e��e^�A��k��aӆ=�J�;TL���,���Y(��<U����}�6��
+�^���J�a��S!�+�F�c�؈�j��}�����hD�K�z)���S� �4�v�g��[U��-�|�%Y���&j;ժ�C�iQ���	���xI����뤻���5�	Ȝ/u�,4;2/��I�\,�i�ˆC��)6Ӧ
+j�ų�zhs(b��^J��~DS/ŝ$�YRsonJ�"�;%Pt��W��%���qp��1��v�{퀈Q��K�ª2�ui��v6Y�	�1�����K�ʰH��{�"�:9�I�<�R��%��=&��BH�j��ہ�Av���6���&s��#@qd��z��UO0;A�r�c���Ȁb5��8rK����R�\G��rjծ���)|���^�U�\P�7�&�ף��IQ�7ƒ=BA#�Xh�m`����U�_�����M���"��NX�����0k�T��Ko�Q�/3=��
^��2PQ�ցj�}�J�BOKO���F����:C��P���oS�E(���C͏f������?���~��_�P4q���f��uF�Fg���u�7ł$I�5�uv��;���} b�]*�n���Y;h�}7z�Л++�%ISQ���UY
+3 �lz�o`Ŵ�,�ba��x
d_�pDC������
+�R���;��J�޷�;�"3�	>����
+endstream
+endobj
+6412 0 obj
+<<
+/Type /Page
+/Contents 6413 0 R
+/Resources 6411 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6276 0 R
+/Annots [ 6383 0 R 6384 0 R 6385 0 R 6386 0 R 6387 0 R 6396 0 R 6397 0 R 6398 0 R 6399 0 R 6400 0 R 6401 0 R 6402 0 R 6403 0 R 6404 0 R 6405 0 R 6406 0 R 6407 0 R ]
+>>
+endobj
+6383 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 696.983 148.111 705.547]
+/A << /S /GoTo /D (_resource_8h_source_l00050) >>
+>>
+endobj
+6384 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 697.063 220.235 705.547]
+/A << /S /GoTo /D (_resource_8h_source) >>
+>>
+endobj
+6385 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.627 654.731 183.329 663.215]
+/A << /S /GoTo /D (_resource_8h) >>
+>>
+endobj
+6386 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.627 640.715 192.797 650.983]
+/A << /S /GoTo /D (_resource_8cpp) >>
+>>
+endobj
+6387 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [96.275 572.678 124.718 581.449]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+6396 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 500.259 123.219 509.03]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_ab739ee20c13e7d2e3979b67d39fc1ea0) >>
+>>
+endobj
+6397 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 473.803 130.968 482.574]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_aaea152f2562b0c0c4f16bfdc5472a759) >>
+>>
+endobj
+6398 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 445.645 135.422 454.312]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_aec1277227e7f17a1115e6d868a07b486) >>
+>>
+endobj
+6399 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 420.974 136.409 429.458]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_a9f24bc848a91d7d8a7e084b102de4e7a) >>
+>>
+endobj
+6400 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 394.518 130.437 403.002]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_abb452f50d7c5660ee204e47e20066c83) >>
+>>
+endobj
+6401 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [267.897 394.518 308.256 403.002]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+6402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 368.063 145.016 374.947]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_a2017a683878ebf7d90ad3a62c3516238) >>
+>>
+endobj
+6403 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [163.746 293.11 189.149 301.491]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6404 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.649 292.926 218.092 301.697]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+6405 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 268.015 93.059 276.467]
+/A << /S /GoTo /D (todo__todo000002) >>
+>>
+endobj
+6406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 231.188 148.111 239.569]
+/A << /S /GoTo /D (_server_8h_source_l00021) >>
+>>
+endobj
+6407 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 231.004 208.005 239.775]
+/A << /S /GoTo /D (_server_8h_source) >>
+>>
+endobj
+6414 0 obj
+<<
+/D [6412 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1486 0 obj
+<<
+/D [6412 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3032 0 obj
+<<
+/D [6412 0 R /XYZ 70.866 636.622 null]
+>>
+endobj
+1490 0 obj
+<<
+/D [6412 0 R /XYZ 70.866 625.977 null]
+>>
+endobj
+6415 0 obj
+<<
+/D [6412 0 R /XYZ 70.866 534.008 null]
+>>
+endobj
+1494 0 obj
+<<
+/D [6412 0 R /XYZ 70.866 338.58 null]
+>>
+endobj
+1498 0 obj
+<<
+/D [6412 0 R /XYZ 70.866 217.438 null]
+>>
+endobj
+6416 0 obj
+<<
+/D [6412 0 R /XYZ 70.866 183.307 null]
+>>
+endobj
+1502 0 obj
+<<
+/D [6412 0 R /XYZ 70.866 156.789 null]
+>>
+endobj
+6411 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R /F25 2380 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6435 0 obj
+<<
+/Length 2078      
+/Filter /FlateDecode
+>>
+stream
+xڽXmo�6���B�'-�eH�ԋq��\s���EH��,ѻ�h��D����_�Үl�vQ��493�<��ph�
h�f�����7"
R��1�n���4��$�Ĥ�2��$�֛(I��\]����T�z�h��8��:�{;|�n��'թ�P�
�"�,��_��]��j�ۊ�b�QQ��4A�_}��%��ۀ����Y���D
+�:�\����xJ"�C������QbFR���n�0���`=cao,�"-��O��/���e�D��=$�� ��N��)��$��JR��I�̍T͹oe���*>��	�Q6W: �dX/��8I){�j>S
2�$���:������Ҏ��![�`m���w�טH�P	1wZ.^���"�wm�/RJ�VgvIs%n?�8"|W�Ѵ��n�w��#7�:@��u��.
ݪ�)�"���:�D�Ɉ�`�ɤ�
+GIUQp��4�7�6�{���݉�^G2��[յ�U�UC�}*�O�s\zG���"�ŧ�x"��)��8��Q+Z����f��{E�oXJ�pN�e��5��C_5[;�(;�	�q�M���M#:�2�����.p~�ѡk�m�F\�|�4��:��-���
ւp_�=�7�H�2|��oU�|���ɲ��s���v�K��kC�ɾ*!Ŕ�ʃ5��[>�K2�;w��n�����*�0浙[�����`�L	�b����6���~�����;���V�C���5��8Tv��~�vj&���T��ak�M�IG8�����Nxg���:����O�]�r�a��rh{C��$jd�����u��⇪�ھ�qL���%��8����$�c��
+A�ؠ1[<�U��h�����nG��#N\��`iq8���֟�Ppq� i�'��J`�c�f�>RN�%$c���^����-�6	�:H��e#2 �n*9����`�Ņݕ�ɮ8<g���D�D���SƔ�h�8rF�(m����<
w��R�����Z����Phd�v��G1����	m[���N�g(#������5���p0���Q?g��Ch}��]��?!d���s�\�6#7UW&�TqWX���۳{0>�]����B����C���z����M���X���C�ۡ�;5�p���&�xI�1����$�Y�bNDP]�I�q��j���)��{�rq���y$C�x*�0'7/1ݔ"����*m�̃1/�I�[��"y�
+uyqżfTer�J&��cIz����%fp��rH��;��nK��6���3/����D����'�U(,�I]<Se:�����)�2����FԄ̖))B�@ejc�yK�X�"�0��Q��5՝��^�Mo��ɞ}����Bp��ǿ@Po�7.lJ;��oLJ�r^�����u��������*��V16uP)-�sc,�/Kk#��){�S��k�q�����p�4i[�5�F�!��Cp.(ul;����p��8����7]��+��_��qny°�gN�����v�:�&ã0�`ue�!��:]8o8���Z_�H�9�
+
+���Z���6����n��YU�b�J�z]�}Y�AI^��\�#<�R���AƤQw*/]��������ɻ����n����%/z��L�m�0(�({�
Fk�0��8Mo�<S�be�I~A�H�F�U;oTH(�c6W�n- �i�8+c�qj�^�L�ڿ��ޯ�u���Ô�������ۇ��u�A����?1m���K��1	P� O�,e�D��B�`�1f&�E[pi�#9!F�z�5�N��0֡)}��m�����<��+�=�pp����
+0KE�CS�9&(�ԩ�s�ս���c�<X|Y������:I�"ࡔc��>S�r�O�N�{��y���~���(��@1�m��c�J�(t)�-�
+G�O[���{E���{�t��m��4�w��~��:L�h�ŝ��
Z��'��� ��&ͧ�8��c[�%OE��vg�K��w{��@.�	к�܎�$��K�
�;��}�ҽ�Ӷඦ���S�����
+endstream
+endobj
+6434 0 obj
+<<
+/Type /Page
+/Contents 6435 0 R
+/Resources 6433 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6439 0 R
+/Annots [ 6410 0 R 6425 0 R 6426 0 R 6427 0 R 6428 0 R 6429 0 R 6430 0 R 6431 0 R 6432 0 R ]
+>>
+endobj
+6410 0 obj
+<<
+/Type /Annot
+/Border[0 0 0]/H/I/C[0 1 1]
+/Rect [192.731 740.952 332.208 751.328]
+/Subtype/Link/A<</Type/Action/S/URI/URI(http://localhost:8000)>>
+>>
+endobj
+6425 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [255.798 649.358 281.201 657.739]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6426 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 586.496 143.126 595.061]
+/A << /S /GoTo /D (_server_8cpp_source_l00009) >>
+>>
+endobj
+6427 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 584.792 212.488 595.267]
+/A << /S /GoTo /D (_server_8cpp_source) >>
+>>
+endobj
+6428 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 428.164 148.111 436.729]
+/A << /S /GoTo /D (_server_8cpp_source_l00015) >>
+>>
+endobj
+6429 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 426.46 217.473 436.935]
+/A << /S /GoTo /D (_server_8cpp_source) >>
+>>
+endobj
+6430 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 258.491 254.694 265.05]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+6431 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 70.174 148.111 78.739]
+/A << /S /GoTo /D (_server_8cpp_source_l00039) >>
+>>
+endobj
+6432 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 68.471 217.473 78.945]
+/A << /S /GoTo /D (_server_8cpp_source) >>
+>>
+endobj
+6436 0 obj
+<<
+/D [6434 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6437 0 obj
+<<
+/D [6434 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6418 0 obj
+<<
+/D [6434 0 R /XYZ 70.866 574.811 null]
+>>
+endobj
+1506 0 obj
+<<
+/D [6434 0 R /XYZ 70.866 547.615 null]
+>>
+endobj
+1510 0 obj
+<<
+/D [6434 0 R /XYZ 70.866 412.216 null]
+>>
+endobj
+6421 0 obj
+<<
+/D [6434 0 R /XYZ 70.866 367.391 null]
+>>
+endobj
+1514 0 obj
+<<
+/D [6434 0 R /XYZ 70.866 340.196 null]
+>>
+endobj
+6438 0 obj
+<<
+/D [6434 0 R /XYZ 70.866 184.974 null]
+>>
+endobj
+6433 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F25 2380 0 R /F81 3708 0 R /F95 3709 0 R /F79 3573 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6456 0 obj
+<<
+/Length 1202      
+/Filter /FlateDecode
+>>
+stream
+x��W�n�F}�W,���{')-�&q�k�O����R�CRR����Q����%@���ٙsf�-A�_瓳�"F1N��h�@��R(JV�stP&›�{��q��E��[�v]8eQ�n�ͺ���/�Z�O>M(l%��q�c&P��\��ó��`��hgv���K�MT�j���<�'sNƘ1�1��d!#A�t�"	�����(�ID�� h��D�f�M��S/�>�_�fWE�-��,�0���QmJE�uYWe]�X��s,0gv>�u[�6`�����
��ې�@�׋�VwS�Y�.륽˚�.2�.�2���|U�L�kj/mL4�݃�U�MJ��ֿ�-���d�����h�j�.]f/�'���H�{n�V��}_�V \�B���@l�<�B�!�1�cBA�
+�/��1�{�w
+��s ���@[�}������_t�2�H�)�8��t}>�u}�cn�%�5aK_Ko�~u�%�qB����#~M�`8�F,���n�0��+Kܶ��ֶl6]ug��bYv}Oh����ٴYq�a2Xl���C�ܟ��_�����wu�.���e�$�3@o�\#?��(H���w+�镢����k���;��j�4��7�V
���M�IM(}9�֢��rL!��"d"H�t]@�BJ�nD�S��S��|T�{a�����	�@'_� �)5�A�FV�S:14U�8QX0�=���dO5ݧ4%�,�90����͎�D9h���^����
�{����Y��}�|��}�M��rn���@DN]�t�P���gLG5�%��Wg���* 8���%�F��'�N�QAyu��P��l�Ve掿�B�G�tV���6ύ$�V�.�������CI��k�oS��6n[��xY���1$@�b�g‘�4�ɳ���cFz,��/0��oҠ��ۓ-ڍ"r
q���>��~�e��7ƈ|ˢֵXKӳp�6�uZЪ2�p7�>���l�4��(�6�f�����aĤ�F�fg�o��g�
�WL2�na=�&F�c'kO���\(��a~���ջ�?a�)���M�}�]���s�9���T1�q�O�x�����r�L��&wUZ�~'�*J���	�JD�7X��OO�n��6~)1��Ѣ��(US�R`	�
+��r�9�|�s���w��۴����WPԇ>����
+endstream
+endobj
+6455 0 obj
+<<
+/Type /Page
+/Contents 6456 0 R
+/Resources 6454 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6439 0 R
+/Annots [ 6444 0 R 6445 0 R 6446 0 R 6447 0 R 6448 0 R 6449 0 R 6450 0 R 6451 0 R 6452 0 R ]
+>>
+endobj
+6444 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 638.325 148.111 646.89]
+/A << /S /GoTo /D (_server_8h_source_l00091) >>
+>>
+endobj
+6445 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 638.325 208.005 647.096]
+/A << /S /GoTo /D (_server_8h_source) >>
+>>
+endobj
+6446 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 491.948 148.111 500.513]
+/A << /S /GoTo /D (_server_8h_source_l00084) >>
+>>
+endobj
+6447 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 491.948 208.005 500.719]
+/A << /S /GoTo /D (_server_8h_source) >>
+>>
+endobj
+6448 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 246.105 148.111 254.486]
+/A << /S /GoTo /D (_server_8cpp_source_l00044) >>
+>>
+endobj
+6449 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 244.218 217.473 254.693]
+/A << /S /GoTo /D (_server_8cpp_source) >>
+>>
+endobj
+6450 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.627 189.161 171.099 197.932]
+/A << /S /GoTo /D (_server_8h) >>
+>>
+endobj
+6451 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.627 174.547 180.567 185.021]
+/A << /S /GoTo /D (_server_8cpp) >>
+>>
+endobj
+6452 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 92.35 97.775 102.932]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6457 0 obj
+<<
+/D [6455 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6420 0 obj
+<<
+/D [6455 0 R /XYZ 70.866 773.016 null]
+>>
+endobj
+1518 0 obj
+<<
+/D [6455 0 R /XYZ 70.866 745.821 null]
+>>
+endobj
+6419 0 obj
+<<
+/D [6455 0 R /XYZ 70.866 626.64 null]
+>>
+endobj
+1522 0 obj
+<<
+/D [6455 0 R /XYZ 70.866 599.444 null]
+>>
+endobj
+6422 0 obj
+<<
+/D [6455 0 R /XYZ 70.866 480.263 null]
+>>
+endobj
+1526 0 obj
+<<
+/D [6455 0 R /XYZ 70.866 453.067 null]
+>>
+endobj
+6458 0 obj
+<<
+/D [6455 0 R /XYZ 70.866 333.712 null]
+>>
+endobj
+3221 0 obj
+<<
+/D [6455 0 R /XYZ 70.866 167.733 null]
+>>
+endobj
+1530 0 obj
+<<
+/D [6455 0 R /XYZ 70.866 159.168 null]
+>>
+endobj
+6454 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F95 3709 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6474 0 obj
+<<
+/Length 1270      
+/Filter /FlateDecode
+>>
+stream
+xڽX]o�6}���� 3�o����5qЮݼ&(0�E�ȴ#̖=K���]��,Y��&ޞ,H�<��K�`��j����l�� FZJ���Q,e�4E�7��6�eј�8�~{����u���ֽy�L��=~4���lM��h�(':$TD_nލ.oF���il�1�)����f��]��q�W�rp��������>�`���m�%A��|���.-�Թ����k�'�<-�u^T���g�Z� �Xc��S������-.�����j܎����S{-|��?c��rv~^��
�a�/"�ӥɓ��5��N���.b��u�RD5�iΝ�o �
+Y���\o#�C4�A�H��Gz6�"��C�3���������R\�k�3��HāE�\���O��ߟkur_#*BS�WAR��׈
+UG�Ñ4�q�>������9��1PՂ����=�H�Ns&�� ��a����C�e8��R
+7F�.;,�S���ci��r�
+i3�f����g峿ޘ��yQ,�\�����ΩZ��fU
+\fm���U��1���{��)��7�ryv2��A2�`Ox}ԓ�5����d�4�q0�8��:��:�C�)���~�n�M��� ]�����y�����n�k���lf܋�	�2��"�L^��Y^��<b8LRӅ*����ޛ���$�nIe))=��T0�������[kV8����[K�:k��V�`����^�tyVe�9�C[f�����c=o+�0���
+X��=x�	�3���ә
+������t��L�,�L^`C��h�h��\n����QH+L�$�{\kTۏl�,Fu"0)q%�0���^!|��:=�hѲ!b��[�.��3����(P{��"<��> ���nY�꼭�%�d�p�|0�e���;��0����W5�|V��&���VnRS ec��L����5��2���~$U��ma��L#��dy�EEH�H�
�T۱thn�о4���|Z;a���/=��9" ��ځ'��(NIU��|dy��@0ALЗ�T�qB!�����qb�R��Y�3ʦ�m|q |����'$5�Š���� �>����ױ�!����`!��*CN�2�f��tZ��VX�B/ԏ����P��V�*߿j
��.-��!q�b��%%U��HZ����o/E��Q�Pp�g�@!zw��[S��\�£{.?M�?_�~7ߚ���L&���a� ͠6�K��?���	u#y���@R���ʀW�|f�Ѳ�kl���qa'�R]�7W�
+endstream
+endobj
+6473 0 obj
+<<
+/Type /Page
+/Contents 6474 0 R
+/Resources 6472 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6439 0 R
+/Annots [ 6453 0 R 6462 0 R 6463 0 R 6464 0 R 6465 0 R 6466 0 R 6467 0 R 6468 0 R 6469 0 R 6470 0 R 6471 0 R ]
+>>
+endobj
+6453 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 733.249 122.681 743.832]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_aeb36266abd34f99a53482713be5b7794) >>
+>>
+endobj
+6462 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 705.354 130.43 715.936]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_ae312cab4c8479a9a4a56f90257ab8e7d) >>
+>>
+endobj
+6463 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 677.459 233.642 687.834]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_a0315eec3c80b3238ee64e26115de9f0f) >>
+>>
+endobj
+6464 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 649.671 202.821 659.939]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_a8fbad2b5e76a6333dfa7fd537a5600e4) >>
+>>
+endobj
+6465 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 623.56 160.689 630.443]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_a6b83d99b55d005f7ae32a3e18a9d5925) >>
+>>
+endobj
+6466 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 509.807 148.111 518.371]
+/A << /S /GoTo /D (_signer_8h_source_l00018) >>
+>>
+endobj
+6467 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 507.996 207.467 518.578]
+/A << /S /GoTo /D (_signer_8h_source) >>
+>>
+endobj
+6468 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 238.281 148.111 246.662]
+/A << /S /GoTo /D (_signer_8cpp_source_l00011) >>
+>>
+endobj
+6469 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 236.286 216.935 246.869]
+/A << /S /GoTo /D (_signer_8cpp_source) >>
+>>
+endobj
+6470 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 91.721 148.111 100.286]
+/A << /S /GoTo /D (_signer_8cpp_source_l00036) >>
+>>
+endobj
+6471 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 89.91 216.935 100.492]
+/A << /S /GoTo /D (_signer_8cpp_source) >>
+>>
+endobj
+6475 0 obj
+<<
+/D [6473 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6476 0 obj
+<<
+/D [6473 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+1534 0 obj
+<<
+/D [6473 0 R /XYZ 70.866 594.382 null]
+>>
+endobj
+1538 0 obj
+<<
+/D [6473 0 R /XYZ 70.866 493.751 null]
+>>
+endobj
+6477 0 obj
+<<
+/D [6473 0 R /XYZ 70.866 449.034 null]
+>>
+endobj
+1542 0 obj
+<<
+/D [6473 0 R /XYZ 70.866 421.839 null]
+>>
+endobj
+6478 0 obj
+<<
+/D [6473 0 R /XYZ 70.866 314.438 null]
+>>
+endobj
+6479 0 obj
+<<
+/D [6473 0 R /XYZ 70.866 226.412 null]
+>>
+endobj
+1546 0 obj
+<<
+/D [6473 0 R /XYZ 70.866 199.217 null]
+>>
+endobj
+6472 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F25 2380 0 R /F22 2379 0 R /F54 2381 0 R /F95 3709 0 R /F67 2922 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6495 0 obj
+<<
+/Length 1113      
+/Filter /FlateDecode
+>>
+stream
+x��W�n�6}�W�Qj�wIFQ��6�]lok�/٠�%�V�\Iv����"�R�bSl�>$�GÙÙ�C
+����oW�/ox$(���Mc�H�)E��"�	����m�$AI�`�5Wg]�i������S������w��j�nj�+�)f���� ����qP���F,M���`Hp����_fx��`�T^Px@� ���c��vk�:�7�[l��Nj��yLPJ�eTD|\���,0�7Y� Fi���̠N�O��b������h.a���폋Ų�j�.&�����q���]o��8��t]iu�R26�K9��e��oܳU=Ԃ��R��1�"Tޥ��Z9H�w��8�};;��cD1Ă�T(D�C�0�����(�1rF��{�Zݍ���dɔ"�ɜ$s_��sa�r����8a.�+eʣ�si��=M[<f��v�i��v�Y�D���DW�����	@XNb9�O),��hc �)�����#���t��O`4�$F_��l�N�6����c���%|ۏMU�0z��O�>"\0xӪ�DiN}�94��;g�-J���1tÞ�[��᪬:7�=iX�z�9�>n�^��
i>:�C� c;ɝ7m���YG@�j
��aS����/3�r��X7Y�
+[9���n}׎�vlw��{5lt�$B�v���P�1�
j��0�eڸ��g�Ǖ��3>�h2���\�Q|ܦq��.��b���p�9xX���5���VW���
+��U�1EhL/�Y
+���O$�0�6f���g��+�#�gT�|���3��{��y�ݴ�qz�,���O������0�m��fr�RfׂJ�R�S�~.��c,}&�D��	\S�����T<���ڪAG���۹�c��,��'#�^���d'^����ᰶ2u�����1�hmF��L�����~�Mҙ:e����/�	�u�gP�F���r�x���<,�á���Z8c_f�3��S����vc�ݫr�h�q�z�w��������Y݁c��T�ќ�4t�i�F����T��/_C���	�j2���&I{M�r�M�D��}M�0#/��>"$���\p$��\ )}'o�e��$����5r*=��D8P�
+endstream
+endobj
+6494 0 obj
+<<
+/Type /Page
+/Contents 6495 0 R
+/Resources 6493 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6439 0 R
+/Annots [ 6488 0 R 6489 0 R 6490 0 R 6491 0 R 6492 0 R ]
+>>
+endobj
+6488 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 546.403 148.111 554.968]
+/A << /S /GoTo /D (_signer_8h_source_l00086) >>
+>>
+endobj
+6489 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 544.592 207.467 555.174]
+/A << /S /GoTo /D (_signer_8h_source) >>
+>>
+endobj
+6490 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 304.094 148.111 312.659]
+/A << /S /GoTo /D (_signer_8cpp_source_l00061) >>
+>>
+endobj
+6491 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 302.283 216.935 312.865]
+/A << /S /GoTo /D (_signer_8cpp_source) >>
+>>
+endobj
+6492 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [92.299 108.304 123.19 116.788]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+6496 0 obj
+<<
+/D [6494 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1550 0 obj
+<<
+/D [6494 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6482 0 obj
+<<
+/D [6494 0 R /XYZ 70.866 741.162 null]
+>>
+endobj
+1554 0 obj
+<<
+/D [6494 0 R /XYZ 70.866 713.966 null]
+>>
+endobj
+6481 0 obj
+<<
+/D [6494 0 R /XYZ 70.866 534.718 null]
+>>
+endobj
+1558 0 obj
+<<
+/D [6494 0 R /XYZ 70.866 507.522 null]
+>>
+endobj
+6480 0 obj
+<<
+/D [6494 0 R /XYZ 70.866 292.409 null]
+>>
+endobj
+1562 0 obj
+<<
+/D [6494 0 R /XYZ 70.866 265.213 null]
+>>
+endobj
+6493 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F67 2922 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6528 0 obj
+<<
+/Length 1252      
+/Filter /FlateDecode
+>>
+stream
+x��XYo�H~��@�,�;}�`�!M��2��f�S2�n�H�������L��q�}�p������[s[�O���9w-y�ì�̒��cI�"�X��ug����J׾���j<��KU=�F~�U�7j6$�V��5�6�lq�"�`��B�ԯL���i��.r)���������g#��S)���`Hp��u;�k�MQ�o����Ȟx�\n�Rn���T�J���Y�Y���C0���C���4YA��P=���������- ����Ԓ�!�d�Ho�`������l#K$��6:
�*�{3�*5�Z����y���\��͓ꚅ��g��y~=W�~u1Ζ��4Y�~\�jȰ�=L
+�w�g�0��"�0���cp�qu��@�ܭ��
+�_Ǟ}�xq�G���i�n����#��D\����})�A��"� �}H���<I��dV]��e�59��BƑtY��L�cL�LU��$<
+ce��h�s�����+%8iEa�ֶ���
:`#�m�Vm6*���7����,L��$(�*����3]�5�"4�k�~р6W�6𷟫i����N�4��ק����q�g����Hz�x�)]��p�,
Nn//����&<�ނ���<qT[�jH�v6ʁ�-"ti��H�D��f&��54{��4D�r�c���w�x��J���3�5�SQ1U� ��� L3�5���UI���~���G3�����c$�W��<�8�v�aa��x��EaP��E-���søY's��`��KEsvue�D>���@�����Ng��G
�X����p
+���'������@Ŏ'
RO"G������VjJ��&��Q�L�����c=u�\z`tǡ�f?
+���S�ԩF�JGQ���ڷGK>0ZS+@ �rY�(?*�{��;Z��H<&I��ǚJ�,���x��N<
+"�:b��0G7������Pl�!��p
�c�+Bl��"��6��A���L}`=AID��f�&�"��J��}zi��W0���R_;�;�L密[bV�و�Zg�}\��A�V{\�XO΍���A�q�X�@ўذ^pRK����A,�>��E.i.^?c��d�m3z>`����t�^T���f�([άG�ց�y�������tܳ�k'�
�M9�#������Q�<x��
�My8�%N�N��ޣ�C�}ߒ�@��}>v՟�D��7�i��cV��í��j�5�'zs��<�+��⮋��t�V
+endstream
+endobj
+6527 0 obj
+<<
+/Type /Page
+/Contents 6528 0 R
+/Resources 6526 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6439 0 R
+/Annots [ 6499 0 R 6500 0 R 6501 0 R 6502 0 R 6503 0 R 6504 0 R 6505 0 R 6506 0 R 6507 0 R 6508 0 R 6509 0 R 6510 0 R 6511 0 R 6512 0 R 6513 0 R 6514 0 R 6515 0 R ]
+>>
+endobj
+6499 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 636.58 148.111 644.961]
+/A << /S /GoTo /D (_signer_8cpp_source_l00041) >>
+>>
+endobj
+6500 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 634.585 216.935 645.167]
+/A << /S /GoTo /D (_signer_8cpp_source) >>
+>>
+endobj
+6501 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.636 576.974 168.57 587.556]
+/A << /S /GoTo /D (_signer_8h) >>
+>>
+endobj
+6502 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.636 564.022 178.039 574.605]
+/A << /S /GoTo /D (_signer_8cpp) >>
+>>
+endobj
+6503 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 483.017 92.296 491.788]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+6504 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [92.796 483.098 114.712 491.582]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6505 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.208 391.323 187.103 400.094]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a8b1d27ee800ce3dddeb38356c5edb86d) >>
+>>
+endobj
+6506 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.713 363.508 135.629 371.992]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a60eb480cb5dca0fbcd090b2e85e7ebaf) >>
+>>
+endobj
+6507 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.713 335.613 135.629 344.097]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a7e51f091b04752599a4086ea3b0856f4) >>
+>>
+endobj
+6508 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.713 307.717 135.629 316.201]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_ac84bbf33a7816b4502795d68a5e62486) >>
+>>
+endobj
+6509 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.52 292.784 150.443 300.618]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6510 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.713 279.822 143.377 288.306]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5fe6292ab3b05d9107c6884dfbb5da16) >>
+>>
+endobj
+6511 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 250.954 141.528 260.411]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) >>
+>>
+endobj
+6512 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 223.058 146.289 232.515]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a78fdd7cac3e6ce1141080c35efd5f95f) >>
+>>
+endobj
+6513 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [234.142 196.136 269.014 204.62]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_abf817530c975ea5bfce48be781a55993) >>
+>>
+endobj
+6514 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [236.299 113.345 271.547 122.497]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_ae06629b296dcd9b01b6019101a020208) >>
+>>
+endobj
+6515 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [138.097 99.384 158.02 107.219]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6529 0 obj
+<<
+/D [6527 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6530 0 obj
+<<
+/D [6527 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3222 0 obj
+<<
+/D [6527 0 R /XYZ 70.866 557.049 null]
+>>
+endobj
+1566 0 obj
+<<
+/D [6527 0 R /XYZ 70.866 548.606 null]
+>>
+endobj
+6531 0 obj
+<<
+/D [6527 0 R /XYZ 70.866 431.271 null]
+>>
+endobj
+6532 0 obj
+<<
+/D [6527 0 R /XYZ 70.866 154.185 null]
+>>
+endobj
+6526 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F22 2379 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6555 0 obj
+<<
+/Length 1219      
+/Filter /FlateDecode
+>>
+stream
+x��XKo�F��W� �p���
+i�� ����n���ZfA��H%q}g�%%R��(Fs����y~3ߌZ"�ތ~��.�"F16Jq4{@��X)�
Ê����������XsxX��2K�2����I1߮l^%UZ�Nv��l�׈�(A���8f�W��;��w�`nb���\!!9�™�����I	�Ҩ}G�)�z:ݤ6_���Ӌ)�{�Q�u�Q��Ҽ�eL����HJL�����"�.������u��nBJ��*6N�b�2`�5���l�K#�sKc-L+���g�H2/�:��,]�c���&��R��
���.��D��.�HI�$E���
+lˆ������A�(1Mj��$5z���-������S����+p�a#�^�������0%S�Q$&�7�1�9@�BH0�U�f�{5��|��ۉ6(A�i(e��zm�$;/���}9	�$<����۫cz��Q��֙uӸ��z����۲L �`����sa���Ԁu�\x{rbo	ayZ�~�x�Y����Rv���!��&,�_�7�~h
+���0��t��l�h
��Z��|�g��bCվ�G�a׬m�\L��Mh
V�)�X�^�FJ�=�ȋ50���J?;���0R`���~���ZWӳd���	!f_P_�m��:�v9�f8�)XH�y]7?u>?ڍ�A��x7#�k��z�1�fّ`8�<����'K|�E�m��;�
��Q
��q�%�)�3�b8����#�WU�ǴBv�׀P�+]fa0�#
+
�>)��x�K��E�Y�*���OI��G|a1V���~�@6���W�>�=H��]��i۞y��~�|�^r΍���	Ac��Bo��v�����`^9�ūS��]Kh�5�i��#e֒�u�enk�,�y�h�/l�;{�B�-�����b;>���7�v��w>X8\��7��(=�S�y���	P��l����c�#3eN�/�Q���~ya�ԑ��<��t�4i���|�a&�TjV��0=r�QB1��\��wyhMf�F?�Lm�lsX�晶�W�����׳�\�����a��g�~{@��C�Y��ũP�}���q��V�"X�`KN�[JX��%��[�Sl�V
+	R�͖���E�~�X�/ו�uRjj�;�;O;)1��[>�i?�Q���pR�;��X)��76���j��}ȺcdR���tE	l>����e|
+endstream
+endobj
+6554 0 obj
+<<
+/Type /Page
+/Contents 6555 0 R
+/Resources 6553 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6439 0 R
+/Annots [ 6516 0 R 6517 0 R 6518 0 R 6519 0 R 6520 0 R 6521 0 R 6522 0 R 6523 0 R 6524 0 R 6525 0 R 6543 0 R 6544 0 R 6545 0 R 6546 0 R 6547 0 R 6548 0 R ]
+>>
+endobj
+6516 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.152 733.357 181.43 743.32]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_abe58e5fa4fc2cb986785a751fa6807aa) >>
+>>
+endobj
+6517 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [208.837 735.141 230.753 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6518 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [273.618 735.141 295.534 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6519 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.152 705.462 181.43 715.425]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a155e5f5e05694a584161bcc064d57eda) >>
+>>
+endobj
+6520 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [208.837 707.246 230.753 715.73]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6521 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [273.618 707.246 295.534 715.73]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6522 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [97.279 618.394 119.195 626.878]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6523 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.3 618.313 177.726 627.084]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+6524 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 593.677 148.111 602.058]
+/A << /S /GoTo /D (_time_8h_source_l00012) >>
+>>
+endobj
+6525 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 593.574 201.791 602.058]
+/A << /S /GoTo /D (_time_8h_source) >>
+>>
+endobj
+6543 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.524 422.93 194.439 431.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6544 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 398.213 148.111 406.594]
+/A << /S /GoTo /D (_time_8cpp_source_l00027) >>
+>>
+endobj
+6545 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 396.325 211.26 406.594]
+/A << /S /GoTo /D (_time_8cpp_source) >>
+>>
+endobj
+6546 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.824 264.598 144.74 273.082]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6547 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 159.412 148.111 167.977]
+/A << /S /GoTo /D (_time_8cpp_source_l00031) >>
+>>
+endobj
+6548 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 157.709 211.26 167.977]
+/A << /S /GoTo /D (_time_8cpp_source) >>
+>>
+endobj
+6556 0 obj
+<<
+/D [6554 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6557 0 obj
+<<
+/D [6554 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+1570 0 obj
+<<
+/D [6554 0 R /XYZ 70.866 676.462 null]
+>>
+endobj
+1574 0 obj
+<<
+/D [6554 0 R /XYZ 70.866 579.329 null]
+>>
+endobj
+6535 0 obj
+<<
+/D [6554 0 R /XYZ 70.866 532.72 null]
+>>
+endobj
+1578 0 obj
+<<
+/D [6554 0 R /XYZ 70.866 505.525 null]
+>>
+endobj
+6536 0 obj
+<<
+/D [6554 0 R /XYZ 70.866 386.344 null]
+>>
+endobj
+1582 0 obj
+<<
+/D [6554 0 R /XYZ 70.866 359.148 null]
+>>
+endobj
+6559 0 obj
+<<
+/D [6554 0 R /XYZ 70.866 226.927 null]
+>>
+endobj
+6537 0 obj
+<<
+/D [6554 0 R /XYZ 70.866 153.826 null]
+>>
+endobj
+1586 0 obj
+<<
+/D [6554 0 R /XYZ 70.866 127.298 null]
+>>
+endobj
+6553 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R /F109 6558 0 R /F99 3885 0 R /F54 2381 0 R /F95 3709 0 R /F67 2922 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6578 0 obj
+<<
+/Length 1051      
+/Filter /FlateDecode
+>>
+stream
+xڽWMs�6��W�HΔ�	�ҙƵ'�6m�lO��!��t�a'���H�V�&Ӄ� �]�}��Z��Z��i�(��j�b��R(NV��M�1a�b|���o��*���6O��
��&�$0�)�&�[�G�k,�;
+e��^��Z���0K�i�5h�[������#�y��K�r���X
+�}\�� �p>sE1��,�
+#*�v�x����H��=��Z���swL�™����g�nĦ*w#�7�R�<a�zG�J�}�˲n�˧�ξ|j�ƍ7rp*8��;qq!��6��϶6�6�s�{���32+��K�l��S1��(_n�$�3��A�>�؅3i#cW��6D�L�D���n�!AZ�;Ә*�4�'������Ԡ`B�x��ư4��PXJv
+V3��G�9���1p�`ʵ��&(�����f1�Ј�X�dj�9d2H��̘��%��o�����
+�$T�ę׊�)yk��? ��yL
@���^�c��Z*��.4�Vd�JN���YaNk�P�ʵq�-nn�A�@.��������A� (RDb�30�­��ߗЀ�xK8�A�q,�~�ue�MPV1NbB��$��E hZz��w������{d�9�ӑ`��Vc'�HXW�ќXF�郀�>���� ms��3jHeJ��4[h�S�/|5��w@��
�<��{�MCF��l;�.;6�y��d���!%8���l�Gl�-Q����{t��m1�t�ݙ�I��Y���'T�Q1��Y���W�6�O��Ly==wd3�B̈/6%p!1tD
+>�����HYϦn���V�W*n��f�n�gpijkӴ662(<w^��2j��w��c���Dz�`�I�Nv}���3Ŵ��σ��N	:�|[x����~�[dr�
+s�d۳�:�O_�}86�Z��i����I�1l��
+_����ڣ;�q~p���e �x�1~���C�_�>v��B�Ě�p$�	�vV6N��Ą�s�S������ue!�R��W�0U��_��_{����룭���.��#�
+endstream
+endobj
+6577 0 obj
+<<
+/Type /Page
+/Contents 6578 0 R
+/Resources 6576 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6581 0 R
+/Annots [ 6549 0 R 6552 0 R 6566 0 R 6567 0 R 6568 0 R 6569 0 R 6570 0 R 6571 0 R 6572 0 R ]
+>>
+endobj
+6549 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.824 759.962 144.74 768.446]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6552 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.091 719.039 162.007 727.523]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6566 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 672.22 148.111 680.785]
+/A << /S /GoTo /D (_time_8cpp_source_l00046) >>
+>>
+endobj
+6567 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 670.516 211.26 680.785]
+/A << /S /GoTo /D (_time_8cpp_source) >>
+>>
+endobj
+6568 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 525.843 148.111 534.408]
+/A << /S /GoTo /D (_time_8cpp_source_l00053) >>
+>>
+endobj
+6569 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 524.14 211.26 534.408]
+/A << /S /GoTo /D (_time_8cpp_source) >>
+>>
+endobj
+6570 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 235.402 106.248 243.886]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+6571 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 152.218 148.111 160.783]
+/A << /S /GoTo /D (_time_8h_source_l00092) >>
+>>
+endobj
+6572 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 152.299 201.791 160.783]
+/A << /S /GoTo /D (_time_8h_source) >>
+>>
+endobj
+6579 0 obj
+<<
+/D [6577 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6580 0 obj
+<<
+/D [6577 0 R /XYZ 70.866 747.218 null]
+>>
+endobj
+6538 0 obj
+<<
+/D [6577 0 R /XYZ 70.866 660.535 null]
+>>
+endobj
+1590 0 obj
+<<
+/D [6577 0 R /XYZ 70.866 633.339 null]
+>>
+endobj
+1594 0 obj
+<<
+/D [6577 0 R /XYZ 70.866 509.896 null]
+>>
+endobj
+6539 0 obj
+<<
+/D [6577 0 R /XYZ 70.866 465.071 null]
+>>
+endobj
+1598 0 obj
+<<
+/D [6577 0 R /XYZ 70.866 437.875 null]
+>>
+endobj
+6534 0 obj
+<<
+/D [6577 0 R /XYZ 70.866 140.533 null]
+>>
+endobj
+6576 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6590 0 obj
+<<
+/Length 1024      
+/Filter /FlateDecode
+>>
+stream
+x��WKo�6��W�(�oIƶ��m�.
+M|j,�6c�)W�6���Eʖ����=$��o�f�&h�����O^]��8S���#JN�BIư�h�Dw�d�0���8M8(v�ߖy�Lc��ѻj�n���-*�d'��'O(�D��i�S&�b3�{ h	��#�y���Nr���X
+g�D��?'�Y?�'�;�b&0�lSBHT?.8��=�����Օ(�YB�!(�������[f5� �����ټ���,����	��D1�8���|��%������4ֻ�� ��G��S�n�mkȬ��Y��
�n��z�;�|�rU^r��j��u�?�N�z��]k/d!�)��On+����4�\D�0�d�،��$)U�/��7r��T���2Es0�2EB���q�Ɠ�s�{��sx�6z�
+�,O�z�us=Aw�wwXA“��3��r
�R�� pip�9V����ؘ�������A��D�A����+����0S�έ_����q�Q�����au��3�����nO&pTz�)dM�����kt]�e��m#����I/,�N����vD����	8 Wi/њ�XG�����)P�p&�^�s�{�a;��ԣ��И���;›��SF���	��=���z��W�Qy�l�y�����l]���۪�L��p�4�f[(������NsP��nx�eY9����^�zv�:��0���,��19湔*jc��`G�Oi�޹�i�m׍2�1�<|�����2�}�e�R�{�u՞Ɉ�ь��C�V���/�7
+g�|wZ8����ꔅ��#�36Ìf?4AB7�=WX���Da��HaG#E�G���IU�_?P|�_�:,��t�,�XU�7�Ɂ�e�	���b�V�pN1L�4A�OJT�Ɲ�Ù���	������Uk�����l�׍��>��5%�msf�,s�����g��q�8uݗN�����f�.\!D+`�J��t��zn���������Z�?���|�����y%�
+endstream
+endobj
+6589 0 obj
+<<
+/Type /Page
+/Contents 6590 0 R
+/Resources 6588 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6581 0 R
+/Annots [ 6573 0 R 6574 0 R 6575 0 R 6585 0 R 6586 0 R 6587 0 R ]
+>>
+endobj
+6573 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.426 679.296 224.852 688.067]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+6574 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 594.408 143.126 602.973]
+/A << /S /GoTo /D (_time_8cpp_source_l00006) >>
+>>
+endobj
+6575 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 592.705 206.275 602.973]
+/A << /S /GoTo /D (_time_8cpp_source) >>
+>>
+endobj
+6585 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 216.509 148.111 225.073]
+/A << /S /GoTo /D (_time_8cpp_source_l00062) >>
+>>
+endobj
+6586 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 214.805 211.26 225.073]
+/A << /S /GoTo /D (_time_8cpp_source) >>
+>>
+endobj
+6587 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 83.078 106.248 91.562]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+6591 0 obj
+<<
+/D [6589 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1602 0 obj
+<<
+/D [6589 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6541 0 obj
+<<
+/D [6589 0 R /XYZ 70.866 582.723 null]
+>>
+endobj
+1606 0 obj
+<<
+/D [6589 0 R /XYZ 70.866 555.527 null]
+>>
+endobj
+6540 0 obj
+<<
+/D [6589 0 R /XYZ 70.866 204.823 null]
+>>
+endobj
+1610 0 obj
+<<
+/D [6589 0 R /XYZ 70.866 177.628 null]
+>>
+endobj
+6588 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F67 2922 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6607 0 obj
+<<
+/Length 1482      
+/Filter /FlateDecode
+>>
+stream
+xڽXM��6��W�T�@̒?��I�A��n��&�2m��%ǒ�ɿ�P�lI����`����73�oH�`�����t��-S�BZ�(����"��"A��,x�l<�R���x{ws3MW�ݿ��t�{3���3�8}�H!�������ǣߧ�/#Oq@vޔB�� Y�>�`��0��
+�ꙫ��q�8ޏ�aF�ۡ��x��G����1ea��W�2�1!aY#kL"�\O $L L���A<��T��)0�A6�7Q���@CJ��)Q�4�,B2�.#i~X�	�8�֥�ZU X"Nu���2f�e�#������o�!��_Ef��q����3��Q�8D�@B]���i�t��üx[Bs$�piym 4O���+w����Ub�l���Q�P� w��\�w������e�R�샞T�`"R�%SDb<$��*������1���kA"-1�6"PΝ�Ǣ(���uQ��>U��U-wL����ƙrX���0Ƀ	!H76��0Q7�XxB��ti��a�f�X�x��ݛj��L�0���yX-�$�
�n�n����:��Q\�ߋ�]aB�F��~�2�`ݼY�K��l���8�a�q7_�i2�8���IbJE���j���[�Ո�	���ܖi�p���iِ�qc�$��;�1Pf1N�q��ϫ��o����r]䳝��W`B�&D�q���p�͓�I!���{x�����Q��)�t��HǶ��}������+ED�)�n�j���Q��{N�B��T���`9�� }�!�!�����?L����@z��O������&5����|�lc2���S��E��tX��Ik�����ĖN����KQʺ/���ˀi��v���(��]1{}w��	w�F]R�L(�`�Pt����=���M�@��b����ZSO�6/���@���y1�	?��A`� b�����yͻA�'�sG�onj�N�싎�3�d���=A��d��e���^}��.˜͵�n:J�3kV�^�AM����#GH�io�۝o�	�{�W�eg}0��;Ϋ�@�DdH��1IUZ>ȧe�,} 噸�%��Jǁ���b�����eu�N(>�Q��|7����v�kD�������Ћ�7�u��\�U��B���SZ�V�պ^��[��"7��:�/f7;���G��n
+��q��O�G
+!L�էY�4�Z�<?X#Ǐ �2�βD
+)v�0��l;XB奈�) �l�������;�a�:������^�tf���	W1x�H���D�gU�9&|5�Ԣ!S��v7v��B )h[&��y���r�]ާ�����a5��<m�lA/6q�5B4�D��sH�Z�~�S�ղ�fUsd�*��朼q*I.���|�J�Za2���Gޘ���hO�ߛ����o�v����b��
+endstream
+endobj
+6606 0 obj
+<<
+/Type /Page
+/Contents 6607 0 R
+/Resources 6605 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6581 0 R
+/Annots [ 6594 0 R 6595 0 R 6596 0 R 6597 0 R 6598 0 R 6599 0 R 6600 0 R 6601 0 R 6602 0 R ]
+>>
+endobj
+6594 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 694.576 153.096 703.141]
+/A << /S /GoTo /D (_time_8h_source_l00100) >>
+>>
+endobj
+6595 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 694.657 206.777 703.141]
+/A << /S /GoTo /D (_time_8h_source) >>
+>>
+endobj
+6596 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 464.114 148.111 472.374]
+/A << /S /GoTo /D (_time_8cpp_source_l00057) >>
+>>
+endobj
+6597 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 462.411 211.26 472.679]
+/A << /S /GoTo /D (_time_8cpp_source) >>
+>>
+endobj
+6598 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 306.396 181.158 313.609]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6599 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 294.441 181.158 301.654]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6600 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [200.265 244.821 222.181 253.305]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6601 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [468.462 242.929 496.869 253.305]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6602 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [290.715 220 312.63 228.484]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6608 0 obj
+<<
+/D [6606 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6609 0 obj
+<<
+/D [6606 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6542 0 obj
+<<
+/D [6606 0 R /XYZ 70.866 682.891 null]
+>>
+endobj
+1614 0 obj
+<<
+/D [6606 0 R /XYZ 70.866 655.695 null]
+>>
+endobj
+1618 0 obj
+<<
+/D [6606 0 R /XYZ 70.866 448.166 null]
+>>
+endobj
+6561 0 obj
+<<
+/D [6606 0 R /XYZ 70.866 403.342 null]
+>>
+endobj
+1622 0 obj
+<<
+/D [6606 0 R /XYZ 70.866 376.146 null]
+>>
+endobj
+6610 0 obj
+<<
+/D [6606 0 R /XYZ 70.866 207.257 null]
+>>
+endobj
+6560 0 obj
+<<
+/D [6606 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+6605 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F22 2379 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6619 0 obj
+<<
+/Type /XObject
+/Subtype /Form
+/FormType 1
+/PTEX.FileName (./class_s_o_i_l_1_1_variable.pdf)
+/PTEX.PageNumber 1
+/PTEX.InfoDict 6620 0 R
+/BBox [0 0 500 477]
+/Resources <<
+/ProcSet [ /PDF /Text ]
+/ExtGState <<
+/R7 6621 0 R
+>>/Font << /R8 6622 0 R>>
+>>
+/Length 481
+/Filter /FlateDecode
+>>
+stream
+x����nA���)|	�{�s�H� !A��%J��,()��xҝ݉҃�V�]�k{�oƻB*��\���Y�յ!X����G��v��@ݥ�-dp���a�,�����珟f�����o��k�N��	��7ϻ��3s��]�ߺ�{���m0�٣
V��H"�(���C"�ѩR3����6t��j/a�כs��'a�l���)���V7�[��\��^&�&�ҐUe�T|؆�X��
+%�W)�'Q�ն)����SCy�Y���'�ѲnrCV���	1��O��T�6.JD��VF��2fك8Ƭ#R�>tݗ��ly��f�X>�&���kЪ2�I��7 w(c����b�1��#��Ƒ��AB&K(e����YRsj8N)9�J�׽��VP�X��9��a���|q��ujk�Լ��CfkN
�Y�NcV�Z�<�4f��f� �0
+��^��!��v�:�M��x����(�]�V���t$�
+endstream
+endobj
+6620 0 obj
+<<
+/Producer (MiKTeX GPL Ghostscript 9.25)
+/CreationDate (D:20220227230629+01'00')
+/ModDate (D:20220227230629+01'00')
+/Title (ClassName)
+/Creator (Doxygen)
+/Author ()
+>>
+endobj
+6621 0 obj
+<<
+/Type /ExtGState
+/OPM 1
+>>
+endobj
+6622 0 obj
+<<
+/BaseFont /XIMXHS+Times-Roman
+/FontDescriptor 6623 0 R
+/Type /Font
+/FirstChar 32
+/LastChar 121
+/Widths [ 250 0 0 0 0 0 0 0 0 0 0 0 250 333 0 0 0 500 0 0 0 0 0 0 0 0 278 0 564 0 564 0 0 0 0 0 0 611 556 0 722 333 0 0 611 0 0 722 556 0 667 556 611 0 722 0 0 0 0 0 0 0 0 0 0 444 500 444 0 444 0 500 0 278 0 0 278 778 500 500 0 0 333 389 278 500 0 0 500 500]
+/Encoding /WinAnsiEncoding
+/Subtype /Type1
+>>
+endobj
+6623 0 obj
+<<
+/Type /FontDescriptor
+/FontName /XIMXHS+Times-Roman
+/FontBBox [ 0 -218 775 683]
+/Flags 32
+/Ascent 683
+/CapHeight 676
+/Descent -218
+/ItalicAngle 0
+/StemV 116
+/MissingWidth 250
+/XHeight 460
+/CharSet (/E/F/H/I/L/O/P/R/S/T/V/a/b/c/colon/comma/e/g/greater/hyphen/i/l/less/m/n/o/one/r/s/space/t/u/x/y)
+/FontFile3 6624 0 R
+>>
+endobj
+6624 0 obj
+<<
+/Filter /FlateDecode
+/Subtype /Type1C
+/Length 3660
+>>
+stream
+x��WyTSgڿ1$�mE:C�JD�L���"�.u�1*�)J�����,��$$���	��!	��6A@��Z�b����맶S�t�3�YJ�o潜�|绁�iϙ�5�$'�����{~��>�'4,dF��B��"�8Y�P��&"i��E�
+:$��ͳ[+0A+}	�
�`(���\���᳂�ςg���������;r8.��U�Vo�ɵ
+qN���vÆ
�-���R�#寤.
+E�<_$UE��E"�*W��KD��cS���e�����"�H!��c�q&_ �I��W��2_�p�ϔI��*�L���oU�|�\�)�^i2E�a5_.R䋕J�/V�sB�J��W��bi�D�tO=ϖIU|�BF��)�U�L�Rf*�r���c�FU�P��Sf�,�Z�%�T���M%K�|�H�
+����J�D���R[��yj�X����|�(G�Ȓ����Y�!>����������U��/V)E������?�X����'�QK�������,��=/��T�R����
+5m��`lN�8>A�������ͫ�`�A,[��c/c	�a�U,{
ۆ�`۱5X*�ۅEck�=��/�7�����z���ѰHl�Ö`a�T�a!X!v���6�h٢a���j:�v�=F�}&�Y�|~	n���b?���O��~���Ŧ����Pc�h��Й%k��D5aD%�ˮо�F;�����캚F��}*��g2$W�z��ɵ�&8��S��ٶ��_���"�F]JpQ��:J��Ei���W��It�vs��=U+6%s(����.@������j�t6�\�*�KF�a%
+G�O���h��ߒ��2��U�
+�ql�{Y���<٥�������w�a�>�i4~5k|��Y�R��&���Bb�J��˙�P�8�k�\�GE��@����#��iɨЛF���(��(�`�꺹(���M߲�dV�s&˦�eu�N|.����r��CC�a�E�&?����Nb�S�`k�xgC�qY`�Ų��"���kt^x
Gj�?>�]�Pnvq�
.��ޖ�@�_L���߃r{�:���X����ԏ��%���M�J���ߥ����B_�����}'�1&�r\�|`s����H�^_�}�;x�1����(��-���h��������SvZ�01��J-���c�f�Ɂ�Z���ڂȍq����3�]�,jQB	��	Y�X�n�p;Kۍ��b2��t6��)vX��j�RX����~u���r����~%k�w�n�h_�ܵ^�vn�3_"B��ݨ��?�����l֭�g6V�X��Rk��,JH?R\���,VK�2Xi����Y�> /3���߸8�qi�kt*tf5�d�?��z�3l6����:���m]��#"�(��.�='�#�4���e���\o.�$��ޫ3���D�*��S"��v!A�L\���<�w��.*��r�]�L3����r`
����&3L���e��I����C<�ĩ1�= W��J���l�������n��8#��U��!��N�Z}�!>T�����=c��J
+�l�)�����~�qO�Rp'5�ay�	n�j#�|-�:�~�+�ʗKYg���u��r=�U�Q�_*��w���}�_�5U���w����V;������z�Ļ��F/vKs�2j��,]�.2�a�JL��8s����Nr���<O6
S&����PR^ZX�4�J!�+;5Ϋ�ƙ!�d�4?񆗆��Ci^�5K&�gQr�W(�����o�x�uz�[�h�XR�VHʭ%Zc��!Ӟ�n�q;{m����7�^�l�;��|1�d��3̖�J��������u�y�3ߐ�Z��
+���T�U������nM����h��&v�]���5r�e�bPg��N��6�
+ys�@�0�1���3[�|�PNj71d��Х����0�~d߆�c���}#�w�@N�F��:�A���f%hc ����X7�#����<pPi�q�b9���b5� ���1(��t����u��H=�������Zi�F����Y=n���V�s�N�a�]-�zb��5e��@Js�s�^%��
+���R�١q�juT�)��c�^��^��CQ�jw�����,�����y�N<���Gv�(� ����r��!�)��W����jOBNW�������S��r2x)�e��F�|�A��m��vwP��1_�����!�Ű�lI��q0�GzM;l������cs��?(�dL�G�"����'�w�B���o l�K�G�ٮ��NO�)�!s��S]�0D���b����>�&����dښ��ˇx�����(-G|��g�Äy�[�VA<'�<�:q9�o
$�X㮢�R�N�R���&�4x�5�/�\�w��L��c���mW ��m�h�4��Aň��%A�������އ��;>�����1ð�'s���J1Z���"����fe�-�Y�X�6��(�v:�Q�ͣ/��B�"�ͮ�Η�5�-�Dy#��-p��Љ<"�=�A}M�S]!o�;
+ �u{��[�IO����yRc,��M%g�v$��`6�x���������k����ѱ�5$�."Ѯh���?0�]�P�����*wu<
G�}�� ��=��~���-cX��^��7ƜC[�H��z&ڝ�I���}#0x��K���m�mJ�Yx�47����'ܰ�ס��>���2��7���-�)j��"3P]ħ�ަ���.�<Ǎ�zDgb��|�0Yg5��Fܱ ��������:(
�d6\��Rr���b�����W�(����5)��
7� ׺�j���({�h�L����)Q�_�=8.���Ѓz[��mk����C�v�iWp3{�^GYc�,"��*�L֦
+����T�RU6�!�� ψ��w!�wAɉ�ʶ�Y�2�t���Z��<���'"��q]�4W��$��D<
+��+���)j0:
+�ߓ��m��
+
+K᪘�d.����lMo$5vU�,�N��Ѳ�H~����$|LF��=]8/�WƆo���r�Nx
+�c��e���!'%Q�Y�=W	��&SLPT�R*UkpU��2@Lئm'�L+�̘�bZ�͌f���P\����i�o�ήc�lM�z��7���
+�<l0
+�)�L^ �-i�Wp�1��'�D�]:u�M��%~�����ؤPüR�j�2Xl���/��#�U蛼��ڡ�}��~{-t�<6���4�b��0�Uϝ��2���>���@5�Y���h��� ������]S�����Ⱥ 6}|5�M��v���h@{}����>�2�ܝ<����&S\0�*/���[�M9@��@�9�_k����j�/+;d�ɼ���o7������7J.8t���&�>�C�!F�NM��jr�s�+|��!�#:���=�hr�jk��Ζ�F��lП�ͥ��W�*.՗*�A�=^��V�/���i��J�	ё
�ih9q���(�H;=}]�=}]�<���gaĔ�Ҧ3�.��A��eP�R���3�p ��1��1d��eP^����	G�#KY�_��`:pv
+~�O��U��\��횡:��V�e�۝�"��e'dه�y�Ԅ?���j�jdP�G ��O$�Q������Ž���[C�`�����
+endstream
+endobj
+6653 0 obj
+<<
+/Length 1410      
+/Filter /FlateDecode
+>>
+stream
+xڽX�o�6�_!`� 5�o��և�k�"����K�U�m
��J2���;�ԧ�fI�=ɦ�wǻ���(�\-�X/.��(�����m�0����H�`�	�B�����m�$A�b��Y~��U�\Q����x0y�i�[�ş�ŗQ�Ng��� 9,�>�`��1��!��!���,x�x����	>���Q�8����Ž)�(�Co(
4즲٭�b�=�K'1֏׭��N@pX�
++���V�o��77˕۟�"s��^(=PD��x12"��T�E��#��NJJı
+V� -�J�����ؗ;��۫Ep�(X��%\t�����h��EDv���\$���C�~�7G��V�D,�
+�ej��'���A�W���(�Xr����f�EX�f�}��dq�$8t o��{�{32
p'r�ޑ�	ȜN��3�8|�sc6���]2�U��$EY����_z��LW���������X�J��*�^�С�r�3����o{��~�o��)�;�R�(���I�j	!��,|ا�ޙI+g�;2��M��
w���^�m���Cl����8ߝz
+;��ˁ�.�x��[S���w����h|:�P{\���}M�@�̹ztN����ӂ����E<�
+U��Vf��8��MV���ڣ���l��2���*�pp1�Ϫ�t]���;fً�ڤb��,O39H����aW0_��;���4�!L}W�{Iy�����!$�FǙ�zBk��w����tC�窰�Q"���= 
'���T4#W� �`�RP���r����5x��sM� �Š�Mޘ��>n�s�n<�b#�H�aN<ǧ�d������|6�)e��18‚=�M$�
��|6�gr6�C���n��t>٩�d�
+.����*�~1�@M�FM�5�-�H1�9����I�)E��W$B��ݯ��}�M�w���$ľ_Zk��M��q�"����q�S~R�ۆ���ۅ[S;��
�c8eq�ty�4�
+��!�wn�#�43��x�	�#e)�	�GJ�t�!êL.��u}sqvv��e��~6�
+��'ZJ��G*��5B�p���C��$���ڹ���n�i���7�,F�g˴�p� �#�u���9�Y/���~��o��و�|\��V���`u��rk���4yr�j�0|
7B��v�|X*W�g�L^��߄b���/i�d���M�n�
+��8�S��ӹM�2��6��P}�VX$�Q6������ױ
���4�ِ��;��o�3�WA�|r�1�v�I%B�ai��
+1�)��l��Z��)��!ZCTt�/D�R�@��y�����.���;��C�*�{C�d�I�@:%������w�����('��K��+�`���d�[�����뷝m�ɧt�_�3D
+endstream
+endobj
+6652 0 obj
+<<
+/Type /Page
+/Contents 6653 0 R
+/Resources 6651 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6581 0 R
+/Annots [ 6603 0 R 6604 0 R 6613 0 R 6614 0 R 6615 0 R 6616 0 R 6617 0 R 6618 0 R ]
+>>
+endobj
+6603 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 716.132 181.158 723.344]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6604 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 704.176 181.158 711.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6613 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [205.477 654.556 227.393 663.04]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6614 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [471.888 652.664 500.295 663.04]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6615 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [290.715 629.736 312.63 638.22]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+6616 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 436.447 161.406 444.931]
+/A << /S /GoTo /D (_time_8h) >>
+>>
+endobj
+6617 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 421.711 170.875 431.979]
+/A << /S /GoTo /D (_time_8cpp) >>
+>>
+endobj
+6618 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 340.679 104.078 349.163]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6654 0 obj
+<<
+/D [6652 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1626 0 obj
+<<
+/D [6652 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6655 0 obj
+<<
+/D [6652 0 R /XYZ 70.866 616.992 null]
+>>
+endobj
+3042 0 obj
+<<
+/D [6652 0 R /XYZ 70.866 414.737 null]
+>>
+endobj
+1630 0 obj
+<<
+/D [6652 0 R /XYZ 70.866 406.295 null]
+>>
+endobj
+6656 0 obj
+<<
+/D [6652 0 R /XYZ 70.866 283.168 null]
+>>
+endobj
+6651 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F101 4116 0 R >>
+/XObject << /Im9 6619 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6707 0 obj
+<<
+/Length 1817      
+/Filter /FlateDecode
+>>
+stream
+x��Z[o�H~�WX}X�L����J�4M�Ih�!�*��]�	6M����/��H�+�!š���;g�e��5��u����x�+K!�q���jI���Xҥ�!V�o��
+Q�lQ������v�c���7z�M��n~xM���*� ��"&�{�#LJ`D9�vt�
+��&�����T"��?��=ya�����x2�"��\�F=�~�,Q"�M3T'��}������R�[�q��3���s#�*�!�9��`Hp�#��x��+@�xR��2�`�A}5K0����&ϯg~/~˗~�e�$��Z���	�O̷�J��t�*w}ڰnZB8�Ǧ4�m����uif����������~��yS��2���"X��2��W5�@U���H���h����͹DM&�a��/t�������
�c`�=�
� �l��BB�&��{�։��ҥ䖃\	���%ˀ��9Nw��]j~�ZɆ�-ND�+	A�p��u���3Xd�D
0��v�G�(<�;z����7����t�)�#�J��;EX�E�[?1.R��u�թ	k�7�]7�W�Ъ���Hrw�i�)����g�N��6�B�p\�5�9�jy�9�H:"�~�(�&笻�a��Qfi�Ž+c�9"�Ђ_��4�AnH���`��Fe�R�
+�H�t����0�ی[-�@�����8����>p<A�\9����3tq��V%	�X�a�WI���`LtV�ģMv��+��yC_OK�(�*ܭ���P��@��֤��F3]#*y+���Gu��2�?.xր�Üz�n���>W*���|�;\+&����1�*��	�"^����u!RE�&��\�%��Eœw./��kN��u5��<����_:ڄ�f��X��tX��X��	0NOC���^ԻK�ǣ��,�fS?�`�'݄���'��0��7d��h_^u�./:�r�IL͖��3��M��kƒ3�ԁ��<N��X��!�Va��Ev�u+u��{��\:R��9_���B�a�s��R�)C}�-�`\W�B9BveQ�����W��*]�,�F�ڊSB�4�U���s�-�)��$�ƭ�:n�������6��D�ޝWDT(����1�����H��j�J������q��#�g~�azB�z2�!žI���rc�w���F9�F���~���%l9\|��\6A��\$��5�����Ӌv�c�-��������M�.>�}[�uu�R��W�PR����}H�/H�ޯCmR���x�'Y}��jf�"�����n�$*�Oם���B�J�w$r)������#��^�W�́R
+F
+,��W��*�no�`T^q���#5t��2������}��n��1�0�+?[#,k��Nr�żrfW��Ax������2����&�o�궖j��Z�.MA�a(�U>����F�-�"���C��)S�c�Îͷ���1S�B`p)b�v@�nmQ1�9.�r<{S]pu�T�D�D�EmYg�� 戽�8���t� �a�_�P�����aa�����:�o\�c��D7L�y��<�8���\:�7����F�S^p'V>Ů_�������n�l�|^U��C�ƈH�w��nw����K���|S�ɅG�U�����"h����I��!P�؎f�h�#�zA
+(���5�SQZ4��6�����n�����&v��!5t�N�*/ௌ��C�G���aF�|�}�h�s�ҧ��Dd'k�9�枙\&ϯS�~������������
+endstream
+endobj
+6706 0 obj
+<<
+/Type /Page
+/Contents 6707 0 R
+/Resources 6705 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6581 0 R
+/Annots [ 6625 0 R 6626 0 R 6627 0 R 6628 0 R 6629 0 R 6630 0 R 6631 0 R 6632 0 R 6633 0 R 6634 0 R 6635 0 R 6636 0 R 6637 0 R 6638 0 R 6639 0 R 6640 0 R 6641 0 R 6642 0 R 6643 0 R 6644 0 R 6645 0 R 6646 0 R 6647 0 R 6648 0 R 6649 0 R 6650 0 R 6657 0 R 6658 0 R 6659 0 R 6660 0 R 6661 0 R 6662 0 R 6663 0 R 6664 0 R 6665 0 R 6666 0 R 6667 0 R 6668 0 R 6669 0 R 6670 0 R 6671 0 R 6672 0 R 6673 0 R 6674 0 R 6675 0 R 6676 0 R 6677 0 R 6678 0 R 6679 0 R 6680 0 R 6681 0 R 6682 0 R 6683 0 R 6684 0 R 6685 0 R 6686 0 R 6687 0 R 6688 0 R 6689 0 R 6690 0 R 6691 0 R 6692 0 R 6693 0 R 6694 0 R 6695 0 R 6696 0 R 6697 0 R 6698 0 R 6699 0 R 6700 0 R ]
+>>
+endobj
+6625 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 735.141 128.985 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a42d3242d0f2619bbedbe54473e5bde05) >>
+>>
+endobj
+6626 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.793 735.141 237.674 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+6627 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [248.693 733.357 276.104 743.32]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+6628 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [320.904 735.141 339.843 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+6629 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.643 735.141 409.06 742.025]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+6630 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [453.86 733.357 499.338 743.625]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+6631 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.153 723.186 142.599 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+6632 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.233 721.294 227.118 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+6633 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [244.016 721.294 272.423 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6634 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [304.41 721.294 329.239 730.07]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+6635 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [332.483 721.294 360.89 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6636 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [401.802 723.289 425.214 731.67]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+6637 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.557 723.186 446.487 731.67]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+6638 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [449.73 723.289 473.143 731.67]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+6639 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 711.231 121.193 718.114]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a159b3f2994697e91aeaef8649376aee3) >>
+>>
+endobj
+6640 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 683.336 136.733 691.82]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_abb8683a103f7eed6be691c6057312baa) >>
+>>
+endobj
+6641 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 655.44 128.985 663.924]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6642 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [181.779 653.656 222.308 663.619]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a85828d5d8162aff4c496c782a432b55d) >>
+>>
+endobj
+6643 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.716 655.359 290.577 664.13]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+6644 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [340.879 655.44 364.077 663.924]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+6645 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 627.464 144.102 636.029]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+6646 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 625.76 169.512 636.029]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a37198446b18018989419984f3ec82c68) >>
+>>
+endobj
+6647 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 612.704 132.012 620.446]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6648 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 597.865 165.531 608.133]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6649 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.031 597.757 212.388 608.133]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a10c29b035a567af07850dd1f27e218fe) >>
+>>
+endobj
+6650 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.874 597.865 279.653 608.133]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6657 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 584.808 132.012 592.551]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6658 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 569.97 165.531 580.238]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6659 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.031 569.97 228.832 580.238]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a62d80e5cd14d377d3bea90e6332b0b72) >>
+>>
+endobj
+6660 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.318 569.97 296.097 580.238]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6661 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 556.913 132.012 564.655]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6662 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 542.074 142.9 552.343]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ab1c36ffeef15739332ebd39c3c63184e) >>
+>>
+endobj
+6663 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.308 543.778 211.169 552.549]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+6664 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [261.471 543.859 284.668 552.343]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+6665 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.661 543.962 311.074 552.343]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+6666 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [311.574 543.859 330.503 552.343]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+6667 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [374.991 543.859 401.408 550.742]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a159b3f2994697e91aeaef8649376aee3) >>
+>>
+endobj
+6668 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 514.99 175.555 524.447]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a2bdfc0ecf346e6544ba897f86a5fa1e4) >>
+>>
+endobj
+6669 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [179.041 515.882 219.902 524.653]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+6670 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [264.224 515.963 309.344 524.447]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_abaafa5ebe21c155fc27800d22275d639) >>
+>>
+endobj
+6671 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 486.283 238.448 496.552]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ab7eac644327edcff9e211b45e1905d2a) >>
+>>
+endobj
+6672 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 460.092 246.607 468.656]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a04574823a93f387d4d1aaa4a7087f22e) >>
+>>
+endobj
+6673 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 430.385 233.642 440.761]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_adf66dfb35361158c8c05cc5ed81bd247) >>
+>>
+endobj
+6674 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [307.173 430.385 361.986 440.967]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6675 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 402.49 257.465 413.072]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_aaeba9a89d6c0b950246fff61ac221fa7) >>
+>>
+endobj
+6676 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [330.996 402.49 385.809 413.072]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6677 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.822 376.486 199.03 384.97]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6678 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [209.772 374.702 222.228 384.665]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a22c13c0c69fca4f40a3b25285e746e06) >>
+>>
+endobj
+6679 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.215 346.807 133.647 356.77]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a8ef20bb80d404cba203ebe64a9c3296f) >>
+>>
+endobj
+6680 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.178 348.192 276.749 357.281]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+6681 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.465 333.298 171.319 341.678]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+6682 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [190.212 266.773 224.42 275.257]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6683 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.131 266.773 264.04 274.952]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a421f6aeaee92e362e455edcbe6b58231) >>
+>>
+endobj
+6684 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [339.541 266.773 374.422 275.257]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+6685 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [387.133 264.989 414.544 274.952]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+6686 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [461.248 266.773 480.187 275.257]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+6687 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 254.818 119.194 261.701]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+6688 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.204 253.034 211.682 263.302]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+6689 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [258.693 254.818 275.138 263.302]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+6690 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [322.149 252.926 358.033 263.302]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+6691 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [374.03 252.926 402.437 263.302]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6692 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [432.26 252.926 457.089 261.701]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+6693 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [460.333 252.926 488.74 263.302]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6694 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 242.966 118.189 251.347]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+6695 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.689 242.863 137.619 251.347]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+6696 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.863 242.966 164.276 251.347]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+6697 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.735 242.863 241.151 249.746]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a159b3f2994697e91aeaef8649376aee3) >>
+>>
+endobj
+6698 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.291 227.929 183.278 235.764]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6699 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.253 161.045 160.187 169.529]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a95274da091367dba743e0cf0052b4dd7) >>
+>>
+endobj
+6700 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.253 133.15 161.307 141.634]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a9b112a792be9ae8647bc58fd4e28c5bb) >>
+>>
+endobj
+6708 0 obj
+<<
+/D [6706 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6709 0 obj
+<<
+/D [6706 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+6710 0 obj
+<<
+/D [6706 0 R /XYZ 70.866 306.64 null]
+>>
+endobj
+6711 0 obj
+<<
+/D [6706 0 R /XYZ 70.866 200.912 null]
+>>
+endobj
+6705 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F33 2286 0 R /F24 2940 0 R /F21 2941 0 R /F73 2949 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6749 0 obj
+<<
+/Length 2354      
+/Filter /FlateDecode
+>>
+stream
+x��YKs���W𔢪F��p%��xֳ����Ī���"a	�THjm�קJ�(zl�!'�@������&�V�>]�cq���'^B�(
+�ŃS�D�����(��>����O^1��!,��7eֶ�y'��:�md�e��+���aq��+��c=�$!I��|s��w�0��GI�&ޣ��x\�Dpܢ���yEr2Jb�Fǂ�P�Iz���ם�;Y�>t]��8��d�esL�߆���YD�$��)
�oA N�x_�BD~���m���L��ZY<k������F*����<�4|���Q�1
+$HCo�8I97��ZW�v$Sǘ�K���9��@��Y� ��� �R`h�yJ;���P��FI����U�ZU�|��1`4uK�~��}�h����:g4��D��ެe���oT���G��|�|G����MT%����G$M�gA��X��9��{�����5����MP�Lf �^f��|���|�Y����v�Е��?��<L	M�9v�ŌQ�P���p�\�e��x��,A9�U�$�᐀
�QJ��TY��e�7jۇ@@M���D��������m�urDe!0��Nx�$�3u����
�$`��v���˓y��<�l8�̏�hB��@*PnD��2G�zY{q���/����m�P�ʖ��/�@�`ϓp
+���ix��ñ�޹S��C@B��a��
�H�՛=�b��$	�s{(xm䶑-\��;��`1x>v �o���C_j����r�
+��͸�~�V�
��(��i��GM�� 
��B��-^�f��߷M�A� Y��C�*��|#f!\�ղ���;��K�/���C�M��$�o�jל�FƱ���52�ȓY��ں.Z�3���ޕ�y_ڱ������pQ���DYk��\$�8�v��m���GXZf�Ų*d1�#v���:
+�a��_�y��62k�M?k��v�����1���v-�Q˚r�!n7iF�f#��O`]S���>�"����{�Rq{�z�6�#���s{b�B_��`Z�xo��j�R+���Z�'\>��)�*m����4
+��g������o��07Ҹ@&_��vl�vƬ���ȶ�Vz;���V�3����5��<RMt�xZ�r�-U���!��p\�ne���=8�|��Rr�i��|�PT%O�Z[����>=!r)h���x=g�V���ve�N��lbQ�F���O�m�t܂�Ga�����oe�il3�\�d2�8яꍋ9PH��r�~��ɵ����2ow�mmϭ�
L4��P���M~p�Ⱥ�L�(���\+����d��Rf��v.��'����š��B�"md��T����ZwZ0�of��!����-a��wQ���H��M�We���0��j�@*�վ3c=��dc�&a+s��� F$�dF��-��R�9��Ո�tduv�B2e��<��/e����y�s֗
��ĩ�R�B�	�����a�i}���s��б1��������Y��~X^(���X0��L��r������S��`�W���m������jX�-۾~ڹ	�X�e:���b�^�ȇ�Ԇ1����>'M�.pM���(��H����N޴d�4��*��],qyc.-aԦ����F��I��e�R�yU������wUg�E�-'�>q�.&�f �Ƃb�v�ƺ_A��&��/52�_.l�	/����dԜ0�,�z���;�u�̘��!t���f�����$���И6ĎԺ��4�\(RE�k�:W������V�"%A�F}&$��j��e}�n�Q}mx���s	�M!&U�,�ބ��dV��nW���ܶ��I�,��r��B��/�b�!�[�����T��pr_BrNѷ��#���𾛪Z�sv���;�s�4M�d�oaam�s�?�fyJ\kn�f_���mx/�8+�ߌ��]{�d]�:b�<"T�=ħg����
���������mf�b��q����(��J���m��
05�����Mtߢ��4P�WE)�@;�E��V���fj8����q��aJ�������/�J�3�"��YH(i�^������-���>����͡��i[��#�K��r��5׬,K}��S���Na���.4���ӱ�ŌU8�����Qb�W�C��YQJ�t��
�ƪ
E�o���,¸��P��$<����7طjv�&�_�?'�翁�b5d/��/"P?s��L�[C(�D���Oꊬ�����4#�V�~��噌��T~�
+endstream
+endobj
+6748 0 obj
+<<
+/Type /Page
+/Contents 6749 0 R
+/Resources 6747 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6581 0 R
+/Annots [ 6701 0 R 6702 0 R 6703 0 R 6704 0 R 6725 0 R 6726 0 R 6727 0 R 6728 0 R 6729 0 R 6730 0 R 6731 0 R 6732 0 R 6733 0 R 6734 0 R 6735 0 R 6736 0 R 6737 0 R 6738 0 R 6739 0 R 6740 0 R ]
+>>
+endobj
+6701 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.272 735.141 162.688 742.025]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a159b3f2994697e91aeaef8649376aee3) >>
+>>
+endobj
+6702 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.205 707.246 236.637 715.73]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ae5349b85d820a6204f44af04b528f6a9) >>
+>>
+endobj
+6703 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 679.27 135.638 688.041]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+6704 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [179.959 679.35 225.079 687.834]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_abaafa5ebe21c155fc27800d22275d639) >>
+>>
+endobj
+6725 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.617 512.761 187.044 521.532]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+6726 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.562 512.842 221.77 521.326]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6727 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.409 512.842 268.808 521.326]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+6728 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [286.793 512.842 321.001 521.326]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6729 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.757 498.995 146.16 509.371]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+6730 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [210.182 378.522 248.04 387.982]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a95274da091367dba743e0cf0052b4dd7) >>
+>>
+endobj
+6731 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.841 354.798 184.245 363.179]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6732 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.525 354.798 274.929 363.179]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6733 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [173.695 327.982 201.098 338.358]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+6734 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [246.828 329.874 290.226 338.358]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+6735 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [327.967 329.793 368.828 338.564]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+6736 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 190.525 93.059 198.978]
+/A << /S /GoTo /D (todo__todo000011) >>
+>>
+endobj
+6737 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.058 190.637 139.462 199.018]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6738 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [294.879 190.454 351.718 199.225]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+6739 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 143.899 148.111 152.28]
+/A << /S /GoTo /D (_variable_8h_source_l00041) >>
+>>
+endobj
+6740 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 143.796 214.084 152.28]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6750 0 obj
+<<
+/D [6748 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6751 0 obj
+<<
+/D [6748 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+6752 0 obj
+<<
+/D [6748 0 R /XYZ 70.866 637.4 null]
+>>
+endobj
+1634 0 obj
+<<
+/D [6748 0 R /XYZ 70.866 616.284 null]
+>>
+endobj
+6753 0 obj
+<<
+/D [6748 0 R /XYZ 70.866 569.706 null]
+>>
+endobj
+6754 0 obj
+<<
+/D [6748 0 R /XYZ 70.866 306.96 null]
+>>
+endobj
+1638 0 obj
+<<
+/D [6748 0 R /XYZ 70.866 129.552 null]
+>>
+endobj
+6712 0 obj
+<<
+/D [6748 0 R /XYZ 70.866 82.943 null]
+>>
+endobj
+6747 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F22 2379 0 R /F67 2922 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6766 0 obj
+<<
+/Length 1870      
+/Filter /FlateDecode
+>>
+stream
+x�ݚ�o�6���W{����oJ�6`kӮE�n�ۗ�[I4Ȓ+�k��~G�R$��l)Ű=6��w��#)��z�{1�y6z����)�7��F���
+(�ě-�cQ1�R可޾|}~�~"�8���zB�8�&�f��<���
+�ڊO�(
|oZ�tF����l����j?�v�B$կ~��4	�kcn�����$,"��2��Dy���#J&����l�y��`��I�}�S�͗��������0b��})[.=.���Ļ�>����f�Ed2%��v�?b�Ꮨ��
+&���� ����*в�
+-�Q[]Ӳ%��eՠ�_Ei���H�hf>��G������aB$mu���7����|1�rfJ$��BP ����̍������(���p�.�u��Y;��})�[�q��Ҥ�F�o
+}/!�&4aZ������.̣��"w�+�#����؎�"��tց�9��~�gr�ř#S�(RT��,�8�u�
+1��M�pZ��z�dËh=��Ugi�}�##i\|dz�Ȓ��ޠ����#G�K�2Lo�Q�P@N��1S���Ú�.�ݑy�w:/a����iK�5����H�����Z���$b���d����VT-�V���d�X�vw�7#��f���"�!#�����?��2�X���Uߧ��*oW�"La�0�<K�3X��x3/��<�U/�8�[�\>)�l��ׄ�q�l��~�&S������zs=��I��O\��e��J^[K�0I"��&ϖ[B�-��2W��o`^�ݣ?t��Y�e��L�oʡ�Y���	!�u�{]E��
+�B�v�H�>)�"�m�Jx0_��9"�Xe��4�X���2#q�[�T6=%kկ
+	�E�����-��H3���*��*�#�|�هƳ�{v�g4/Ю�*?����K��J
�k�
KL�>
+]�Ï������������O��VS�u��{�λ4���sY����@L���d�vA���i�
����P�w��*̏`�����f�S܏R/U7IM�_6�0��Q���2-�$J��������n��K0��A6?<�H)�	�Z\t|��n�zJ�	j����r1���4�t��SӅ}8u�V�u�k;\hB�Al
�a��aCT�4KE����Q�1l��t��՛�<��u�Ԓ}�����P�-����ҿ��n������\'�����S_7\�lX��B\������p��t���N��O�
XS�m}f�Qʣ�	������p�>է˛$����4L-��Ua-W{�z�[�\���Ȟ�.n`b�r�	��z�z`
+�����t��u�ק[nb�i��mj��$�F�Kyc7��SMquƲu�b9l���Ö�j�.턛�X��w�nv��xAQ��&�<������?N��.��k�dÎ��f�>�֗s�u�v���{4E˓�����u�ߔ�����C��P+��6cG��I�$�Ɠ��	L`1�A6,�T�V�ǘ���8=�~�n���4{?��t�46u�n�Eu�\��j�g�Ţ��c6~DOv/0���%��6v�nm1#�����H�o���e(�UY���[݂�u�b/[�i�I���������o��%�M%G��~m��6Dclq3��+��R7�'��0�l������� ��o>��ʞ��
+��t��fO�[z,@�{�W��zB�uZ7z�~�K\�e�j�ޘ#��z��xl.<ʋ�ƽ��Mٿ2�	FJ�p�W���0��}+�M������o��C�ϲ�F�V֧c�/
+f䔗����$�
+z�Z�@R�ӖQ�0T��:���?�o_�ou$�h����ʍ
+endstream
+endobj
+6765 0 obj
+<<
+/Type /Page
+/Contents 6766 0 R
+/Resources 6764 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6769 0 R
+/Annots [ 6741 0 R 6742 0 R 6743 0 R 6744 0 R 6745 0 R 6746 0 R 6757 0 R 6758 0 R 6759 0 R 6760 0 R 6761 0 R 6762 0 R ]
+>>
+endobj
+6741 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 716.132 138.811 723.344]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6742 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 704.176 249.911 711.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+6743 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 631.342 157.248 639.005]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6744 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.813 631.342 251.716 639.005]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6745 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 620.614 152.466 627.05]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+6746 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.73 620.614 209.85 627.05]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+6757 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 379.263 153.096 387.828]
+/A << /S /GoTo /D (_variable_8h_source_l00312) >>
+>>
+endobj
+6758 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 379.344 219.069 387.828]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6759 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 270.632 138.811 277.845]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6760 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [209.181 270.632 249.43 277.845]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6761 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 220.931 153.096 229.496]
+/A << /S /GoTo /D (_variable_8h_source_l00323) >>
+>>
+endobj
+6762 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 221.012 219.069 229.496]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6767 0 obj
+<<
+/D [6765 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1642 0 obj
+<<
+/D [6765 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6768 0 obj
+<<
+/D [6765 0 R /XYZ 70.866 570.884 null]
+>>
+endobj
+6714 0 obj
+<<
+/D [6765 0 R /XYZ 70.866 367.578 null]
+>>
+endobj
+1646 0 obj
+<<
+/D [6765 0 R /XYZ 70.866 340.382 null]
+>>
+endobj
+1650 0 obj
+<<
+/D [6765 0 R /XYZ 70.866 206.687 null]
+>>
+endobj
+6719 0 obj
+<<
+/D [6765 0 R /XYZ 70.866 160.159 null]
+>>
+endobj
+6764 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R /F67 2922 0 R /F73 2949 0 R /F25 2380 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6784 0 obj
+<<
+/Length 2218      
+/Filter /FlateDecode
+>>
+stream
+x��Zm�����_A����L%�Jfg7{u����2��bl������ͿOIl��x���S0 ��j=��n�����w��'_��'@�̙?9>F��R$�3_:.ab�y���A������4*�����&_ԛ8��*�39vr?��6!0;��(����L>cg	�q0ba�<7#7��➄H����&xPO�	ED9b�Lgc�>N)v_���sDj��[�9>
+}L����
+�5�x�M�*V#��3�I龙�_-��0��m�E�x:��\]n�%�*u����0!!��� ψ���n
+�P#�jy{�%^Tya�a�1;5��DhF�Y���x�]�#�P!P��Uu�8P�4>��������ooo��$zLc-A���?��M��/�VY���\�����`J��Y�(3��7����/y�#T�lH*|�!��$�?+$�:��=)�z�7JȻ�R.��Ḽ<'e�����!�g���Vk=�˔rVqF�������Θ��u���\yVV����Th�f{����y��R�s����2.n{��|��Q�ڋ���G=�8�BL	�)���x�F���W(�������������n��q_|��1�D����L�;殑�7~v
+s��ͬ�w�e�(�rM�G��lJ�[��_L�;�L���S�h�ˤ����腍�#�g��OE�Q/>���M
��({�aY�*�l;�k�i���!*����nE||�����B.*fcX�H̕�iUw.�Tg��n��&��V�K�0�?�r��rݺH��!2ԶO�5���l�B��Aߛ��c�ג�Y�_�9V�0D�>q7�R��j&��I
+�Jǂ��0Gy+/2��pc��|��������^����?#ž^��^��D�vSo�H���<X&���~`
+�n&���!����#X���E��t@�
+(�����̼��=aW�~rCur�(b�S��l��Sf�;�M��Q���ʖ��������'"�ʼn��3M3�̄
+\�g��hB��}�Q¡�'��>�eis�n�9g��܂�Yuc���^���U�cݞl�#�6M���U�6Z�t�a��r�˸\�V�?D�6�?Dp�Uy��^W��._}usˬ��lu�E)����\�O֢QIO��~'_*/Tz�׾��hl��ݝ�R�M��x�&c^M�ߛU��$U�9�XR����M��w_����j��w,u����-ֲ�@���^խ:}��a�	.kWy�T�z�Nr�=�������lfy�T��f7�vT��zЯ`e��#�n&��U��➦j�Q��\'��B@%"��Rs��.�smuڶ��"�������un+6���L���mj��T�]����ܴt���/�46UG���\��~ ���s��ԃ���@������~��@*z����x������#��|��2`��'ZD�v���R����	 � ���h�$��'�C9�w��`q�AU
+a�'�h��#�����qmz-���%��LUK��Ƌ
+��!�
+j������_ɮ�dhv�~vQ���;�]� ����$����ڹՅ�6_D��|ʒ��^�(�Ț[7��d�X�C"�~m��J�&f����Pr	�gPi��IȦOp�H�@�<�����r���Tw̪L˞K�9\x�@OK&�U2y�(>0H&=>���������g�N�)Uڷ�V44�oeQ����2��T�2�!Īk�t�E'��`�Q��p�O~�=�O�����B�>�q���������{�����ȗM�p��U��Jw���8N���<�oOK��U"�x��_�S�CB�aN��r�ٶ���j��W]��ޓ�޻W����C�櫱I���B=��u(�l���/a���mT���8S/���@�`�*�^%B1�N���T��.�0S�Z�څ,䊷
:+U�![��E��9	 50��N��>��	�Ϋ�VDo��ܶ{J�w��UmjuO>Dg"�*ܣԿ؎��<(�����E}����+�����?���bӑ=��q�V�w0��4�ٝ���>�΢s�Ɉ~��O�= �3^C��D�*X��^!�R��x��};<�u?^�����oyW��9�,,������`�Dص��t��e1G�]%t���>L+8Œ\r�՜_���k>dqq��ka�eq�u1'l�cP/+�9F��k��Y��
+endstream
+endobj
+6783 0 obj
+<<
+/Type /Page
+/Contents 6784 0 R
+/Resources 6782 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6769 0 R
+/Annots [ 6763 0 R 6772 0 R 6773 0 R 6774 0 R 6775 0 R 6776 0 R 6777 0 R 6778 0 R 6779 0 R 6780 0 R 6781 0 R ]
+>>
+endobj
+6763 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 716.132 281.1 723.344]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6772 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 429.093 153.096 437.658]
+/A << /S /GoTo /D (_variable_8h_source_l00387) >>
+>>
+endobj
+6773 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 429.174 219.069 437.658]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6774 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.97 320.462 221.911 327.675]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6775 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [292.281 320.462 361.222 327.675]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6776 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 308.507 249.911 315.72]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+6777 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 235.672 157.248 243.336]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6778 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [225.813 235.672 251.716 243.336]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+6779 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 224.945 152.466 231.38]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+6780 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.73 224.945 209.85 231.38]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+6781 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.848 188.066 162.056 196.55]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6785 0 obj
+<<
+/D [6783 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1654 0 obj
+<<
+/D [6783 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6724 0 obj
+<<
+/D [6783 0 R /XYZ 70.866 417.408 null]
+>>
+endobj
+1658 0 obj
+<<
+/D [6783 0 R /XYZ 70.866 390.212 null]
+>>
+endobj
+6786 0 obj
+<<
+/D [6783 0 R /XYZ 70.866 163.26 null]
+>>
+endobj
+6782 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R /F67 2922 0 R /F95 3709 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6811 0 obj
+<<
+/Length 2046      
+/Filter /FlateDecode
+>>
+stream
+x��Yݓ���_�#�Z��P%y��^�+�/w*���\,�.�d��׻�b�[m����.03t�t����{��n�,��>��%�3o��EŜ{QB'�&����p��Q������럗�i[��K��J,?o~��{J��P����$Z��̊��
�[�Y�ؿ1J���aF.�IB��_.���J�4�6j�b���N����A@����%Q�)���6��J�Ho�8F1
�l������~�0bI�=�[/
+���i����Cs0���;�ƴ.������\���v^�
��vgoޝ^�hl�v�y0��ꂈ���r�rEB_y�j��*&�}4cz�x��x��qc���Q=��wmYw���1����PabE1��04�:�7�2J+�RM�6��Qs��;�D�n����1�s�-��/ӁÌbB�t�ő�{0������._��D�5����s�Y�����e�X��l4+�9���\5��
+�걡�þǑ�Ü���O��[���9[+/�0X������HU`S�y+��5�	����nΆA#�c�چ�o��^R�j�Z�"£�iF��Ce/q��1D}�Ա��#���UF�l��
	��C!��
f�i�H��:R�N1�E*3�\v�d�nI|�U��4�m��o*���`^٦u����f�GY����)���nx�Lw&�ї���ي��{Ⱥ��ͳݸ�rט��h�c�@8�Я��e�Ί���w&��v�5+T������U�Q���*>�"k��Ԉ��L#R���H�p`w�).�3���C���VUѽ���ގ�5eZ��V�5�}QI������Om�T�h��S��k��+K�zW�Òz�CV
MzΔ+k��Xc|X�����:B|9:�	yHGgx������a�3�^�$p���X�)+B�H��0�P�D9�2 �!�@��Re�F-B!M�J�9l��@ ]�x
+$��$+V,�
X @��8��mQ�����wS奢?Z~a�f�b<͊���85P�W��A�������B�|��E��b&��^�okye"T�KA�5�)8��.c��e�i#@Q��N��OR��R�rr%~�d����_&n�������z�Q�]SK1݌�Ԟ��8�Tw$u�%��|/&�y�+�&����ir��7
+[!%p���>ʮ�a�۴ˊ�F��=�5��y�l.������Q|�@[��5O�m��8�T��>��60kU�G�mxEBg�+��fiUi�Gb�W
+s#ջ�(+���si敯NR���{���FSs��ncn�2M��s���,��}�ٴ�EA�5�X�Ĵb�
+)�.=.6~ʪ��|���
ORl��&>/�M�o��w����j��Ad�.w��;��BΡ��l�."��[i�h���g����c�7*Y[_ٍ繨�d^�廙�km^���L}ς�߸Iى4��&��(��@lA�0&^��L�>���X�J�>��;���f!e�fj�z)����f_v`
ы��B�(\�E:Z�ꤪ�Ō_uԾ�W��	�mmn�NG�ڛ�����1�����2��� ��j|�*m�:��Q?�fkWw���k�u�`w��C%RiWF{�*�v�449�Wn�7{�� ���N�t'���[ڝ0N(�����sQf�m��ڴR�����h�g�US?�h�J1������PgE���ފt��k�۞��k3�P#J=�ڛOe&�����ߩt�|�TT��ZQ�e
+��](�%�|��� z���M��BI�������BJ :��]�B�T9ۅ��Z2��_�y܆� �5���fk��i�l��q[��]w	�K���~�TB��,�>��+N{�0�Jބ�7ɰ(er�(��K(e�PC.��:��(*�I��N�<F�z�nh��ԕ`ط��5Fhܥ]������ήp�C��P��x����5!o��e��=�+!��]��p^� @�_G b��nE-ڴ���w��+����j���"�
+endstream
+endobj
+6810 0 obj
+<<
+/Type /Page
+/Contents 6811 0 R
+/Resources 6809 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6769 0 R
+/Annots [ 6788 0 R 6789 0 R 6790 0 R 6791 0 R 6792 0 R 6793 0 R 6796 0 R 6797 0 R 6798 0 R 6799 0 R 6800 0 R 6801 0 R 6802 0 R 6803 0 R 6804 0 R 6805 0 R 6808 0 R ]
+>>
+endobj
+6788 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 759.881 153.096 768.446]
+/A << /S /GoTo /D (_variable_8h_source_l00328) >>
+>>
+endobj
+6789 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 759.962 219.069 768.446]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6790 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 651.25 281.1 658.463]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6791 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 638.191 273.822 646.508]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6792 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [385.401 612.603 440.213 623.185]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6793 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [110.241 552.135 165.053 562.717]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6796 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [204.334 500.936 259.146 511.518]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6797 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 396.77 153.096 405.151]
+/A << /S /GoTo /D (_variable_8h_source_l00424) >>
+>>
+endobj
+6798 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 396.667 219.069 405.151]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6799 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 286.852 138.811 294.515]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6800 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.601 287.955 210.542 295.168]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6801 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 274.896 195.504 282.56]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6802 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [223.814 239.348 249.218 247.729]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6803 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [84.81 227.29 119.018 235.774]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6804 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [85.359 214.342 123.217 223.801]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a95274da091367dba743e0cf0052b4dd7) >>
+>>
+endobj
+6805 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.286 214.342 413.144 223.801]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a95274da091367dba743e0cf0052b4dd7) >>
+>>
+endobj
+6808 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 150.497 219.534 158.878]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6812 0 obj
+<<
+/D [6810 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6722 0 obj
+<<
+/D [6810 0 R /XYZ 70.866 748.196 null]
+>>
+endobj
+1662 0 obj
+<<
+/D [6810 0 R /XYZ 70.866 721 null]
+>>
+endobj
+6813 0 obj
+<<
+/D [6810 0 R /XYZ 70.866 531.214 null]
+>>
+endobj
+6309 0 obj
+<<
+/D [6810 0 R /XYZ 70.866 384.901 null]
+>>
+endobj
+1666 0 obj
+<<
+/D [6810 0 R /XYZ 70.866 357.705 null]
+>>
+endobj
+6814 0 obj
+<<
+/D [6810 0 R /XYZ 70.866 178.574 null]
+>>
+endobj
+6809 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F67 2922 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6844 0 obj
+<<
+/Length 2007      
+/Filter /FlateDecode
+>>
+stream
+x��Y[o�4~�_�nj�5q�2$`٥+�{��]!7�t�d6q���s���43�]��*_�͟ϭ�w���ŷ��/��KI��[o�$ i{I��z�»�)K�֯<S�&���*�u˳0I��M��d��*�Z�]|�^|\P�xt���$
#/�-.?^k����,�n�ΝqFx�YT޻śE`��$�z�?V�8��>�H��(�[����X���x���x`~FSDO_��)�k{\��^[�޾\x���?�ׯv��ݾ�;�fR
~���}���da��a���8���*�ߍ�Ϭd,"I���ݾ����M��t�z+��osy �O���EpS�����A֥�[CD(�Ve-O��x8g�f�4���,����r��Fp~����xe�ij�I90� �.*�k���u��E2<��%�d��%��BIܙd��L�H�G�����46�۽���<k�<�OY+�q8q;ØҌp��>b�a�(��e�dܾ�&�^���\���������/��[��3��������@gÎ�3����;�Ϙ}���ʽz$�p�g�1��������k=��:��,5�����ٌ�gv��<�j��ʷxġ��R>�6��>_�gr��i�I�d�.x%q�_��~���/�O�m��n�S٪^T���R�sE$���)�j���C��jk�	��Ù\T�qi07:E�S�d�ϲ����?б�gޑ��Y
�Z��I�^�^�_���vRm����0������un��!��ܯ���K�FI�U��θ�,5zW%ˎ��C݀�yiN�F?�����ڍ��jZiw[���V����Y:�I�B�������\)�^����ڲij�‚/:e	5��������ǝ���3 ��y�<#�F<[)�)���t�<��䪀��@�nFY�%��c��
hd�l���"jQ��@�V��A��~x%�$7�% V��"�R������y��ļf�����nt��@G5���R��-��0k�;��0�jz5(`eŋ?����%��Q>x.%
+���f�����"s�xCN�v��餃� �l^/቉���M���os�e��tvɨ�.�1��{IP��<j�����%rfI�,ցz�HB.�⍱G9�V���$�'�L�τ	�a�2�Qj�3H�>���@)�����Λ�gd��1Y�d[>�ow����eiDBʞ��}���4��A�Y4,Ju.�V�r�J����/��i�A:�9�DG�4�����	�,[����P،�Ё�^���>�P��Pa^��華yD>Z��h!�>����Ȃ�e1�Q��+�C�+���y(
Y�7��q����N9�r~�Q��E<؛%��"�t�na}�4�q�?�>������ϓ�����>�w�V��Y�	���x�w��j���!�%�:�<�q5���z�Z���t���Ѓ�E�rݐ����l3���R�։A3d3p%#ُM����y�xfI�!;��]���Ƅ�FT����Z��0�4�<!�Ǝ��o�w
A6�ִ��ջ��qtPp���.L�`z�ś��82��^j�entX��U�\��v8�n�m2��%�����I����	�cR�¯���{l.c&�̗���c_�y��[��(06qČPi��l����Ma��it]{Sv����>O���h1��2C���-w�ɔ�k�:lv�����*7�Vrc#�M����5W� �ʍ��*6US�������vb����7�ڦ�7K�9�F�	2��)i�@���ٶ����(	W~Zd/йĽxF7s�#N�C���5���0M����E�p�kc6b���h��Y��s7%lR֎#n�-X�`��N{�y�l����u���.��O�O
+��Og-���r&ߪ�ϲU)ƼNjW	�n�ud��ڮ��0K��
���5�P2��g��	�$�W����
��(�#m��G��D�%ql��KY��N�i���1���Z;�;�9��''�Q
+endstream
+endobj
+6843 0 obj
+<<
+/Type /Page
+/Contents 6844 0 R
+/Resources 6842 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6769 0 R
+/Annots [ 6817 0 R 6818 0 R 6819 0 R 6820 0 R 6821 0 R 6822 0 R 6823 0 R 6824 0 R 6825 0 R 6826 0 R 6829 0 R 6830 0 R 6831 0 R 6832 0 R 6833 0 R 6834 0 R 6835 0 R 6836 0 R 6837 0 R 6838 0 R ]
+>>
+endobj
+6817 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 745.634 156.58 754.015]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6818 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 710.748 224.324 719.232]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae6913253b8e38f0f4eed9903058ae589) >>
+>>
+endobj
+6819 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 685.847 153.096 694.412]
+/A << /S /GoTo /D (_variable_8h_source_l00452) >>
+>>
+endobj
+6820 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 685.928 219.069 694.412]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6821 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 576.113 138.811 583.776]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+6822 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.601 577.217 210.542 584.429]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6823 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 564.158 195.504 571.821]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+6824 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [218.528 528.609 243.932 536.99]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6825 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [95.162 516.551 129.37 525.035]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6826 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [429.184 515.558 467.042 525.018]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a95274da091367dba743e0cf0052b4dd7) >>
+>>
+endobj
+6829 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.131 451.821 219.534 460.202]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6830 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.177 377.103 156.58 385.484]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6831 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 350.88 224.324 359.364]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_abc5c8dc34053d3b02eae489f5c1afda4) >>
+>>
+endobj
+6832 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 331.459 153.096 340.023]
+/A << /S /GoTo /D (_variable_8h_source_l00464) >>
+>>
+endobj
+6833 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 331.539 219.069 340.023]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6834 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 239.868 162.722 247.081]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6835 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 226.988 288.168 235.126]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+6836 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.427 184.284 409.821 193.373]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+6837 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [252.595 141.033 279.989 150.122]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+6838 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [105.758 87.444 175.328 96.533]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+6845 0 obj
+<<
+/D [6843 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6341 0 obj
+<<
+/D [6843 0 R /XYZ 70.866 674.162 null]
+>>
+endobj
+1670 0 obj
+<<
+/D [6843 0 R /XYZ 70.866 646.966 null]
+>>
+endobj
+6846 0 obj
+<<
+/D [6843 0 R /XYZ 70.866 479.898 null]
+>>
+endobj
+3045 0 obj
+<<
+/D [6843 0 R /XYZ 70.866 325.254 null]
+>>
+endobj
+1674 0 obj
+<<
+/D [6843 0 R /XYZ 70.866 298.657 null]
+>>
+endobj
+6842 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6867 0 obj
+<<
+/Length 1855      
+/Filter /FlateDecode
+>>
+stream
+x��ZY��6~���Sa1�C<�h4�	Z4���Mhm�-��6:��ߡH٦,�W��!�,Q��g������&��ס
+��`��.�)!Q$H0�7C�(��T��������H�a�'����R�>O�<��4���
+���Q&j��������1)<|b�|w��\*�x�՟q�/㢰p�^�/�R�'������u:5�(�ᐰȠ^N_d���a0]
n>�`���H��Ur�x��~|�`h���[sqa�#� ������t��!â������3��xHU�0�x��1`�$���a��NDns�!X{2$��I�ݵ!� ��&%��#��o���Q�yR,`v��2>�>��s��l�74e[4料�.��GoLU�]���<��]�0��B�]��GC`�:8ʣC��"�g��p�F�fE�γ�M�m��x����4ٝ��M@�oI�z�E��Y��,w��x�ϝ��_
��z�?�&/��+]�|?GO��.�������a8�b����T0g�8
+�$Gp�<���6��2�4���<��4�6|���u]�d;痟�Yj�߮9>����!��Ɠ���$�����x:ƉBD�	1k*PY婯>�kk�(E�~�D!r���,[��E�Ƭ{;�aD�0v
+.�N�}�g�W�*�t��Ǩ�u;;����M�����,;j����ʡj�KȪ�몹I@��������<3)�J
+{wW�S��k�4׳*��i���i׼�8�F�����i�ط���~����F��$���s%���
+��L/�[m�+Gd��p��4+
|>&E��e��u��q��ݽ��:�W��.
wf��ZE��@�"�q�،j��tZ�{�vW��$x�ڕ:�U��-P�Z:�o�G���s�j��f�Ɓ���?K ��/4l�&�5���LR��0���x�<��M!������`yE����&�[���t����?>a���P�$�$&�A_��l��z�)�̠�V��a	ĕh���:2��\���{IO������ÄD�C���L;���̘@d4��p]v�a��j˪(
+���.��'����P�Z�����ǘ8~2����{2�k�\]��h1
)��$h��+5��Q���y�E�ʖ��8�Xǧ�@������e�;`�B"Z3��°���$��O��7^�Su���Vԥ���"��L�B�%ܸlY�������T�$v_Lס���z��`�Ei/Lɫ�
+�s��N�]��]���W+=K �U
�満Vh��,�`֕g�Y�6��U�3�$�ZY�a/�5ȵ��`K�a�2�Q����Fq�����sҧH���ܯj/��-��7��'�ѐ��)jQ���++aҹ���<�<
+�����h5?��E-7&K��F;�h#Z��rԹk	��m��0���s�8ج*����G�x}h��:&��$���rzHv������"���qd��tɍ`;��AKGp�a�LI{fw��A4����8��P1�:��L�����
�wm���9׶�U��D�gۊ�}�m�
+�G,:ß��EL:����&�]v�p���v��4:^um�h�9���=c�����+��kϔk��˼�13�OПӘً��c�ۧ���6!��O%�)����Z�8׳/��M�!�%�1]S�f�ľ�7����̈́��9k�fX�#�iJ̙��fő�j+5Y!��صw}��m2M\�[�V�4Ի���Y�>��XN���^֙T�k�)�n�����zn��C	����NM��L��E�,�EVk�ǹY��N�.���wp
+endstream
+endobj
+6866 0 obj
+<<
+/Type /Page
+/Contents 6867 0 R
+/Resources 6865 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6769 0 R
+/Annots [ 6841 0 R 6849 0 R 6850 0 R 6851 0 R 6852 0 R 6853 0 R 6854 0 R 6855 0 R 6856 0 R 6857 0 R 6858 0 R 6859 0 R 6860 0 R 6861 0 R 6862 0 R 6863 0 R 6864 0 R ]
+>>
+endobj
+6841 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [280.663 727.689 308.057 736.778]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+6849 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 607.467 93.059 615.92]
+/A << /S /GoTo /D (todo__todo000013) >>
+>>
+endobj
+6850 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [341.301 607.476 375.509 615.96]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6851 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [394.912 607.476 438.311 615.96]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+6852 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.06 593.629 162.462 604.005]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+6853 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 560.841 153.096 569.222]
+/A << /S /GoTo /D (_variable_8h_source_l00444) >>
+>>
+endobj
+6854 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 560.738 219.069 569.222]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6855 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 452.026 138.811 459.239]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6856 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.377 452.026 276.318 459.239]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6857 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 440.071 205.068 447.284]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+6858 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.201 401.424 148.604 411.8]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+6859 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.205 233.738 225.413 242.222]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6860 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 203.921 153.096 212.486]
+/A << /S /GoTo /D (_variable_8h_source_l00335) >>
+>>
+endobj
+6861 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 204.002 219.069 212.486]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6862 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.97 105.217 193.219 112.43]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6863 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.377 105.217 276.318 112.43]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6864 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.609 71.654 264.008 80.138]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+6868 0 obj
+<<
+/D [6866 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6869 0 obj
+<<
+/D [6866 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6715 0 obj
+<<
+/D [6866 0 R /XYZ 70.866 548.972 null]
+>>
+endobj
+1678 0 obj
+<<
+/D [6866 0 R /XYZ 70.866 521.776 null]
+>>
+endobj
+6870 0 obj
+<<
+/D [6866 0 R /XYZ 70.866 390.465 null]
+>>
+endobj
+6871 0 obj
+<<
+/D [6866 0 R /XYZ 70.866 326.766 null]
+>>
+endobj
+6723 0 obj
+<<
+/D [6866 0 R /XYZ 70.866 195.428 null]
+>>
+endobj
+1682 0 obj
+<<
+/D [6866 0 R /XYZ 70.866 168.582 null]
+>>
+endobj
+6865 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6890 0 obj
+<<
+/Length 1674      
+/Filter /FlateDecode
+>>
+stream
+x��X�o�6�_�G�Y�I)��v�ZX�}I���[�,��H��~w$�H����a�h�x_��ߑ4X4x9{��=~'ABR)�`y(J)�r"Y�\�!���b�:�$#��`��~V覙/�J��U�mM��6�J�����}�1 �x&	Ixd���
V��:�$J�೥�����QD���9�^��K��!~��R�^�D*��|kڮ.��>��/�h��s�,!4�Jݴf���Uyٚ�:c�i���$r���Jy�[/��u�"/�W�R��g޾�疂+5��OWW�2.�a�~�h�����0חsNC�?�f�uHpb��i���%	w�$�c��QJ����*(�1�Yā"���o� :`�nn�vW��8J��(#d�� ���/ID"{��fgJ�5�-����}�4���������D�3~r@��T���T�����qϣ�w����콮���)�6Q"���)�Ar$�壩�7�z��}=;ót��D]8'��T0|��#d	R�绺jMYq�:����Ņ=I��X�G9�g}J�Q*�Lť�0V?��v�I��k���4�CP�3f�(l�߸ŕ���k�+�i<���ٙ�jѰr.­'횶�c˵��bQ������B����0��2pF]ƭm�aZ���V�P4�N;P��v���W����0cP�/XxP�Rn��2~�D�"Nç�k�ks����)�t^fE�r�Ѷr�p~���O��S�;�zu�VPk�s�^Wm�� ��G�f�-�-�o?��b(�p�u_�!���4Ġs3x���ꏨ�q����#�m܆	��g�5����܃J�ױ��M�+SOSV��z
\"l��h�(G��>�����U������y�BfqiKIJ�R2�=8o9�L�(E�6��8I财�LE���t�{)���V?6F��$��&�Ȩ�ƴe2���ef�������ҝ�?�)p2� �>��=�H�O�G�F���3��Cͅ3;�sd�]�nt������<>�p����w�_(_� p������S�n�ʪ�6ͮ*t!���c�8��0�T���jd�@�~6f�z��|�X�kړz�*t�BQX
?{
Prm��&���ZW^����o7LcLy6�6L��AA1��9�s�_�pY�v�Q#�j���v�m$,Nْ�c\ߜX7�+�%���2F�~�E��������:�H����$����r���1��
�1��5�,��Q\�H?���3hL�pI̠luَ��>�lk4�&�8�eS��)�Riz9��SC#��Sè�\�Hˡ�q�=�q^���QoM7
��n���ɳ�L.�{7�Ő*�[D���y*�aw�X8��z��� 	�!��z����y0B�8�{�<��c��,�k�$]��@�ƹ$,������P��V�j�R*"x:z,^�j"$I q�Q�is+,�T�g���v5_�)��!e=6����o�cw��xU:���F���;���y�����ND�~@������s�>c1ַ�
�|�5��-���M�:;����l�����vW6�ڶ�h�ч�JI���S}�19�.Xa��uA�w]P�낍���5N#� ��6�Ob�p]`_�޿�K•�m�$b�łH���j�mGӿ���~�u�F]CS���s���
+endstream
+endobj
+6889 0 obj
+<<
+/Type /Page
+/Contents 6890 0 R
+/Resources 6888 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6769 0 R
+/Annots [ 6874 0 R 6875 0 R 6876 0 R 6877 0 R 6878 0 R 6879 0 R 6880 0 R 6881 0 R 6882 0 R 6883 0 R 6884 0 R 6885 0 R 6886 0 R ]
+>>
+endobj
+6874 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 710.851 153.096 719.232]
+/A << /S /GoTo /D (_variable_8h_source_l00277) >>
+>>
+endobj
+6875 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 710.748 219.069 719.232]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6876 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 602.037 162.722 609.25]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6877 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 541.475 95.273 549.856]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6878 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.7 514.659 222.319 525.241]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6dc0dda3c135fb3512486192a52e0f8b) >>
+>>
+endobj
+6879 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 491.65 153.096 500.215]
+/A << /S /GoTo /D (_variable_8h_source_l00370) >>
+>>
+endobj
+6880 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 491.731 219.069 500.215]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6881 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 383.019 162.722 390.232]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6882 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 371.064 176.376 378.277]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+6883 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [430.39 312.042 480.203 321.94]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ab1c36ffeef15739332ebd39c3c63184e) >>
+>>
+endobj
+6884 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 181.357 153.096 189.922]
+/A << /S /GoTo /D (_variable_8h_source_l00380) >>
+>>
+endobj
+6885 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 181.438 219.069 189.922]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6886 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 81.702 281.1 88.914]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6891 0 obj
+<<
+/D [6889 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4985 0 obj
+<<
+/D [6889 0 R /XYZ 70.866 698.982 null]
+>>
+endobj
+1686 0 obj
+<<
+/D [6889 0 R /XYZ 70.866 671.787 null]
+>>
+endobj
+6717 0 obj
+<<
+/D [6889 0 R /XYZ 70.866 479.965 null]
+>>
+endobj
+1690 0 obj
+<<
+/D [6889 0 R /XYZ 70.866 452.769 null]
+>>
+endobj
+6892 0 obj
+<<
+/D [6889 0 R /XYZ 70.866 253.47 null]
+>>
+endobj
+6720 0 obj
+<<
+/D [6889 0 R /XYZ 70.866 172.559 null]
+>>
+endobj
+1694 0 obj
+<<
+/D [6889 0 R /XYZ 70.866 145.679 null]
+>>
+endobj
+6888 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F33 2286 0 R /F54 2381 0 R /F79 3573 0 R /F22 2379 0 R /F95 3709 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6914 0 obj
+<<
+/Length 1835      
+/Filter /FlateDecode
+>>
+stream
+x��YYo�F~�� �PP��ٛ��H��u�&m���	�����R�JRv�_�ك�HS��-�cW{��|s�8�
+ppr�����<b�Hɂ�eaKD	E��ypƈ�јFqx����d�a$q��T]�3=�4}��GJ��Pi���$����D���rҜ��b;&��x;@�F�$�����t�g����y�^�2Uk��N_t��Y�$�!��P=z9=�����iA�cS̖G�p0��WF,��{rp����Ypv������%@� �\e��y ��Q�m&<��
+��Z�Yq�v�1^�(o�z]��D�i~�6J�*u��Z�i��јާy��a����њ���8��+����@�-e0,�<���G,0�O�	ߓ�[��5�6c�=}]��΋���ݻn�D��.ܨ�,[[	ƌ�H�$�!��H���6Q�a`+�L�`�)��gb�;�'�N��2������|c#������Y�s
+43�msHoV O�q��Qz�?bL��(�S�ݘ��ޡ��ܞ�$��/;2�!��C��(2���3��G�a�sO�Ur�tZC�=�qX�W��	Y��PaҨ�����qg{2J�N2C9��-�D��n}�ҹZ�mIx��
�nH��M>�n� !h/Du8�	@� �u̴��ɵ��E9@V@8�l�<@��6�s�����j���(�l?u�����3����4Nq�Yr���.귻�,�am�ܚ�db@q䌕y��i�n�翭�!�"�"F:�<�ӓ7�əQT�:���zb���趚�E+�wnx����!x:J�^�(��<�M8���t�ۘ�aQ��'S���,��z]62��Vպ�Km��,�U��	�$<�tK�_Z��F�B��L�V.G�/�V�#��D���V�%�zn�
��G��8�9�Cv	�Z��^H�H�-ޗ�|fø�C��p޵��g�ue|��,80:S�+_�4UB7�ܤ��wp�ru�\�`��dS�a"��y	�$�q��MZِ�!{`��@kc�{�!�	(���徍�e���Dzu�N��Ac�*�2�b�	TJ묶�Ӯ���\A��k�%�nY�nU��C�ں�U�]���
p�n��&�K��F�US�a%\�HB(d�c�K�gE>OC}D�3]�ST�uYb�����}]�����S���6��Yem����B�k��We�xE�Yz9b���Y��R��� v@��q1U������i��Y�Ϫ3W�XB�0s͂����k�'��7��i��^� E����q������!a��j� � ��h���ӶE��4L;'
+�<���ׇ<�H���Ø!h~��7�|:��6�C��,#��#=�2�6~�e ���d�1Eb� 0�06
:�jз����R\����E6ocz��ϊ��@���|���M	c�ev�p��ͪ�㾞�	"�|Q��7�����H˯�!3��wȂ���鐙�]���#Í��[��"���ް;�M�b�?юF���rӎ:e�Rh�D"��C���^ٟy��{ZɁ��_�»4�h`�"d[�_��uLJu�cb�����C����=:�(��-
+u�t���ݩ��u��O������0/l���Ÿ<`���s`N@�\��)���ޛͧc�l>ڟ������p5��Ϫ>�2��Z�ܮ����m�J?�&�^A�����z�l��vsק��j�|��������m-ՋR��1+��"�y�T�MFq�7?l:i���N�?Tz
+HA�Z��@���hֿɣ\��V�
.=\e�(,��W�`B����7��+d
+endstream
+endobj
+6913 0 obj
+<<
+/Type /Page
+/Contents 6914 0 R
+/Resources 6912 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6917 0 R
+/Annots [ 6887 0 R 6896 0 R 6897 0 R 6898 0 R 6899 0 R 6900 0 R 6901 0 R 6902 0 R 6903 0 R 6906 0 R 6907 0 R 6908 0 R 6909 0 R 6910 0 R 6911 0 R ]
+>>
+endobj
+6887 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [376.535 758.531 420.371 768.428]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ab7eac644327edcff9e211b45e1905d2a) >>
+>>
+endobj
+6896 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 665.006 153.096 673.387]
+/A << /S /GoTo /D (_variable_8h_source_l00417) >>
+>>
+endobj
+6897 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 664.903 219.069 673.387]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6898 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.159 556.192 281.1 563.405]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6899 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [214.444 543.133 273.822 551.45]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6900 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [300.282 517.545 355.094 528.127]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6901 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [412.145 518.006 491.846 527.903]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_aaeba9a89d6c0b950246fff61ac221fa7) >>
+>>
+endobj
+6902 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [379.472 506.489 429.285 515.948]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a04574823a93f387d4d1aaa4a7087f22e) >>
+>>
+endobj
+6903 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [110.241 430.364 165.053 440.947]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6906 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [204.334 318.905 259.146 329.488]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+6907 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 236.801 153.096 245.366]
+/A << /S /GoTo /D (_variable_8h_source_l00430) >>
+>>
+endobj
+6908 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 236.882 219.069 245.366]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6909 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 147.245 162.722 154.458]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6910 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 135.29 205.068 142.503]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+6911 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.345 123.458 152.466 129.894]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+6915 0 obj
+<<
+/D [6913 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6721 0 obj
+<<
+/D [6913 0 R /XYZ 70.866 653.137 null]
+>>
+endobj
+1698 0 obj
+<<
+/D [6913 0 R /XYZ 70.866 625.942 null]
+>>
+endobj
+6916 0 obj
+<<
+/D [6913 0 R /XYZ 70.866 349.183 null]
+>>
+endobj
+6716 0 obj
+<<
+/D [6913 0 R /XYZ 70.866 231.25 null]
+>>
+endobj
+1702 0 obj
+<<
+/D [6913 0 R /XYZ 70.866 204.726 null]
+>>
+endobj
+6912 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F33 2286 0 R /F54 2381 0 R /F67 2922 0 R /F79 3573 0 R /F95 3709 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6944 0 obj
+<<
+/Length 1415      
+/Filter /FlateDecode
+>>
+stream
+x��XKs�F��W�H�D�}/������x��M4�8>���fF"U���_샔HQ�-y����W �>|��>�~��^��q�DJLn�Q,e��$	&��2$�FW��I�b��E���<��hLU�-�����Ί�Ȏ�MF��‴:�Ŕ����
+3��<��%q�`%	nL̃���F�����,�k��6r��EDy���B׺�	+�Y�r�C0�`=�!�1�R����0��8� �! MQL���"B��H������i�
��`������I��}DE��Wz�4���ǘfӜ#�e���Hag�b�.�Z�z��D�a�M?h ">
B'���%X>r��`�a�a��x��39�m�u�8����h���Vu�X��>����EY�jY��,����w}��޳ϱP����u�>B�%�G$�1��39�m�y�O��8���۶���}"�f�I�{�vQ*��!��:vc�uId�w���;�4��t��9�r���Hy�=��a\Z	�xgl��ōS`�Q�Q����:�8�W�t�S"�ћ�p0��1u��!F�!�A�8|�Q�w,0�#�uH�B��Ŀ�`*V�^,�i���J�$�Q����]�X6�z�s����7&ny�,������z�0!	P�^�=��93&�x (���L.���+?���Pr�?_?����[ZBf�D�w{9p�ɸ�����`�h���y+pvf���������8�n$�l�N��H^��,����^]�ge�J�W�v���0Os��@�����8��z?���&��1��_?r
+��z����l*���2+��ܿ��������.]D�V"��ݵ`��Ɗ�pr�UN��*�:�0-����=��jb`�����&aZ�7�a�<�Hs�<.
+��K8y{{������C�y�ѫ���Nu���k���ş��gUO��+fQCai�}v�*� C����.e�y("�gC�E׫2�zeٔZw�"���$F��@n��Qc��G*f��N���'�)���:x�^<�9����[
+���RD�Rʬ������aYso��1�ED�h�H^�aȭ�a��o�@"����`��Ϋ�����
ßʒ)e*l�4w+�^����mH�lA����{W"��@��}tc�l�����lz�u?�zf���V�#������s;�T1HWq�@�ZO��n�w]ծ)Lk���S���E�&�۶`}�-���g�Y��|���$�z
+snz���pkۤ$I��)����ou�M��c�>���c����m~��	��r��Ŀ��?ej��2��������^\7i�����>�
+�0#��~�|_�{���֚�@�V$�l&�\�iۮ��׍�v�Yߚc�z����LC�
+endstream
+endobj
+6943 0 obj
+<<
+/Type /Page
+/Contents 6944 0 R
+/Resources 6942 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6917 0 R
+/Annots [ 6920 0 R 6921 0 R 6922 0 R 6923 0 R 6924 0 R 6925 0 R 6926 0 R 6927 0 R 6928 0 R 6929 0 R 6930 0 R 6931 0 R 6932 0 R 6933 0 R 6934 0 R 6935 0 R ]
+>>
+endobj
+6920 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 667.306 153.096 675.687]
+/A << /S /GoTo /D (_variable_8h_source_l00474) >>
+>>
+endobj
+6921 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 667.203 219.069 675.687]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6922 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 558.492 119.683 565.051]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+6923 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 558.492 191.414 565.705]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6924 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [96.554 521.84 121.957 530.221]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+6925 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [348.058 521.737 391.457 530.221]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+6926 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [401.242 507.89 428.645 518.266]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+6927 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.569 424.706 215.868 433.477]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+6928 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 399.886 153.096 408.45]
+/A << /S /GoTo /D (_variable_8h_source_l00343) >>
+>>
+endobj
+6929 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 399.966 219.069 408.45]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6930 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.78 291.255 162.722 298.468]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6931 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [223.272 253.507 267.108 262.966]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a9b112a792be9ae8647bc58fd4e28c5bb) >>
+>>
+endobj
+6932 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [416.276 254.5 450.484 262.984]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6933 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.7 215.832 222.319 226.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_af07e6f343402f0f9280ede65d4b26fa0) >>
+>>
+endobj
+6934 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 192.823 153.096 201.388]
+/A << /S /GoTo /D (_variable_8h_source_l00375) >>
+>>
+endobj
+6935 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.518 192.904 219.069 201.388]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6945 0 obj
+<<
+/D [6943 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6946 0 obj
+<<
+/D [6943 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4592 0 obj
+<<
+/D [6943 0 R /XYZ 70.866 655.437 null]
+>>
+endobj
+1706 0 obj
+<<
+/D [6943 0 R /XYZ 70.866 628.242 null]
+>>
+endobj
+5043 0 obj
+<<
+/D [6943 0 R /XYZ 70.866 388.2 null]
+>>
+endobj
+1710 0 obj
+<<
+/D [6943 0 R /XYZ 70.866 361.005 null]
+>>
+endobj
+1714 0 obj
+<<
+/D [6943 0 R /XYZ 70.866 178.579 null]
+>>
+endobj
+6718 0 obj
+<<
+/D [6943 0 R /XYZ 70.866 132.05 null]
+>>
+endobj
+6942 0 obj
+<<
+/Font << /F48 2333 0 R /F67 2922 0 R /F54 2381 0 R /F73 2949 0 R /F33 2286 0 R /F79 3573 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6959 0 obj
+<<
+/Length 1640      
+/Filter /FlateDecode
+>>
+stream
+x��XK��6��W�(k.)J��h{HӤ	�M�\6AAK�-T�\�ή�}�/Y���H��@.&��Ǚ�7
+{{/gϖ��a�%(e�z˵c�0��i��w�'(�� N��^����8g��M�Ws��R�?/__�/��)�� ��p�����C0
+B�V,�	�/�!��=N�1"i�v�� ��%o[�TR�ݾ�R���b���25�8�IH����ϙ��錒$(	B/�ͮ?c/���F4M��r�EQH�_zf�����f`���Q��|A0�~V��Q?��JJ�pz1JcL����4�t*�q�[I|<��CQ��y܋���2dY���4E%M��4?�fA������X�ň�tp�3c�fc/����H�E@�-Ai��}ו�E%b�?:0����vXZ�n];eZ��8z�
+ 8e��d}K���s�3���^�5rzN��9n��cݱIG������8	de��oj)2)��f7�=��uň)tB�!w[s)~G�o��|��_�M+�z��+v^�)��oDۊ��ִ;�ևRy�U[�/�LU�9��3����G���$�6ko
+�5��$'0���
+�VB�LjX�O�|AS�/�vA'�BE9��kd��BM0�x[nc�Z���=)����/�t5`8���4@qj#ͧ�b�`��"���B)���6�%���Kn��ߝ���B�,�:�.\V7ps��ʋjca�I}���AC��A!=��R����龜�~�����7-1�W�j}�N}�+��8p�RMxD��'�5��qG�۱`#�?�W4dhHz��ZQ�(��Gr�J͋'��0�,-��ZZR�{%R�!�������.��-�#��"*��A����d�w}n:ƃ�Ԃ�Dd'A'_{�
�QtA�v�2	P��]��,�ۓ��8ˠV����AUȎ�%�z�Fq8��3��-@�8���u�-�����aT0��3P��bk���J[�n�����R�:q+�/B离����>Z�8��RyV	�m�&H�5EP�͊���EP�P�NE�&��ʟ(�F�mH�Uo!mHR=�ͪ�\�Us���;��ɍ/��UQ)ע�Tj��6��ō��1��8�:�(�:�4�Ty��'ԕ�utP}�vToo�������9N�?�!۞���%b�r�=[��2Q�mX[�Ka��T�X�0�_٨Y�Z��g�G��液Ȋ.��B��)��C
!%��k�������9D���b����ň��ZxMc��.�/��gM��My���z�J3T�js�z���[���u��b��.�b��p�ݾ�����>��� ��J�\}Ю�? )�EҺ�n�1���Ij��O�����I����G�gV�'��4�ދ:��@H�4�/RI�=m��Q��$E!撷f�t���$������8oV�4/ړ�&��m�7	]hN�S:�V�T�뒃��-�����������V�ɴp���[���=[�z�N���mZ�
+����-x�?V�F�zP�'.̻�Vg���Oz����^���y�N���FT���.%4�.%)Ԁ��~��tOr��}��0�Mv���F�����\;�i�+L�S�̺/�1{_d�1f�'�T�;Yne*�^���QN�p *��*n��
+endstream
+endobj
+6958 0 obj
+<<
+/Type /Page
+/Contents 6959 0 R
+/Resources 6957 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6917 0 R
+/Annots [ 6936 0 R 6937 0 R 6938 0 R 6939 0 R 6940 0 R 6941 0 R 6950 0 R 6951 0 R 6952 0 R 6953 0 R 6954 0 R 6955 0 R 6956 0 R ]
+>>
+endobj
+6936 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 716.132 114.901 723.344]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+6937 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.338 716.132 233.28 723.344]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6938 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [257.272 573.864 298.133 582.635]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+6939 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 549.227 148.111 557.608]
+/A << /S /GoTo /D (_variable_8h_source_l00074) >>
+>>
+endobj
+6940 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 549.124 214.084 557.608]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6941 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.595 440.413 271.536 447.626]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6950 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 368.866 93.059 377.318]
+/A << /S /GoTo /D (todo__todo000012) >>
+>>
+endobj
+6951 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 322.056 148.111 330.621]
+/A << /S /GoTo /D (_variable_8h_source_l00061) >>
+>>
+endobj
+6952 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 322.137 214.084 330.621]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6953 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.255 213.425 196.196 220.638]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+6954 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 151.769 148.111 160.334]
+/A << /S /GoTo /D (_variable_8h_source_l00051) >>
+>>
+endobj
+6955 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 151.85 214.084 160.334]
+/A << /S /GoTo /D (_variable_8h_source) >>
+>>
+endobj
+6956 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.148 94.239 173.699 102.723]
+/A << /S /GoTo /D (_variable_8h) >>
+>>
+endobj
+6960 0 obj
+<<
+/D [6958 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1718 0 obj
+<<
+/D [6958 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+3044 0 obj
+<<
+/D [6958 0 R /XYZ 70.866 537.358 null]
+>>
+endobj
+1722 0 obj
+<<
+/D [6958 0 R /XYZ 70.866 510.163 null]
+>>
+endobj
+6713 0 obj
+<<
+/D [6958 0 R /XYZ 70.866 310.371 null]
+>>
+endobj
+1726 0 obj
+<<
+/D [6958 0 R /XYZ 70.866 283.175 null]
+>>
+endobj
+6957 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6966 0 obj
+<<
+/Length 215       
+/Filter /FlateDecode
+>>
+stream
+xڕ�?o�0�w����>��
+�HlU�!���D�Z�(߾Nh�t����w�ޏ��+1O��#D�������*�^Cj`#5�ڦ5X�1[���T_.jfB�����殯����9����@�fƈ�0�Z��4e�B[E����Yt<�8��x��s�?��!Y���	٣	�dv��qQ�%r�[�.�}n��ʐ�O�ʒ���L��ީ`��IN
+endstream
+endobj
+6965 0 obj
+<<
+/Type /Page
+/Contents 6966 0 R
+/Resources 6964 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6917 0 R
+>>
+endobj
+6967 0 obj
+<<
+/D [6965 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6964 0 obj
+<<
+/Font << /F48 2333 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+6993 0 obj
+<<
+/Length 629       
+/Filter /FlateDecode
+>>
+stream
+xڵ�Mo�0���Bw�f�o�XlmS`@M}k{�%�(Y>���O���I�崓I|H�/�dJ�<$خ�����!�V%��҄ KEI5!�P�(�AhE�1yIog��֬���"-����	'@��$�b�t����i�����p[/�Pf�/
+B���t�)w�%�,�����=��b���h=���L2��Y;2ޓg
+�-�E�f�1LG�ǧ���.�+"���!F�Vѽ���R1�����T��|7v��9�r&�?�jc�J)OL��\r�e����g�kТl��r�Z�����\2�)(�7�r��SŁ:]��0'���g@�d��'�yq h��&8��K�K�QsU�0}_���l����9)_�]h�3^����1ydB^r)U���v/�P���~3O�4�/����F9�M]A��۷Ӊ!	(�^�{�wRk��* 9��qe�����a��h(5�V���e������?�i��*���Q%0�6��C[��B��m��kk�]u���[;��8L��Ip�M���J~%4����S2Z$/oH���5�kA~��"\�Ƞ�9yN����ʧ�i%:#Y���b	�5n��8�~��ފ!��y����ƞ��x�w,
+endstream
+endobj
+6992 0 obj
+<<
+/Type /Page
+/Contents 6993 0 R
+/Resources 6991 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6917 0 R
+/Annots [ 6968 0 R 6969 0 R 6970 0 R 6971 0 R ]
+>>
+endobj
+6968 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.698 357.336 137.135 367.605]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+6969 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [98.562 212.173 119.683 220.49]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+6970 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 188.396 143.126 196.961]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_source_l00006) >>
+>>
+endobj
+6971 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 186.585 239.718 197.167]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_source) >>
+>>
+endobj
+6994 0 obj
+<<
+/D [6992 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1730 0 obj
+<<
+/D [6992 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+6995 0 obj
+<<
+/D [6992 0 R /XYZ 70.866 570.668 null]
+>>
+endobj
+1734 0 obj
+<<
+/D [6992 0 R /XYZ 70.866 570.668 null]
+>>
+endobj
+3305 0 obj
+<<
+/D [6992 0 R /XYZ 70.866 529.202 null]
+>>
+endobj
+1738 0 obj
+<<
+/D [6992 0 R /XYZ 70.866 529.202 null]
+>>
+endobj
+6996 0 obj
+<<
+/D [6992 0 R /XYZ 70.866 398.988 null]
+>>
+endobj
+1742 0 obj
+<<
+/D [6992 0 R /XYZ 70.866 342.985 null]
+>>
+endobj
+3592 0 obj
+<<
+/D [6992 0 R /XYZ 70.866 298.267 null]
+>>
+endobj
+1746 0 obj
+<<
+/D [6992 0 R /XYZ 70.866 271.072 null]
+>>
+endobj
+3962 0 obj
+<<
+/D [6992 0 R /XYZ 70.866 187.582 null]
+>>
+endobj
+6991 0 obj
+<<
+/Font << /F67 2922 0 R /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7010 0 obj
+<<
+/Length 1379      
+/Filter /FlateDecode
+>>
+stream
+xڽZ]s�6}�W����i���2m���&3;ӇmyKv86�M��N��+�e�I��|u��սG���0�q7�u<��%����6�s�g̰d1h�g��f~4��Ä���[o%�kd����t�~��^�'Cƃ�P�,MrnqD��zp�3��ѐn��#��آ��+���؃	��@H�8�@Ա�y
������؆)&k�٤�2@�"G�睴�q�>0�1�`�Ż c�˜�l�r�̋1^�}K HA:���3:7���rl��9my��(����h�.�@DSл-�q�$��=���$��ꪁ��.�2�J�,�����Q8�����_˵��7OQm�y�2!�9�<�C�ۦ!i��Ͱj�M^>��vf�����kqy�b��2�C7�B��i\���p�h�00��N�b`w�ʻ����x<�D���>�@���j�N��ߔ���8�
+Q<��W>n���X��4���\��2r�m�����fT)�M6�J? ��2j���D�kџ�b+��+a�F؍�� �]V��!i�5]	ןD"���Mؼ��p+:����	����u�X�/Bl&��{�XŠ���b}����X���u���d>�OYyH�PV�ݦڔ�w�j����4�^��[�`O����y�� XuCE�7���]Ec��rx�7=��C�,^�cL���끎��7^�;�T)�c�ME{so��b�n�ez��Ų j-���f���{YWa��s
+���e�)φ��hTl��r����J=����ɬ�I��àe��D�S�=h%a��~���Ʀ�*�q��R]Y_�'��]mS6�tx�9��O�L5�,vh�B��H�(H�:V���{��/��PO��%��5�Tno��.M��*YܗMjMC���Ao�5�tb�����<74w_������Q��wtz_L��&HD�8�++r� =0z�ת
+A�’�󾘤��l�����(j��:3s��N�:V���KK�p;)�����+F��\�"E�Sk��{Qe��옺��)x»*x��P���l��Mr4R]ޥ�GQWz�tx�Ӡ��6�z�L��)UQ��r(��WuT���fq^��U�9�\�q�`��*�[�"�.0(����,���j�1D6/}e��d�E��X�A�Pg_���|`�y���J��i��@R0���G�)�z_�a��d��O��3�d87�$�����'i��a���w7�T�^
�ɗU������^�>f�o�T$0�Gs��a�K6�F�]H��n�9�������Μ�l}@ڼ��U���es����	�Z���O7j�e���J-��1o�o�0ٌ$oRJ,J���+^����@̲w2M���{+&ï��d�����i�
+
+endstream
+endobj
+7009 0 obj
+<<
+/Type /Page
+/Contents 7010 0 R
+/Resources 7008 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 6917 0 R
+/Annots [ 6972 0 R 6973 0 R 6974 0 R 6975 0 R 6976 0 R 6977 0 R 6978 0 R 6979 0 R 6980 0 R 6981 0 R 6982 0 R 6983 0 R 6984 0 R 6985 0 R 6986 0 R 6987 0 R 6988 0 R 6989 0 R 6990 0 R 6998 0 R 6999 0 R 7000 0 R 7001 0 R 7002 0 R 7003 0 R 7004 0 R 7005 0 R 7006 0 R 7007 0 R ]
+>>
+endobj
+6972 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 724.275 212.775 733.046]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp) >>
+>>
+endobj
+6973 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 715.415 201.576 722.941]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h) >>
+>>
+endobj
+6974 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 676.53 92.784 683.09]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+6975 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [120.082 675.564 138.811 683.09]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+6976 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 675.564 209.944 683.09]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+6977 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 660.59 92.784 667.15]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a00eedbeafcfe5ce10df76e8ac20ac6f3) >>
+>>
+endobj
+6978 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 659.624 239.235 667.15]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a00eedbeafcfe5ce10df76e8ac20ac6f3) >>
+>>
+endobj
+6979 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 644.65 180.654 651.21]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a4298d9cf83be4dcae422d98471ab1df5) >>
+>>
+endobj
+6980 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 635.714 130.443 642.668]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a92b3b5ff34fcfc3f72a28559275f78d1) >>
+>>
+endobj
+6981 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 628.709 147.18 633.85]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ae75c1ab7297f4cf3f25e31ec056df338) >>
+>>
+endobj
+6982 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 619.773 147.18 627.3]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a9c5a0645489d20461749953881ba7ab7) >>
+>>
+endobj
+6983 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 611.96 168.101 619.329]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a8e47ba510961e85709038796c458b0be) >>
+>>
+endobj
+6984 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 604.799 130.443 610.787]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a365e6700bb8b4d43539de661490b7574) >>
+>>
+endobj
+6985 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 595.863 155.549 603.389]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a62add1ea6d5351e35a6c829ecdb41e06) >>
+>>
+endobj
+6986 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 587.893 163.917 595.419]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a45ece5471e689eda8ee1c1e15acfc03b) >>
+>>
+endobj
+6987 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 580.08 214.129 587.449]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ad33e07f1c8389126541445253cbfff52) >>
+>>
+endobj
+6988 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 572.919 147.18 579.479]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a73f639dad1b94cc09de808519a7855fe) >>
+>>
+endobj
+6989 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 563.983 159.733 571.509]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ab5887b09a89a934dcda3493f17dccd78) >>
+>>
+endobj
+6990 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 556.978 172.286 563.539]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ac23db9e2e0f174a59f294a4a5139a097) >>
+>>
+endobj
+6998 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 548.042 180.654 555.569]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ae61824192da779011f60eded6903db9b) >>
+>>
+endobj
+6999 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 540.072 251.788 547.598]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_aa943275c72ea7cc94bd9de56c0dfaa9d) >>
+>>
+endobj
+7000 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 532.259 197.392 539.628]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ad33e07f1c8389126541445253cbfff52) >>
+>>
+endobj
+7001 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 509.158 92.784 515.718]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a76525cfc37fb8ddc692db93fd6fb5e6f) >>
+>>
+endobj
+7002 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 508.192 239.235 515.718]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a00eedbeafcfe5ce10df76e8ac20ac6f3) >>
+>>
+endobj
+7003 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 484.281 130.443 491.808]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+7004 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 333.815 92.784 340.376]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_af3d0a9c0e14065afc259ad219a4e4458) >>
+>>
+endobj
+7005 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 332.849 243.419 340.376]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_af3d0a9c0e14065afc259ad219a4e4458) >>
+>>
+endobj
+7006 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 301.935 92.784 308.495]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ac4b05210a99b650da641d3966266ec04) >>
+>>
+endobj
+7007 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 300.969 247.603 308.495]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ac4b05210a99b650da641d3966266ec04) >>
+>>
+endobj
+7011 0 obj
+<<
+/D [7009 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1750 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+7012 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 725.455 null]
+>>
+endobj
+7013 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 717.485 null]
+>>
+endobj
+7014 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 709.515 null]
+>>
+endobj
+7015 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 701.545 null]
+>>
+endobj
+7016 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 693.575 null]
+>>
+endobj
+6997 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 685.604 null]
+>>
+endobj
+7017 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 677.634 null]
+>>
+endobj
+3961 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 669.664 null]
+>>
+endobj
+7018 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 661.694 null]
+>>
+endobj
+7019 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 653.724 null]
+>>
+endobj
+7020 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 645.754 null]
+>>
+endobj
+7021 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 637.784 null]
+>>
+endobj
+7022 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 629.814 null]
+>>
+endobj
+7023 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 621.844 null]
+>>
+endobj
+7024 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 613.873 null]
+>>
+endobj
+7025 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 605.903 null]
+>>
+endobj
+7026 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 597.933 null]
+>>
+endobj
+7027 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 589.963 null]
+>>
+endobj
+7028 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 581.993 null]
+>>
+endobj
+7029 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 574.023 null]
+>>
+endobj
+7030 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 566.053 null]
+>>
+endobj
+7031 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 558.083 null]
+>>
+endobj
+7032 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 550.113 null]
+>>
+endobj
+7033 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 542.142 null]
+>>
+endobj
+7034 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 534.172 null]
+>>
+endobj
+7035 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 526.202 null]
+>>
+endobj
+3977 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 518.232 null]
+>>
+endobj
+7036 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 510.262 null]
+>>
+endobj
+7037 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 502.292 null]
+>>
+endobj
+7038 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 494.322 null]
+>>
+endobj
+7039 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 486.352 null]
+>>
+endobj
+7040 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 478.382 null]
+>>
+endobj
+7041 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 470.411 null]
+>>
+endobj
+7042 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 462.441 null]
+>>
+endobj
+7043 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 454.471 null]
+>>
+endobj
+7044 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 446.501 null]
+>>
+endobj
+7045 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 438.531 null]
+>>
+endobj
+7046 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 430.561 null]
+>>
+endobj
+7047 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 422.591 null]
+>>
+endobj
+7048 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 414.621 null]
+>>
+endobj
+7049 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 406.651 null]
+>>
+endobj
+7050 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 398.68 null]
+>>
+endobj
+7051 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 390.71 null]
+>>
+endobj
+7052 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 382.74 null]
+>>
+endobj
+7053 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 374.77 null]
+>>
+endobj
+7054 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 366.8 null]
+>>
+endobj
+7055 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 358.83 null]
+>>
+endobj
+7056 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 350.86 null]
+>>
+endobj
+3978 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 342.89 null]
+>>
+endobj
+7057 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 334.92 null]
+>>
+endobj
+7058 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 326.949 null]
+>>
+endobj
+7059 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 318.979 null]
+>>
+endobj
+3979 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 311.009 null]
+>>
+endobj
+7060 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 303.039 null]
+>>
+endobj
+7061 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 295.069 null]
+>>
+endobj
+7062 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 287.099 null]
+>>
+endobj
+7063 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 279.129 null]
+>>
+endobj
+7064 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 271.159 null]
+>>
+endobj
+7065 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 263.189 null]
+>>
+endobj
+7066 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 255.218 null]
+>>
+endobj
+7067 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 247.248 null]
+>>
+endobj
+7068 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 239.278 null]
+>>
+endobj
+7069 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 231.308 null]
+>>
+endobj
+7070 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 223.338 null]
+>>
+endobj
+7071 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 215.368 null]
+>>
+endobj
+7072 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 207.398 null]
+>>
+endobj
+7073 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 199.428 null]
+>>
+endobj
+7074 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 191.458 null]
+>>
+endobj
+7075 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 183.487 null]
+>>
+endobj
+7076 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 175.517 null]
+>>
+endobj
+7077 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 167.547 null]
+>>
+endobj
+7078 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 159.577 null]
+>>
+endobj
+7079 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 151.607 null]
+>>
+endobj
+7080 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 143.637 null]
+>>
+endobj
+7081 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 135.667 null]
+>>
+endobj
+7082 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 127.697 null]
+>>
+endobj
+7083 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 119.727 null]
+>>
+endobj
+7084 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 111.756 null]
+>>
+endobj
+7085 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 103.786 null]
+>>
+endobj
+7086 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 95.816 null]
+>>
+endobj
+7087 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 87.846 null]
+>>
+endobj
+7088 0 obj
+<<
+/D [7009 0 R /XYZ 70.866 79.876 null]
+>>
+endobj
+7008 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7108 0 obj
+<<
+/Length 1195      
+/Filter /FlateDecode
+>>
+stream
+xڵXKs�6��W��Ej�4I��n�Ц�̞ڭ{J2�M��ز++��鴿��C6��#Is�����A����O���:�H�T���(!X
+���aA�x�n���%2�!#�t��կß��!�ᩘ��:����
+]gKe�>�yHI�
+�OͣH����~���˸�W���Ψ�X�MW��{�f��"8J%�j$W(��q�K�{���183�#�bRyB�Q8�1!�?�$�d�:v�7�r\]�`S��~
+mԻ�|�C�F��w�(���9Ct?���$�����0zU>y���)�<�f}�x�o��ߥ��*[����S�-g�Q��s[Y�pG8٬��i��t�"�e\v�2�+�����e8��kN�T�qD�WTG�M�awS(B&��(�2uN|�����LY�}00�v���Jq�yc�QΘ�*(��"V�C��'qZ	���b5����V[g�*)��-vK>v�Pa
+�N0�@5Yu(�)��c��t^	Nx����p�)Vr
+<o�Lͷ5�����T�D&h��?���c�7I͹��@�8��٪�[�:�ͥ�����IGH��hTɶ�q�b�8�#+����kV��z��Ryi(�Ӹ��%$f��t���Q@ztZ��CX͚�OQ�\Z�WL���e�ԓp�t��ɸ9)��2���,��]����	�.�+}�	�>��p��ҍ���ܬ�#e��p�iV�A��r�mk�Sn�{uQۀ�-�P�y� �n30X�ɞ��w0�A�#��N��{Z���@h�Ϗ'Fo4��)3�h�$�@���6uh�~���_Z�G[D�����g;�����Ѩƺ�m�\���5lis�w���pH̨7]fP��Vk�.դ�w����(=7n��c��h�?�v�T>Y���ѱ�����FqVMfE�k�ڪo���(?��C$<�
�Y���£�������|]t��Q�@�J�)�2�����3�����:#��/�!��\�����4��Y����a&�.%�Tb���[��H�3=QR̘c��LN2F��̜f��m2�j���}--;$	���}kð,�n��f���s/c���N��}i���
���wr���4Vշc�9�%^Dv8���p�ID_����TMD�}4��Sw�Q�.~5���}�}�N
aD�o�z<
Tބ�=�UE
+endstream
+endobj
+7107 0 obj
+<<
+/Type /Page
+/Contents 7108 0 R
+/Resources 7106 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7144 0 R
+/Annots [ 7089 0 R 7090 0 R 7091 0 R 7092 0 R 7093 0 R 7094 0 R 7095 0 R 7096 0 R 7097 0 R 7098 0 R 7099 0 R 7100 0 R 7101 0 R 7102 0 R 7103 0 R 7104 0 R 7105 0 R ]
+>>
+endobj
+7089 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.698 524.067 137.135 534.335]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+7090 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [98.562 386.139 119.683 394.456]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+7091 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 364.078 143.126 372.338]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp_source_l00005) >>
+>>
+endobj
+7092 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 362.267 239.718 372.849]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp_source) >>
+>>
+endobj
+7093 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 284.879 212.775 293.65]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp) >>
+>>
+endobj
+7094 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 276.019 201.576 283.545]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h) >>
+>>
+endobj
+7095 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 245.104 92.784 251.665]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+7096 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [120.082 244.138 138.811 251.665]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+7097 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 244.138 209.944 251.665]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+7098 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 229.164 92.784 235.724]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_ad8e8aaa5d502e7688ff6b08b50a523ed) >>
+>>
+endobj
+7099 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 228.198 235.05 235.724]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_ad8e8aaa5d502e7688ff6b08b50a523ed) >>
+>>
+endobj
+7100 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 213.224 142.996 219.784]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a320ba9474ff76cbc5626d667a4388a55) >>
+>>
+endobj
+7101 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 189.313 92.784 195.874]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a16a012d0744f694e3f9f9865ce89c624) >>
+>>
+endobj
+7102 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 188.348 235.05 195.874]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_ad8e8aaa5d502e7688ff6b08b50a523ed) >>
+>>
+endobj
+7103 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 164.437 130.443 171.963]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+7104 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 93.672 92.784 100.232]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_accb7231b058bddbcde4345ee13cc7ada) >>
+>>
+endobj
+7105 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 92.706 239.235 100.232]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_accb7231b058bddbcde4345ee13cc7ada) >>
+>>
+endobj
+7109 0 obj
+<<
+/D [7107 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+7110 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+7111 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+7112 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+7113 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+7114 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+7115 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+7116 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+7117 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+3381 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 705.162 null]
+>>
+endobj
+1754 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 688.937 null]
+>>
+endobj
+7118 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 564.003 null]
+>>
+endobj
+1758 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 509.902 null]
+>>
+endobj
+7119 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 468.616 null]
+>>
+endobj
+1762 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 441.608 null]
+>>
+endobj
+4087 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 363.263 null]
+>>
+endobj
+1766 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 347.038 null]
+>>
+endobj
+7120 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+7121 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+7122 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+7123 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+7124 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+7125 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+4086 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+7126 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+7127 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+7128 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+7129 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+4088 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+7130 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+7131 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+7132 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+7133 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+7134 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+7135 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+7136 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+7137 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+7138 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+7139 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+7140 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+4089 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+7141 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+7142 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+7143 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+3306 0 obj
+<<
+/D [7107 0 R /XYZ 70.866 70.099 null]
+>>
+endobj
+7106 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7187 0 obj
+<<
+/Length 1103      
+/Filter /FlateDecode
+>>
+stream
+xڽX[��8}�WXӗ��c��öK���Rgy�V(D
	��NG��o_;.!0!񀈜/>络������ߧ�ф �J
+� ��R(0�����Y0�6��yG�0VÓ8�C�����E۵N˰��Ԛ���`c���M0 D���7���'`fTx�,׀q
+9��9�P�&&Pa�y
+QKTA1�1B�+�!A^4���t:z��_"�m^�������^1�t��H[��	g@��a��)���M�F�v�Xr`i�K�O��=sI(�j
�2��e�<�zט���W2L��1T�w����.�ҢӲ���z
+C%W�_�A�T���$,
+]T	l#?�PzPX@H�fRY��~�	x�9^dgk^�*ȗM9�W&6�6;��>=6	&EC�5e�Ny�ߝq4��'JZ��@�lpT��D-Z��e��>�bI�be�Q�E]N�l�"�SQ�|F ���+\�bF��$�ʴ���pv �5㷠LB�w���hNu��񤣎�Y²�_5*�u�j([�6qQ?YF��{�㊩~��A�)�M�E4���!��b�+��#u��8�l�p�k�d�.�M�O�ȫ�������P�u(wg�;�����x�0;�xb�;����o�ǽS�z?'���T�'ࢎϿ�l1ucK�n;�N������+j�-�Vo�]�lX�U>����}�KLM�K�C��F������b[����Rv��UV�]����#QWNg�.`���x�~�<NK��d�#s����뢹-tn��Ƌ!W^L^�kc������[o.]�q~E��,q�u��0���Pq"�s������n�e��(�+'In!��Zofa�p,X��|��8��u>�օ�y����M����:�kͬ��:ۖ3GW�sWS�&"-�ĉ���:2�Hބ��NjgG�cq�O��Ȣ�ڭa,]�v��S��L\#��:R���xGa�g�\ey\:f�����x��ŽҜ/G��!�V�Bƫ��"N�ݹ���Q��x��W��e��%�4��,�/Oi��z������\��i����l-_sw�ޙ	H�`���8����9�����Sm�����	yno��y?���z��i���62��
+endstream
+endobj
+7186 0 obj
+<<
+/Type /Page
+/Contents 7187 0 R
+/Resources 7185 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7144 0 R
+/Annots [ 7145 0 R 7146 0 R 7147 0 R 7148 0 R 7149 0 R 7150 0 R 7151 0 R 7152 0 R 7153 0 R 7154 0 R 7155 0 R 7156 0 R 7157 0 R 7158 0 R 7159 0 R 7160 0 R 7161 0 R 7162 0 R 7163 0 R 7164 0 R 7165 0 R 7166 0 R 7167 0 R 7168 0 R 7169 0 R 7170 0 R 7171 0 R 7172 0 R 7173 0 R 7174 0 R 7175 0 R 7176 0 R 7177 0 R 7178 0 R 7179 0 R 7180 0 R 7181 0 R 7182 0 R 7183 0 R 7184 0 R ]
+>>
+endobj
+7145 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 631.68 203.306 642.262]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7146 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 618.279 133.804 626.658]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7147 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 551.355 171.009 560.444]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7148 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 468.856 212.775 477.627]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8h) >>
+>>
+endobj
+7149 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 445.022 184.839 451.582]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+7150 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 429.082 92.784 435.642]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7151 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 428.273 155.549 435.335]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7152 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 413.141 92.784 419.702]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7153 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 412.175 209.944 419.702]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7154 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 389.231 92.784 395.791]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a4298d9cf83be4dcae422d98471ab1df5) >>
+>>
+endobj
+7155 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 389.231 197.392 395.791]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a4298d9cf83be4dcae422d98471ab1df5) >>
+>>
+endobj
+7156 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 373.291 92.784 379.851]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a92b3b5ff34fcfc3f72a28559275f78d1) >>
+>>
+endobj
+7157 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 372.325 163.917 379.279]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a92b3b5ff34fcfc3f72a28559275f78d1) >>
+>>
+endobj
+7158 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 357.351 92.784 363.911]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ae75c1ab7297f4cf3f25e31ec056df338) >>
+>>
+endobj
+7159 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 357.351 214.129 362.492]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ae75c1ab7297f4cf3f25e31ec056df338) >>
+>>
+endobj
+7160 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 341.41 92.784 347.971]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a9c5a0645489d20461749953881ba7ab7) >>
+>>
+endobj
+7161 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 340.444 214.129 347.971]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a9c5a0645489d20461749953881ba7ab7) >>
+>>
+endobj
+7162 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 325.47 92.784 332.03]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a8e47ba510961e85709038796c458b0be) >>
+>>
+endobj
+7163 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 324.661 205.76 332.03]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a8e47ba510961e85709038796c458b0be) >>
+>>
+endobj
+7164 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 309.53 92.784 316.09]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a365e6700bb8b4d43539de661490b7574) >>
+>>
+endobj
+7165 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 309.53 197.392 315.518]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a365e6700bb8b4d43539de661490b7574) >>
+>>
+endobj
+7166 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 293.59 92.784 300.15]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a62add1ea6d5351e35a6c829ecdb41e06) >>
+>>
+endobj
+7167 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 292.624 189.023 300.15]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a62add1ea6d5351e35a6c829ecdb41e06) >>
+>>
+endobj
+7168 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 277.649 92.784 284.21]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a45ece5471e689eda8ee1c1e15acfc03b) >>
+>>
+endobj
+7169 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 276.684 197.392 284.21]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a45ece5471e689eda8ee1c1e15acfc03b) >>
+>>
+endobj
+7170 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 261.709 92.784 268.27]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ad33e07f1c8389126541445253cbfff52) >>
+>>
+endobj
+7171 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 260.9 230.866 268.27]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ad33e07f1c8389126541445253cbfff52) >>
+>>
+endobj
+7172 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 245.769 92.784 252.329]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a73f639dad1b94cc09de808519a7855fe) >>
+>>
+endobj
+7173 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 245.769 163.917 252.329]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a73f639dad1b94cc09de808519a7855fe) >>
+>>
+endobj
+7174 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 229.829 92.784 236.389]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ab5887b09a89a934dcda3493f17dccd78) >>
+>>
+endobj
+7175 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 228.863 176.47 236.389]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ab5887b09a89a934dcda3493f17dccd78) >>
+>>
+endobj
+7176 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 213.888 92.784 220.449]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ac23db9e2e0f174a59f294a4a5139a097) >>
+>>
+endobj
+7177 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 213.888 189.023 220.449]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ac23db9e2e0f174a59f294a4a5139a097) >>
+>>
+endobj
+7178 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 197.948 92.784 204.509]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ae61824192da779011f60eded6903db9b) >>
+>>
+endobj
+7179 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 196.982 197.392 204.509]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ae61824192da779011f60eded6903db9b) >>
+>>
+endobj
+7180 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 182.008 92.784 188.568]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_aa943275c72ea7cc94bd9de56c0dfaa9d) >>
+>>
+endobj
+7181 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 181.042 268.525 188.568]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_aa943275c72ea7cc94bd9de56c0dfaa9d) >>
+>>
+endobj
+7182 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 165.102 184.839 172.628]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7183 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 149.162 184.839 156.688]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7184 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 133.222 189.023 140.748]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7188 0 obj
+<<
+/D [7186 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1770 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+7189 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 673.439 null]
+>>
+endobj
+7190 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 591.621 null]
+>>
+endobj
+3960 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 541.003 null]
+>>
+endobj
+1774 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 534.553 null]
+>>
+endobj
+7191 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 470.036 null]
+>>
+endobj
+7192 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 462.066 null]
+>>
+endobj
+7193 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 454.096 null]
+>>
+endobj
+7194 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 446.126 null]
+>>
+endobj
+7195 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 438.156 null]
+>>
+endobj
+7196 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 430.186 null]
+>>
+endobj
+3959 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 422.216 null]
+>>
+endobj
+7197 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 414.246 null]
+>>
+endobj
+7198 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 406.276 null]
+>>
+endobj
+4000 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 398.305 null]
+>>
+endobj
+7199 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 390.335 null]
+>>
+endobj
+4022 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 382.365 null]
+>>
+endobj
+7200 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 374.395 null]
+>>
+endobj
+4046 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 366.425 null]
+>>
+endobj
+7201 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 358.455 null]
+>>
+endobj
+4020 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 350.485 null]
+>>
+endobj
+7202 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 342.515 null]
+>>
+endobj
+3998 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 334.544 null]
+>>
+endobj
+7203 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 326.574 null]
+>>
+endobj
+4044 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 318.604 null]
+>>
+endobj
+7204 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 310.634 null]
+>>
+endobj
+4018 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 302.664 null]
+>>
+endobj
+7205 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 294.694 null]
+>>
+endobj
+4019 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 286.724 null]
+>>
+endobj
+7206 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 278.754 null]
+>>
+endobj
+3999 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 270.784 null]
+>>
+endobj
+7207 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 262.813 null]
+>>
+endobj
+4045 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 254.843 null]
+>>
+endobj
+7208 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 246.873 null]
+>>
+endobj
+4047 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 238.903 null]
+>>
+endobj
+7209 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 230.933 null]
+>>
+endobj
+4065 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 222.963 null]
+>>
+endobj
+7210 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 214.993 null]
+>>
+endobj
+4021 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 207.023 null]
+>>
+endobj
+7211 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 199.053 null]
+>>
+endobj
+3997 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 191.082 null]
+>>
+endobj
+7212 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 183.112 null]
+>>
+endobj
+7213 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 175.142 null]
+>>
+endobj
+7214 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 167.172 null]
+>>
+endobj
+7215 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 159.202 null]
+>>
+endobj
+7216 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 151.232 null]
+>>
+endobj
+7217 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 143.262 null]
+>>
+endobj
+7218 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 135.292 null]
+>>
+endobj
+7219 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 127.322 null]
+>>
+endobj
+7220 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 119.351 null]
+>>
+endobj
+7221 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 111.381 null]
+>>
+endobj
+3382 0 obj
+<<
+/D [7186 0 R /XYZ 70.866 102.644 null]
+>>
+endobj
+7185 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7245 0 obj
+<<
+/Length 1027      
+/Filter /FlateDecode
+>>
+stream
+xڵW�o�H~�X5/ ��^/���樮j�k�SҪr�!����5�z��zm���D�I���|�|;3;&h�z�{1�&�C6Jq4�#M��҆aE�t���{�!�^?����o��L⏄��v�gQ�g2���{z����Mvɓ���0�O�׽ߧ�z(Dw���=&P���"h�^#���п��
+	ɱ���޻i�A6��j�bR�B.��&R �1e�r�Q�*���v� =�8��8K��3�ٚS���
��1c����3�n��XS��u���ἴ�iq2��x��U�m�x��4�'T'f�`-�cf4�����,_.�4
�<��M �}S���ѐ	�(��#c����T��z+^�d�,��|����$��Ybs2e@�I\�x���p4і&QF[��af :*������#�^l�iv���y�ƭG�
&��a"�w�*L�~��!.vD�^��Rh���MQ�ގֈ�Qޯ����C�&fI�]�q�͗�yi�����B�S�
+�����+0�l�C�:k,mG��Ôɜt}�ie���z�/V�kBI�������=��掞\�������x�0���5t˛q!�k}](eE�^��ǽ�f}��u���Y(���Q�~�؊
t���&v;]n+��Tw�n�n߼9^����<*+�tT���Z����5ߺ�~YFA��;T�a0z�(R�V��g0J�Ȓf���:pi�;�(�n��(A�dsZ���.��1vv��A�ݬOs
����L��u���9����~h;$W��}q)fE-'�&M[���ٺ,i��.@���~y����a��LIc�~�n:U��>��kYc	�h��r���3	==�\�B{[�C���q�a ���6=Y�
�j�oA�v�s���#-����>�g�I��A�=����`Z�NF�붂U�Ԧ�jLm�tRb��S>��O9��V��%'`S�ƶӅ3��e�X�Z|{\؀�����u
+endstream
+endobj
+7244 0 obj
+<<
+/Type /Page
+/Contents 7245 0 R
+/Resources 7243 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7144 0 R
+/Annots [ 7222 0 R 7223 0 R 7224 0 R 7225 0 R 7226 0 R 7227 0 R 7228 0 R 7229 0 R 7230 0 R 7231 0 R 7232 0 R 7233 0 R 7234 0 R 7235 0 R 7236 0 R 7237 0 R 7238 0 R 7239 0 R ]
+>>
+endobj
+7222 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 619.724 196.832 630.307]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+7223 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 606.61 127.977 614.518]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+7224 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.228 606.683 166.55 614.518]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+7225 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.801 604.98 216.702 614.703]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+7226 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 539.718 164.536 548.283]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+7227 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 456.901 212.775 465.672]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h) >>
+>>
+endobj
+7228 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 441.037 184.839 447.597]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+7229 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 417.126 155.549 423.115]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+7230 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 401.186 92.784 407.746]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+7231 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 400.22 209.944 407.746]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+7232 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 377.276 92.784 383.836]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a2f1e39379df27d5d6f81987dcade6053) >>
+>>
+endobj
+7233 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [316.744 377.276 352.211 383.836]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a2f1e39379df27d5d6f81987dcade6053) >>
+>>
+endobj
+7234 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 361.336 92.784 367.896]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a320ba9474ff76cbc5626d667a4388a55) >>
+>>
+endobj
+7235 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 361.336 272.709 367.896]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a320ba9474ff76cbc5626d667a4388a55) >>
+>>
+endobj
+7236 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 344.429 184.839 351.956]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+7237 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 328.489 184.839 336.015]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+7238 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 312.549 189.023 320.075]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+7239 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.678 186.977 195.424 196.434]
+/A << /S /GoTo /D (_m_q_t_t_2constants_8h_ac50762666aa00bd3a4308158510f1748) >>
+>>
+endobj
+7246 0 obj
+<<
+/D [7244 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1778 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+7247 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 661.484 null]
+>>
+endobj
+7248 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 579.666 null]
+>>
+endobj
+4072 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 529.048 null]
+>>
+endobj
+1782 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 522.598 null]
+>>
+endobj
+7249 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 458.081 null]
+>>
+endobj
+7250 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 450.111 null]
+>>
+endobj
+7251 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 442.141 null]
+>>
+endobj
+7252 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 434.171 null]
+>>
+endobj
+7253 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 426.201 null]
+>>
+endobj
+7254 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 418.231 null]
+>>
+endobj
+4071 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 410.261 null]
+>>
+endobj
+7255 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 402.29 null]
+>>
+endobj
+7256 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 394.32 null]
+>>
+endobj
+4085 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 386.35 null]
+>>
+endobj
+7257 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 378.38 null]
+>>
+endobj
+4118 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 370.41 null]
+>>
+endobj
+7258 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 362.44 null]
+>>
+endobj
+7259 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 354.47 null]
+>>
+endobj
+7260 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 346.5 null]
+>>
+endobj
+7261 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 338.53 null]
+>>
+endobj
+7262 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 330.559 null]
+>>
+endobj
+7263 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 322.589 null]
+>>
+endobj
+7264 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 314.619 null]
+>>
+endobj
+7265 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 306.649 null]
+>>
+endobj
+3307 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 297.912 null]
+>>
+endobj
+1786 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 281.499 null]
+>>
+endobj
+7266 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 227.817 null]
+>>
+endobj
+1790 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 157.166 null]
+>>
+endobj
+7267 0 obj
+<<
+/D [7244 0 R /XYZ 70.866 112.153 null]
+>>
+endobj
+7243 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7276 0 obj
+<<
+/Length 956       
+/Filter /FlateDecode
+>>
+stream
+x��W�n�@���vc/<�7PU]Tn�>�&V�H*��؞
+C
+�I����lc[�n#uas�9�\g�.���� ��Lf�G0�!��I�����@�3ʄ�h��U*�#��q��2��J�y�{7�~yX���nC�һ��@��}�:b�{��0N!gT_�����^�C��!FC<a��`���J���Ā:;��0�6Q=f'�L�Le���N�#�A]J7p�(�iZ�[�[����,�lH�@2�eR?4xt��(b����B���s]T����"/��]���q�<Z�Ui�@+Uˡ��H��<vVT�N
e#�S��ג]^x�ھAP��)Q��37��M{"hee5�E'�l����̇��mTm����iw�
+$\���!���,�j�-��B�[|�:�<lo	�[4�s�Fs5j�U��}r�?�n�l��Z�6|yWD�e�z2���]͝��	��t�ƿ�'Cxt������>*L�� �UF��|�0±�{A�Fό��Q�A�@�ϝ��?}��DN���ș4.�4�qZ���ROS�p���S˴�i]̞��Z>�#?�c��YOpqtp���U���NW�z�N�@�?�΁�FUU��U%mvd~�U�nU��Gs�BO4_�݅߀m~{�G|��u���Ex�{�����n�P?��M�ZE(�)�8]%5��W����o���7=��?���$��$���W��廫�٦c��I���3[�}��<��k�jS|�b9/;����mcxC�)΅i��z<Ժ��x��lג����o�!a�B 	)aC��غ��V�-c�}�y�nj
+�mDC�-��ӵ8�3o�Xov��Ά���M{a�|3��Ɵ����~��ƿ]&�����v��CD�1�f�( �3:1� ��3��@f���}��sSՇǹ�%�	�b��哎
+endstream
+endobj
+7275 0 obj
+<<
+/Type /Page
+/Contents 7276 0 R
+/Resources 7274 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7144 0 R
+/Annots [ 7240 0 R 7241 0 R 7242 0 R 7268 0 R 7269 0 R 7270 0 R 7271 0 R ]
+>>
+endobj
+7240 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 678.386 148.111 686.95]
+/A << /S /GoTo /D (_m_q_t_t_2constants_8h_source_l00020) >>
+>>
+endobj
+7241 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 678.466 220.244 686.95]
+/A << /S /GoTo /D (_m_q_t_t_2constants_8h_source) >>
+>>
+endobj
+7242 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 595.569 212.775 604.34]
+/A << /S /GoTo /D (_m_q_t_t_2constants_8h) >>
+>>
+endobj
+7268 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 476.093 92.784 482.653]
+/A << /S /GoTo /D (_m_q_t_t_2constants_8h_ac50762666aa00bd3a4308158510f1748) >>
+>>
+endobj
+7269 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.678 341.585 195.424 351.042]
+/A << /S /GoTo /D (_r_e_s_t_2constants_8h_ac50762666aa00bd3a4308158510f1748) >>
+>>
+endobj
+7270 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 132.069 148.111 140.634]
+/A << /S /GoTo /D (_r_e_s_t_2constants_8h_source_l00019) >>
+>>
+endobj
+7271 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 132.15 220.244 140.634]
+/A << /S /GoTo /D (_r_e_s_t_2constants_8h_source) >>
+>>
+endobj
+7277 0 obj
+<<
+/D [7275 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1794 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+7278 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 679.382 null]
+>>
+endobj
+1798 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 662.969 null]
+>>
+endobj
+7279 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 596.749 null]
+>>
+endobj
+7280 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 588.779 null]
+>>
+endobj
+7281 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 580.809 null]
+>>
+endobj
+7282 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 572.839 null]
+>>
+endobj
+7283 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 564.868 null]
+>>
+endobj
+7284 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 556.898 null]
+>>
+endobj
+7285 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 548.928 null]
+>>
+endobj
+7286 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 540.958 null]
+>>
+endobj
+7287 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 532.988 null]
+>>
+endobj
+7288 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 525.018 null]
+>>
+endobj
+7289 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 517.048 null]
+>>
+endobj
+7290 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 509.078 null]
+>>
+endobj
+7291 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 501.108 null]
+>>
+endobj
+7292 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 493.137 null]
+>>
+endobj
+7293 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 485.167 null]
+>>
+endobj
+7294 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 477.197 null]
+>>
+endobj
+7295 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 469.227 null]
+>>
+endobj
+7296 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 461.257 null]
+>>
+endobj
+3313 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 453.064 null]
+>>
+endobj
+1802 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 436.651 null]
+>>
+endobj
+7297 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 382.425 null]
+>>
+endobj
+1806 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 311.774 null]
+>>
+endobj
+7298 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 266.761 null]
+>>
+endobj
+1810 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 239.565 null]
+>>
+endobj
+7299 0 obj
+<<
+/D [7275 0 R /XYZ 70.866 133.065 null]
+>>
+endobj
+7274 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7309 0 obj
+<<
+/Length 971       
+/Filter /FlateDecode
+>>
+stream
+x��XM��6��+��M���6�1U�E���}t����E�)b�ɸ"0�7��kcC�d^>�i��"1��s�����7�O3��
+ `ȹfK (8AH �`���(��OH Fq��U�U%|�}���	�C�1æ��y���a݋�n
+� ^{�/$����
+�����Q__�����C���c�e�1D}�!4��Y&��Q�|��~G5�@�|�&�z��}��"���ZfUT�<�]���J{u�I��t�V��5���0����EԬQ���nn�@fҥs
1a��~�����TD�u4�o�,�=�����j�ȥ������O ���*t�U�5*2���C�*��T~oP°��H�oL"`�I`t	Bu;H��ӧ�Hx��ի�T&-�����D�i�$�Z{��秼���LΕ,��@��
����H��l�Y�������T�Z�:�g��d�y�8B?W�+i���P�J�����R�zP��^��;=1ڤջ>��Ȑm~{�G|��uL��+�ݑa/�)<�ɲǨ��������q����&��"*��M�t�p7�8�~�M���P�XɡQ� �B���:�Pc�������۫�a����*u���:]Xo�B�7��@0`!o��A�,�/Q\G������"�B�.6;�6��	c����|�&�5�m	��HW� ��[S[z����Y�%дH�	��:zS���6uf��R�9�S��{�T�ȸ���6�C��ntJ(�.�ny�4�X����Y��g�8�zR7x�����ڛ�r4�RO&� ses�V�u�����ԃ��^6��������(3N���ډekƫHem����r�ެP�de�G[ZA����Fnz�����s��%vF��ڝW�{�����֦f�1��C��=�1��1�on����/��Օl�}���ǧ|zl>9rHN;_)�\7�,�LQ�ϵMs㻞_VƗ�ޣ�)�
����
+endstream
+endobj
+7308 0 obj
+<<
+/Type /Page
+/Contents 7309 0 R
+/Resources 7307 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7144 0 R
+/Annots [ 7272 0 R 7273 0 R 7301 0 R 7302 0 R 7303 0 R 7304 0 R 7305 0 R ]
+>>
+endobj
+7272 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 727.078 212.775 735.849]
+/A << /S /GoTo /D (_r_e_s_t_2constants_8h) >>
+>>
+endobj
+7273 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 607.602 92.784 614.163]
+/A << /S /GoTo /D (_r_e_s_t_2constants_8h_ac50762666aa00bd3a4308158510f1748) >>
+>>
+endobj
+7301 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.678 481.81 195.424 491.267]
+/A << /S /GoTo /D (_s_i_g_n_2constants_8h_ac50762666aa00bd3a4308158510f1748) >>
+>>
+endobj
+7302 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 290.052 148.111 298.617]
+/A << /S /GoTo /D (_s_i_g_n_2constants_8h_source_l00019) >>
+>>
+endobj
+7303 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 290.133 220.244 298.617]
+/A << /S /GoTo /D (_s_i_g_n_2constants_8h_source) >>
+>>
+endobj
+7304 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 213.148 212.775 221.919]
+/A << /S /GoTo /D (_s_i_g_n_2constants_8h) >>
+>>
+endobj
+7305 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 93.672 92.784 100.232]
+/A << /S /GoTo /D (_s_i_g_n_2constants_8h_ac50762666aa00bd3a4308158510f1748) >>
+>>
+endobj
+7310 0 obj
+<<
+/D [7308 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1814 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+7311 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 728.258 null]
+>>
+endobj
+7312 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 720.288 null]
+>>
+endobj
+7313 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 712.318 null]
+>>
+endobj
+7314 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 704.348 null]
+>>
+endobj
+7315 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 696.378 null]
+>>
+endobj
+7316 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 688.408 null]
+>>
+endobj
+7317 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 680.438 null]
+>>
+endobj
+7318 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 672.467 null]
+>>
+endobj
+7319 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 664.497 null]
+>>
+endobj
+7320 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 656.527 null]
+>>
+endobj
+7321 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 648.557 null]
+>>
+endobj
+7322 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 640.587 null]
+>>
+endobj
+7323 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 632.617 null]
+>>
+endobj
+7324 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 624.647 null]
+>>
+endobj
+7300 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 616.677 null]
+>>
+endobj
+7325 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 608.707 null]
+>>
+endobj
+7326 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 600.736 null]
+>>
+endobj
+7327 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 592.766 null]
+>>
+endobj
+3319 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 584.573 null]
+>>
+endobj
+1818 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 568.467 null]
+>>
+endobj
+7328 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 519.847 null]
+>>
+endobj
+1822 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 452.632 null]
+>>
+endobj
+7329 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 413.224 null]
+>>
+endobj
+1826 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 386.335 null]
+>>
+endobj
+7330 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 291.048 null]
+>>
+endobj
+1830 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 274.942 null]
+>>
+endobj
+7331 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+7332 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+7333 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+7334 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+7335 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+7336 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+7337 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+7338 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+7339 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+7340 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+7341 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+7342 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+7343 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+7344 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+7345 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+7346 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+7347 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+7348 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+3324 0 obj
+<<
+/D [7308 0 R /XYZ 70.866 70.643 null]
+>>
+endobj
+7307 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7356 0 obj
+<<
+/Length 998       
+/Filter /FlateDecode
+>>
+stream
+x��Xϓ�6����$|�,	$A��C��L�m�d����� ��`�nv��JH`�vY{�m>؀~����}���@�����hz����c.�/G�g��@��<��d�e�������X5_�D�'���,����a)�T�4�9�j$�1���'�6��/Ī�P|�Fn�G]H=W�'�f�i�z01�ƴ��a�j��l<�!���9��旷��(K�2L��
���b9���H#��?r0���K %ĸ�9�*�YQ�Y�^�n�D� �9���r�33���9�vB)s^��!�
+۩�W����0
t���.��c�|��-�!�!�����b���$p<��›)"\�ۤ4�XXR�0MՈ,7y���Jx���@��^͜N�6=
�V@-_G$Փ�J��<QNZ��;�S�+&�G�N&*C�NVXJ�����V-
��$�n~w��2]��ܰj��n��y߄���++�"�\+͖�LKQ��Ē^g�IY��T���ڧ6��9�9�Y�4��d�B��*|�9�%���VxR4��6��u|��~�\�k,��j+���&,d��E'ܚ���R�bJ[�o]j��
+4�uV����To���ÄV�t[�Z���p�	�&3�[���s�Ov �ZQ�U0��?��x���َ�k�k��!�bY�����tx�bՊ@/�ӣ p��3PO={�Ϯ��9^�ύ���i7��"QR<���=I��C��ücrn�")��ݗ�Qn��wv�i,�����E"�TL���g�ئ�q�xF8��p���e.﷥��#��K�^&�|�_��D}:����l�;�=��w��p�;��Wt��;�3���0	z魛����4J��
��������o"��\�o���������>�T�W����dp�:.UǑ��,;.Uǥ�T����ʎ}o�����;��7��~�=�"�ryX_2H8��)�QRunz2e��"yX���e�z��i���:Xƿ���
+endstream
+endobj
+7355 0 obj
+<<
+/Type /Page
+/Contents 7356 0 R
+/Resources 7354 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7144 0 R
+/Annots [ 7306 0 R 7349 0 R 7350 0 R 7351 0 R 7352 0 R 7353 0 R ]
+>>
+endobj
+7306 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.678 706.723 195.424 716.18]
+/A << /S /GoTo /D (_s_o_i_l_2constants_8h_ac50762666aa00bd3a4308158510f1748) >>
+>>
+endobj
+7349 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 529.365 148.111 537.93]
+/A << /S /GoTo /D (_s_o_i_l_2constants_8h_source_l00019) >>
+>>
+endobj
+7350 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 529.446 220.244 537.93]
+/A << /S /GoTo /D (_s_o_i_l_2constants_8h_source) >>
+>>
+endobj
+7351 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 457.256 212.775 466.027]
+/A << /S /GoTo /D (_s_o_i_l_2constants_8h) >>
+>>
+endobj
+7352 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 337.78 92.784 344.34]
+/A << /S /GoTo /D (_s_o_i_l_2constants_8h_ac50762666aa00bd3a4308158510f1748) >>
+>>
+endobj
+7353 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 205.178 212.775 213.949]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+7357 0 obj
+<<
+/D [7355 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1834 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+7358 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 742.487 null]
+>>
+endobj
+1838 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 678.057 null]
+>>
+endobj
+7359 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 643.196 null]
+>>
+endobj
+1842 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 616.555 null]
+>>
+endobj
+7360 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 530.361 null]
+>>
+endobj
+1846 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 514.504 null]
+>>
+endobj
+7361 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 458.436 null]
+>>
+endobj
+7362 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 450.466 null]
+>>
+endobj
+7363 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 442.496 null]
+>>
+endobj
+7364 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 434.526 null]
+>>
+endobj
+7365 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 426.556 null]
+>>
+endobj
+7366 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 418.586 null]
+>>
+endobj
+7367 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 410.615 null]
+>>
+endobj
+7368 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 402.645 null]
+>>
+endobj
+7369 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 394.675 null]
+>>
+endobj
+7370 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 386.705 null]
+>>
+endobj
+7371 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 378.735 null]
+>>
+endobj
+7372 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 370.765 null]
+>>
+endobj
+7373 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 362.795 null]
+>>
+endobj
+7374 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 354.825 null]
+>>
+endobj
+7375 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 346.855 null]
+>>
+endobj
+7376 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 338.884 null]
+>>
+endobj
+7377 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 330.914 null]
+>>
+endobj
+7378 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 322.944 null]
+>>
+endobj
+3383 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 314.751 null]
+>>
+endobj
+1850 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 298.893 null]
+>>
+endobj
+7379 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 262.448 null]
+>>
+endobj
+1854 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 262.448 null]
+>>
+endobj
+7380 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+7381 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+7382 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+7383 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+7384 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+7385 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+7386 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+7387 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+7388 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+7389 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+7390 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+7391 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+7392 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+7393 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+7394 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+7395 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+7396 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+3308 0 obj
+<<
+/D [7355 0 R /XYZ 70.866 70.643 null]
+>>
+endobj
+7354 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7422 0 obj
+<<
+/Length 1013      
+/Filter /FlateDecode
+>>
+stream
+x��Wߏ�6~�_!t���~�κ>l�P\���۵(\ǗH��v������l'Vl'��}��"?~�H��"�z��lty%�P)�fwH(�tȰ�h6G��3r1a:�#��������&�����q�-WY����	]�։[�M�.('y��fK2M�T���W����_#
+(��� �(ތn�4�w��<�'+�ABr,���9z3"�'��Ry芢��}����9\^I�B �)c��	X��a����+���ӿ|�4��
+`&u��VX;�y��b��5p��A4=Pי󥬟�ʹy�6IZFF����j�U�V�a��c\Yw�["5*��T�zB�8�&��P&-���G��.��_A�O�=5j�5�=jf�o��m��HR��v�e�6i9�6�,۸o!.��֍��6�t��YZ�m��
&Ijo����(o�d&3�\���`�B���$E-��U`�at����K6O�a:u�Q���4ߥ�j�|H�<�
�U#���}�Α��E;�PpX(�)w�kw��{�O����D��D��X�F����=`�f�����2*��ix>*	�1L�'uԜ�/�A~�>��bB��1��?������D���AԠW�{;�i-BaNx�Z�mp��M�f_��E���8�8�������C��0'��ô�Z����K擪���"X�Њ�*�����U�����")����TY�'L`��;��1�_8)�86�z�%�K2/3���$�
6�Ln�!Ơ�q�L��x�،���n����h�d�*�I~ޑ��;�!&$)�TT��{u|ŏGzZk<M�g�}�&�Q�N��qm��k�նy��D�gi���X�����1�@�0�ϚZ���!�=P��m5��i?��hj' �v5�O�q�mlwõ���&���77�7���jf9��v�q��{�֤��uE5�|�����m��;*�^N�f�C���i)1��>��G��L+q�
-$V�pu)I�p�]����[��.8��0up��>�oDo��
+endstream
+endobj
+7421 0 obj
+<<
+/Type /Page
+/Contents 7422 0 R
+/Resources 7420 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7451 0 R
+/Annots [ 7397 0 R 7398 0 R 7399 0 R 7400 0 R 7401 0 R 7402 0 R 7403 0 R 7404 0 R 7405 0 R 7406 0 R 7407 0 R 7408 0 R 7409 0 R 7410 0 R 7411 0 R 7412 0 R 7413 0 R 7414 0 R ]
+>>
+endobj
+7397 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 632.05 212.775 640.821]
+/A << /S /GoTo /D (_local_exception_8cpp) >>
+>>
+endobj
+7398 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 623.189 205.76 630.715]
+/A << /S /GoTo /D (_local_exception_8h) >>
+>>
+endobj
+7399 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 592.275 92.784 598.835]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_aa2e20db284b3c4825824d421dfc3694f) >>
+>>
+endobj
+7400 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 591.309 205.76 598.835]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_aa2e20db284b3c4825824d421dfc3694f) >>
+>>
+endobj
+7401 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 560.394 92.784 566.955]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_acc088fa326f26d0ea21aa7bf250eeeae) >>
+>>
+endobj
+7402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 559.428 205.76 566.955]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_aa2e20db284b3c4825824d421dfc3694f) >>
+>>
+endobj
+7403 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 520.544 92.784 527.104]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_ae4bb6d8901509f35649da27f9e681202) >>
+>>
+endobj
+7404 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 519.578 209.944 527.104]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_ae4bb6d8901509f35649da27f9e681202) >>
+>>
+endobj
+7405 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 316.738 189.444 327.213]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+7406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 303.325 133.804 311.704]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7407 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.054 303.684 169.519 311.519]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+7408 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [169.77 302.078 207.196 311.519]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+7409 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 238.128 171.009 247.218]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7410 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 157.357 212.775 166.128]
+/A << /S /GoTo /D (_local_exception_8h) >>
+>>
+endobj
+7411 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 141.493 184.839 148.053]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+7412 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 108.803 155.549 115.866]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7413 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 93.672 92.784 100.232]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+7414 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 92.706 193.207 100.232]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+7423 0 obj
+<<
+/D [7421 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1858 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+4756 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 714.319 null]
+>>
+endobj
+1862 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 697.996 null]
+>>
+endobj
+7424 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 633.23 null]
+>>
+endobj
+7425 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 625.259 null]
+>>
+endobj
+7426 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 617.289 null]
+>>
+endobj
+7427 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 609.319 null]
+>>
+endobj
+4755 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 601.349 null]
+>>
+endobj
+7428 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 593.379 null]
+>>
+endobj
+7429 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 585.409 null]
+>>
+endobj
+7430 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 577.439 null]
+>>
+endobj
+4781 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 569.469 null]
+>>
+endobj
+7431 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 561.499 null]
+>>
+endobj
+7432 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 553.528 null]
+>>
+endobj
+7433 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 545.558 null]
+>>
+endobj
+7434 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 537.588 null]
+>>
+endobj
+4782 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 529.618 null]
+>>
+endobj
+7435 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 521.648 null]
+>>
+endobj
+7436 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 513.678 null]
+>>
+endobj
+7437 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 505.708 null]
+>>
+endobj
+7438 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 497.738 null]
+>>
+endobj
+3309 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 489.66 null]
+>>
+endobj
+1866 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 473.336 null]
+>>
+endobj
+7439 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 357.571 null]
+>>
+endobj
+7440 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 277.576 null]
+>>
+endobj
+4754 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 228.252 null]
+>>
+endobj
+1870 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 221.416 null]
+>>
+endobj
+7441 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+7442 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+7443 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+7444 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+7445 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+7446 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+7447 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+4753 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+7448 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+7449 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+7450 0 obj
+<<
+/D [7421 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+7420 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7471 0 obj
+<<
+/Length 1292      
+/Filter /FlateDecode
+>>
+stream
+xڽXYo�F~ׯX8@A�jo����$68E�����%)�Tj�H{gyH$���������7�~3K����ѯ���B8���R��M���]�E�9����ϳw��7.,,�/�(O��Xo�
+����$�SGog����ѭH���_��?4�o�Ht�W1s���X
+��c�qD�0�@
+�6w�0Ť�Ia�PR�$\(\��}����Xa���*m0�`��O�����MlP�Së��B|�X��0�Zo���H����q��Z���
�o�`��zC�
�� F�O�m�`�i��K/m+��a�l4���*$�f9�+5�WA�y�-��-NZ�47�wj�κ��pZ�U�u�kHō�i�*	V\věq�� �g�*�Y>??j�ߕ6��Ίn~	j����g�����$�� ����;S�vr��Պ�0�-(S�6O7��ަ䋹�0����>�]!p�����NB�4>����Wc���T�՜�>��1��-�
+�Ր2�R*u��i�b��r����'Tc��1M��ͦ�5��)����N�BF�cE,�,��`~
+��� 
b?(�Bus�3Ui��H[�Z_��mjr:+���y��g;��ҭWV��:�,�Z!�^p�(�Ta����½2��1�
��
+X&����~��Fjǜ�W��
��S�}�^�Q:d��AMq9 PCJ`��9Ș0i�^tB�=��?��a6�s�]L�),lVb��k�>�Ƶ�-�&�V�Ӗo�VVY{,Q��;v��)J�I�ȼ�/+��[}a1���s¬|�����wk5|{��T����d�-�FvT�j�z��W�$�;��%
+�NV�ާ���;�����8�w��H���@{JŸY��eJ��ق�ao�x�U=�\]����T}X��5�
������0�Ƌ~�ڂ<Y�̅��zʃ�U3�!X���k{�9�[2�z�?$�0�r>��
��$��$H�a��Å��?�-	��z��]�P�6���N׎(̖U�����mn�ߋ�Nj���k(Ů4���O�ұ��`$Ƕ�Կ4~2���-�zB%˕��?3
��I	8�n��b�	E�c��K�L�E�h�\hѝ��\��>�0�&qb��e�?� 2�_Y�C�r�_�4���ZK�R�C�b*D�S=7��C�O��)�o�(��l!�@)/���@m	|E_ʡ�}Y>�{yp���`�N���س����r��-/��-J���)��?�
+3[	�TH�%�����v@��&�Kj��\�T��sb=>U�t���/�I��
+endstream
+endobj
+7470 0 obj
+<<
+/Type /Page
+/Contents 7471 0 R
+/Resources 7469 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7451 0 R
+/Annots [ 7415 0 R 7416 0 R 7417 0 R 7418 0 R 7419 0 R 7452 0 R 7453 0 R 7454 0 R 7455 0 R 7456 0 R 7457 0 R 7458 0 R 7459 0 R 7460 0 R 7461 0 R 7462 0 R 7463 0 R 7464 0 R 7465 0 R 7466 0 R 7467 0 R ]
+>>
+endobj
+7415 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 735.08 168.101 742.607]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+7416 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 719.14 168.101 726.666]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+7417 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 703.2 172.286 710.726]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+7418 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 688.226 92.784 694.786]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_aa34f052cb61f915550c92b17621b58b1) >>
+>>
+endobj
+7419 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 688.226 218.313 694.786]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception_aa34f052cb61f915550c92b17621b58b1) >>
+>>
+endobj
+7452 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.326 506.067 226.949 516.65]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container) >>
+>>
+endobj
+7453 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [138.307 493.251 163.16 501.631]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7454 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 436.939 171.009 446.029]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7455 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 365.054 212.775 373.824]
+/A << /S /GoTo /D (_message_container_8h) >>
+>>
+endobj
+7456 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 349.189 184.839 355.749]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+7457 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 340.41 155.549 347.472]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7458 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 325.279 92.784 331.839]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container) >>
+>>
+endobj
+7459 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 324.313 230.866 331.839]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container) >>
+>>
+endobj
+7460 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 309.338 92.784 315.899]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_aaef0655958e79f05f192d205fd1d3c79) >>
+>>
+endobj
+7461 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 308.373 201.576 315.899]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_aaef0655958e79f05f192d205fd1d3c79) >>
+>>
+endobj
+7462 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 293.398 92.784 299.959]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_a563ac8f9dd9878dcc56ac46e9df171da) >>
+>>
+endobj
+7463 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 292.432 209.944 298.539]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_a563ac8f9dd9878dcc56ac46e9df171da) >>
+>>
+endobj
+7464 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 277.458 92.784 284.018]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_a2624104fd87f5343692fba4181c8c1f0) >>
+>>
+endobj
+7465 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 276.492 159.733 282.599]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_a2624104fd87f5343692fba4181c8c1f0) >>
+>>
+endobj
+7466 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 261.518 92.784 268.078]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_af1400f50c4a851e4b991e368c3e9bee9) >>
+>>
+endobj
+7467 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 261.518 176.47 268.078]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_af1400f50c4a851e4b991e368c3e9bee9) >>
+>>
+endobj
+7472 0 obj
+<<
+/D [7470 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+7473 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+7474 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+7475 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+7476 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+7477 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+7478 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+7479 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+7480 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+7481 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+4783 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+7482 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+7483 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+7484 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+7485 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+7486 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+3310 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 649.371 null]
+>>
+endobj
+1874 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 633.509 null]
+>>
+endobj
+7487 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 542.796 null]
+>>
+endobj
+7488 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 472.175 null]
+>>
+endobj
+5399 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 429.51 null]
+>>
+endobj
+1878 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 420.688 null]
+>>
+endobj
+7489 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 366.234 null]
+>>
+endobj
+7490 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 358.263 null]
+>>
+endobj
+7491 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 350.293 null]
+>>
+endobj
+7492 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 342.323 null]
+>>
+endobj
+5398 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 334.353 null]
+>>
+endobj
+7493 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 326.383 null]
+>>
+endobj
+5434 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 318.413 null]
+>>
+endobj
+7494 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 310.443 null]
+>>
+endobj
+5400 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 302.473 null]
+>>
+endobj
+7495 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 294.503 null]
+>>
+endobj
+5432 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 286.532 null]
+>>
+endobj
+7496 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 278.562 null]
+>>
+endobj
+5433 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 270.592 null]
+>>
+endobj
+7497 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 262.622 null]
+>>
+endobj
+7498 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 254.652 null]
+>>
+endobj
+7499 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 246.682 null]
+>>
+endobj
+3311 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 237.945 null]
+>>
+endobj
+1882 0 obj
+<<
+/D [7470 0 R /XYZ 70.866 222.082 null]
+>>
+endobj
+7469 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F73 2949 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7515 0 obj
+<<
+/Length 1439      
+/Filter /FlateDecode
+>>
+stream
+xڵXm��6��_A���ikYH�5��6ͥ��&o��d�u6=�8�sw���WB���չ7�Vh��g_�+/'�-&��5\�Qj�+Á���p<(2K����1g�q�o��M�q��YfR8a�����rq]��؂Q�ɋ��f���V���Ŷn&>Ac)�^X�k�on�X�ؖ��'o'�A��6�R`�23�)�����e5<E8�c̰�E<��#Ƥ���0#�N�,�Gq��E�N�*�zW�V�c"i��?^��o��KM߼~gZp�x���vcV��!����S����ҡ�]�DēR���%"(D�X'�ИQ����V/��t�W���6�9��,�gkU���Hr3�JQ[G��E=l���K �3��Q�tå��JoWj�c1�9��&��n(���O���)��	pn��&s�Nz`�Sc����(�,�-����V�[^�u���GD;��>N*�i��M[mQ�H�
��KY��aR�nK4�*�O�$���2�d|����]�R��`�V[Fe5~4�2�:���u�I�כ I���4=?b�>�`�V��r��p���[A;3�T3<Y��dQ�9fm�=���j��<�юy�`�D�77B̃�>	�0�d�c1�N4���\̗�`��6l��<������ƞ����P�Ĥ��-���=Q�X����ggQ�� 	Y�=|��~ V��n�w��H�����|��r�?1��GH��L������I�ڿ����!_�<V�9�G����Ϲ�~g U.�iU������a�v��Cˀ"�g�,�m�D�
+�<X*q.�gg��ٽϳ�|C6�\Պ�Aj04��~n0���*����lٖ�y�V�L�a��Ԗ��'3�̙�����6�$?���Sm}+ԑR���o����Gۥ�2�j,4�+y����Rj�;R��cv��.�l.x�vuԈV3T�9�����i�Yy�>5h꼧>5�@!�\��\u� �ۿ��O��p��^_B��|�|�FUZa�`w�����@����¥��X����S�
"�CV�2�BUU���h��}%�.O���`�Y��4�}_hHsV��$��o��i��~_�Qc�xpͪ�֠$�*Zm���
vd��#?��c���(�;�A��"�j��,?`�&3��Wnw��;�G���lS���t.�h�ތ�٢�7���=�Ty'$���,ie���g�є��L۫�]����"���a ��P�+�����l|��ۍ��
+��٠m^lu<@ 6f�����B��z�N�y�3��
6@���0o�8C�ǡ]��a^I9�
,SׁU�_�>�ğ19�d�׃�������
����C�����7�ՙ|`$'UZ�1���ワ ǒ�\�W��`�ڍ[r��*�f�ɯ'�A��W��%�}u��n���Wj�����?���
+endstream
+endobj
+7514 0 obj
+<<
+/Type /Page
+/Contents 7515 0 R
+/Resources 7513 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7451 0 R
+/Annots [ 7468 0 R 7500 0 R 7501 0 R 7502 0 R 7503 0 R 7504 0 R 7505 0 R 7506 0 R 7507 0 R 7508 0 R 7509 0 R 7510 0 R 7511 0 R 7512 0 R ]
+>>
+endobj
+7468 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.678 735.429 228.958 745.093]
+/A << /S /GoTo /D (_publisher_8cpp_a7448c142e0c36065fc7e625cd4b6b045) >>
+>>
+endobj
+7500 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 572.443 143.126 580.519]
+/A << /S /GoTo /D (_publisher_8cpp_source_l00007) >>
+>>
+endobj
+7501 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 570.555 223.23 580.824]
+/A << /S /GoTo /D (_publisher_8cpp_source) >>
+>>
+endobj
+7502 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 492.102 212.775 500.873]
+/A << /S /GoTo /D (_publisher_8cpp) >>
+>>
+endobj
+7503 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 483.242 205.76 490.768]
+/A << /S /GoTo /D (_local_exception_8h) >>
+>>
+endobj
+7504 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 476.238 184.839 482.798]
+/A << /S /GoTo /D (_publisher_8h) >>
+>>
+endobj
+7505 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 436.387 92.784 442.947]
+/A << /S /GoTo /D (_publisher_8cpp_a7448c142e0c36065fc7e625cd4b6b045) >>
+>>
+endobj
+7506 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 347.75 205.76 355.276]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container) >>
+>>
+endobj
+7507 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.14 189.313 389.87 195.302]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a365e6700bb8b4d43539de661490b7574) >>
+>>
+endobj
+7508 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [433.904 188.348 456.819 195.874]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_aaef0655958e79f05f192d205fd1d3c79) >>
+>>
+endobj
+7509 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 180.378 163.917 186.485]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_a563ac8f9dd9878dcc56ac46e9df171da) >>
+>>
+endobj
+7510 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 180.378 268.525 186.485]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_a563ac8f9dd9878dcc56ac46e9df171da) >>
+>>
+endobj
+7511 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [337.665 180.378 352.211 186.485]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_a2624104fd87f5343692fba4181c8c1f0) >>
+>>
+endobj
+7512 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [392.061 181.343 419.16 187.904]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container_af1400f50c4a851e4b991e368c3e9bee9) >>
+>>
+endobj
+7516 0 obj
+<<
+/D [7514 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+7517 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+1886 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 721.323 null]
+>>
+endobj
+7518 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 678.209 null]
+>>
+endobj
+1890 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 651.151 null]
+>>
+endobj
+5909 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 571.552 null]
+>>
+endobj
+1894 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 555.277 null]
+>>
+endobj
+7519 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 493.282 null]
+>>
+endobj
+7520 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 485.312 null]
+>>
+endobj
+7521 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 477.342 null]
+>>
+endobj
+7522 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 469.372 null]
+>>
+endobj
+7523 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 461.402 null]
+>>
+endobj
+7524 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 453.432 null]
+>>
+endobj
+7525 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 445.461 null]
+>>
+endobj
+7526 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 437.491 null]
+>>
+endobj
+7527 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 429.521 null]
+>>
+endobj
+7528 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 421.551 null]
+>>
+endobj
+7529 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 413.581 null]
+>>
+endobj
+7530 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 405.611 null]
+>>
+endobj
+7531 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 397.641 null]
+>>
+endobj
+7532 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 389.671 null]
+>>
+endobj
+7533 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 381.701 null]
+>>
+endobj
+7534 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 373.73 null]
+>>
+endobj
+7535 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 365.76 null]
+>>
+endobj
+7536 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 357.79 null]
+>>
+endobj
+7537 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 349.82 null]
+>>
+endobj
+7538 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 341.85 null]
+>>
+endobj
+7539 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 333.88 null]
+>>
+endobj
+7540 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 325.91 null]
+>>
+endobj
+7541 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 317.94 null]
+>>
+endobj
+7542 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 309.969 null]
+>>
+endobj
+7543 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 301.999 null]
+>>
+endobj
+7544 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 294.029 null]
+>>
+endobj
+7545 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+7546 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+7547 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+7548 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+7549 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+7550 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+7551 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+7552 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+7553 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+7554 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+7555 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+7556 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+7557 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+7558 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+7559 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+7560 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+7561 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+7562 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+7563 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+7564 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+7565 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+7566 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+7567 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+7568 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+7569 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+7570 0 obj
+<<
+/D [7514 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+7513 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7594 0 obj
+<<
+/Length 1561      
+/Filter /FlateDecode
+>>
+stream
+x��Y]��6}���/�u�&B��δ�&�L���ۗ4ðX^3��"��I{/�B��I��k[ҽ:�:�H�v�!�������s�jTw	1��Js�N	���	�K��	�����fB�i0��ÈMg�CO�%A�a1�y������br3�0ix�R��l&o�!m	}/5��R���,��m˄�v1y=Am����uLچI��j�!ۜ�l�����L"�!��N,i3�4Ve�!I�Y�y���$e��X��m�M<��7/&���9�F�P��t:#�0���|�6I��tY�f�'c
+0v������A�����_��_>��z����/�0[�t>��d{�t-��u���X�bd:3��䳼�)#��mm"�[�%�t0������p)�Q(`��^�&�g��"$]A��?�{q���q�G��a��!��%��������g�w�p��@Y��
+�f�$�2,D��v�E��%��GM�]�
+4��|)�t4�tB&��a���d��Q�Sؾ��=&��x'y��W1�#����W+�(�܀��]�[����#Q�F���Q���Oi��ͯ�`S��A���q��r��O�Oԟ�n�P9(��	[PE *��p��?���bk3�Fi��h��I�ִn�Lh�f ݅�#K��j<9�I�*3����J]v�t���cy�9��ْ7�_��5LsH[w�C6�[�PH��t���hࣻ+�#?�W�lɛ�P��������5U�M�*��Ecv�38
+bp��7�H��K��`�>3(9��l�3���C�Rr��?�)%��*���PF��������|��*K�>�o+/?%�*��Ӧh:�O��n��*�\{0�y���8�E��t��x	���{/���s?�ŁW:,\ub���8O�>�:}�˘��q���ZK��y"-沨��i+>��%�"�w��ђ��]��=0T3IpTy0�SY�yGf�oب���F�E=��
+g�r̴�ͭ��f^�`���D�e,��<y�p�­�׌m��
+�3n�,}�G��%X�I���XQ�ec�5nG�
F�a�*Z�p�?��%��z�H�D�<� ��]��B
>p��VQ�$�CK��Y�_Fp�*@*,���z40��}8)1j���<�
�/փ7���0�9x�4���qC����:'��ڻ�x��y�����~���?��WŊ��[Mc�(��Wa�Q�j��Z->˻-y�-o&��}�\��#��<;k��뵎X�sLp���t�K���]1���Q�S�D�ʛ�H�o�`�Y��-�ёS�@ʬ5�h��IJ��0��z,Mq^�:��mu�D�����iYvv�?�����aʛ�
+����BͣY�T����|!	�}*¶�ϣ�z�W�
Guo�̲㭼�T9�a�n��M4\e4M�(ܰ9�Q6���p��GS��ݧ-i�7t�99�M[W���tn	w��&�"�N٭����nk���ד��#�y;Y�<%���x+iٖn�|�\
+/X�`�ٲ|Wz95�ɮ~o:5�����t�AB�C���<_@
+endstream
+endobj
+7593 0 obj
+<<
+/Type /Page
+/Contents 7594 0 R
+/Resources 7592 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7451 0 R
+/Annots [ 7571 0 R 7572 0 R 7573 0 R 7574 0 R 7575 0 R 7576 0 R 7577 0 R 7578 0 R 7579 0 R 7580 0 R 7581 0 R 7582 0 R 7583 0 R 7584 0 R 7585 0 R 7586 0 R 7587 0 R 7588 0 R 7589 0 R 7590 0 R 7591 0 R ]
+>>
+endobj
+7571 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 656.345 92.784 662.906]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a9cf2cb13cc906810ce3f403c4ce646ac) >>
+>>
+endobj
+7572 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 655.536 205.76 662.906]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a9cf2cb13cc906810ce3f403c4ce646ac) >>
+>>
+endobj
+7573 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 528.823 92.784 535.384]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a60b4c5ff7ca2bfee4b13ac00d954c205) >>
+>>
+endobj
+7574 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 528.014 209.944 535.384]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a60b4c5ff7ca2bfee4b13ac00d954c205) >>
+>>
+endobj
+7575 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 441.152 92.784 447.713]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_acb20d6b57d5a4e5285f35aa19e42ba93) >>
+>>
+endobj
+7576 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 440.343 218.313 447.713]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a027fef266eed826037e4188766f165f0) >>
+>>
+endobj
+7577 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.505 440.186 301.999 447.713]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7578 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [337.665 409.272 352.211 415.832]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ac4b05210a99b650da641d3966266ec04) >>
+>>
+endobj
+7579 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [262.348 377.391 297.815 382.532]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ae75c1ab7297f4cf3f25e31ec056df338) >>
+>>
+endobj
+7580 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [258.164 368.455 293.631 375.982]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a9c5a0645489d20461749953881ba7ab7) >>
+>>
+endobj
+7581 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [279.085 360.642 335.474 368.011]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a8e47ba510961e85709038796c458b0be) >>
+>>
+endobj
+7582 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [392.061 352.515 435.897 360.041]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a62add1ea6d5351e35a6c829ecdb41e06) >>
+>>
+endobj
+7583 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.324 344.702 461.003 352.071]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ad33e07f1c8389126541445253cbfff52) >>
+>>
+endobj
+7584 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 329.571 218.313 336.131]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a73f639dad1b94cc09de808519a7855fe) >>
+>>
+endobj
+7585 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [320.928 312.665 348.027 320.191]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ab5887b09a89a934dcda3493f17dccd78) >>
+>>
+endobj
+7586 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 304.694 360.579 312.221]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_aa943275c72ea7cc94bd9de56c0dfaa9d) >>
+>>
+endobj
+7587 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 161.232 218.313 168.759]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+7588 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 130.318 92.784 136.878]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a027fef266eed826037e4188766f165f0) >>
+>>
+endobj
+7589 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 129.509 218.313 136.878]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a027fef266eed826037e4188766f165f0) >>
+>>
+endobj
+7590 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 82.497 92.784 89.057]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a10e8765c67285d1b9a969c531d091e08) >>
+>>
+endobj
+7591 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 81.688 226.682 89.057]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a10e8765c67285d1b9a969c531d091e08) >>
+>>
+endobj
+7595 0 obj
+<<
+/D [7593 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+7596 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+7597 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+7598 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+7599 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+7600 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+7601 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+7602 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+7603 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+7604 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+7605 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+7606 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+7607 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+7608 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+5908 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+7609 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+7610 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+7611 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+7612 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+7613 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+7614 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+7615 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+7616 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+7617 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+7618 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+7619 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+7620 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+7621 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+7622 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+7623 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+5910 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+7624 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+7625 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+7626 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+7627 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+7628 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+7629 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+7630 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+7631 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+7632 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+7633 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+5930 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+7634 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+7635 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+7636 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+7637 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+7638 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+7639 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+7640 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+7641 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+7642 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+7643 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+7644 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+7645 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+7646 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+7647 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+7648 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+7649 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+7650 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+7651 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+7652 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+7653 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+7654 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+7655 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+7656 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+7657 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+7658 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+7659 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+7660 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+7661 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+7662 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+7663 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+7664 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+7665 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+7666 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+7667 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+7668 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+7669 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+7670 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+7671 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+5929 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+7672 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+7673 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+7674 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+7675 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+7676 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+5972 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+7677 0 obj
+<<
+/D [7593 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+7592 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7700 0 obj
+<<
+/Length 1526      
+/Filter /FlateDecode
+>>
+stream
+x��Z]��6}�� yh�6V��!��>�M3�I:M�>m3k�]&6x��f���W >���k63}��A\�{�=GW��:���j��r��7�X;�rm��-?@���2�N�@�l�|2��8��p�I�s�fN�j��}X��\���a���������rr1��Yh٭iB�A���NN>@+�^[8�.��[��๎8�XN�M���Z�CTw�
`�/�����E����LX辽5�N��p�ٕ[�!�澰�ٲgr�*҃˨����7��[��g�YN渜<�H�Yu�B~�6	M����U��t���/�����-fg4�eiN{T.͏�(k�f�7\q��J.�1��M�Cn��>jpI��-7���a��L֤��OJT�Yv9�\��ł)O�4��e��j{��bA?��'YZ�Rpe�,q�T
��-���w�rP_����e�>RfN���)ŠU�W��U��@� kL|���CF�y��j:̙�!Iq������r�xٸ�LH����"�\3��\s7$���`�ߏ8e�Hl�^A�?���)K��!�^
+�b'yM�!dꄌseZ�yr����$)�R������"2��
+F׻^��H��{r�G����כ7Z�04>��e��Rk��j��u�2Jx��j� ��v���
{r��F���;jȅ��oE�M���i2��8xj��z�e<�%�!zV
+�s��g�n��}h��tD�r��Y��R4Ai�Wc�D���Q�����"�TX̘4��rщ�G,K>�����q�zs���	߹�7ha|�Ys $��Q6��&�՝�ԓ	���SH�ry���@�e&�X4�n��k�߫ɭK�O�gvU��u��������}�4�c�,�����hj�G��b�U������}!�(J�J@%��I>?��U9*O
�� S~�36�Ľ9,�Y��a~խ��3|Ph*�"��Y�w��%�Q9ݎ�]�P
��v���F���^�Â�}G���+sw�&��X��Ad�YӨ���j;���`���e����d�gS��h�ܪ����A�:�=X�ك!�=�Fi@��`�6�ر!h�
+MR��7|�[�?�n�� +�N��]U������zqK�<:�O���ڷ�,���(��<J�*���	
+���Je�HX�J���s�������:}9ĸ���C��.��b��JyĬr�c��h�ׯ�v�EA��?l�(n�gK��
+3SVv@y������?�ЄN�•��1䠾tӉX��"L��m�@���
+�"M`�&[}<�0�~��P��:`���.�Nm�
vE~�FҀZp�jA&2�*U;�a�:A2��c�U�zE��F�	
+��(�8�V�4���*�6s�l|����
�t�rf����&��nrj�I!;0?����::pN��� ӎ��;v���r�$��;R��ce��U�h��*������q�u��+�u�R5��~��<��:��7?����U~�w=��G��+��{�� ���^��_�����Dwe
+��.�����
+endstream
+endobj
+7699 0 obj
+<<
+/Type /Page
+/Contents 7700 0 R
+/Resources 7698 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7451 0 R
+/Annots [ 7678 0 R 7679 0 R 7680 0 R 7681 0 R 7682 0 R 7683 0 R 7684 0 R 7685 0 R 7686 0 R 7687 0 R 7688 0 R 7689 0 R 7690 0 R 7691 0 R 7692 0 R 7693 0 R 7694 0 R 7695 0 R 7696 0 R 7697 0 R ]
+>>
+endobj
+7678 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 655.379 218.313 662.906]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+7679 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 624.465 92.784 631.025]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_ac3a08d98f8387d2859c500c982bb243e) >>
+>>
+endobj
+7680 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 623.656 230.866 631.025]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_ac3a08d98f8387d2859c500c982bb243e) >>
+>>
+endobj
+7681 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 528.823 92.784 535.384]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a4af13f0d9c7dd02c7eb707122d551801) >>
+>>
+endobj
+7682 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 527.858 247.603 535.384]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a4af13f0d9c7dd02c7eb707122d551801) >>
+>>
+endobj
+7683 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 449.122 92.784 455.683]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a6a1dfbd4bc21455ac307e73c4aefda3d) >>
+>>
+endobj
+7684 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 448.313 230.866 455.683]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a6a1dfbd4bc21455ac307e73c4aefda3d) >>
+>>
+endobj
+7685 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 409.272 92.784 415.832]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a725aac90d42d1b9e09e25d3e3347575d) >>
+>>
+endobj
+7686 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 408.463 239.235 415.832]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a725aac90d42d1b9e09e25d3e3347575d) >>
+>>
+endobj
+7687 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 344.545 218.313 352.071]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_exception) >>
+>>
+endobj
+7688 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 313.63 92.784 320.191]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a2904eace56884e6d996113707a729a15) >>
+>>
+endobj
+7689 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 312.665 226.682 320.191]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a2904eace56884e6d996113707a729a15) >>
+>>
+endobj
+7690 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.873 312.665 310.368 320.191]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7691 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [358.587 289.72 377.317 295.709]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a365e6700bb8b4d43539de661490b7574) >>
+>>
+endobj
+7692 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 265.81 230.866 271.798]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a365e6700bb8b4d43539de661490b7574) >>
+>>
+endobj
+7693 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 225.959 92.784 232.519]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a45246cdc54d4972c4639018549605bbe) >>
+>>
+endobj
+7694 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 224.993 218.313 232.519]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a45246cdc54d4972c4639018549605bbe) >>
+>>
+endobj
+7695 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 209.053 205.76 216.579]
+/A << /S /GoTo /D (struct_m_q_t_t_1_1_message_container) >>
+>>
+endobj
+7696 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 90.467 92.784 97.028]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a6096485cddc28d316dd37cd32de809a7) >>
+>>
+endobj
+7697 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 89.501 218.313 97.028]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a45246cdc54d4972c4639018549605bbe) >>
+>>
+endobj
+7701 0 obj
+<<
+/D [7699 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+7702 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+7703 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+7704 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+7705 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+7706 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+7707 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+7708 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+7709 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+7710 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+7711 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+7712 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+7713 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+7714 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+7715 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+7716 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+7717 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+7718 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+5931 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+7719 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+7720 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+7721 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+7722 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+7723 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+7724 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+7725 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+7726 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+7727 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+7728 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+7729 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+5994 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+7730 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+7731 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+7732 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+7733 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+7734 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+7735 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+7736 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+7737 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+7738 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+5973 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+7739 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+7740 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+7741 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+7742 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+5950 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+7743 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+7744 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+7745 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+7746 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+7747 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+7748 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+7749 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+7750 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+7751 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+7752 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+7753 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+5911 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+7754 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+7755 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+7756 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+7757 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+7758 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+7759 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+7760 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+7761 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+7762 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+7763 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+5952 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+7764 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+7765 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+7766 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+7767 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+7768 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+7769 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+7770 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+7771 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+7772 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+7773 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+7774 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+7775 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+7776 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+7777 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+7778 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+7779 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+5971 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+7780 0 obj
+<<
+/D [7699 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+7698 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7797 0 obj
+<<
+/Length 1349      
+/Filter /FlateDecode
+>>
+stream
+x��X]o�6}����iR���zyX�(�a����"ӎ0Yj��6k��w)R�,˲'X��H!�{�s�������������y��|!�5]X.F���;Hk:��m½���;�Be��/�XG��ٿ�a��IQ����ߧ�����"됞�<�Y�jp�[s�{gAD߳�T#W�qF�>��|�&L�,�|�zM�� \���qD��z������li���.���b��()�S&�hN���Ӈ<ZE2�W둹�y8���lE:��}���R�s\���0Gy�T��ߛjհ5r��
E�PO;/�gg�eX�����������`)ߦ��Q"�s���(f+ݗ�IOt�,��5����A�"ͺhW	����/�ׯ��7�f�D_����+5��)���o��G��iBA�&UQ�8��Y�ƨ׆����>��]&���[�9
+��?�a;��������O����g6�0���p=���������4���j_��*�fi6��,L�fa�?8���b!��,��]���.nvW�J�D@�,Nÿ'����_
ÚJշ!���Z�0ѫ�(Jr�맑L浞��t+�Q�;����D�7C�$7R����z�5Om�5T�n�L�2�e����*�(I�h�0�N�'����R���Yr��de�ls�G{��F�筤;������v��٠`����fa$^�V>�8�'�+��@P��pA����gC��X����`;��;�
�ѝ6m�v%j��dJ�
+����&e�%���2J¸�K���"H�ݽ�gA�9��b-ˬ��=Ҷ%���f�8���t�f�:阣�\�����
+���o�a�;Œ|���,(�Uvġ��ý�\�}.dU�y��S+�2�Fʴ�������s�E�m��`q�m�J�0r��q�#˜5�gz��8�s�o)�����[(��\k�P�S�؍����\ء
+W�x��Z
7Z�����%��Z
+�e�}m_�
+J�a[;���y��Ѯ�h��0��G�#���ۮ��?0Y���<�~�:b?���u�W�|xO�g��vՓk�Aߔ���ם�EZ]��<.S]&��zg��|�GՔ.�1Q��n����!\�lc6[�3�
+��#�ڸ�m�V�Ǝ����U��f����	`=:�vY޻|v�<"�:�>�����L�S�f�z�=%n~�I��$'&�~�P��,�%�?�wb�S��4T�?1�6&C��Yv
ġ�
��_���&�x�^�D� H�YG ���P�Ώ^�ЭǺ>^s�0%��v]Z���
+�4�q�8�>�Hct/%�ܠ�s]-*c�PURl}X�zfˤ��_�ש
+endstream
+endobj
+7796 0 obj
+<<
+/Type /Page
+/Contents 7797 0 R
+/Resources 7795 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7451 0 R
+/Annots [ 7781 0 R 7782 0 R 7783 0 R 7784 0 R 7785 0 R 7786 0 R 7787 0 R 7788 0 R 7789 0 R ]
+>>
+endobj
+7781 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 346.616 187.265 355.706]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+7782 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 331.826 133.804 340.205]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7783 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.054 332.185 169.519 340.019]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+7784 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 265.388 163.047 275.351]
+/A << /S /GoTo /D (namespacemqtt) >>
+>>
+endobj
+7785 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 253.925 171.009 263.014]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7786 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 173.298 212.775 182.069]
+/A << /S /GoTo /D (_publisher_8h) >>
+>>
+endobj
+7787 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 157.433 184.839 163.993]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+7788 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 148.497 201.576 156.023]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h) >>
+>>
+endobj
+7789 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 140.527 214.129 148.053]
+/A << /S /GoTo /D (_message_container_8h) >>
+>>
+endobj
+7798 0 obj
+<<
+/D [7796 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+7799 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+7800 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+7801 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+7802 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+7803 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+7804 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+7805 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+7806 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+7807 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+7808 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+7809 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+7810 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+7811 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+7812 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+7813 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+7814 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+7815 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+7816 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+7817 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+7818 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+7819 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+3312 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 600.892 null]
+>>
+endobj
+1898 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 584.576 null]
+>>
+endobj
+7820 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 385.995 null]
+>>
+endobj
+7821 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 306.152 null]
+>>
+endobj
+5894 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 244.088 null]
+>>
+endobj
+1902 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 237.22 null]
+>>
+endobj
+7822 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+7823 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+7824 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+7825 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+7826 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+7827 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+7828 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+7829 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+7830 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+7831 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+7832 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+7833 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+7834 0 obj
+<<
+/D [7796 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+7795 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7846 0 obj
+<<
+/Length 1230      
+/Filter /FlateDecode
+>>
+stream
+x��YYo�F~ׯ �
+��{��<�9� Eon@��Z^T"eN�"��]ri�����RA� Q��of����[K[�&�-&�o�gy�wf-�,#�q,ק�!�"�.l1<=��g�ٔb;:����8��<-�@�fl�h�1zo�J�����l�L&��G]l�O�,�O�,&7��y0�yȣ܊֓�/؊u�{#�{��Zsmq���L?��ϓO�cp�e8o��r��2��C��cLx�P		�d��G�f]�8�I���&��t^�o��7E����N\��ָ�֚�Tj�[�����ֱ�U��V��0�K� Z)�g >���w����[�(����>~Z,����E�}����:�����?�˕ʯe6�>s���h���M�n�Bvܴg "�È�kļ���`��jMD�w�bG�
^%D�J4��9���łNjg���T�49W1$�A����Jm�Lr�Ld<:��Օ�����NW;�{�\�e����	d4j+��]�ݝ4\����M��W��l֞T^���0��=�6˛R��y.��U"�]7�����6xX�k��wk� W�n��OaX�
�.��
X`?},ڀ:c���܆�
+/�*�Eh=��PLXO.���u&øa�k����K�������2MW;�AV&��04�`���T��`X���O,�	�����0���Ȥ�W�"0�="��r1bDy�n~P8"܅��>����`=��h�>1���$�p�&>�~S?��/�r��h��_����gR�5�8�	��d�ߞ���jz�H�׺����Q��i3`:�kS5HhO:n������2Y�~n�������Q�65�P��Et�f�W��=��x�>�~��n
+NiT��{=�Ǭ�z�hB�3=0T��l��no����b�8a
8vtz�0����G����3"�c���h�V�
+��iYt����sEa�s%� K�"�g0���4x�C�����)�?Q^�I"��T�˔ʃ�����X�=�ѨC�;F�CS�J����N���J�X�»`�C��q��9qD�׊}�o�^����
+�׾����j��Ow��]!d�v{�%nO��9f��LJXt�ڭw��]	��'DT�	Z���������ژ���|�:�-&��c��D�2n�^�D�/v���X�@���ܰ�_9H�[�(\{�4���ԩ�3s�e�y~�N���-+vl�t]��;D=
+endstream
+endobj
+7845 0 obj
+<<
+/Type /Page
+/Contents 7846 0 R
+/Resources 7844 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7917 0 R
+/Annots [ 7790 0 R 7791 0 R 7792 0 R 7793 0 R 7794 0 R 7835 0 R 7836 0 R 7837 0 R 7838 0 R 7839 0 R 7840 0 R 7841 0 R 7842 0 R ]
+>>
+endobj
+7790 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 759.957 92.784 766.517]
+/A << /S /GoTo /D (namespacemqtt) >>
+>>
+endobj
+7791 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 758.991 155.549 765.945]
+/A << /S /GoTo /D (namespacemqtt) >>
+>>
+endobj
+7792 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 719.297 155.549 726.36]
+/A << /S /GoTo /D (namespace_m_q_t_t) >>
+>>
+endobj
+7793 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 704.166 92.784 710.726]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+7794 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 704.166 193.207 710.726]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+7835 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 631.469 184.839 638.995]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7836 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 441.152 168.101 447.713]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+7837 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 425.212 172.286 431.772]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher) >>
+>>
+endobj
+7838 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 368.455 264.34 375.982]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7839 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 257.84 92.784 264.4]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a23f69f0d29a0f7e98d0ed2c0a74c47bd) >>
+>>
+endobj
+7840 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 256.874 226.682 264.4]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_publisher_a23f69f0d29a0f7e98d0ed2c0a74c47bd) >>
+>>
+endobj
+7841 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [350.218 256.874 402.423 264.4]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_a45ece5471e689eda8ee1c1e15acfc03b) >>
+>>
+endobj
+7842 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 240.934 272.709 248.46]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+7847 0 obj
+<<
+/D [7845 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+7848 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+7849 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+7850 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+7851 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+7852 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+7853 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+7854 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+5893 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+7855 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+7856 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+7857 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+7858 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+7859 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+7860 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+7861 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+7862 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+7863 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+7864 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+7865 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+7866 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+7867 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+7868 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+7869 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+7870 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+7871 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+7872 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+7873 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+7874 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+7875 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+7876 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+7877 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+7878 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+7879 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+7880 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+7881 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+7882 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+7883 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+7884 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+7885 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+7886 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+7887 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+7888 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+7889 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+7890 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+7891 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+7892 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+7893 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+7894 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+7895 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+7896 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+7897 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+7898 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+7899 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+7900 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+7901 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+7902 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+7903 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+7904 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+7905 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+7906 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+7907 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+7908 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+5951 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+7909 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+7910 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+7911 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+7912 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+7913 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+7914 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+7915 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+7916 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+3314 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 195.075 null]
+>>
+endobj
+1906 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 178.662 null]
+>>
+endobj
+6247 0 obj
+<<
+/D [7845 0 R /XYZ 70.866 100.411 null]
+>>
+endobj
+7844 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+7939 0 obj
+<<
+/Length 1733      
+/Filter /FlateDecode
+>>
+stream
+x��Z[o�6~���:`�׈%%���dm����q���P$&�j[�D'͊����([�IEv��Ŷx9��w.<��+ǃ�ƃ'����O�m�/
���-@�1���!"p�i�ְy��>Q4�NftdZ�7|�F�9]��%�:8�	
��y��#��?A#�}o
.���1rn8�ر��q6�c�[0�|�p'A�V@}`��� ��4OW�Ȃè�	� Z.�Sv%�}8�m���4LI)�8-�d��Tj7�M�e5&��_Bhq��z�ѓ��1�]ۓk���\�㇨
p���?���fGo���+�s��f��c+�iT��Kf"
+�;,�X���k��i7%��o�E���� �g+��/F���R$2�eEs6I�iK:7��]d��*Hs���=(	�Y�<dѴl?�pa�m-�rԷz/�t�iC��b֔�1��j�D���JS�6[?�4	�i�Ҭ�D,<elY~N�A�0���OC�����N	��9��^%���ic�Oυ�,���N]�mA��i6������oj�����
����2�r���[���,KW>#�Q*�!�U|	�e7���H�[�\���b��Ǻ7��@m�Y�윲i?RD�{e�RXe=����PĪل��KV�እ��`a�Y���+�ˆM6�t��H
+i�&L�����S�id���%uG^e2��?Z��y:[1:��`�판U6����<>bG�!�ޓ8�(�� ��gM�>��R��X-�7V��f��U���t����b�87)ɲ�w�4��b5����M�����fg���5�_��=RcF�)O>ag<!�Ab}l
+�A%Q7W�N���4��ֳ��/jE&�������!�}����l*͓��DY.7�?lV��j�BFG�����Y��P�we�.bS��ܑʵ����#R�#�(��U>�\���uݬK,�%�6x�xͫ~,�5Ke�0�7��F�8��YK�����Rս�L�e���RH�^X���@�Q��*��Wж["א驛��'�%�1Uj�Q/�٬r�v�x��M�:���SK�9���Z�<h!T�ɱ����JG�v&�4��Ш����I�@)�u��jn�B��'Q�Tv&��]��̗3Z\юӢSU��E��"\.g���Q�Z�C���Ask�"pj����Y;|�x��F,~�&qsv�K����
+�=�Q�:��ś;���jϨ��rO�
�'�[S�`��
+��QY{Jnn�ҍ�����}	�E��Y `܇%��'�:�z�n談Kd}���|�r�m�ܡ%1�m��+���O0��6S�ؗ�z�b��o�XV9�W����ac�Z+�L�}�LkI;�"�ډ�}��+���;�"���/��ҙyX�k�f	7����}g�ڰ�2�󦁔w���qJ�t��I�mN���n�tG�$��ѻP�K���w�t�������2����I�'�w\_�UDҷ �~�y�K��k3-�`R�+[QWml�L�I����NuN-�m�J{x+�]��)}������u� 8>�{_�����p��D�є�OϺ;}?~s��c���᫃ms)��8�>ّ�jS���>.��$�>)Bn�ku�k�
��/p��+r\�9.��������N�Eyo��"�������\�Kh�]މ�ޅ �r�S�<��c�B�������kś���#��^�J颍�?̗�
+endstream
+endobj
+7938 0 obj
+<<
+/Type /Page
+/Contents 7939 0 R
+/Resources 7937 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7917 0 R
+/Annots [ 7843 0 R 7918 0 R 7919 0 R 7920 0 R 7921 0 R 7922 0 R 7923 0 R 7924 0 R 7925 0 R 7926 0 R 7927 0 R 7928 0 R 7929 0 R 7930 0 R 7931 0 R 7932 0 R 7933 0 R 7934 0 R 7935 0 R ]
+>>
+endobj
+7843 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 724.275 212.775 733.046]
+/A << /S /GoTo /D (_resource_8cpp) >>
+>>
+endobj
+7918 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 716.381 180.654 722.941]
+/A << /S /GoTo /D (_resource_8h) >>
+>>
+endobj
+7919 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 700.44 92.784 707.001]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a4d76365792fb2684cc05a36ee2573dad) >>
+>>
+endobj
+7920 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 699.475 285.262 707.001]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a4d76365792fb2684cc05a36ee2573dad) >>
+>>
+endobj
+7921 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.454 699.475 318.736 706.429]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+7922 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 404.58 155.549 411.535]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+7923 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [262.348 404.58 293.631 411.535]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+7924 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 372.7 147.18 379.654]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+7925 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 317.875 92.784 324.435]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_aa65b75aa0006d4dc26b92dc6ae8017eb) >>
+>>
+endobj
+7926 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 316.909 239.235 324.435]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_aa65b75aa0006d4dc26b92dc6ae8017eb) >>
+>>
+endobj
+7927 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 316.909 276.893 323.863]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+7928 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 174.413 92.784 180.973]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a5d1c2122fd6f7ea51c03c3b5cb45f2fc) >>
+>>
+endobj
+7929 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 174.413 197.392 180.401]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a5d1c2122fd6f7ea51c03c3b5cb45f2fc) >>
+>>
+endobj
+7930 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 102.682 92.784 109.242]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a188f4a9d639f416317a9f5a6992e6ec5) >>
+>>
+endobj
+7931 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 102.682 201.576 108.67]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a188f4a9d639f416317a9f5a6992e6ec5) >>
+>>
+endobj
+7932 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 70.801 92.784 77.362]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a742c093a9caba778c16592c424c4a169) >>
+>>
+endobj
+7933 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 69.836 155.549 76.79]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+7934 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 70.801 251.788 77.362]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a742c093a9caba778c16592c424c4a169) >>
+>>
+endobj
+7935 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 69.836 285.262 76.79]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+7940 0 obj
+<<
+/D [7938 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1910 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+7941 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 725.455 null]
+>>
+endobj
+7942 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 717.485 null]
+>>
+endobj
+6393 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 709.515 null]
+>>
+endobj
+7943 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 701.545 null]
+>>
+endobj
+7944 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 693.575 null]
+>>
+endobj
+7945 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 685.604 null]
+>>
+endobj
+7946 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 669.664 null]
+>>
+endobj
+7947 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 661.694 null]
+>>
+endobj
+7948 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 653.724 null]
+>>
+endobj
+7949 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 645.754 null]
+>>
+endobj
+7950 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 637.784 null]
+>>
+endobj
+7951 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 629.814 null]
+>>
+endobj
+7952 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 621.844 null]
+>>
+endobj
+7953 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 613.873 null]
+>>
+endobj
+7954 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 605.903 null]
+>>
+endobj
+7955 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 597.933 null]
+>>
+endobj
+7956 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 589.963 null]
+>>
+endobj
+7957 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 581.993 null]
+>>
+endobj
+7958 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 574.023 null]
+>>
+endobj
+7959 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 566.053 null]
+>>
+endobj
+7960 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 558.083 null]
+>>
+endobj
+7961 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 550.113 null]
+>>
+endobj
+7962 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 542.142 null]
+>>
+endobj
+7963 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 534.172 null]
+>>
+endobj
+7964 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 526.202 null]
+>>
+endobj
+7965 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 518.232 null]
+>>
+endobj
+7966 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 510.262 null]
+>>
+endobj
+7967 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 502.292 null]
+>>
+endobj
+7968 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 494.322 null]
+>>
+endobj
+7969 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 486.352 null]
+>>
+endobj
+7970 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 478.382 null]
+>>
+endobj
+7971 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 470.411 null]
+>>
+endobj
+7972 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 462.441 null]
+>>
+endobj
+7973 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 454.471 null]
+>>
+endobj
+7974 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 446.501 null]
+>>
+endobj
+7975 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 438.531 null]
+>>
+endobj
+7976 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 430.561 null]
+>>
+endobj
+7977 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 422.591 null]
+>>
+endobj
+7978 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 414.621 null]
+>>
+endobj
+7979 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 406.651 null]
+>>
+endobj
+7980 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 398.68 null]
+>>
+endobj
+7981 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 390.71 null]
+>>
+endobj
+7982 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 382.74 null]
+>>
+endobj
+7983 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 374.77 null]
+>>
+endobj
+7984 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 366.8 null]
+>>
+endobj
+7985 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 358.83 null]
+>>
+endobj
+7986 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 350.86 null]
+>>
+endobj
+7987 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 342.89 null]
+>>
+endobj
+7988 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 334.92 null]
+>>
+endobj
+6249 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 326.949 null]
+>>
+endobj
+7989 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 318.979 null]
+>>
+endobj
+7990 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 311.009 null]
+>>
+endobj
+7991 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 303.039 null]
+>>
+endobj
+7992 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 295.069 null]
+>>
+endobj
+7993 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 287.099 null]
+>>
+endobj
+7994 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 279.129 null]
+>>
+endobj
+7995 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 271.159 null]
+>>
+endobj
+7996 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 263.189 null]
+>>
+endobj
+7997 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 255.218 null]
+>>
+endobj
+7998 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 247.248 null]
+>>
+endobj
+7999 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 239.278 null]
+>>
+endobj
+8000 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 223.338 null]
+>>
+endobj
+8001 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 215.368 null]
+>>
+endobj
+8002 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 207.398 null]
+>>
+endobj
+8003 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 199.428 null]
+>>
+endobj
+8004 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 191.458 null]
+>>
+endobj
+6246 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 183.487 null]
+>>
+endobj
+8005 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 175.517 null]
+>>
+endobj
+8006 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 167.547 null]
+>>
+endobj
+8007 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 159.577 null]
+>>
+endobj
+8008 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 135.667 null]
+>>
+endobj
+8009 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 127.697 null]
+>>
+endobj
+8010 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 119.727 null]
+>>
+endobj
+6248 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 111.756 null]
+>>
+endobj
+8011 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 103.786 null]
+>>
+endobj
+8012 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 95.816 null]
+>>
+endobj
+8013 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 87.846 null]
+>>
+endobj
+6277 0 obj
+<<
+/D [7938 0 R /XYZ 70.866 79.876 null]
+>>
+endobj
+7937 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8049 0 obj
+<<
+/Length 1127      
+/Filter /FlateDecode
+>>
+stream
+x�ՙ[o�6���)�>60k�x����KZlK֨OY`(c{�%W��þ���%;#�/������������e�'���/��t(E��h��d��c�^h����вY�O�U2�@?���`��{
��I���M �Yqo�����,�t͘�,l���=0BY���&r��߹00A&�H����?z�i.�5�������`;�!��On0��l��e 7��*���}��wC$�y.�(��m��2�2)�~Pw]�[Z%Y�D�g��W�AD����Y_֠��e��P�f����	X�4�'�\p1�ìD~`�ݻ����.u�ˑ��6���3<(k���6k�+�(~�t���Q8��	
Ӿ+�X�"�f��p�������ά�|G����{s}�p=���t滌��;@؁g����U+a�R�=�A��0�d����90���N�j}ر;���?a�'윅n}J@�t�!��]x��!��-_�9��>\�~���w��K1�w���P=�x�]��_�3fz���vS�{�ʷ]���K3����
+2C�x�"t]�-๟�-L�\�ƒH�p���_%�[s�v���,����ڝ&\��h�:����Mc�-K����!��+���<��u����md�p׭��;��5��)͗O��Ҷ��ϥ��;�*!ZP�iA�z�p~���?�{�X��B�wV�\�l�~"2S����d���bZ�;G3:|4//�#	���N ��6�V���Ӄ�_$3Gտ#dk���8:�@]�:����y�c��㋏�vц����Y}vp��,�D<@�s+���UB�buU���+�墧!3�
+��0"�t�Z�;G49|Do2��S�z������<�f9��4���'�g
2��ge"��\��4�\��?_��
+q���`H�Y�g�c��S�j�%���s��)34�-�
+��uA�
O�8y���o�;�l����gb��A}�I�=�]W��T$�h2��J7�ͧ�/�����2!��"�(��>Pu��r1��e���mvaU�T�b���8̩�旮�!<���(#��sc��� ��!puVMM˦�q���I�On�%�x���Y����[OC(�$�5�?2���
+endstream
+endobj
+8048 0 obj
+<<
+/Type /Page
+/Contents 8049 0 R
+/Resources 8047 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7917 0 R
+/Annots [ 7936 0 R 8014 0 R 8015 0 R 8016 0 R 8017 0 R 8018 0 R 8019 0 R 8020 0 R 8021 0 R 8022 0 R 8023 0 R 8024 0 R 8025 0 R 8026 0 R 8027 0 R 8028 0 R 8029 0 R 8030 0 R 8031 0 R 8032 0 R 8033 0 R 8034 0 R 8035 0 R 8036 0 R 8037 0 R 8038 0 R 8039 0 R 8040 0 R 8041 0 R 8042 0 R 8043 0 R 8044 0 R 8045 0 R 8046 0 R ]
+>>
+endobj
+7936 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 751.021 147.18 757.975]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8014 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 433.182 92.784 439.742]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae6913253b8e38f0f4eed9903058ae589) >>
+>>
+endobj
+8015 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 432.216 155.549 439.171]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8016 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 432.216 268.525 439.742]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae6913253b8e38f0f4eed9903058ae589) >>
+>>
+endobj
+8017 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 432.216 301.999 439.171]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8018 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 393.331 92.784 399.892]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a3af3a05ec6058b8a8e058ceebe1d7ddf) >>
+>>
+endobj
+8019 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 392.366 155.549 399.32]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8020 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 392.366 272.709 399.892]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a3af3a05ec6058b8a8e058ceebe1d7ddf) >>
+>>
+endobj
+8021 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.901 392.366 306.184 399.32]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8022 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 353.481 92.784 360.041]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_aec711995a2b463d35443e66e4eb70533) >>
+>>
+endobj
+8023 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 352.515 155.549 359.469]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8024 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 352.515 276.893 360.041]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_aec711995a2b463d35443e66e4eb70533) >>
+>>
+endobj
+8025 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [279.085 352.515 310.368 359.469]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8026 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 305.66 92.784 312.221]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae0d3b5ab1757e069f38c55e2d5ecc3af) >>
+>>
+endobj
+8027 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 304.694 155.549 311.649]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8028 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 304.851 281.078 312.221]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_ae0d3b5ab1757e069f38c55e2d5ecc3af) >>
+>>
+endobj
+8029 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.269 304.694 314.552 311.649]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8030 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 257.84 92.784 264.4]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a21b1e78bdca84f9fd04fd026a0c3ea9c) >>
+>>
+endobj
+8031 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 256.874 155.549 263.828]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8032 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 256.874 268.525 264.4]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a21b1e78bdca84f9fd04fd026a0c3ea9c) >>
+>>
+endobj
+8033 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 256.874 301.999 263.828]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8034 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 210.019 92.784 216.579]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_abc5c8dc34053d3b02eae489f5c1afda4) >>
+>>
+endobj
+8035 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 209.053 155.549 216.007]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8036 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 209.053 285.262 216.579]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_abc5c8dc34053d3b02eae489f5c1afda4) >>
+>>
+endobj
+8037 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.454 209.053 318.736 216.007]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8038 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 170.168 92.784 176.729]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a812b69953a8704e2528165c7d79012a5) >>
+>>
+endobj
+8039 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 169.203 155.549 176.157]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8040 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 169.359 272.709 176.729]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a812b69953a8704e2528165c7d79012a5) >>
+>>
+endobj
+8041 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.901 169.203 306.184 176.157]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8042 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 130.318 92.784 136.878]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_aad145d8d9ff6e9b1d0044b7e26678800) >>
+>>
+endobj
+8043 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 129.352 155.549 136.306]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8044 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 129.352 293.631 136.878]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_aad145d8d9ff6e9b1d0044b7e26678800) >>
+>>
+endobj
+8045 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [295.822 129.352 327.105 136.306]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8046 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 89.501 147.18 96.456]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8050 0 obj
+<<
+/D [8048 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+8051 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+8052 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+8053 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+8054 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+8055 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+8056 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+8057 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+8058 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+8059 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+8060 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+8061 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+8062 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+8063 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+8064 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+8065 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+8066 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+8067 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+8068 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+8069 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+8070 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+8071 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+8072 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+8073 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+8074 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+8075 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+8076 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+8077 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+8078 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+8079 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+8080 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+8081 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+8082 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+8083 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+8084 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+8085 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+8086 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+8087 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+8088 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+8089 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+8090 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+8091 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+6310 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+8092 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+8093 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+8094 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+8095 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+6371 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+8096 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+8097 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+8098 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+8099 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+6370 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+8100 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+8101 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+8102 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+8103 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+8104 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+6278 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+8105 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+8106 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+8107 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+8108 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+8109 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+6372 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+8110 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+8111 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+8112 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+8113 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+8114 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+6342 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+8115 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+8116 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+8117 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+8118 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+6340 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+8119 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+8120 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+8121 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+8122 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+6308 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+8123 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+8124 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+8125 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+8126 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+8127 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+8128 0 obj
+<<
+/D [8048 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+8047 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8172 0 obj
+<<
+/Length 1275      
+/Filter /FlateDecode
+>>
+stream
+x��Y]o�6}��Z`����$/���&CQ�뷤0���ɒ+�I�b��#E�2e;K���2yu﹇��4tft.{�Lz��;>8'���� �9w����I�\��������9B�z��HR�`�w���j!2�$ϴi�������%t�ڥ�S'Z��>C'Vs�1���r�PF��D=�Χޟ=�
�Q���#�6L��lpB�8������e�0��0Ey
,D�̳R�g�S�t������{_�cj�P6�Ɨ=���(�\&����Ռ	���WV��ي~�A�Ӊ)c�Oܘ�����pe��Ѝ����&ñ(�Ћ�]07k�Y����#�Bdʦ
+�(�Jk�U$Ba5��I��Xlo"�_��,��M�B `�j>yX�M��R�#�s)��4)��D�~��^��c�_���J�.�3K��h�b&�Z��@���͹�� @�֑ӓ�݉H��aU��"���ǂ�("΀�n��X���e)ʝ�^������V��a��5Ƭ]ˌq7���	�ͺ��	��~�L��LI�R[;��l�^x�C�z`������@��[^;�X1�s7aYw�I	1XI%��jC8�
��Åj�0�~�f���ԶB��Š	Z�[��U�&���dy���
w����d�;�_
巍MR��k�ҥ��lvT���J+k1fz���T�� ���vY��Eh�&�ڕ��?:���u���%�������<�Z¿'X�D����a��žU{��� ��A����u�מ��V���e��c��瀨j�=
�ǿm�n�Ip*fO�\������>~��P���cR�Q}t�f;�A�� 0.��.����Y=�
�Q��:Eڒ�
��&��և���/+�?6��p&~4�X�x4*���f`���=T��;Oѐ���ʥj[�:��(��Zi���ٽ���~�F!�y|~�X�����Ƹ]p�=]JNE�`7�RI6;O�*J�T*�>�mӏ�
+�?\�]^$�$;�;��õ�%�l[`w��:�.Ob[���<�2֦s�����.}�R���4�N�	��	ۡ�mڴ�g�ɑh���p>�Wg��UW�:]F������2�TÇ�J4�T��4�n�W����~��<�q�r���އv�y�ũx�!���6��`h:򕲄�u���,,-W��%­��	���Ѵ�?������O�H�|��T_���=��@~y���m�0 A���o����{��"�(`��O�y}I|�oB�;����ˮ�柉>��ׇ��
sE����)z
+endstream
+endobj
+8171 0 obj
+<<
+/Type /Page
+/Contents 8172 0 R
+/Resources 8170 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7917 0 R
+/Annots [ 8129 0 R 8130 0 R 8131 0 R 8132 0 R 8133 0 R 8134 0 R 8135 0 R 8136 0 R 8137 0 R 8138 0 R 8139 0 R 8140 0 R 8141 0 R 8142 0 R 8143 0 R 8144 0 R 8145 0 R 8146 0 R 8147 0 R 8148 0 R 8149 0 R 8150 0 R 8151 0 R 8152 0 R 8153 0 R 8154 0 R 8155 0 R 8156 0 R 8157 0 R 8158 0 R 8159 0 R 8160 0 R 8161 0 R 8162 0 R 8163 0 R ]
+>>
+endobj
+8129 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 539.823 186.449 548.307]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+8130 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 525.127 132.012 532.869]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8131 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.263 525.034 168.785 532.869]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+8132 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 460.887 169.019 469.268]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8133 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 380.52 212.775 389.291]
+/A << /S /GoTo /D (_resource_8h) >>
+>>
+endobj
+8134 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 364.656 184.839 371.216]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+8135 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 355.72 168.101 363.246]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+8136 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 316.835 92.784 323.396]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8137 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 316.943 155.549 322.824]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8138 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 300.895 92.784 307.455]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+8139 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 300.895 189.023 306.884]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+8140 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 276.019 163.917 282.973]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8141 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 276.019 235.05 282.973]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8142 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 261.044 92.784 267.605]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a4a78094cb756c0886c787f93462621c0) >>
+>>
+endobj
+8143 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [258.164 260.236 322.921 267.605]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a4a78094cb756c0886c787f93462621c0) >>
+>>
+endobj
+8144 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 245.104 92.784 251.665]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a9d14fee20d1db0e8bd76e6f151e606e6) >>
+>>
+endobj
+8145 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 244.138 230.866 251.093]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a9d14fee20d1db0e8bd76e6f151e606e6) >>
+>>
+endobj
+8146 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 229.164 92.784 235.724]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a8cb354f4fa7e6d76bdd748f50728b752) >>
+>>
+endobj
+8147 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 228.198 243.419 235.724]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a8cb354f4fa7e6d76bdd748f50728b752) >>
+>>
+endobj
+8148 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 212.258 243.419 219.212]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8149 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 197.284 163.917 203.272]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+8150 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 181.343 168.101 187.332]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+8151 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.269 164.437 314.552 171.392]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8152 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 148.497 197.392 155.451]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8153 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.873 148.497 260.156 155.451]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8154 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 132.557 197.392 139.511]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8155 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 132.557 276.893 139.511]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8156 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 116.617 197.392 123.571]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8157 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 116.617 276.893 123.571]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8158 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 100.676 197.392 107.631]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8159 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.795 100.676 281.078 107.631]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8160 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 84.736 197.392 91.691]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8161 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [258.164 84.736 289.446 91.691]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8162 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 68.796 197.392 75.75]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8163 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 68.796 285.262 75.75]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8173 0 obj
+<<
+/D [8171 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+8174 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+8175 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+8176 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+3315 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 744.354 null]
+>>
+endobj
+1914 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 728.077 null]
+>>
+endobj
+8177 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 578.442 null]
+>>
+endobj
+8178 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 499.403 null]
+>>
+endobj
+6227 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 450.759 null]
+>>
+endobj
+1918 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 443.72 null]
+>>
+endobj
+8179 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 381.701 null]
+>>
+endobj
+8180 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 373.73 null]
+>>
+endobj
+8181 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 365.76 null]
+>>
+endobj
+8182 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 357.79 null]
+>>
+endobj
+8183 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 349.82 null]
+>>
+endobj
+8184 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 341.85 null]
+>>
+endobj
+8185 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 333.88 null]
+>>
+endobj
+8186 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 325.91 null]
+>>
+endobj
+8187 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 317.94 null]
+>>
+endobj
+6226 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 309.969 null]
+>>
+endobj
+8188 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 301.999 null]
+>>
+endobj
+8189 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 294.029 null]
+>>
+endobj
+8190 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+8191 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+6394 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+8192 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+6417 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+8193 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+6395 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+8194 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+8195 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+8196 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+8197 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+8198 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+8199 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+8200 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+8201 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+8202 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+8203 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+8204 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+8205 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+8206 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+8207 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+8208 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+8209 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+8210 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+8211 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+8212 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+8213 0 obj
+<<
+/D [8171 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+8170 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8228 0 obj
+<<
+/Length 1352      
+/Filter /FlateDecode
+>>
+stream
+x��X[o�6~���:��ј!)Q��}�d�Ӗ�--Ţc!��RR�`�~�HQ�%�T�6X��0E��w�"�n-h]L~]LN���Aຶ�X[��Z^����El]O`;�9��i�fNW����W���N����`U��<I�\]���SPF���
+<י"מ}Z|��_L>OWZ����ǎ��N�?A+��>X؁o}i(��Cl@��S�j���M!������).P�!����=N�m�^��W����X�s�@nkª:J[J)X ��BR�����E��t@ݾ�DY��e^T	'�	T�xq>�kZV:6[Z��-=�5Oe�a����Fn��oH�P�C�w����mc�R��M�0D��.�0��N�aE��z�VPt\_K|�g
���az&��O^�lȏ~�������+��j�0"�Fp*�
JB���5�x5
+xa�n+�&�����s���:�R�W\��
6�J�� ��$��:��>?=��^����"�FT��Z�zK�*Ζ[�Z�$�\}��r��A@���=�@�7�&%�'��a�(=����h��Vp>C@ǮM�m�.� |"Ʌ�u�d�R�,��UD+m
+�8�q^N�zcB^NH]%iR=�/'hSU�A������%*aAYҤD�iRV4��L� �M!z�mp\�}��#ex��=������Z�ξ����ʇP�)�Ł�ca��3γcIV�R2YV
�d�0�a��d���-j뷒ʺ(rVu
+�$Y��_+eS;yړM1�áߛ���v��17-�h��C�G:	�}�p�9�و|���6{��W�]|"o�N_�݆�������pkg�}�ĺ�Z(�-��d�ҟJ�����ê��~/�vOR�&8�9�i���a8�j�=5'����h��lEKpCo�Ly�l֧�逘��蓾yc��f@Þ��S?	�s;�C�Ғ&�h�%u���IaL�R�h�Nj{��Y��]�yr����5c��>(��R�O���	+��T��1҈I֦��)�,i��d+�9��{2T�\M���e𢱹\�=��������a*)�Y<�K�ᷓ��M�fR�ηE�(�(��6<�
wF��e�����(ꋜ�R���6��{6�1]GuZ-Un��G��V�@߂/�o�����`=��{��wu�#;e�G�DETm����xYT���;ؘ��h�q��+�E]n�7���l��e%�8�S�/��]G7��DZ�u����ct��ӣ}f�����otp�hx���ֽ=�G�hW���ߙ͢������<n��F{�.mm�m���d'Mw�M���9������s��u�C��n�.�WVT�X��܈�G��-��p��x���l_�����
+endstream
+endobj
+8227 0 obj
+<<
+/Type /Page
+/Contents 8228 0 R
+/Resources 8226 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7917 0 R
+/Annots [ 8164 0 R 8165 0 R 8166 0 R 8167 0 R 8168 0 R 8169 0 R 8214 0 R 8215 0 R 8216 0 R 8217 0 R 8218 0 R 8219 0 R 8220 0 R 8221 0 R 8222 0 R 8223 0 R 8224 0 R 8225 0 R ]
+>>
+endobj
+8164 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 751.021 197.392 757.975]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8165 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [262.348 751.021 293.631 757.975]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8166 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 735.08 197.392 742.035]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8167 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.795 735.08 281.078 742.035]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8168 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 719.14 197.392 726.095]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8169 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 719.14 301.999 726.095]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8214 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 510.561 212.775 519.332]
+/A << /S /GoTo /D (_server_8cpp) >>
+>>
+endobj
+8215 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 502.667 172.286 509.227]
+/A << /S /GoTo /D (_server_8h) >>
+>>
+endobj
+8216 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 438.906 92.784 445.466]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_ab739ee20c13e7d2e3979b67d39fc1ea0) >>
+>>
+endobj
+8217 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 438.906 180.654 445.16]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_ab739ee20c13e7d2e3979b67d39fc1ea0) >>
+>>
+endobj
+8218 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 391.085 92.784 397.646]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_aaea152f2562b0c0c4f16bfdc5472a759) >>
+>>
+endobj
+8219 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 391.085 184.839 397.339]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_aaea152f2562b0c0c4f16bfdc5472a759) >>
+>>
+endobj
+8220 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 286.508 180.654 293.462]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8221 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 246.657 147.18 253.612]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8222 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 199.803 92.784 206.363]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_abb452f50d7c5660ee204e47e20066c83) >>
+>>
+endobj
+8223 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 199.803 189.023 206.363]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_abb452f50d7c5660ee204e47e20066c83) >>
+>>
+endobj
+8224 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 159.952 92.784 166.512]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_a2017a683878ebf7d90ad3a62c3516238) >>
+>>
+endobj
+8225 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 159.952 201.576 166.206]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_a2017a683878ebf7d90ad3a62c3516238) >>
+>>
+endobj
+8229 0 obj
+<<
+/D [8227 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+8230 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+8231 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+8232 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+8233 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+8234 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+8235 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+8236 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+8237 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+8238 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+3316 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 689.222 null]
+>>
+endobj
+1922 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 672.809 null]
+>>
+endobj
+6441 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 594.558 null]
+>>
+endobj
+1926 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 578.145 null]
+>>
+endobj
+8239 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 511.741 null]
+>>
+endobj
+8240 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 503.771 null]
+>>
+endobj
+8241 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 495.801 null]
+>>
+endobj
+8242 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 487.831 null]
+>>
+endobj
+8243 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 479.861 null]
+>>
+endobj
+8244 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 471.891 null]
+>>
+endobj
+8245 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 463.921 null]
+>>
+endobj
+8246 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 455.951 null]
+>>
+endobj
+6440 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 447.98 null]
+>>
+endobj
+8247 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 440.01 null]
+>>
+endobj
+8248 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 432.04 null]
+>>
+endobj
+8249 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 424.07 null]
+>>
+endobj
+8250 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 416.1 null]
+>>
+endobj
+8251 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 408.13 null]
+>>
+endobj
+6442 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 400.16 null]
+>>
+endobj
+8252 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 392.19 null]
+>>
+endobj
+8253 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 384.22 null]
+>>
+endobj
+8254 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 376.249 null]
+>>
+endobj
+8255 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 368.279 null]
+>>
+endobj
+8256 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 360.309 null]
+>>
+endobj
+8257 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 352.339 null]
+>>
+endobj
+8258 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 344.369 null]
+>>
+endobj
+8259 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 336.399 null]
+>>
+endobj
+8260 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 328.429 null]
+>>
+endobj
+8261 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 320.459 null]
+>>
+endobj
+8262 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 312.489 null]
+>>
+endobj
+8263 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 304.518 null]
+>>
+endobj
+8264 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 296.548 null]
+>>
+endobj
+8265 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 288.578 null]
+>>
+endobj
+8266 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 280.608 null]
+>>
+endobj
+8267 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 272.638 null]
+>>
+endobj
+8268 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 264.668 null]
+>>
+endobj
+8269 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 256.698 null]
+>>
+endobj
+8270 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 248.728 null]
+>>
+endobj
+8271 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 240.758 null]
+>>
+endobj
+8272 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 232.787 null]
+>>
+endobj
+8273 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 224.817 null]
+>>
+endobj
+8274 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 216.847 null]
+>>
+endobj
+6443 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 208.877 null]
+>>
+endobj
+8275 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 200.907 null]
+>>
+endobj
+8276 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 192.937 null]
+>>
+endobj
+8277 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 184.967 null]
+>>
+endobj
+8278 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 176.997 null]
+>>
+endobj
+6461 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 169.027 null]
+>>
+endobj
+8279 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 161.056 null]
+>>
+endobj
+8280 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 153.086 null]
+>>
+endobj
+8281 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 145.116 null]
+>>
+endobj
+8282 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 137.146 null]
+>>
+endobj
+8283 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 129.176 null]
+>>
+endobj
+8284 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 121.206 null]
+>>
+endobj
+8285 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 113.236 null]
+>>
+endobj
+8286 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 105.266 null]
+>>
+endobj
+8287 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 97.296 null]
+>>
+endobj
+8288 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 89.325 null]
+>>
+endobj
+3317 0 obj
+<<
+/D [8227 0 R /XYZ 70.866 80.588 null]
+>>
+endobj
+8226 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8309 0 obj
+<<
+/Length 1167      
+/Filter /FlateDecode
+>>
+stream
+x��XMo�8��W���4?��A�mZ�"����"1��YR%9iPt���h[
+�8X/�K ���<ΌLBo�A�����hv�O��1�-�=�`��y�ػ#�O�-�xD������y���s1��G����N�L��>.F�GHYBm]
+��h=���X�}��@x�����)�'�=��F�`�&� @���d@K4��M�B8��	��hv��j1���?�'�c�2�w\�������"���S��(�i0�M	���m�E�&V���z�YU�Y]�՛F(e�(u�E)�z����6M�Zf�<n饬�M���h���I!,�?Ұ�d�l�UrvN��n#���c�"6�n0��5���R6���vBok�l���1�:~^,.��Fn��`�4���?g�\�,�����4��������8{P9�.��$�P��#h#�3\˪�Wh�k�Y�/�փ�f�Ԃ�>@t������	��E�K�O����>Wmyĝ�n��{k�T��B��	Q��^(��8-&A���Cd�ս@��iC�;b��U�(��:4%�g[m[��Wt�np��{��
+���!��_>�`����N��uJ��m��afyh�-��uG|S%�Ұ��z�䣼{��v(�t(z�޹c�C��I��O@�iÙ��B�I�4���&�A�0z������j�g}�9(6!�������n�D���OhG�_�!����/�3*xb`~���Â6k�2y��Ύ��-��0k�+o��]1��>ܤ�m�ڸ����C�������yyּaҾUu�R�7��fd�2�-���2{o��K��$��~��id�����ОBy;�(��T�@
+�6^����
=��U�ԓ�M��E��=l��|0��rw)E�J���L�ܥIt\����U�o�Rb/LH�2V��������	��v��e.I�&Y�#��̕��])/d6����4z����aR�j9��X���*J�J�N�f��R�J2�.	����)�S���*�zu\��v�8���B������A�2L
�c����2~ ��������>��X�s�S!��]n4��YRx ��ϙ�����9��|A�����r�%Q
+ A��J�WH`�|
�SP�ާ�)���)��?���N+�d/�&�<-��v��)���_��
+endstream
+endobj
+8308 0 obj
+<<
+/Type /Page
+/Contents 8309 0 R
+/Resources 8307 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 7917 0 R
+/Annots [ 8289 0 R 8290 0 R 8291 0 R 8292 0 R 8293 0 R 8294 0 R 8295 0 R 8296 0 R 8297 0 R 8298 0 R 8299 0 R 8300 0 R 8301 0 R 8302 0 R 8303 0 R 8304 0 R ]
+>>
+endobj
+8289 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 630.115 174.533 638.886]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+8290 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.715 615.51 158.512 623.603]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+8291 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 554.622 169.019 563.003]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8292 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 477.442 212.775 486.213]
+/A << /S /GoTo /D (_server_8h) >>
+>>
+endobj
+8293 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 461.578 184.839 468.138]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+8294 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 445.637 180.654 452.198]
+/A << /S /GoTo /D (_resource_8h) >>
+>>
+endobj
+8295 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 389.955 155.549 395.835]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8296 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 373.906 92.784 380.467]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+8297 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 373.906 180.654 380.16]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+8298 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 349.996 163.917 355.985]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+8299 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 270.295 155.549 276.548]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+8300 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 254.355 159.733 260.608]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+8301 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 238.414 92.784 244.975]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_aec1277227e7f17a1115e6d868a07b486) >>
+>>
+endobj
+8302 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 237.449 197.392 243.556]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_aec1277227e7f17a1115e6d868a07b486) >>
+>>
+endobj
+8303 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 222.474 92.784 229.035]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_a9f24bc848a91d7d8a7e084b102de4e7a) >>
+>>
+endobj
+8304 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 222.474 201.576 229.035]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_a9f24bc848a91d7d8a7e084b102de4e7a) >>
+>>
+endobj
+8310 0 obj
+<<
+/D [8308 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1930 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+8311 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 667.304 null]
+>>
+endobj
+8312 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 591.627 null]
+>>
+endobj
+6424 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 545.371 null]
+>>
+endobj
+1934 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 537.62 null]
+>>
+endobj
+8313 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 478.622 null]
+>>
+endobj
+8314 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 470.652 null]
+>>
+endobj
+8315 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 462.682 null]
+>>
+endobj
+8316 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 454.712 null]
+>>
+endobj
+8317 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 446.742 null]
+>>
+endobj
+8318 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 438.772 null]
+>>
+endobj
+8319 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 430.801 null]
+>>
+endobj
+8320 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 422.831 null]
+>>
+endobj
+8321 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 414.861 null]
+>>
+endobj
+8322 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 406.891 null]
+>>
+endobj
+8323 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 398.921 null]
+>>
+endobj
+8324 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 390.951 null]
+>>
+endobj
+6423 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 382.981 null]
+>>
+endobj
+8325 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 375.011 null]
+>>
+endobj
+8326 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 367.041 null]
+>>
+endobj
+8327 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 359.07 null]
+>>
+endobj
+8328 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 351.1 null]
+>>
+endobj
+8329 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 343.13 null]
+>>
+endobj
+8330 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 335.16 null]
+>>
+endobj
+8331 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 327.19 null]
+>>
+endobj
+8332 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 319.22 null]
+>>
+endobj
+8333 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 311.25 null]
+>>
+endobj
+8334 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 303.28 null]
+>>
+endobj
+8335 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 295.31 null]
+>>
+endobj
+8336 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 287.339 null]
+>>
+endobj
+8337 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 279.369 null]
+>>
+endobj
+8338 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 271.399 null]
+>>
+endobj
+8339 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 263.429 null]
+>>
+endobj
+8340 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 255.459 null]
+>>
+endobj
+6460 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 247.489 null]
+>>
+endobj
+8341 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 239.519 null]
+>>
+endobj
+6459 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 231.549 null]
+>>
+endobj
+8342 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 223.579 null]
+>>
+endobj
+8343 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 215.608 null]
+>>
+endobj
+8344 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 207.638 null]
+>>
+endobj
+8345 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 199.668 null]
+>>
+endobj
+8346 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 191.698 null]
+>>
+endobj
+8347 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 183.728 null]
+>>
+endobj
+8348 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 175.758 null]
+>>
+endobj
+8349 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 167.788 null]
+>>
+endobj
+3318 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 159.71 null]
+>>
+endobj
+1938 0 obj
+<<
+/D [8308 0 R /XYZ 70.866 143.599 null]
+>>
+endobj
+8307 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F73 2949 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8385 0 obj
+<<
+/Length 887       
+/Filter /FlateDecode
+>>
+stream
+x��W�r�0���tc/zX�M;]t�2m��L��
+���`�4��W����t������q$&����;��Xp��9�=�t8�K �����B�]b;�grd<%"�S���:�9�L�b�Tw���<t��E�?'t��a���@~$3;�1���(d��9u�vP�H���\�Z%��e��C�&c_�y��ހ�~�C۱A�X�=�V���q#*�Ť�u��)Q>xޗb��n�i���AK)q�z3�NOգ��!���ifb#KT#Kn�a)�l7�~������)z[���k��	�ĥR�VA}M�������>'$�e$M�(���E�3c]�_�f�l���q𼕶�2��'J�wLIB�M㠕�+�G���O�?�:��8�����MŒ�|�j�ը��1]��:�cXrŘ����#Oa\�6��{[cQ=��� G\�:��XY�;���2�\�3�C�ߗ1�T��"��m.
�CצN�iC��B�U#��!S^*�b��=zJ���*Y�'����đ_=������ȟ/���I"�ج���Y��H,���X��/ֺ�rjz19y���ڛ�X����@���s�Z����\-Uˮ�h������޻ՠ&זe�n��֜��i��jR
�[g�_�u�Ҫ~����=ՠ��8S���D��)�t?��{�Pښ�{@:ʿ�ym7.�fY�X���C�W���	�$ڄ҅I���F?�V)7��l^xʥ$�<y!�<�	Wz�
�T=�O�Y(���,cy`����2,"�9�Y!�����R[/-���I�ta�B�q4S~�p�jz�2��<n�G-����ʛ֒���;�2�q&]؝ZO��>6)2~<M��1DT/�7o+�L
+endstream
+endobj
+8384 0 obj
+<<
+/Type /Page
+/Contents 8385 0 R
+/Resources 8383 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8401 0 R
+/Annots [ 8305 0 R 8306 0 R 8350 0 R 8351 0 R 8352 0 R 8353 0 R 8354 0 R 8355 0 R 8356 0 R 8357 0 R 8358 0 R 8359 0 R 8360 0 R 8361 0 R 8362 0 R 8363 0 R 8364 0 R 8365 0 R 8366 0 R 8367 0 R 8368 0 R 8369 0 R 8370 0 R 8371 0 R ]
+>>
+endobj
+8305 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 735.244 169.019 743.625]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8306 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.294 666.483 284.073 676.751]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8350 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 653.427 132.012 661.169]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8351 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [227.27 638.588 298.024 648.856]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8352 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 625.531 132.012 633.273]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8353 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [223.28 612.396 279.087 621.167]
+/A << /S /GoTo /D (namespace_h_t_t_p_af603c787079c0b8cacc07b6be6ae5e95) >>
+>>
+endobj
+8354 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 597.636 132.012 605.378]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8355 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [204.836 584.581 269.61 593.065]
+/A << /S /GoTo /D (namespace_h_t_t_p_a28a83748614f1c141821ce4b9da83d3f) >>
+>>
+endobj
+8356 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 569.74 132.012 577.482]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8357 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [193.144 556.605 242.47 565.17]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8358 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 541.845 132.012 549.587]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8359 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 458.844 212.775 467.615]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h) >>
+>>
+endobj
+8360 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 427.148 155.549 433.028]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+8361 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 411.099 92.784 417.66]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8362 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 410.134 276.893 417.088]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+8363 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 395.159 92.784 401.72]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8364 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.795 394.193 285.262 401.148]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+8365 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 379.219 92.784 385.779]
+/A << /S /GoTo /D (namespace_h_t_t_p_af603c787079c0b8cacc07b6be6ae5e95) >>
+>>
+endobj
+8366 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 379.219 272.709 385.473]
+/A << /S /GoTo /D (namespace_h_t_t_p_af603c787079c0b8cacc07b6be6ae5e95) >>
+>>
+endobj
+8367 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 363.279 92.784 369.839]
+/A << /S /GoTo /D (namespace_h_t_t_p_a28a83748614f1c141821ce4b9da83d3f) >>
+>>
+endobj
+8368 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 363.279 255.972 369.839]
+/A << /S /GoTo /D (namespace_h_t_t_p_a28a83748614f1c141821ce4b9da83d3f) >>
+>>
+endobj
+8369 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 347.339 92.784 353.899]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8370 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 347.339 235.05 353.327]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8371 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 157.722 166.042 166.493]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8386 0 obj
+<<
+/D [8384 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+8387 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+8388 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 708.135 null]
+>>
+endobj
+3421 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 532.713 null]
+>>
+endobj
+1942 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 526.263 null]
+>>
+endobj
+8389 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 460.024 null]
+>>
+endobj
+8390 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 452.054 null]
+>>
+endobj
+8391 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 444.084 null]
+>>
+endobj
+8392 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 436.114 null]
+>>
+endobj
+8393 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 428.144 null]
+>>
+endobj
+3455 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 420.174 null]
+>>
+endobj
+8394 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 412.204 null]
+>>
+endobj
+3456 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 404.234 null]
+>>
+endobj
+8395 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 396.264 null]
+>>
+endobj
+3457 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 388.293 null]
+>>
+endobj
+8396 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 380.323 null]
+>>
+endobj
+3454 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 372.353 null]
+>>
+endobj
+8397 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 364.383 null]
+>>
+endobj
+3420 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 356.413 null]
+>>
+endobj
+8398 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 348.443 null]
+>>
+endobj
+8399 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 340.473 null]
+>>
+endobj
+3376 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 331.736 null]
+>>
+endobj
+1946 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 315.323 null]
+>>
+endobj
+8400 0 obj
+<<
+/D [8384 0 R /XYZ 70.866 197.67 null]
+>>
+endobj
+8383 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8433 0 obj
+<<
+/Length 1102      
+/Filter /FlateDecode
+>>
+stream
+x��XK��8��+T��> ��=��aj`��*�s���������&٩���+Y��`v���[���ݒ>�9@�s�vzf:BP�>A[`9
+�x2��w���eBṄ��7�IJ��x��(� ��i��v��`i��޺�mh�a��;3�����-C�8��Q���Η*��Z��8����/+�?�9�b~o@�G,�e[�K���~#�LO]΅�iw�ge���m��d����� �eL�Ç����=pW�-O�
,�	�R	�ġ��t� ��2H�ke��OL�x�ww�@���|����G����
��n��������b~N�Y��˖�o��뱿��|/�P��lvs�f�Ybvev�h~**�q8��^&�ޅ�ߏL��uز�����@�H	n��R��
“��P�Ff�~����ك�_�r���in�S���DM�
�tO����s�8X?h��#A�Ha���`����T���n}~l�L]\L���Nk4�G��XS�-Z��B�d��4}���c�s_ԁ�]fA�7=�@���Gmu@
+�h#�C��vu��f���/��}���υM��o��c�3 �cɪ�T�Q%j�s�U��ȕV�������nn!ٿ_%�<���OMK�^	�� �������5��|�%h�~�+F�ڏ���b�E05y.ܡ���OW^�D�ۖ2�.�JP����D�2�.��GKպ*6��zUOJceT��o�M����֔�W�ԕ��r�(�lY�	�H�XmF�5��)�l+���+em�2�6͹��Q�/��dm��pk�kKքWmZ--�Z���ݖg��U�g͖e%Y��)8oKL�7컟R��ɇ�d�l���b��j�� �ô~�i�ԉ+T�Ud���D}bO{�������.�D)-8]����]	=ʌȏ?�7$W?;uZR\�cZ���wz����%��K��u�A\Z�)�Ԙ鲗.<}���Y�9��N�ZG��RS�k�^X�ah�7eG�!
+�s)hAzQ�jm��u��CD�9���}���,���,�M%
+�G~�e�gR~?�R�X���Ug~T��/�Y�,
+endstream
+endobj
+8432 0 obj
+<<
+/Type /Page
+/Contents 8433 0 R
+/Resources 8431 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8401 0 R
+/Annots [ 8372 0 R 8373 0 R 8374 0 R 8375 0 R 8376 0 R 8377 0 R 8378 0 R 8379 0 R 8380 0 R 8381 0 R 8382 0 R 8402 0 R 8403 0 R 8404 0 R 8405 0 R 8406 0 R 8407 0 R 8408 0 R 8409 0 R 8410 0 R 8411 0 R 8412 0 R 8413 0 R 8414 0 R 8415 0 R 8416 0 R 8417 0 R 8418 0 R 8419 0 R 8420 0 R 8421 0 R 8422 0 R 8423 0 R 8424 0 R 8425 0 R 8426 0 R ]
+>>
+endobj
+8372 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [156.087 735.061 197.943 743.832]
+/A << /S /GoTo /D (namespace_s_o_i_l_aef76c04a3939438dd7454193a3d56384) >>
+>>
+endobj
+8373 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 720.135 129.333 728.228]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8374 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.908 707.165 220.189 715.936]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1691ac525df63feb4f180fcc32f307f1) >>
+>>
+endobj
+8375 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 692.24 129.333 700.333]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8376 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.117 679.27 198.445 688.041]
+/A << /S /GoTo /D (namespace_s_o_i_l_a79f0d9e5821444f0265d9edf1e37f237) >>
+>>
+endobj
+8377 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 664.344 129.333 672.437]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8378 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [168.173 651.374 229.459 660.145]
+/A << /S /GoTo /D (namespace_s_o_i_l_a69374c360d593ed3cd4df6f3ebb40643) >>
+>>
+endobj
+8379 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 636.449 129.333 644.542]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8380 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.501 623.479 206.309 632.25]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+8381 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 608.553 129.333 616.647]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8382 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.583 608.626 152.573 616.461]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+8402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.094 595.584 197.926 604.355]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+8403 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 580.658 129.333 588.751]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8404 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.583 580.731 149.507 588.565]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+8405 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [239.136 567.688 317.359 576.459]
+/A << /S /GoTo /D (namespace_s_o_i_l_a738722655e044a443e338fde0f97e9a0) >>
+>>
+endobj
+8406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 552.763 129.333 560.856]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8407 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 469.927 212.775 478.698]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+8408 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 446.093 163.917 452.653]
+/A << /S /GoTo /D (_time_8h) >>
+>>
+endobj
+8409 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 438.123 163.917 444.683]
+/A << /S /GoTo /D (_enum_8h) >>
+>>
+endobj
+8410 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 430.153 155.549 436.406]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8411 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 414.212 92.784 420.773]
+/A << /S /GoTo /D (namespace_s_o_i_l_aef76c04a3939438dd7454193a3d56384) >>
+>>
+endobj
+8412 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 414.212 193.207 420.201]
+/A << /S /GoTo /D (namespace_s_o_i_l_aef76c04a3939438dd7454193a3d56384) >>
+>>
+endobj
+8413 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 398.272 92.784 404.833]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1691ac525df63feb4f180fcc32f307f1) >>
+>>
+endobj
+8414 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 398.272 201.576 404.526]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1691ac525df63feb4f180fcc32f307f1) >>
+>>
+endobj
+8415 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 382.332 92.784 388.892]
+/A << /S /GoTo /D (namespace_s_o_i_l_a79f0d9e5821444f0265d9edf1e37f237) >>
+>>
+endobj
+8416 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 382.332 184.839 388.585]
+/A << /S /GoTo /D (namespace_s_o_i_l_a79f0d9e5821444f0265d9edf1e37f237) >>
+>>
+endobj
+8417 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 366.392 92.784 372.952]
+/A << /S /GoTo /D (namespace_s_o_i_l_a69374c360d593ed3cd4df6f3ebb40643) >>
+>>
+endobj
+8418 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [195.399 366.392 222.497 372.645]
+/A << /S /GoTo /D (namespace_s_o_i_l_a69374c360d593ed3cd4df6f3ebb40643) >>
+>>
+endobj
+8419 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 350.451 92.784 357.012]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+8420 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 350.451 163.917 356.44]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+8421 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 350.451 184.839 356.44]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+8422 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 334.511 92.784 341.072]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+8423 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 334.511 163.917 341.072]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+8424 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 334.619 184.839 340.5]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+8425 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 318.571 92.784 325.131]
+/A << /S /GoTo /D (namespace_s_o_i_l_a738722655e044a443e338fde0f97e9a0) >>
+>>
+endobj
+8426 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 318.571 293.631 324.825]
+/A << /S /GoTo /D (namespace_s_o_i_l_a738722655e044a443e338fde0f97e9a0) >>
+>>
+endobj
+8434 0 obj
+<<
+/D [8432 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+8435 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+3641 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 543.796 null]
+>>
+endobj
+1950 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 537.346 null]
+>>
+endobj
+8436 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 471.108 null]
+>>
+endobj
+8437 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 463.137 null]
+>>
+endobj
+8438 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 455.167 null]
+>>
+endobj
+8439 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 447.197 null]
+>>
+endobj
+8440 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 439.227 null]
+>>
+endobj
+8441 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 431.257 null]
+>>
+endobj
+3658 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 423.287 null]
+>>
+endobj
+8442 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 415.317 null]
+>>
+endobj
+3643 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 407.347 null]
+>>
+endobj
+8443 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 399.376 null]
+>>
+endobj
+3640 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 391.406 null]
+>>
+endobj
+8444 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 383.436 null]
+>>
+endobj
+3659 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 375.466 null]
+>>
+endobj
+8445 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 367.496 null]
+>>
+endobj
+3644 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 359.526 null]
+>>
+endobj
+8446 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 351.556 null]
+>>
+endobj
+3660 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 343.586 null]
+>>
+endobj
+8447 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 335.616 null]
+>>
+endobj
+3642 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 327.645 null]
+>>
+endobj
+8448 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 319.675 null]
+>>
+endobj
+8449 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 311.705 null]
+>>
+endobj
+8450 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 303.735 null]
+>>
+endobj
+3320 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 294.998 null]
+>>
+endobj
+1954 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 278.585 null]
+>>
+endobj
+5342 0 obj
+<<
+/D [8432 0 R /XYZ 70.866 165.128 null]
+>>
+endobj
+8431 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F22 2379 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8468 0 obj
+<<
+/Length 1411      
+/Filter /FlateDecode
+>>
+stream
+xڵXmo�6��_�e�j�5�W�8i��M�C�50 	Ŧm��Ir�lh�HQ�%�Rd'�$�"{�H4�4&�ߧ��)�
8�I��° �MӰLdL��e���ز�gn�����}0[��ӏ%6`�-��s�i���ɴ�O�Qh�B�mScv׻���\��h@@���μ3(#�Q"�}��g�p"�X����"EB
Ԟ-3T�'B&!%ۡ1$0�Q�&��:ɟ+�^��lsǃ�M�0PC�"�����
+B��b}�iW��N5L�X��tZ�Ci�!R���~�tuD�7.����g/�����&�LҕK�j�8��1Z�<�G�q��V�O(#�T�I��;���C������[?eK�Ѱ����h�]ի ��|<��gIm��[|���Vnt�Țt�����x��3�Xaf֔�3�K�~�䤯�K�0��ʲ̙��}\ڂ(P�-AZZ�M T����M�ob:�vt�&;h���M���σe�NK�]DDq$�X:*F�i9��`Hd��8{'"r�~�w�0H�}r�_����/���%[%15��Օ��[xy��_y�fgE�6�Ʉ>����v�X�H��0|8��\Lo�8�4���@�U�^��R�$b�)%d�;��e���_����A�6��&
+tDP��k��o��v�J��j.uK�lgդ��"�h��Ɯ-A0֯"]��t3��c'k��l�\��.�+�����2E����t$
+���|M�e���[�Am� �k(�7�z�}��';�����4���܍ri��DZyL:���;O��v=����g��OIA
tk������V}ik
+��)@Ic5�m/X�Ry�b����	��8�݆��3b�^�h�Ƽ1�hkfQV>ڄ�����T��
�4����ՙ,�0�YU�S�Qq�<��닧o�VF�J���C�����v�G��`�p��q�lɴ���qQ��ׯ��.  O�W�6k�R�n��Q�C
�VZ[�5N���N��tjVi�Q�[i�gJCv�]+�
���N�(
��h�VF���61E��5������S����e�S&� �96�	J=�����pP����Ԟb�U�_B~3}�0}%`�l�{@���=�٥ݢފ����2Rt�hօ��%z$���Ԓ[�٩�g-��|1@��#̸�!��pLljZs��W�Yp�$��>B�a�6=,��[����)ڗG����OP[�Fai;2�v��3t,@�Qȶ�md2�X̩Bc�,c�{ߍcך���)2�e[�� ��eW�:�3�3)��, IP>Ԏv���Ԓ0�)�00�L:��d
ujק��U۵�F6c@� v�c��k`ˤ��5e��o���Dl$�[�:��C8 ����y��A��dؕ.
+endstream
+endobj
+8467 0 obj
+<<
+/Type /Page
+/Contents 8468 0 R
+/Resources 8466 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8401 0 R
+/Annots [ 8427 0 R 8428 0 R 8429 0 R 8430 0 R 8451 0 R 8452 0 R 8453 0 R 8454 0 R 8455 0 R 8456 0 R 8457 0 R 8458 0 R 8459 0 R 8460 0 R 8461 0 R 8462 0 R 8463 0 R 8464 0 R ]
+>>
+endobj
+8427 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 727.302 212.775 736.073]
+/A << /S /GoTo /D (_hasher_8cpp) >>
+>>
+endobj
+8428 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 719.407 172.286 725.968]
+/A << /S /GoTo /D (_hasher_8h) >>
+>>
+endobj
+8429 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 663.617 92.784 670.177]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a1478050616af6fac27055b9a5190a044) >>
+>>
+endobj
+8430 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 663.617 293.631 670.177]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a1478050616af6fac27055b9a5190a044) >>
+>>
+endobj
+8451 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 575.945 92.784 582.506]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a8c2a89d646c15f8da4c091ae843ae06b) >>
+>>
+endobj
+8452 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 575.945 180.654 582.506]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a8c2a89d646c15f8da4c091ae843ae06b) >>
+>>
+endobj
+8453 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 536.095 92.784 542.655]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a582f222aea5015de7faceba2bab99bc3) >>
+>>
+endobj
+8454 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 536.095 184.839 542.655]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a582f222aea5015de7faceba2bab99bc3) >>
+>>
+endobj
+8455 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 504.214 92.784 510.775]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a00cfd65d186d606a4fc1572812315960) >>
+>>
+endobj
+8456 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 504.214 285.262 510.775]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a00cfd65d186d606a4fc1572812315960) >>
+>>
+endobj
+8457 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 464.364 92.784 470.924]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_ac1a37929a88ca5eab2bba5d39105bdf3) >>
+>>
+endobj
+8458 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 464.364 197.392 470.924]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_ac1a37929a88ca5eab2bba5d39105bdf3) >>
+>>
+endobj
+8459 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 424.513 92.784 431.074]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a4f80bf765513cdff089a634599cc534d) >>
+>>
+endobj
+8460 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 424.513 201.576 431.074]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a4f80bf765513cdff089a634599cc534d) >>
+>>
+endobj
+8461 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 384.663 92.784 391.223]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a5bd6f0f8915dab9870ca8eb8a4d39a10) >>
+>>
+endobj
+8462 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 383.697 226.682 391.223]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a5bd6f0f8915dab9870ca8eb8a4d39a10) >>
+>>
+endobj
+8463 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 84.278 175.492 93.049]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+8464 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.244 69.777 169.245 77.612]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+8469 0 obj
+<<
+/D [8467 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1958 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+8470 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 728.482 null]
+>>
+endobj
+8471 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 720.512 null]
+>>
+endobj
+8472 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 712.542 null]
+>>
+endobj
+8473 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 704.572 null]
+>>
+endobj
+8474 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 696.601 null]
+>>
+endobj
+8475 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 688.631 null]
+>>
+endobj
+8476 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 680.661 null]
+>>
+endobj
+5369 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 672.691 null]
+>>
+endobj
+8477 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 664.721 null]
+>>
+endobj
+8478 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 656.751 null]
+>>
+endobj
+8479 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 648.781 null]
+>>
+endobj
+8480 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 640.811 null]
+>>
+endobj
+8481 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 632.841 null]
+>>
+endobj
+8482 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 624.87 null]
+>>
+endobj
+8483 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 616.9 null]
+>>
+endobj
+8484 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 608.93 null]
+>>
+endobj
+8485 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 600.96 null]
+>>
+endobj
+8486 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 592.99 null]
+>>
+endobj
+5341 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 585.02 null]
+>>
+endobj
+8487 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 577.05 null]
+>>
+endobj
+8488 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 569.08 null]
+>>
+endobj
+8489 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 561.11 null]
+>>
+endobj
+8490 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 553.139 null]
+>>
+endobj
+5343 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 545.169 null]
+>>
+endobj
+8491 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 537.199 null]
+>>
+endobj
+8492 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 529.229 null]
+>>
+endobj
+8493 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 521.259 null]
+>>
+endobj
+5351 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 513.289 null]
+>>
+endobj
+8494 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 505.319 null]
+>>
+endobj
+8495 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 497.349 null]
+>>
+endobj
+8496 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 489.378 null]
+>>
+endobj
+8497 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 481.408 null]
+>>
+endobj
+5368 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 473.438 null]
+>>
+endobj
+8498 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 465.468 null]
+>>
+endobj
+8499 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 457.498 null]
+>>
+endobj
+8500 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 449.528 null]
+>>
+endobj
+8501 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 441.558 null]
+>>
+endobj
+5395 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 433.588 null]
+>>
+endobj
+8502 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 425.618 null]
+>>
+endobj
+8503 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 417.647 null]
+>>
+endobj
+8504 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 409.677 null]
+>>
+endobj
+8505 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 401.707 null]
+>>
+endobj
+5352 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 393.737 null]
+>>
+endobj
+8506 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 385.767 null]
+>>
+endobj
+8507 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 377.797 null]
+>>
+endobj
+8508 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 369.827 null]
+>>
+endobj
+8509 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 361.857 null]
+>>
+endobj
+8510 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 353.887 null]
+>>
+endobj
+8511 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 345.916 null]
+>>
+endobj
+8512 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 329.976 null]
+>>
+endobj
+8513 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 322.006 null]
+>>
+endobj
+8514 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 314.036 null]
+>>
+endobj
+8515 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 306.066 null]
+>>
+endobj
+8516 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 298.096 null]
+>>
+endobj
+8517 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 290.126 null]
+>>
+endobj
+8518 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 282.156 null]
+>>
+endobj
+8519 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 274.185 null]
+>>
+endobj
+8520 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 266.215 null]
+>>
+endobj
+3321 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 257.478 null]
+>>
+endobj
+1962 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 241.396 null]
+>>
+endobj
+8521 0 obj
+<<
+/D [8467 0 R /XYZ 70.866 121.2 null]
+>>
+endobj
+8466 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F22 2379 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8536 0 obj
+<<
+/Length 1370      
+/Filter /FlateDecode
+>>
+stream
+x��YIo�F��W)PHM5���9nE�A��n�a��X"*�,I9u���wR���,)1�`�����3�0�0��<��E �d����C ��`2
�������M@�	��h�_'5c.���x�TiUI����_&�?H��Z��rpu
���{h�R���eRhH��"�0�}�;0�J���!��*�(V���>{MȆ��.x0ƚ�n�G��֞�jL)�
�z҈S�j���eF~�|�ai�b ���aR�9sL%�h� ��_�r���C0�aՑc���u�9ST�s^�f�e;��5k�ҽ}�kc":1h0 95O�8�6Dn5�ƎB�C�Z��#NQL��]^D�e4�?�t��Z�;���4^���qx�k�a��e�U�(� k�}�ɗ��Wq�/�\P�&�B6eU$���#��>���d[���Qﱯ-�nH��솖Y�Z�̹�CѢ�0��Df��ʲ��Wo��'���^�H'��Ƃߝn��a^$�QՉ��ṗ"ƣ1
������;o�X�e2K���1�G���4��~:�d��E���4��괈}�ԙR���&��a��Obƽ�!߯*˰R�|�kE�{���\���m��!�R���b{����,��h�r~s�-L���կ�Px�)?�����N�lXx��R��*U�Ѻ/�^���L�V7���1@�"�kدQN�Â�ƥ9g�^��ܮ�8�괕Z����*<ޙo�lჳ�sU�QYğ��f�T�J�Dz�%�r%>��ra�Z/����]	������m)	�������:�~���0}�n�Mi:��Ck��Y5o-:&H�
]��b�^����˞"�5
+@難�`Rq,J�E���m���9F���ˏ�(o�#���%k�A�o2Ǥ駈�d.���h#��2hG�L�O}B94}ʮ�U��W]���idf�wd�(H�
U��y��G�1�Z�w���f!6��6L}���:�k#�%���m�^<n]�����N
�����B�sYO���1���lkO�J�{�!�WIG��z�T���
��v[+�n��uS��M��a�og�
+y������y��m뽺!8T��{��!�d�mv[j��tm0֠GH�:k-U��-UJ����]x�r�C�,���'-=�B�m����!�5B�������oZ��c�@`�6iOO.ӕ�,gE�>T�׫�܏�H�d�S#��8BU_!{2���7���y�0�:-o��itK��0S̀�uR�uR����s���VtS>N�C7O�gJ�v8�K��Yh%
��х��:<.��/+S��[Sk��A#��3c�J��j����$�
+endstream
+endobj
+8535 0 obj
+<<
+/Type /Page
+/Contents 8536 0 R
+/Resources 8534 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8401 0 R
+/Annots [ 8465 0 R 8522 0 R 8523 0 R 8524 0 R 8525 0 R 8526 0 R 8527 0 R 8528 0 R 8529 0 R 8530 0 R 8531 0 R 8532 0 R 8533 0 R ]
+>>
+endobj
+8465 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 736.354 167.53 745.125]
+/A << /S /GoTo /D (namespace_s_i_g_n) >>
+>>
+endobj
+8522 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 656.265 212.775 665.036]
+/A << /S /GoTo /D (_hasher_8h) >>
+>>
+endobj
+8523 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 640.4 184.839 646.961]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+8524 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 608.52 92.784 615.08]
+/A << /S /GoTo /D (namespace_s_i_g_n) >>
+>>
+endobj
+8525 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 608.52 155.549 614.773]
+/A << /S /GoTo /D (namespace_s_i_g_n) >>
+>>
+endobj
+8526 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 592.58 92.784 599.14]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+8527 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 592.58 180.654 599.14]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+8528 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 552.729 155.549 559.289]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+8529 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 536.789 159.733 543.349]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher) >>
+>>
+endobj
+8530 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 409.267 92.784 415.827]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a5deae136de825a30bf627ec80a967a3f) >>
+>>
+endobj
+8531 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 408.301 235.05 415.827]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a5deae136de825a30bf627ec80a967a3f) >>
+>>
+endobj
+8532 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 77.656 212.775 86.427]
+/A << /S /GoTo /D (_signer_8cpp) >>
+>>
+endobj
+8533 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 68.796 172.286 76.322]
+/A << /S /GoTo /D (_signer_8h) >>
+>>
+endobj
+8537 0 obj
+<<
+/D [8535 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+8538 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+5340 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 726.435 null]
+>>
+endobj
+1966 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 719.375 null]
+>>
+endobj
+8539 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 657.445 null]
+>>
+endobj
+8540 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 649.475 null]
+>>
+endobj
+8541 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 641.505 null]
+>>
+endobj
+8542 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 633.535 null]
+>>
+endobj
+8543 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 625.564 null]
+>>
+endobj
+8544 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 617.594 null]
+>>
+endobj
+8545 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 609.624 null]
+>>
+endobj
+5339 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 601.654 null]
+>>
+endobj
+8546 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 593.684 null]
+>>
+endobj
+8547 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 585.714 null]
+>>
+endobj
+8548 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 577.744 null]
+>>
+endobj
+8549 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 569.774 null]
+>>
+endobj
+8550 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 561.804 null]
+>>
+endobj
+8551 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 553.833 null]
+>>
+endobj
+8552 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 545.863 null]
+>>
+endobj
+8553 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 537.893 null]
+>>
+endobj
+8554 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 529.923 null]
+>>
+endobj
+8555 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 521.953 null]
+>>
+endobj
+8556 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 513.983 null]
+>>
+endobj
+8557 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 506.013 null]
+>>
+endobj
+8558 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 498.043 null]
+>>
+endobj
+8559 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 490.073 null]
+>>
+endobj
+8560 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 482.102 null]
+>>
+endobj
+8561 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 474.132 null]
+>>
+endobj
+8562 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 466.162 null]
+>>
+endobj
+8563 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 458.192 null]
+>>
+endobj
+8564 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 450.222 null]
+>>
+endobj
+8565 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 442.252 null]
+>>
+endobj
+8566 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 434.282 null]
+>>
+endobj
+8567 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 426.312 null]
+>>
+endobj
+5367 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 418.342 null]
+>>
+endobj
+8568 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 410.371 null]
+>>
+endobj
+8569 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 402.401 null]
+>>
+endobj
+8570 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 394.431 null]
+>>
+endobj
+8571 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 386.461 null]
+>>
+endobj
+8572 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 378.491 null]
+>>
+endobj
+8573 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 370.521 null]
+>>
+endobj
+8574 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 362.551 null]
+>>
+endobj
+8575 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 354.581 null]
+>>
+endobj
+3322 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 345.843 null]
+>>
+endobj
+1970 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 329.572 null]
+>>
+endobj
+6486 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 158.925 null]
+>>
+endobj
+1974 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 142.654 null]
+>>
+endobj
+8576 0 obj
+<<
+/D [8535 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+8534 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8591 0 obj
+<<
+/Length 1623      
+/Filter /FlateDecode
+>>
+stream
+xڵY�S�6�=���뜵(�l�6��um`�I{��g%�5q��@�n��'Y2�9	�,��>�^�_�-cbX�a��~�s�x�|Bl�?6\x�����FdL8^{���&md��N���Ӌ&1M��2�TD3*Z�t܆�IY�
!qLH��e�c��o�ق�2�=��9�p�\Zƈ�}4,`��q�Ϝ�vl֞���-K�v|���=�b�A9�0��?a#aR�=�-c�C,��)�������7N����}!F³?;.�.a�'¤��8O�����'�,�i���N��`�	�<�mS�}&4�$���=���f0�����f#"��8wj�7�u3aE�f�`ă�2ų�a`^X�J���.3�(��c��pN�`������Gm����1�mU��BG.�E2Z����_����aU�ؚ*�j9Ӥ��4jH�b1K��@خɈ�s:kh��4�T�"����A����%ЯG����O��~��=`�({��E�[������4��y��d�Cp	��@VI"�M�,?,���~�`([|]<w)i�y�4�4�h�4۫�pA�UϬv�R�(��ޢ�3�u��93c�dSU������T�u݄
����0�L]�����Ux���X�\C��w;�Y�ZՊ��-P�S�E��Y���Y��C��-�}��_êp1e]J�`<')_*1^�H?8~w��t{�����K�����w�G�n1��@>@�J������U�|e��귤�L��iu�)�<�B�#X~��p�.ْa;oOh��V(�a"#s�$[�`lK�F7t�-��e�r���2��ɾh���yn�����P3��m�Xu�;����M�tg�)LNR��&�Ho˶����W9�n�m���c����1��Dl{���}��q��JZ�=���M�J�n�6%Mv�6�FuM汕��i����b�Y[�8���ф�guG�j S�6��NC�]e:����GK���H��*�[�F�r1�F�դ������d��,#C2����[�5�F�VQ�֞���ߴW���7���-�FZU�O��}Q�A}a'������B�}����t`ĩ\�\-˫����3J�p�e���Vɻ
+����9�c��,��t9��F���UL�A����&���S���OQ�x�����T����Ӎ�~U(�+��z�V{��J�*�^�jL&����l�Y���R���t\���y}��� �\������l쮏���ь�41�l�>���G��l��: �Y*^��,![�F!�U���?���y����B[�<̜o�HWHo�,����SS��P���|z�=����������I��~�뭊8ʙ�/�!>����f��b_}������9v�	a#�:����E��0�R0}Q���צ�rR�b�>ә���Av�_L�\#���{9m_#g�w�mɌ<7��c�a���.���03 v��g���iJӊ�tl[��	p=���]_ �릆11�\\�CsP�
ͤv��?�B:.�fn�c!�|�mV�@���;P��}���7|ȗ���]�(_t��HvG	��r'�m�2�M��4�S��[��
+endstream
+endobj
+8590 0 obj
+<<
+/Type /Page
+/Contents 8591 0 R
+/Resources 8589 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8401 0 R
+/Annots [ 8577 0 R 8578 0 R 8579 0 R 8580 0 R 8581 0 R 8582 0 R 8583 0 R 8584 0 R 8585 0 R 8586 0 R 8587 0 R ]
+>>
+endobj
+8577 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 688.226 92.784 694.786]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_aeb36266abd34f99a53482713be5b7794) >>
+>>
+endobj
+8578 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 687.26 180.654 694.786]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_aeb36266abd34f99a53482713be5b7794) >>
+>>
+endobj
+8579 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 519.887 155.549 527.414]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_a0315eec3c80b3238ee64e26115de9f0f) >>
+>>
+endobj
+8580 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 481.003 92.784 487.563]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_ae312cab4c8479a9a4a56f90257ab8e7d) >>
+>>
+endobj
+8581 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 480.037 184.839 487.563]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_ae312cab4c8479a9a4a56f90257ab8e7d) >>
+>>
+endobj
+8582 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 441.152 92.784 447.713]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_a0315eec3c80b3238ee64e26115de9f0f) >>
+>>
+endobj
+8583 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 440.186 285.262 447.713]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_a0315eec3c80b3238ee64e26115de9f0f) >>
+>>
+endobj
+8584 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 281.75 92.784 288.31]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_a8fbad2b5e76a6333dfa7fd537a5600e4) >>
+>>
+endobj
+8585 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 280.784 268.525 288.31]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_a8fbad2b5e76a6333dfa7fd537a5600e4) >>
+>>
+endobj
+8586 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 82.486 172.507 93.068]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+8587 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 68.074 134.263 77.798]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+8592 0 obj
+<<
+/D [8590 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+8593 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+8594 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+8595 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+8596 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+8597 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+8598 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+8599 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+8600 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+8601 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+6485 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+8602 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+8603 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+8604 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+8605 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+8606 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+8607 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+8608 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+8609 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+8610 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+8611 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+8612 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+8613 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+8614 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+8615 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+8616 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+8617 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+8618 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+8619 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+8620 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+8621 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+8622 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+8623 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+8624 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+8625 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+6487 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+8626 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+8627 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+8628 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+8629 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+6533 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+8630 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+8631 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+8632 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+8633 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+8634 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+8635 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+8636 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+8637 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+8638 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+8639 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+8640 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+8641 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+8642 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+8643 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+8644 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+8645 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+8646 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+8647 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+8648 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+6498 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+8649 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+8650 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+8651 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+3323 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 258.177 null]
+>>
+endobj
+1978 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 242.077 null]
+>>
+endobj
+8652 0 obj
+<<
+/D [8590 0 R /XYZ 70.866 121.38 null]
+>>
+endobj
+8589 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8679 0 obj
+<<
+/Length 1117      
+/Filter /FlateDecode
+>>
+stream
+x��X[o�6~�� �y���MY��-��n5�
Ia���eϒ�E��{t�$S����b�y�w�s#I�t=�~::��i�I��Rk)���Mt�PE��/��\.aa6|.�x”v.��ne�d���(�:����Q�I�Dj�5��_�n����$z���\!.\,��K�v�ˈ�`R���d����@_�W&��}g ��gW�[��J��BF�)򕷌��t3B:Q)�����]v��MK	x�����&�I���Xj�+��%q7&0w��Ӏ�\^�8َ'T8;?I�c�.q����Ø�?��89m��oofo~�����RK�6�����V��O!��b�������a�1����:"��`�XPVV�k�:�)�)B���DU�HX�d\��f�H_W��f�_�[BXffFϓ����8Wmצ�낻T�/Q�Ed�cA|ߒ�`;�Bc�t�oV㻌�g���`q}����aRףT๋5Tߒj���%k��J��p�(�\��:������o�lk��܇q�X(��=8\��]]�L��kԄ泱H{���D��9r��כ�|���q����(t�z����!���.0���:���(N�Q���QIl">�v������z�]��L-��a���"��;�)[�+�Q��^H�21xAQJZ����пl���|^�*�<�Hۇ=�0%��n3����r;���q�S���ǡn�z�nZr��<�m�_�zu��X�L
+�=S��J(�!4[�ن�yb�=�K���Y8��y����R�أ�)�˻	�t�
+�3D�b�
+/~���ؕ�Åe3H�X�1gn����t�>[6TZ��:D��yH*x�y���
q���2�y�{=��b�D�#����1u=|�v�b�= >w�8��kR��6o/vQ�jrC��9tļV�pel�� \�8�F$�5P��LZoL����lc�N�����D�7����~�huͶ+�J��=���z`����ڞ�Q1�D���i8vE���� �ֵ�	[�춑MDQ$��OVZ�**�';�Z�\�5��.o��ĥO��)�l$fJ�t���6�\`)�����\�j���ٕDyOo�1�1Q��b
+endstream
+endobj
+8678 0 obj
+<<
+/Type /Page
+/Contents 8679 0 R
+/Resources 8677 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8401 0 R
+/Annots [ 8588 0 R 8653 0 R 8654 0 R 8655 0 R 8656 0 R 8657 0 R 8658 0 R 8659 0 R 8660 0 R 8661 0 R 8662 0 R 8663 0 R 8664 0 R 8665 0 R 8666 0 R 8667 0 R 8668 0 R 8669 0 R 8670 0 R 8671 0 R 8672 0 R 8673 0 R 8674 0 R 8675 0 R ]
+>>
+endobj
+8588 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 738.096 167.53 746.867]
+/A << /S /GoTo /D (namespace_s_i_g_n) >>
+>>
+endobj
+8653 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.429 676.733 252.27 686.19]
+/A << /S /GoTo /D (_signer_8h_a2fca4fef9e4c7a2a739b1ea04acb56ce) >>
+>>
+endobj
+8654 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [213.749 664.135 275.528 673.798]
+/A << /S /GoTo /D (_signer_8h_a11ccc869c9ea1749e6fe88f44826b56a) >>
+>>
+endobj
+8655 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [208.55 531.146 258.363 538.932]
+/A << /S /GoTo /D (_signer_8h_a11ccc869c9ea1749e6fe88f44826b56a) >>
+>>
+endobj
+8656 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 510.409 143.126 518.485]
+/A << /S /GoTo /D (_signer_8h_source_l00007) >>
+>>
+endobj
+8657 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 508.414 202.482 518.996]
+/A << /S /GoTo /D (_signer_8h_source) >>
+>>
+endobj
+8658 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [198.986 422.064 239.235 429.548]
+/A << /S /GoTo /D (_signer_8h_a2fca4fef9e4c7a2a739b1ea04acb56ce) >>
+>>
+endobj
+8659 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 401.143 143.126 409.708]
+/A << /S /GoTo /D (_signer_8h_source_l00006) >>
+>>
+endobj
+8660 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [167.547 399.332 202.482 409.914]
+/A << /S /GoTo /D (_signer_8h_source) >>
+>>
+endobj
+8661 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 324.73 212.775 333.501]
+/A << /S /GoTo /D (_signer_8h) >>
+>>
+endobj
+8662 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 308.865 184.839 315.426]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+8663 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 276.985 92.784 283.545]
+/A << /S /GoTo /D (_signer_8h_a2fca4fef9e4c7a2a739b1ea04acb56ce) >>
+>>
+endobj
+8664 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 276.176 243.419 282.973]
+/A << /S /GoTo /D (_signer_8h_a2fca4fef9e4c7a2a739b1ea04acb56ce) >>
+>>
+endobj
+8665 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 269.015 92.784 275.575]
+/A << /S /GoTo /D (_signer_8h_a11ccc869c9ea1749e6fe88f44826b56a) >>
+>>
+endobj
+8666 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 268.206 260.156 275.268]
+/A << /S /GoTo /D (_signer_8h_a11ccc869c9ea1749e6fe88f44826b56a) >>
+>>
+endobj
+8667 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 245.104 155.549 251.358]
+/A << /S /GoTo /D (namespace_s_i_g_n) >>
+>>
+endobj
+8668 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 229.164 92.784 235.724]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+8669 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 228.198 180.654 235.724]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+8670 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 188.505 163.917 195.302]
+/A << /S /GoTo /D (_signer_8h_a2fca4fef9e4c7a2a739b1ea04acb56ce) >>
+>>
+endobj
+8671 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 172.564 172.286 179.627]
+/A << /S /GoTo /D (_signer_8h_a11ccc869c9ea1749e6fe88f44826b56a) >>
+>>
+endobj
+8672 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 156.467 155.549 163.993]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+8673 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 140.527 159.733 148.053]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+8674 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 93.672 92.784 100.232]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_a6b83d99b55d005f7ae32a3e18a9d5925) >>
+>>
+endobj
+8675 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 93.672 226.682 98.813]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer_a6b83d99b55d005f7ae32a3e18a9d5925) >>
+>>
+endobj
+8680 0 obj
+<<
+/D [8678 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+8681 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+8682 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 714.538 null]
+>>
+endobj
+1982 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 649.411 null]
+>>
+endobj
+8683 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 610.657 null]
+>>
+endobj
+1986 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 583.794 null]
+>>
+endobj
+8684 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 501.575 null]
+>>
+endobj
+1990 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 474.712 null]
+>>
+endobj
+6484 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 400.328 null]
+>>
+endobj
+1994 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 384.248 null]
+>>
+endobj
+8685 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 325.91 null]
+>>
+endobj
+8686 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 317.94 null]
+>>
+endobj
+8687 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 309.969 null]
+>>
+endobj
+8688 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 301.999 null]
+>>
+endobj
+8689 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 294.029 null]
+>>
+endobj
+8690 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+8691 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+8692 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+8693 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+8694 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+8695 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+6483 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+8696 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+8697 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+8698 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+8699 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+8700 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+8701 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+8702 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+8703 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+8704 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+8705 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+8706 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+8707 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+8708 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+8709 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+8710 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+8711 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+6497 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+8712 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+8713 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+8714 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+3325 0 obj
+<<
+/D [8678 0 R /XYZ 70.866 70.758 null]
+>>
+endobj
+8677 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8749 0 obj
+<<
+/Length 1081      
+/Filter /FlateDecode
+>>
+stream
+x��X�n�6}�W�	XӼ�����M�EѢ�Зd�Pd�V!K��l���;%[7'�7.�>$�ir��9C�H�Xظ���&W�c8���ܐ9BҥHÛw��8��T:f�Y�������O��0�6Q�^�5WQ��M8�6�,L5�p�L"����8������
�u�8ȡ��Fw��1��>1�1�,W��3�m�ظ�:@E.!�� �C!㯊�\q�p�6*�3l���(��7Qď3�,�՛�y�|�7���n.��%�P��)�4k٢����g��b�u��(��e�,
W!�(�4�S�^�zt�17Q�]s^R �+�S���E{�X�W:��P^�n��z���ڞP�z��#|l-��{"�IboE�/���u%H���"�E-'��.��p�M��:<p��y�|^��:�z;����"le-F��u(�B�Vg�}��y�w8n�%H:�S��*Q�)�-��3P��f@I��c:-���YJR���������ۅ^���I�³h�V��T}nS�F�m�Z1t?'WRy�B�9�]D0��
�8�ĥq<�.�ڄ��e+�1����Q$]�?D���ix�D�v�9\�c���p��ȏ�����b�L3��\���2u�}5��'�Y	�4ˇ.�I��?� c�"�"�S%;�"�tEn?��w�1sK?6�����_��������b%�ŗ;��m��H���*䡪�I��鲰+q[�u�
6��u�������U.M��Ur�г�2��z/�����t�&b�l��m��c&;��|4���t�V{���e��Sw��w�^'zy��;�����6��+�55Ð�����Ht�be����f	�B�꽭X/�UUsG{{jo�w���w�v���
X{�/ez���-�l�/(���������}�����K_^s:lѵ��V�k�l:�R6cͱwO%�97�^��A+7�w'���T,�<�i<����1���w���!��AZ�[��t���=���p�l�z��9Œ�~�#��n���fF���,d�L��}�Ǘ���6��a҅�T�g	
+endstream
+endobj
+8748 0 obj
+<<
+/Type /Page
+/Contents 8749 0 R
+/Resources 8747 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8771 0 R
+/Annots [ 8676 0 R 8715 0 R 8716 0 R 8717 0 R 8718 0 R 8719 0 R 8720 0 R 8721 0 R 8722 0 R 8723 0 R 8724 0 R 8725 0 R 8726 0 R 8727 0 R 8728 0 R 8729 0 R 8730 0 R 8731 0 R ]
+>>
+endobj
+8676 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 633.7 212.775 642.471]
+/A << /S /GoTo /D (_container_8cpp) >>
+>>
+endobj
+8715 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 625.805 184.839 632.366]
+/A << /S /GoTo /D (_container_8h) >>
+>>
+endobj
+8716 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 432.209 227.796 442.684]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8717 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.236 419.144 165.21 427.237]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8718 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 405.187 231.284 415.102]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4) >>
+>>
+endobj
+8719 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 377.606 234.771 387.52]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4) >>
+>>
+endobj
+8720 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 299.935 166.042 308.706]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8721 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 205.178 212.775 213.949]
+/A << /S /GoTo /D (_container_8h) >>
+>>
+endobj
+8722 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 189.313 184.839 195.874]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+8723 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 180.378 189.023 187.904]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h) >>
+>>
+endobj
+8724 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 172.407 197.392 179.934]
+/A << /S /GoTo /D (json__helpers_8h) >>
+>>
+endobj
+8725 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 164.437 168.101 171.963]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+8726 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 157.433 92.784 163.993]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8727 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 157.433 155.549 163.687]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+8728 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 133.523 92.784 140.083]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8729 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 133.523 176.47 140.083]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8730 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 77.732 92.784 84.292]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_ac329fc28b401a84de21b5f298e9236ce) >>
+>>
+endobj
+8731 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 77.732 168.101 84.292]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_ac329fc28b401a84de21b5f298e9236ce) >>
+>>
+endobj
+8750 0 obj
+<<
+/D [8748 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+1998 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+8751 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 714.85 null]
+>>
+endobj
+2002 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 698.584 null]
+>>
+endobj
+8752 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 634.88 null]
+>>
+endobj
+3326 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 626.687 null]
+>>
+endobj
+2006 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 610.421 null]
+>>
+endobj
+8753 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 472.511 null]
+>>
+endobj
+8754 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 338.533 null]
+>>
+endobj
+4154 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 275.45 null]
+>>
+endobj
+2010 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 268.364 null]
+>>
+endobj
+8755 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+8756 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+8757 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+8758 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+8759 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+8760 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+8761 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+8762 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+4153 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+8763 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+8764 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+8765 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+8766 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+8767 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+8768 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+8769 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+8770 0 obj
+<<
+/D [8748 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+8747 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8843 0 obj
+<<
+/Length 1468      
+/Filter /FlateDecode
+>>
+stream
+x��[�w�6�p��;�'ɒ,ӄs�u햧��[ړc�I�;�M����ėlDBIy��{���^�,�K�[�x���af0˥�6����p\dQhxC�
���6��1�E�0
+:&rX�m2��8��0��M[�y�[���
ɘ�6���'`yݩ�Gt�q+Z�Ll�`�?G�߭�Z@�Y��^�?H�	6��:6��B���Տd����5�
+�q�.��|�2`^Z���{��Y��ͤ|�,v�7� O���g�#r죎hs�G���#�t�N����{Y��mSӕ���=��n�4�7�3U�j�e1C������˦Z5ںV+!ir�>o+C�X���	-����8#� ��\}e8�;#��
���dKE�1o�p�2N��	aU��.lj"�Z��`�p��m�elՂ��qĽh����B�~�Dz�f��8���u7f_���u�~�A>NcUw�؛o�5��.n�yB�V�X�[�[n�W��Wғ� ��8P�/�,}3��0�R�s
^L/�ь՛�ۚ���u��ݮ��8�s;a�x1��9O��2�,�}�v9�z*W�=8F�Xd��faBG����������0Vƾ�Ǎ�)�����u/����[�q���q0�HG��^��� 
�(�/8;�}�A5n����l�1m691�8-Ȟ��l�.&���_Ӎ*�1iN�����ղ8nf��:��������y��R���D����2��^KZ������ۄ=5������i@u��7�H������Z�EH9�s_�J.��ܸ��T�u��p��W'���p�YjК������_K����VX �3��ۀ�sY�K�%�Ĩ��#ߨ�3!q-���.^�����9���^����0��l-��P����#��L�wJk����u~�U���	7XJ�����lO��+�i�5��!��ӡ�f��#Y���h:�Q�f咳S�Gd�<9�dp�Lӻ7�d�e��J!�Lo:	����B�$�l�J�@'�	�d�@'��N2���$str��L�v�'��{����q��KΛ��Q3�t��U���8"ݗ���
5�漮F.��m�WNJ'�nw-RS:��0��GP�֩ؿ\�� gw�A��*��ڙ��(Z-�^�V�*EG���0��H���c�t�|şi��L
+�2������<��2ļ-�F�3�Q�ђ�?.u~��-���7u5�.x''������A�=�s�~��$�+�2d�(qJ�H��ʒ��e_nRC�<̳��"L39֬�M '*�aUOe�÷�5���瘺�=$�{$��'����t
+�r�[_�d���%d�2���e̅nw��6�3��+
�Q��l�)�^҈IUЁ�1A� '*�۪�*��
+�7�ʋT�B���H�`�̿-ʇJ���K�){�ޛ�w_g���͝er�1!h����+m
+endstream
+endobj
+8842 0 obj
+<<
+/Type /Page
+/Contents 8843 0 R
+/Resources 8841 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8771 0 R
+/Annots [ 8732 0 R 8733 0 R 8734 0 R 8735 0 R 8736 0 R 8737 0 R 8738 0 R 8739 0 R 8740 0 R 8741 0 R 8742 0 R 8743 0 R 8744 0 R 8745 0 R 8746 0 R 8772 0 R 8773 0 R 8774 0 R 8775 0 R 8776 0 R 8777 0 R 8778 0 R 8779 0 R 8780 0 R 8781 0 R 8782 0 R 8783 0 R 8784 0 R 8785 0 R 8786 0 R 8787 0 R 8788 0 R 8789 0 R 8790 0 R 8791 0 R 8792 0 R 8793 0 R 8794 0 R 8795 0 R 8796 0 R 8797 0 R 8798 0 R 8799 0 R 8800 0 R 8801 0 R 8802 0 R 8803 0 R 8804 0 R 8805 0 R 8806 0 R 8807 0 R 8808 0 R 8809 0 R 8810 0 R 8811 0 R 8812 0 R 8813 0 R 8814 0 R 8815 0 R 8816 0 R 8817 0 R 8818 0 R 8819 0 R 8820 0 R 8821 0 R 8822 0 R 8823 0 R 8824 0 R 8825 0 R 8826 0 R 8827 0 R 8828 0 R 8829 0 R 8830 0 R 8831 0 R 8832 0 R 8833 0 R 8834 0 R 8835 0 R 8836 0 R 8837 0 R 8838 0 R 8839 0 R 8840 0 R ]
+>>
+endobj
+8732 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 759.957 92.784 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a8c515f73d9000e53db8478a8836c1d1f) >>
+>>
+endobj
+8733 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 759.957 168.101 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a8c515f73d9000e53db8478a8836c1d1f) >>
+>>
+endobj
+8734 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 744.016 92.784 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a00d0e2ac641857eac06d5d833c28229b) >>
+>>
+endobj
+8735 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 744.016 168.101 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a00d0e2ac641857eac06d5d833c28229b) >>
+>>
+endobj
+8736 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 744.016 214.129 750.005]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8737 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 743.051 235.05 750.577]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+8738 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 728.076 92.784 734.637]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a6483504f2c37393c0fdde77e39f5a030) >>
+>>
+endobj
+8739 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 727.11 281.078 734.065]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a6483504f2c37393c0fdde77e39f5a030) >>
+>>
+endobj
+8740 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 712.136 92.784 718.696]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a8ae9246ee94ebe4a82f7dad7e02ff310) >>
+>>
+endobj
+8741 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 711.327 209.944 718.696]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a8ae9246ee94ebe4a82f7dad7e02ff310) >>
+>>
+endobj
+8742 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 696.196 92.784 702.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a386c1992526628067cad3295763e6e39) >>
+>>
+endobj
+8743 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 695.387 214.129 702.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a386c1992526628067cad3295763e6e39) >>
+>>
+endobj
+8744 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 680.256 92.784 686.816]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a197355701a388b65d7ea327ddd45024a) >>
+>>
+endobj
+8745 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 680.256 172.286 686.244]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8746 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 679.29 197.392 686.816]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a197355701a388b65d7ea327ddd45024a) >>
+>>
+endobj
+8772 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 664.315 92.784 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_ad1574e37bb9696fdee3986964e77f050) >>
+>>
+endobj
+8773 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 663.349 197.392 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_ad1574e37bb9696fdee3986964e77f050) >>
+>>
+endobj
+8774 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 663.349 235.05 670.304]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+8775 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 648.375 92.784 654.935]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a893d008aed36e88dac38fbb0c5497ac2) >>
+>>
+endobj
+8776 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 648.375 151.364 654.364]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a893d008aed36e88dac38fbb0c5497ac2) >>
+>>
+endobj
+8777 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 632.435 92.784 638.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a5bb5198238af5ed6058e2f77ddb15f38) >>
+>>
+endobj
+8778 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 631.626 306.184 638.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a5bb5198238af5ed6058e2f77ddb15f38) >>
+>>
+endobj
+8779 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 616.495 92.784 623.055]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_adc3f75677472910832a714f472c00d5a) >>
+>>
+endobj
+8780 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 615.686 327.105 623.055]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_adc3f75677472910832a714f472c00d5a) >>
+>>
+endobj
+8781 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 576.644 92.784 583.204]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4) >>
+>>
+endobj
+8782 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 576.644 176.47 583.204]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8783 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 528.823 92.784 535.384]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a0cf0460b6035095a9fb4ac40fc0d56c8) >>
+>>
+endobj
+8784 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 528.823 168.101 535.384]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a0cf0460b6035095a9fb4ac40fc0d56c8) >>
+>>
+endobj
+8785 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 520.853 92.784 527.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ad9bd44996d34de087f4d8e52e3d087bd) >>
+>>
+endobj
+8786 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 520.853 168.101 527.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ad9bd44996d34de087f4d8e52e3d087bd) >>
+>>
+endobj
+8787 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 512.883 92.784 519.444]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_aeeba9a7d45fc949532443d3f6184cb29) >>
+>>
+endobj
+8788 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 512.883 168.101 519.444]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_aeeba9a7d45fc949532443d3f6184cb29) >>
+>>
+endobj
+8789 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 512.883 214.129 518.872]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8790 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 511.917 235.05 519.444]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+8791 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 504.913 92.784 511.473]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ac0d511ffb0f1398cbb9b88a9974ca647) >>
+>>
+endobj
+8792 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 503.947 230.866 510.902]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ac0d511ffb0f1398cbb9b88a9974ca647) >>
+>>
+endobj
+8793 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 496.943 92.784 503.503]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a44119ac58622a2aa98cf92018826def1) >>
+>>
+endobj
+8794 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 496.134 209.944 503.503]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a44119ac58622a2aa98cf92018826def1) >>
+>>
+endobj
+8795 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 488.973 92.784 495.533]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ae25249aadcd39ed98369b62f69d9cf9b) >>
+>>
+endobj
+8796 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 488.164 214.129 495.533]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ae25249aadcd39ed98369b62f69d9cf9b) >>
+>>
+endobj
+8797 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 481.003 92.784 487.563]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a795ada1b50ab3659a27fe96e40745480) >>
+>>
+endobj
+8798 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 481.003 172.286 486.991]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8799 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 480.037 197.392 487.563]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a795ada1b50ab3659a27fe96e40745480) >>
+>>
+endobj
+8800 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 473.033 92.784 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a4afd624980020d58d536fecd24a3a64e) >>
+>>
+endobj
+8801 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 472.067 197.392 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a4afd624980020d58d536fecd24a3a64e) >>
+>>
+endobj
+8802 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 472.067 235.05 479.021]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+8803 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 465.063 92.784 471.623]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a03f102c86faf01d5caef3972ff54463d) >>
+>>
+endobj
+8804 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 465.063 151.364 471.051]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a03f102c86faf01d5caef3972ff54463d) >>
+>>
+endobj
+8805 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 457.092 92.784 463.653]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_aaeb96652a1ee684921d9ff91be93b724) >>
+>>
+endobj
+8806 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 456.283 306.184 463.653]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_aaeb96652a1ee684921d9ff91be93b724) >>
+>>
+endobj
+8807 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 449.122 92.784 455.683]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ae65685172c0bcfc9d437accc2b194d34) >>
+>>
+endobj
+8808 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 448.313 327.105 455.683]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ae65685172c0bcfc9d437accc2b194d34) >>
+>>
+endobj
+8809 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 409.272 92.784 415.832]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4) >>
+>>
+endobj
+8810 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 409.272 176.47 415.832]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8811 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 361.451 92.784 368.011]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_a621f4d118ab910a12f01986158db4b04) >>
+>>
+endobj
+8812 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 361.451 168.101 368.011]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_a621f4d118ab910a12f01986158db4b04) >>
+>>
+endobj
+8813 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 353.481 92.784 360.041]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aa274a79ce54cb7ce0e384790332c6dfa) >>
+>>
+endobj
+8814 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 353.481 168.101 360.041]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aa274a79ce54cb7ce0e384790332c6dfa) >>
+>>
+endobj
+8815 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 345.511 92.784 352.071]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_a55089fd352f89f4248ea546a365aecc7) >>
+>>
+endobj
+8816 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 345.511 168.101 352.071]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_a55089fd352f89f4248ea546a365aecc7) >>
+>>
+endobj
+8817 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 345.511 214.129 351.499]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8818 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 344.545 235.05 352.071]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+8819 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 337.541 92.784 344.101]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aead4f92e330d6791b664af81b3f1942b) >>
+>>
+endobj
+8820 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 336.575 176.47 343.529]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aead4f92e330d6791b664af81b3f1942b) >>
+>>
+endobj
+8821 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 329.571 92.784 336.131]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ae5184ac1f1d1292b4cb72c28b3b3442e) >>
+>>
+endobj
+8822 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 328.762 209.944 336.131]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ae5184ac1f1d1292b4cb72c28b3b3442e) >>
+>>
+endobj
+8823 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 321.6 92.784 328.161]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ac2430a1362863511e7766b1e552c74be) >>
+>>
+endobj
+8824 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 320.792 214.129 328.161]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ac2430a1362863511e7766b1e552c74be) >>
+>>
+endobj
+8825 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 313.63 92.784 320.191]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_abab8884727d8470a1d6a151f11800338) >>
+>>
+endobj
+8826 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 313.63 172.286 319.619]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8827 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 312.665 197.392 320.191]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_abab8884727d8470a1d6a151f11800338) >>
+>>
+endobj
+8828 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 305.66 92.784 312.221]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aa74985ed06251ca010f9250d05fa9750) >>
+>>
+endobj
+8829 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 304.694 197.392 312.221]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aa74985ed06251ca010f9250d05fa9750) >>
+>>
+endobj
+8830 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 304.694 235.05 311.649]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+8831 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 297.69 92.784 304.25]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ab6644e2d6aa2ecc1027ce821a384e675) >>
+>>
+endobj
+8832 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 297.69 151.364 303.679]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ab6644e2d6aa2ecc1027ce821a384e675) >>
+>>
+endobj
+8833 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 289.72 92.784 296.28]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ae43038fa9aa3b9fbe4dd37e782008509) >>
+>>
+endobj
+8834 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 288.911 306.184 296.28]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ae43038fa9aa3b9fbe4dd37e782008509) >>
+>>
+endobj
+8835 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 281.75 92.784 288.31]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ab568a07a3075826eb277cc7392510f74) >>
+>>
+endobj
+8836 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 280.941 327.105 288.31]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ab568a07a3075826eb277cc7392510f74) >>
+>>
+endobj
+8837 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 233.929 92.784 240.49]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_ac329fc28b401a84de21b5f298e9236ce) >>
+>>
+endobj
+8838 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 232.963 235.05 240.49]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_ac329fc28b401a84de21b5f298e9236ce) >>
+>>
+endobj
+8839 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 122.348 92.784 128.908]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a8c515f73d9000e53db8478a8836c1d1f) >>
+>>
+endobj
+8840 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 121.382 235.05 128.908]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8844 0 obj
+<<
+/D [8842 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+8845 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+8846 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+8847 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+8848 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+8849 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+8850 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+4194 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+8851 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+4217 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+8852 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+8853 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+8854 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+8855 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+8856 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+8857 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+8858 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+8859 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+8860 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+8861 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+8862 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+8863 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+8864 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+8865 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+4322 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+8866 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+8867 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+8868 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+8869 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+8870 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+8871 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+8872 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+8873 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+8874 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+4337 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+4366 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+8875 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+8876 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+8877 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+8878 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+8879 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+8880 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+8881 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+8882 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+8883 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+4255 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+8884 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+8885 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+8886 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+8887 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+8888 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+8889 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+8890 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+8891 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+8892 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+4271 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+4295 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+8893 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+8894 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+8895 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+8896 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+8897 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+8898 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+8899 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+8900 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+8901 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+8902 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+4155 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+8903 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+8904 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+8905 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+8906 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+8907 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+8908 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+8909 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+8910 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+8911 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+8912 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+8913 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+8914 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+8915 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+4156 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+8916 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+8917 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+8918 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+8919 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+8920 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+8921 0 obj
+<<
+/D [8842 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+8841 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+8941 0 obj
+<<
+/Length 1418      
+/Filter /FlateDecode
+>>
+stream
+x��ZKs�6��W�9d��BA�89��֧6UO�GCK�ME&]���f����HJ�L9r�t|�I�b��.�[�йr�s��~���g���^:N�Ä���Ψ+�A���x��8��0
+��]p�;�9q@8����.Cys�a篎+[��n�r����Mgt���;s @�;w��F�~�������P �uE��ZS=���C�����N��!U7W�ɱRc@d"'�~�?�8�>�R�e�ϖ*�v*�?@��J@}t�_d�n䲧.����@
+s�z�^��~l�zRBxiZ���߹P�ڏ�וQ5O>YHn�V���Z)���d�I|��/ͦ�A����&I'
�]OJ�_���wa�W�F�pZ�e*eDiG�ϰ��i^E�+;z��B��F�|�^�g}?.-g�&��i�=�3�P�m�_*�}~-���(���G.�yl/�0��4k-���(��,����َ"'� �V�A��:�~[: �S�����T�F�N���D�ޭW$w�b=�&�A�m�)��l�'r�k����j���nhRf��e8�m08Ke�<�E>�l��2~�>ᕞ���*]Y��2�dqrR�~�d�y("��ljJ���FBÄ�͞��9d^�.��_��U��~:���_���tԚZ+7>ep�H����c.�a�w��p�RVx|lxB<c"_53���V���5��Mr-P4G���:�gnb��c%�~��C�=k��Ț�0nf^���7�H���.}^-F�df1�V����И�v����`f�#?�W:�BX-A����s��7񞏵�e�U?�?�vB줝PݦW�'�G�`�D<5k���ک�S�����`�nh{�B�Nd�t����� �b�s<����d}^��MS\��Z�-a�.c��ow�I�[��=F�K�6��"m[�VF�s�$�I��{�o�����b�f�V�
++Ѳ޷l�Gם��=`��,�Akm�\�v��ـ@��'q�m�=:FYk�nȴ�+��f�џ{��M�צ��Fv��6�ק-c�����n��4�`Ͱ��V�#%y,~�q�]]sF�J�k
a�C_v�qk1��3 Ԩ���)m���GV�֓^���,��'~��H1�l Oz��Xm1������^�po;��d��ˬ���dOm���l�vf����`�ٮ	���c{���ʣOf�Ѭi�,���V;K,�g��,N�egֳ.έ���0�+�N��Q��p�{�"�5\���q<?��\���ď���^ܼχȀс��=�X�q�/���Y�����u��D��,Y�<���F�gyô�ziS����A���zoc̆z6F� :�I�
+J�;�����%N�W��
!�"w�on�Q i?�}k�	��@8
���)�_]�<Uj��?�=$w��U�|�A���?'�^�
+endstream
+endobj
+8940 0 obj
+<<
+/Type /Page
+/Contents 8941 0 R
+/Resources 8939 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8771 0 R
+/Annots [ 8922 0 R 8923 0 R 8924 0 R 8925 0 R 8926 0 R 8927 0 R 8928 0 R 8929 0 R 8930 0 R 8931 0 R 8932 0 R 8933 0 R 8934 0 R 8935 0 R 8936 0 R 8937 0 R 8938 0 R ]
+>>
+endobj
+8922 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 648.375 92.784 654.935]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a00d0e2ac641857eac06d5d833c28229b) >>
+>>
+endobj
+8923 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 647.409 235.05 654.935]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8924 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 648.375 281.078 654.364]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8925 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.269 647.409 301.999 654.935]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+8926 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [195.399 615.529 214.129 623.055]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+8927 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 568.674 197.392 574.662]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a893d008aed36e88dac38fbb0c5497ac2) >>
+>>
+endobj
+8928 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 393.331 92.784 399.892]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a6483504f2c37393c0fdde77e39f5a030) >>
+>>
+endobj
+8929 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 392.366 348.027 399.892]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8930 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 345.511 92.784 352.071]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a197355701a388b65d7ea327ddd45024a) >>
+>>
+endobj
+8931 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 345.511 155.549 351.499]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8932 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 344.545 264.34 352.071]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8933 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 329.571 172.286 335.559]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8934 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 329.571 268.525 335.559]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+8935 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 154.228 92.784 160.788]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_ad1574e37bb9696fdee3986964e77f050) >>
+>>
+endobj
+8936 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 153.262 264.34 160.788]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+8937 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [266.532 153.262 301.999 160.217]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+8938 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 74.527 230.866 81.087]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a98473208bab6e8563fef085b9c71cd53) >>
+>>
+endobj
+8942 0 obj
+<<
+/D [8940 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+8943 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+8944 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+8945 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+8946 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+8947 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+8948 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+8949 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+8950 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+8951 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+8952 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+8953 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+8954 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+8955 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+8956 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+4174 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+8957 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+8958 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+8959 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+8960 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+8961 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+8962 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+8963 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+8964 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+8965 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+8966 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+8967 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+8968 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+8969 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+8970 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+8971 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+8972 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+8973 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+8974 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+8975 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+8976 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+8977 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+8978 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+8979 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+8980 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+8981 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+8982 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+8983 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+8984 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+8985 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+8986 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+8987 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+4195 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+8988 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+8989 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+8990 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+8991 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+8992 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+4218 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+8993 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+8994 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+8995 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+8996 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+8997 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+8998 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+8999 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+9000 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+9001 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+9002 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+9003 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+9004 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+9005 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+9006 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+9007 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+9008 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+9009 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+9010 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+9011 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+9012 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+9013 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+9014 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+9015 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+4193 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+9016 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+9017 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+9018 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+9019 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+9020 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+9021 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+9022 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+9023 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+9024 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+9025 0 obj
+<<
+/D [8940 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+8939 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9036 0 obj
+<<
+/Length 1560      
+/Filter /FlateDecode
+>>
+stream
+x��Z[o�6~����P����N*�<`�+�ۼ�d���J�̱3YN�
��Hɺ��e�i�!/�C���|<��9�w�A��ͨ��+*=	Ή7���sOp䍦�y	:x;z��G(Wu�x
|,d���du��0�������ޟ=�ބڈ�HL��u��-���ﵧ$���߼�(#�Q�~ϼ_z?�`UMF=AdUM��,�@:�����*C�jL�ϴzj�TS3՟���~>�y�>�\IH�t�s
+=`ePmD��E8[F��՜/�j�B���b�����fw����Z¾F�ɪ��|�6 doƹt�Zb]���tK��ֱ�t}����0m��2���� ��_�[���"��6Qw���02��ٰ-�Hs�Fj��%�L��BEm<��S@�}>��I�T��;dp/�\����J)�p&�����&�m��x9��f��g��[�ǬC�E�	��d����2������d%�")+�R������L�~g*�
�K����7o�Y<������R�}/V�m��i�T#������Rk3-n�!l_.��C���v��h�.���|_Σ�q���0އ��Q����h|�]�ތu���6�owm�b�lළm�D�N�c���V����ViB;m�`�02���h�J�'�_�v�e�TOƓp��ֳ�C7`'-
m���v����)v	<>P�(|C����#�lX�-`�%'�]��0g��Hg=�����������p镭�e����(^���",Sjqa�pT�����L�&>8�]{�1?�=t������$R����˗�����Jxgz�X$.~?N�^s���SkL�x��R�ḧ́��k_Gw�禬�މ�J�6�r�����"��cbw$�,�rDI�-"���7*i�Q���>!D>bpªKk�ADg��IV�q��!k���|�F��zv:<��Сye
ͫZhV�;%f�M^�i,)`$�i�d�U����R�[�|,%H4F��wTQ�9��S��j�~�.���͛����[7%Sb=+I���8�ZSFʏP�vؙ�h-m��7O��!���(���4���lE�����UL����KpwWN:[)�����_�6D
+UxSѝH�M'�f3l�.2_���5Y��#����/�e��\*�}�U/��n�!\T�d�
�5vynX-�2e�̽��r^'��'�eqإ d���C�����*�nP8�o���@}��a���ց�H�9��ʽa����(?�@U�U�AY�=�cu���tu��n7�sp�X�3��[����-�_�[�{����z��q��i��v7[I��H�.� �f�qjM�ZkM�����ךC�e�]�i�ܥ��Tm���j�W�W$<·���)���8(Qk�H|�o��j��<����?�o�_��&�ͣ?��l3��}��WCIZ�U�����9��~�J�ǣ�ǣ���cR���#u<"�ze^_��ύt}��+����]�d@���'Y\���N����Q�UO��H��Y��V�:5�6�
0쯋��pZ_f��h���_/���
+endstream
+endobj
+9035 0 obj
+<<
+/Type /Page
+/Contents 9036 0 R
+/Resources 9034 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8771 0 R
+/Annots [ 9026 0 R 9027 0 R 9028 0 R 9029 0 R 9030 0 R 9031 0 R 9032 0 R 9033 0 R ]
+>>
+endobj
+9026 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 688.226 92.784 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a893d008aed36e88dac38fbb0c5497ac2) >>
+>>
+endobj
+9027 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 687.26 218.313 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+9028 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 608.525 92.784 615.085]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a5bb5198238af5ed6058e2f77ddb15f38) >>
+>>
+endobj
+9029 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 607.559 373.132 615.085]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+9030 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 385.361 92.784 391.922]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_adc3f75677472910832a714f472c00d5a) >>
+>>
+endobj
+9031 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 384.396 394.054 391.922]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+9032 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [304.191 321.6 314.552 327.589]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a893d008aed36e88dac38fbb0c5497ac2) >>
+>>
+endobj
+9033 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 161.539 239.235 168.759]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+9037 0 obj
+<<
+/D [9035 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+9038 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+9039 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+9040 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+9041 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+9042 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+9043 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+9044 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+9045 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+9046 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+4175 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+9047 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+9048 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+9049 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+9050 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+9051 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+9052 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+9053 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+9054 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+9055 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+4216 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+9056 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+9057 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+9058 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+9059 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+9060 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+9061 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+9062 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+9063 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+9064 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+9065 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+9066 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+9067 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+9068 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+9069 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+9070 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+9071 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+9072 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+9073 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+9074 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+9075 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+9076 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+9077 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+9078 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+9079 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+9080 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+9081 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+4196 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+9082 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+9083 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+9084 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+9085 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+9086 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+9087 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+9088 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+9089 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+9090 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+9091 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+9092 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+9093 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+9094 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+9095 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+9096 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+9097 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+9098 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+9099 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+9100 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+9101 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+9102 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+9103 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+9104 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+9105 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+9106 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+9107 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+9108 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+9109 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+9110 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+9111 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+9112 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+9113 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+9114 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+9115 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+9116 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+9117 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+9118 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+9119 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+9120 0 obj
+<<
+/D [9035 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+9034 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9129 0 obj
+<<
+/Length 1406      
+/Filter /FlateDecode
+>>
+stream
+x��ZKS�F��W{��l��[��pȋ��J%o.���e�D$L���3��,ٞd0P�H�G��_���%���ݰ��O���sN�����8����p
+F]�a��Ǯ��>�� �ô�a׹�
O%��<O����ˊ�Ώ��?$F!@K���x���ugt�T̝��wr�5��8�q?t~��&����.�r���S���Ť`�abs*(�ON:`�g�nt�����\��,�=�x�cH���+o��<t��߰܇V�-�!9\�
+��+���%+��Ӹ�,�'�Wir�'˧�A:���:�i����J� ,9�_A��,iw��	��f*h�Y���1*�A�E����ެ�P���GJ���O�rz�zO�R���
�r�8��fնJ�J�+�+�\�,\g��6��	4���=;�b^�̂|��#��n~��u�����҃��̪,,�hu�VF�:R�c�d~��%6���嵏���t��4(qč������4>��A�V��{}e�s:^�_��~�OW�(c�6�����u�>�r.�Ԅ9v#�<Y����[u�jT�d� M��
+�̚#:�B���V�C
+o����<�|*��X�
+UJĬ^dP&����ˁw
+]�S��/�S�[�`{x�7�gFw���k?GD���ٞ�>EU�A�� �	� W@0f���#cE�+UV:ȣ��ݺ�T��D8�!5�f��ٚ6����]׃k��P�%� �5��a>Oc���(2x�o�W(��a�g�[�0��D)�2� %����ȳ���M�k��Y@�Fv�i��k��/+���DkH�J��׍>n����J���VRJ��`�R�x�����ً���F^XtwPE�̢�~س1�/+��*K��-��d\�Z��Z�0ܨ6�a��y��sB[ן�[����9�^s��W��AMƓ ˏy�(��Jy��U�߾5:5a�I� ~���U���Q��x$%
+r���qK��� �ꎥz�,Rh->��8�k�L�vo���'�����*�|�A|)��Cq�,ѫ���b�'W���`J�܊��m���Ȱ*3O���h�Գ&0�J�I�U�iy�0�A��j�k���;;��e��ޖa�
+���aI��m��E+�Q+�3{�����|��V�g�~��W��U>�j��:`7�18�'9~Ad�Ċ��c:K.E)�}��Ϣ�+��L]����}Q��e�;j5�H+������{�.�45�q�����*H�u9�0���8��?^�}�!*zr��$.�v\p�X\�ߵ't�o��J�z����4����O(ͳ�j��شdĀc]#�p�o��}p˜	��{���`���w&�9\\�9N¸�	���⫘���{u�C�#	�/�B7��Y�=0W
+endstream
+endobj
+9128 0 obj
+<<
+/Type /Page
+/Contents 9129 0 R
+/Resources 9127 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8771 0 R
+/Annots [ 9121 0 R 9122 0 R 9123 0 R 9124 0 R 9125 0 R 9126 0 R ]
+>>
+endobj
+9121 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 688.226 285.262 694.214]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9122 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.454 687.26 306.184 694.786]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+9123 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 663.349 209.944 670.876]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+9124 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 504.913 155.549 510.902]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9125 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 488.973 172.286 494.961]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9126 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 488.973 268.525 494.961]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9130 0 obj
+<<
+/D [9128 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+9131 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+9132 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+9133 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+9134 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+9135 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+9136 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+9137 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+9138 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+9139 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+9140 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+9141 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+9142 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+9143 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+9144 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+9145 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+9146 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+9147 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+9148 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+9149 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+9150 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+9151 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+9152 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+9153 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+9154 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+9155 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+9156 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+9157 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+9158 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+9159 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+9160 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+9161 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+9162 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+9163 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+9164 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+9165 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+9166 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+9167 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+9168 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+9169 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+9170 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+9171 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+9172 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+9173 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+9174 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+9175 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+9176 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+9177 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+9178 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+9179 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+9180 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+9181 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+9182 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+9183 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+9184 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+9185 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+9186 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+9187 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+9188 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+9189 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+9190 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+9191 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+9192 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+9193 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+9194 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+9195 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+9196 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+9197 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+9198 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+9199 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+9200 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+9201 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+9202 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+9203 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+9204 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+9205 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+9206 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+9207 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+9208 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+9209 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+9210 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+9211 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+9212 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+9213 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+9214 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+9215 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+9216 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+9217 0 obj
+<<
+/D [9128 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+9127 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9226 0 obj
+<<
+/Length 1513      
+/Filter /FlateDecode
+>>
+stream
+x��Z�r�6��+0Yd��B�&��^��t�jSu�z4�D;ldҥ('N��^�%>@H��D�HH^�ǹ���0|��I a(�+ (��AH��`��C����
��eB�h�_%�x4&�����7qZDE�����������D�oLJ	%a`~3��D`�ν�b(�Gs�
`�BΨ:^���
P�M΀�a@e�M�!��D���^Y��4�������޾��1g
W��xV�7�	�)aό�����|��*��'��C�&c	)}�ƚAPMd浇z>	��`{�6�]�&��8����L2�"�4 `�跑ʑ��XL&w���u�J��xa�}����*Γh�|6*�����2X���}k���[���K�ƾ��
+̳t�,����m�>؂NU��J�$)k�k�5UAm�6K�"�+�x�՗䱹�6���<ZgM�{n=�$)�PH�&�/
+�d�ܝ�п����C#��
�Q�1-Q�m|Il�KY�y����,w����A�1TUtJ��^��g�5W���+3�z�&��!QT�D�Rf������L/T�>n71�������h�uܮW�g��=�m����C!�N���ػƪ��y���L(�ј�~7�{8�w��X�7�˨��u9��;,�o�4��]M�}ؒgJ�F�sgd!���k��1SB I��LyV���c|>�T��g�Di������w�%��n���h�LB��Z�LR�-�'";C�o��*��&S����FIi��I!=�H	��DJ���š�	*�Ikmpz��fE'���.`muh'~c�K�˪�OkY���ЭD�6�9���8B4ȓhL�c����t^9����Ȃo_�{��	
+!�|o���%�	��TՅe0`��(��h�o�������:9�0��a��G^9�ї�cy�G��`��s�(�+��Gc\H��K���G~pLl�f�z�ܛ��|�I��(�z���{��VM�!5��Зև���h���u����V�}�b�`&c��X�Ah����=�@��
bBN
+�>�['�A��/�鯓ɛU���t�5��j_Y��t�e^�����5t4�Rd33x6=����V��#������*�
���Bi��Ӿ�v��m�GE)���`��D��T�+o��8aH�Z���n�9�G�,�n�Q�ٶ7(w�&NeA/�������5�a���i��)�?B�,ϲ�ETnZ�5��LYN�Lw�GC`�!����2a�6��g��]6�y��d�yt��7�w%W}۳deؾ�4�=�n|��C�d֥��x�BȘw����)�;�\ǘ�(�B)R�BOa5���Cҟ��T�������<򓐭[�q��GiƿwY�<�������Y���1�[}��]^Q
?�9�6.�����/�S�߄<��Ӧ@i���MǏ�t��e7��m�8�������.WE��5v9�z�s�(~ȋ7�{A�@0��
���T�P(�&��q�����лA��ꕠE�O�ף1VX���?�g�h
+endstream
+endobj
+9225 0 obj
+<<
+/Type /Page
+/Contents 9226 0 R
+/Resources 9224 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 8771 0 R
+/Annots [ 9218 0 R 9219 0 R 9220 0 R 9221 0 R 9222 0 R 9223 0 R ]
+>>
+endobj
+9218 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 393.331 289.446 399.32]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9219 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [291.638 392.366 310.368 399.892]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+9220 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.505 376.425 239.235 383.952]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+9221 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 281.75 155.549 287.738]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9222 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 265.81 172.286 271.798]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9223 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 265.81 268.525 271.798]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9227 0 obj
+<<
+/D [9225 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+9228 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+9229 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+9230 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+9231 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+9232 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+9233 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+9234 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+9235 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+9236 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+9237 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+9238 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+9239 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+9240 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+9241 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+9242 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+9243 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+9244 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+9245 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+9246 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+9247 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+9248 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+9249 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+9250 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+9251 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+9252 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+9253 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+9254 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+9255 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+9256 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+9257 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+9258 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+9259 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+9260 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+9261 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+9262 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+9263 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+9264 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+9265 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+9266 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+9267 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+9268 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+9269 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+9270 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+9271 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+9272 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+9273 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+9274 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+9275 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+9276 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+9277 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+9278 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+9279 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+9280 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+9281 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+9282 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+9283 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+9284 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+9285 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+9286 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+9287 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+9288 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+9289 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+9290 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+9291 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+9292 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+9293 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+9294 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+9295 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+9296 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+9297 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+9298 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+9299 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+9300 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+9301 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+9302 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+9303 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+9304 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+9305 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+9306 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+9307 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+9308 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+9309 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+9310 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+9311 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+9312 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+9313 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+9314 0 obj
+<<
+/D [9225 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+9224 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9333 0 obj
+<<
+/Length 1482      
+/Filter /FlateDecode
+>>
+stream
+x��Y[o�6~��2��ט!)�"�,��`E�a���40T���)�+�鲢���M�$S��ۺ�D�!u���!�k:����'>u(`�x���	!��8!À g�8.�?�ᐺU9�ЍO^��ӳ����y
��Z�>I3�G���A��<�%���(�����Nj��	�Cm��P�;����:��{�@�1�Q+o?�O�3����	l��,�h[��ld�0 BB辕0Ļ�P���:�.;b��~=?�8���+�� d"�/a��j�o�L�����T���%��A�*�768U���Yq��K^�E)1�u ,���O�m�V�ݣߣl#'���~��۳gG�����]j$|מnY���כ2�ɘDud�>������v��x��Q��X�uռ����w��n�����X���xFe�[�Ey�ɫ�:牶J���3=����(�yy�8֔����i���孴���G��(;tIZ��"Ml0�3��ȫ��Ɡ����F"8���Gp����]����M�{��fUI���Ҋ��q�Bج.�,���pN��tP<5��i�0D
��ZPr��VE��9��޸Ԗ�1u�%�t[�?��TU��ȣ�R�����ѷJB
+<œy]�y�˃NT
P�ע,㨪O�����ר$�Y�!�WҐ>@�o�����d-�y���=����,��yU�C9�~eC��(ml��ѴM=�)@3|�p0��`4�S��U��F�zS�����O�����r$��p4�R�	Z�C�����W�1�yz�$��J���#�}tc����R��(݈ȡ�z�:��Ӕ�] 2�q���vr�(�4���S�\g��ld�s'�]���'}�<C �3zZ
jV�> B�<���>���R��Awj��w`D2U;x��x�w�&��l��>j�����TE�\�l��ʼa�'� ��������D��L��0���k���Z޺y���"�H��B�$Ь�g9z	!C�:V�]��l�.4�c�H:�]��T6 ����=vp�Fs��������1�h�6�C`�V��x��NF�|n���R�J��ȵ<Y����,5�w-�ymʪ^Z�i~�	�M�������`֖com«�L�ҩ�؉b_��򝪽�2o#T�Z3j��	OU#�l��ʬ����m�$Wv6|Z�`�j�����#�ͷv/8�^Ae��;�a������T|�v���P�
!�r��
"�e�gv%ɸҚ�׎�߬��x�	D�=�+�Y�`�FG	��1�H�>6�~�Լ�ދ��~iN�����=��z
>��xV�񌌼Q�@��5����܎�O�0}0�N�%��2����^�C�k��:����N��-�dT������X��ū4K��8�Q�p�k�z�@l����@���Q��K�CH��W#?����󜋓�8�&�gz%�;=���z����Zvs.������
+endstream
+endobj
+9332 0 obj
+<<
+/Type /Page
+/Contents 9333 0 R
+/Resources 9331 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9395 0 R
+/Annots [ 9315 0 R 9316 0 R 9317 0 R 9318 0 R 9319 0 R 9320 0 R 9321 0 R 9322 0 R 9323 0 R 9324 0 R 9325 0 R 9326 0 R 9327 0 R 9328 0 R ]
+>>
+endobj
+9315 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 260.969 212.775 269.74]
+/A << /S /GoTo /D (_element_8cpp) >>
+>>
+endobj
+9316 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 253.074 176.47 259.635]
+/A << /S /GoTo /D (_element_8h) >>
+>>
+endobj
+9317 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 244.138 197.392 251.665]
+/A << /S /GoTo /D (json__helpers_8h) >>
+>>
+endobj
+9318 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 221.194 92.784 227.754]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae31b32fb944a138ac955e07a5be9d652) >>
+>>
+endobj
+9319 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 221.194 189.023 227.754]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae31b32fb944a138ac955e07a5be9d652) >>
+>>
+endobj
+9320 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 188.348 155.549 195.302]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+9321 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 172.407 155.549 179.362]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+9322 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 173.373 197.392 179.934]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+9323 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 165.403 147.18 171.963]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+9324 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 165.403 218.313 171.963]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+9325 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 133.523 147.18 140.083]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+9326 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 132.714 281.078 140.083]
+/A << /S /GoTo /D (namespace_s_o_i_l_acc4b84d1cba2fafd495c35ebaeae1b96) >>
+>>
+endobj
+9327 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 93.672 92.784 100.232]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4acd9dc20ed4e0926da2ba7e4a5af7ab) >>
+>>
+endobj
+9328 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 93.672 193.207 100.232]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4acd9dc20ed4e0926da2ba7e4a5af7ab) >>
+>>
+endobj
+9334 0 obj
+<<
+/D [9332 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+9335 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+9336 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+9337 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+9338 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+9339 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+9340 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+9341 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+9342 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+9343 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+9344 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+9345 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+9346 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+9347 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+9348 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+9349 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+9350 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+9351 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+9352 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+9353 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+9354 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+9355 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+9356 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+9357 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+9358 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+9359 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+9360 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+9361 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+9362 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+9363 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+9364 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+9365 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+9366 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+9367 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+9368 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+9369 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+9370 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+9371 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+9372 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+9373 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+9374 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+3327 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 449.46 null]
+>>
+endobj
+2014 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 433.085 null]
+>>
+endobj
+4474 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 344.233 null]
+>>
+endobj
+2018 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 327.858 null]
+>>
+endobj
+9375 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+9376 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+9377 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+9378 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+4473 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+9379 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+9380 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+9381 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+9382 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+9383 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+9384 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+9385 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+9386 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+9387 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+9388 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+9389 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+9390 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+9391 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+4489 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+9392 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+9393 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+9394 0 obj
+<<
+/D [9332 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+9331 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9412 0 obj
+<<
+/Length 1489      
+/Filter /FlateDecode
+>>
+stream
+x��Z[��6~��`҇�M�J�n��N�L2��4�7����fb�8�&��W#�xö���$��;��X�uk��������,f{����Ƣ�f�X�sl�kߚ�!e���k��s."��|�E�&S���o����l��q$���_�ޏ _	,X�d�f����|,�Ͻ��D�Y�{a�����;����h���El���i&�6(��8nn)���/��Qn��P��/�`+���#o^�����0�鐬n��I~�q�Dat��@��V^�1(e�vu�au�a���73�QH;���E���m�m�ԟf�l�!Xgq�$�N����Xۑ*�z�ǫ�g��@ a6ۼ����	��m7����?�J)P�e*��9���L]`�O�v�p���_�j���d��՝I�)ܨ�+� ���4X��c���ܱ|Ea
+к�—/�i.��3R�Ӧ��gb�T���u
+M����b���屼Y��	��c�B'�fd�$R�l�\,���@���C|�B
D��*�c��g��N��C�<iU�eU�d��`�P�j�8��\4���W�"0@�4p���3OMN��������į_k��$��AonB�X�������e�����51B�r�����2S�c�]��6۶H'��q)s���?EN�M�ЇW�%��bD��w�W��x�KX
+ON�6��谊���S�ZϘ�7�si߄I�-�`��,H�>o�ȯ[��5��/��%�~j�.>4�p6�q�-v�����Ů7u�
w>���}�ȹe�����@��_½�2���6L��D�6˸�`^Z�\M�h� p�Ȗ��5e���K�M��-<���2H�8ioo�.ڇ��A��*�3y�_e낃W�gyQG�śI!Ca�#9g��(`����l��s���e�ZÙ��	"إ��PG���	.b���x�no6KAߦm��	%�@t:�1�Yt��T�_�6%�=�OsK�v�����mڙ��{!�V�/aJ�TLYO{�H�]�U&P�b��A���mq��H�G*�9�@6dتG�
+��-<�<��S_#�R���WQ�?Sd�a���
+��c��@���Eܭ�.�������|@�����t����i�z�|�^�~�c�H��R{��Ɛ��€�D�����8ީ�|
+�,mm.].�~ɥ�3+��
+B��EW��qw��J&�Ȅ9��b��!1�o�΅̶8Q��S��I�v�g5��p��ۄ�ӈP#h��y�!)�x�̪FBX���F�y&8x�/��W�}k��J�/-�Q$��L���)Ǟ�=�W���c�b�r]�<���+�b�⹗�5�=�#��r�r�cE�*���6/5]9򦇝����0@�eHa��0h�	?�$,��#I��?�1��!�1w�;�!�Id�*
��q����~	��V�������^�E@��?&P�ė�#c����Dn�� ��
+|�}������
+�?}���܍�����
+endstream
+endobj
+9411 0 obj
+<<
+/Type /Page
+/Contents 9412 0 R
+/Resources 9410 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9395 0 R
+/Annots [ 9329 0 R 9330 0 R 9396 0 R 9397 0 R 9398 0 R 9399 0 R 9400 0 R 9401 0 R 9402 0 R 9403 0 R 9404 0 R 9405 0 R 9406 0 R 9407 0 R 9408 0 R 9409 0 R ]
+>>
+endobj
+9329 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 736.046 92.784 742.607]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad0dff9864321178e13df316f1b317bcb) >>
+>>
+endobj
+9330 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 735.08 281.078 742.607]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad0dff9864321178e13df316f1b317bcb) >>
+>>
+endobj
+9396 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 640.405 92.784 646.965]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4704591e187b8bf5344979d095703239) >>
+>>
+endobj
+9397 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 639.439 331.289 646.965]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4704591e187b8bf5344979d095703239) >>
+>>
+endobj
+9398 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 305.66 92.784 312.221]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a682f8e3123f99f13545db06e15a896bb) >>
+>>
+endobj
+9399 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 305.66 301.999 312.221]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a682f8e3123f99f13545db06e15a896bb) >>
+>>
+endobj
+9400 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 249.869 92.784 256.43]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a90aba7aaad7c5e9695b239480e95cea3) >>
+>>
+endobj
+9401 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.873 249.869 306.184 256.43]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a682f8e3123f99f13545db06e15a896bb) >>
+>>
+endobj
+9402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [383.693 249.869 414.975 256.43]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9403 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 210.019 92.784 216.579]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a06d51f457b4412d64c3980a377fbc9f0) >>
+>>
+endobj
+9404 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 210.019 205.76 216.579]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a06d51f457b4412d64c3980a377fbc9f0) >>
+>>
+endobj
+9405 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 154.228 92.784 160.788]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad0d80de0520ce5366067512e07068e1e) >>
+>>
+endobj
+9406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 154.228 205.76 160.788]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a06d51f457b4412d64c3980a377fbc9f0) >>
+>>
+endobj
+9407 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.269 154.228 314.552 160.788]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9408 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 114.378 92.784 120.938]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae32f6b04a96ff98acfe29f884177f22f) >>
+>>
+endobj
+9409 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 114.378 205.76 120.938]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae32f6b04a96ff98acfe29f884177f22f) >>
+>>
+endobj
+9413 0 obj
+<<
+/D [9411 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+9414 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+9415 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+9416 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+4511 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+9417 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+9418 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+9419 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+9420 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+9421 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+9422 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+9423 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+9424 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+9425 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+9426 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+9427 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+4586 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+9428 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+9429 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+9430 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+9431 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+9432 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+9433 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+9434 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+9435 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+9436 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+9437 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+9438 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+9439 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+9440 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+9441 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+9442 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+9443 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+9444 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+9445 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+9446 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+9447 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+9448 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+9449 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+9450 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+9451 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+9452 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+9453 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+9454 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+9455 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+9456 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+9457 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+9458 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+9459 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+9460 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+9461 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+9462 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+9463 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+9464 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+9465 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+9466 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+9467 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+4509 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+9468 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+9469 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+9470 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+9471 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+9472 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+9473 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+4490 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+9474 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+9475 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+9476 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+9477 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+4545 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+9478 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+9479 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+9480 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+9481 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+9482 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+9483 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+4530 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+9484 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+9485 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+9486 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+9487 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+4587 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+9488 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+9489 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+9490 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+9491 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+9492 0 obj
+<<
+/D [9411 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+9410 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9518 0 obj
+<<
+/Length 1360      
+/Filter /FlateDecode
+>>
+stream
+x��Y]o�6}��2`����(o��bI�`X���KV�M'*)��^��>��,E�9nڼزD�{���&�.=�^LGTx�o��|�`��7Yx���0>�Ǿf��������F�Z�9�2ώ�H��S�!8��������C�������d�~��s衍3!��ԛ_��Bo���x�@x��k�2%�:��
`=�F=��z�XF�!�ƽ�^Z�����﫷7#�#��C(0���>�w�
++����E�D�߾�ό,R8���a6M.��y~�m��,��8��pᰂ���n��
+�<���;��2S9��>C�Z�6!jF�_��@*�U7bѦ���V�d��,O���Ǒ~Dt���ٳ
X��d�V�]E����ɞ+q?�� �������7�m��a���U�O�q|g��O�q�z�
㄃q�������-W�<����,q��J�ћ?�'\%b�t1��8��$�f�ήe.ӧN��5?Y�{����N�ý5��~�y9���O��*����w�c�����<|v�,�m9����
�h�&I�BF��f���*�{)1�+����[ˮv�U��dږ��~;��~���1��;��/d6OÛ�?f57��ޒ.��*��$J.�����5��Ļ՗(�bt�y)�螔�b���*�
+?I,p��R�{d�Ig�����,Q�U��uK�)��;��}�}�}�8S��<�߷yR�r���X-���O�7=����Q�b��܃Z�Z��*�[U�ݥX�wb�*�0_��
+��fJa3��U�fr
+"Ȥ��Gῲ��w�����[�ƶY����FE&�(��ŋ��5f6n߯ds�n|��]�Z����+sC_���;��힧�{4��N
f���z5kl7���!�k�nz�^�FCk��:� ��� ~n�`�pd�vg�+�����j^A��T����A�KC����%z�r�z�F���J���p���Z��,O���
+!]O2
+��bo]�W�@���V���-v���b��,���M��l��r!�Y�J�������G�c[:?�� A���LF�˹���1��1�S��}wX��G#hu��o�Y~��յ�޴N-�R�
Ժ�n��=�>ꤽ�{�u[#�	�_ !�<�?�=5̕��n>w��w.b}ѻ%�ul!��Q�i.�^�{��w+)��������?)�uX�9�<�7'����9�%���u�>�E��S
���OjQ��!G���^����O(�A`���h������ٜ�y��J���1���ó�A�ʹ����m΅�m��i�<X���/��X�2��ra�pQdjm�KF?�/�4e܄�?��O4
+endstream
+endobj
+9517 0 obj
+<<
+/Type /Page
+/Contents 9518 0 R
+/Resources 9516 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9395 0 R
+/Annots [ 9493 0 R 9494 0 R 9495 0 R 9496 0 R 9497 0 R 9498 0 R 9499 0 R 9500 0 R 9501 0 R 9502 0 R 9503 0 R 9504 0 R 9505 0 R 9506 0 R 9507 0 R 9508 0 R 9509 0 R 9510 0 R 9511 0 R 9512 0 R 9513 0 R 9514 0 R 9515 0 R ]
+>>
+endobj
+9493 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 751.987 92.784 758.547]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8bd2f333fbe5c1b51218512c3ef8c9b3) >>
+>>
+endobj
+9494 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 751.021 218.313 758.547]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8bd2f333fbe5c1b51218512c3ef8c9b3) >>
+>>
+endobj
+9495 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 712.136 92.784 718.696]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aa035b89c623428f7d93b8b1da0ce1e49) >>
+>>
+endobj
+9496 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 711.327 226.682 718.696]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aa035b89c623428f7d93b8b1da0ce1e49) >>
+>>
+endobj
+9497 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 672.285 92.784 678.846]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaa82810e11265c4a890246f633fe4fc7) >>
+>>
+endobj
+9498 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 671.476 226.682 678.846]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaa82810e11265c4a890246f633fe4fc7) >>
+>>
+endobj
+9499 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 632.435 92.784 638.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4c20dd71ee68dd4823e32aa3868f337b) >>
+>>
+endobj
+9500 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 631.469 230.866 638.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4c20dd71ee68dd4823e32aa3868f337b) >>
+>>
+endobj
+9501 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 592.584 92.784 599.145]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+9502 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 592.584 138.811 598.573]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9503 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 591.618 226.682 599.145]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+9504 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 576.644 155.549 582.633]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9505 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 567.708 264.34 575.234]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+9506 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 559.738 264.34 567.264]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+9507 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 551.768 293.631 559.294]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+9508 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 495.977 297.815 503.503]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+9509 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 449.122 92.784 455.683]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad55fc11662301ce186e593852a9425ce) >>
+>>
+endobj
+9510 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 448.156 226.682 455.683]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad55fc11662301ce186e593852a9425ce) >>
+>>
+endobj
+9511 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 433.182 155.549 439.171]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9512 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 393.331 92.784 399.892]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a0f046d3e28928e07013a07b7e5b8e5a2) >>
+>>
+endobj
+9513 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 392.366 155.549 399.32]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+9514 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 393.331 247.603 399.892]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a0f046d3e28928e07013a07b7e5b8e5a2) >>
+>>
+endobj
+9515 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.795 392.366 306.184 399.32]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+9519 0 obj
+<<
+/D [9517 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+9520 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+4547 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+9521 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+9522 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+9523 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+9524 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+4559 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+9525 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+9526 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+9527 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+9528 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+4546 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+9529 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+9530 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+9531 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+9532 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+4558 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+9533 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+9534 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+9535 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+9536 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+4593 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+9537 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+9538 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+9539 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+9540 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+9541 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+9542 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+9543 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+9544 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+9545 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+9546 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+9547 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+9548 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+9549 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+9550 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+9551 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+9552 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+9553 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+4560 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+9554 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+9555 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+9556 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+9557 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+9558 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+9559 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+4529 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+9560 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+9561 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+9562 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+9563 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+9564 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+9565 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+9566 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+9567 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+9568 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+9569 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+9570 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+9571 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+9572 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+9573 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+9574 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+9575 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+9576 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+9577 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+9578 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+9579 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+9580 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+9581 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+9582 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+9583 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+9584 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+9585 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+9586 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+9587 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+9588 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+3328 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 162.535 null]
+>>
+endobj
+2022 0 obj
+<<
+/D [9517 0 R /XYZ 70.866 146.244 null]
+>>
+endobj
+9516 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9624 0 obj
+<<
+/Length 1242      
+/Filter /FlateDecode
+>>
+stream
+x�͘[o�6���+���f�w�^���q�"��oI�2��%O����#EI�l�Raؓe�<�;::7���Ŕ��$�ę=;�sGH8rfs�a�\8�:����P�'毧A�Fc,����_/U�yYGf��z6�g��H�J��S�_�Bg��}v�D�:��#�e0J�s����mLF�11������}��z��8��ww����;����W��]nt������b���"4Za�Qg���r�R-��Aa9i1�A�X
+@9٫�89?�ϼU�$�$� ��@'��"����1X�u�Jع�����YD���#� L�S�a �#�4Ui^J�p1�I��S��
+g�	pI1�cV��<��C߈+>���,��t�1%���?n'�k]��Д�����])Sa� �"�X�eCuœ�h؅3�?x�:̦����@��N"�K�Bha5�*]y�����zБ=�6!�o�b���Gq��&!��Eٚ�#��:�^G�
�`�'���õέ0|��Pe*iʅG�`��M��e�^vl��r�ͨ֝��^��J�tQ9f�%Z9j��N�tx����/�0,Cd�cp;8fu#V�3[&Fc��]�^Z�c���	խJ��7����ߗ2qj=J�*~.���?Ħi��]�8����N�G53,���gt�H��@��ج0���U�-���T�ZHE6�)�?����'��WD�EYZ:���Jb09p�֝����zӌ��}i;׫F-h���ƶ�Wƈc��V]*�cU���K�<RI��u(A�H%�o�҂ʃS�5.��(+�=ܨ�mں�b�~����X�mmw&���i��y���j[6�>�޶o�|�g5͝t�i��~?}����L�Bұf1Y�~4��jk9e��^�v��I�D�G⾹��>!%x��Zj��'��/��ٿ�l�o^�D͟t�sYD��~�:Z�%牊vymt�!�͐�f4��\����fD
+�"R~B�T��7iKE_BFV��v���j�;��h_&�c2E�G���qLs��I������ܾh��GYƋ�~\�+�6Y�ȭD��$
^�SuY�N�=�ϥ��%oאC�������gG�NZ�Wˣ�IӆoK}��6a+}��Ua���Vm#���hk������u�x�ø���������.o�9����l�(`��H༸��Q�J�V:�g�o#s�Q^��~[�3�pg�ь�M���
+endstream
+endobj
+9623 0 obj
+<<
+/Type /Page
+/Contents 9624 0 R
+/Resources 9622 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9395 0 R
+/Annots [ 9589 0 R 9590 0 R 9591 0 R 9592 0 R 9593 0 R 9594 0 R 9595 0 R 9596 0 R 9597 0 R 9598 0 R 9599 0 R 9600 0 R 9601 0 R 9602 0 R 9603 0 R 9604 0 R 9605 0 R 9606 0 R 9607 0 R 9608 0 R 9609 0 R 9610 0 R 9611 0 R 9612 0 R 9613 0 R 9614 0 R 9615 0 R 9616 0 R 9617 0 R 9618 0 R 9619 0 R ]
+>>
+endobj
+9589 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 611.406 177.994 620.177]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9590 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 596.595 129.333 604.689]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+9591 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [150.217 596.668 181.809 604.503]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9592 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 531.788 166.042 540.559]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+9593 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.489 451.279 187.157 460.942]
+/A << /S /GoTo /D (namespace_s_o_i_l_acc4b84d1cba2fafd495c35ebaeae1b96) >>
+>>
+endobj
+9594 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [190.643 452.171 250.942 460.942]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9595 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 356.61 212.775 365.381]
+/A << /S /GoTo /D (_element_8h) >>
+>>
+endobj
+9596 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 340.746 184.839 347.306]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+9597 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 332.333 205.76 339.336]
+/A << /S /GoTo /D (_r_e_s_t_2constants_8h) >>
+>>
+endobj
+9598 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 324.363 201.576 331.366]
+/A << /S /GoTo /D (_resource_8h) >>
+>>
+endobj
+9599 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 261.044 155.549 267.298]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+9600 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 245.104 92.784 251.665]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9601 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 245.104 184.839 251.665]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9602 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 245.104 285.262 251.093]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource) >>
+>>
+endobj
+9603 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 213.224 92.784 219.784]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4fa228a217778ee48c592fe0272aaacf) >>
+>>
+endobj
+9604 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [333.481 213.224 368.948 219.784]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a4fa228a217778ee48c592fe0272aaacf) >>
+>>
+endobj
+9605 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 197.284 92.784 203.844]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+9606 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [233.058 196.318 260.156 203.272]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+9607 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 181.343 92.784 187.904]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+9608 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [233.058 181.343 251.788 187.904]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+9609 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 165.403 92.784 171.963]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+9610 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 165.403 197.392 171.963]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+9611 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 149.463 92.784 156.023]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+9612 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 149.463 197.392 154.604]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+9613 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 133.523 92.784 140.083]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+9614 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 132.557 226.682 140.083]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+9615 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 117.582 92.784 124.143]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+9616 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 116.617 214.129 124.143]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+9617 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 101.642 92.784 108.203]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afc29676fd98e4c6b7ab004514c175b7c) >>
+>>
+endobj
+9618 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 101.642 239.235 107.631]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afc29676fd98e4c6b7ab004514c175b7c) >>
+>>
+endobj
+9619 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 85.702 159.733 92.262]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9625 0 obj
+<<
+/D [9623 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+9626 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 650.366 null]
+>>
+endobj
+9627 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 570.748 null]
+>>
+endobj
+9628 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 491.13 null]
+>>
+endobj
+3713 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 429.04 null]
+>>
+endobj
+2026 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 422.124 null]
+>>
+endobj
+9629 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 357.79 null]
+>>
+endobj
+9630 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 349.82 null]
+>>
+endobj
+9631 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 341.85 null]
+>>
+endobj
+9632 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 333.88 null]
+>>
+endobj
+9633 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 325.91 null]
+>>
+endobj
+9634 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 317.94 null]
+>>
+endobj
+9635 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 309.969 null]
+>>
+endobj
+9636 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 301.999 null]
+>>
+endobj
+9637 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 294.029 null]
+>>
+endobj
+9638 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+9639 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+9640 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+9641 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+4472 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+9642 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+9643 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+9644 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+4614 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+9645 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+4639 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+9646 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+4640 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+9647 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+4641 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+9648 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+4617 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+9649 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+4615 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+9650 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+4638 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+9651 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+4616 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+9652 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+9653 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+9654 0 obj
+<<
+/D [9623 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+9622 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F73 2949 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9682 0 obj
+<<
+/Length 1369      
+/Filter /FlateDecode
+>>
+stream
+x��Y[s�6~��`�/�S+���t:M�f:�6�l&C@��`p�{�����
+�m����۲����s$�#��hA�j��dpv�K��1bM��@0fq��I`��.�b8�\�Y:����>���g�A{9�b�_��ԥ9-�Tƾ�"���F
�&׃���y����B����;�?��A+PϮ-�+��e˹�P�CT9�>��:�X���:��\��AZN�FT�L��xs5�nGԁ�^�i������A#��UA�f����H�e��V�}���X<P�#��mq0c5"C
!˃�x%�<I��r��a��iX�9}�b|='P�!��@��ب*�ګ$(;"�X�Ya6�R�/�����B�,d�)�w����c��.���07" ���a����e�����Y�3<�^�f�3zV��#n��X���(�a���m�a�(X��0��� ��J<$I�p<�Ag2�Oj%��9�_y�����-���Df{��b
+\J���y��c)QPI�<Y�N!��$���E{l׹�/"/�ͽ������,d�ͥ�Ǥr�I�
+Q�{,-/ˏ�/����2�$�������IB���o�r='q�:L?�ɚ5@G�`奡��w�2�����t�y���K��k��Y����=#��;�b���ǎ{�L����$6)��);����:�\���k��~t��Om���9��[�vC-�js��l�|�x�ͼ8�or��6�</e�!���|��ͽܟ�Z��V�u��M��c�p�_�Ѿu�#�Q�=M�!e���_b��������4n3"�b��MN�:R��J�Y��l�j6
�QSx���©̗i�ܝ�w��E�%����M�Ud��u(2Jk�H���Ɵ�%5-�LF�f�(��61�Z|��f1ž���~:���qƻ��yZ��5�;j����@F�{���u�xlN���'�w�R��J���t���uB]�Q��5oF*�*��M����
a�"5�dZ�r(���o�P�����9�c��e�US�>����!��hH���E�F�}��F9�o���8f˜]R�Yl��J4�|�;����,���J��6a�K_���=�6�1x�&�a�I���e7�S��ʆV�N�U<`��`����b��AH�\�*q�o�U�G��]י&���V+����,��T�񨴮'V^��۵?�?�j�V��,��M�<�>
�iS���}E���)E��n�7��,	}�j�JU^}YX�n����?�
���l�.h�^u�>C�\��֜�����5q�8b�/����s�:ǵ�OW���a:��ezKE)��j���̙S{9��|�~�Q(�⍉�<��S�E�M����<Ǯ-�&�$�Z
+endstream
+endobj
+9681 0 obj
+<<
+/Type /Page
+/Contents 9682 0 R
+/Resources 9680 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9395 0 R
+/Annots [ 9620 0 R 9621 0 R 9655 0 R 9656 0 R 9657 0 R 9658 0 R 9659 0 R 9660 0 R 9661 0 R 9662 0 R 9663 0 R 9664 0 R 9665 0 R 9666 0 R 9667 0 R 9668 0 R 9669 0 R 9670 0 R 9671 0 R 9672 0 R 9673 0 R 9674 0 R 9675 0 R 9676 0 R 9677 0 R ]
+>>
+endobj
+9620 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 759.957 197.392 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9621 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [329.297 696.196 360.579 702.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9655 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [258.164 664.315 289.446 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9656 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 552.734 205.76 558.722]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9657 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 535.828 230.866 543.354]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+9658 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 519.887 189.023 526.842]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+9659 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.505 519.887 276.893 526.842]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+9660 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 488.973 92.784 495.533]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a6ef3653a14ca3245c529684e939b122d) >>
+>>
+endobj
+9661 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 488.973 180.654 495.533]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a6ef3653a14ca3245c529684e939b122d) >>
+>>
+endobj
+9662 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.873 473.033 247.603 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+9663 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 449.122 92.784 455.683]
+/A << /S /GoTo /D (namespace_s_o_i_l_acc4b84d1cba2fafd495c35ebaeae1b96) >>
+>>
+endobj
+9664 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 448.313 214.129 455.683]
+/A << /S /GoTo /D (namespace_s_o_i_l_acc4b84d1cba2fafd495c35ebaeae1b96) >>
+>>
+endobj
+9665 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 449.122 272.709 455.683]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9666 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 252.999 212.775 261.77]
+/A << /S /GoTo /D (_enum_8cpp) >>
+>>
+endobj
+9667 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 245.104 163.917 251.665]
+/A << /S /GoTo /D (_enum_8h) >>
+>>
+endobj
+9668 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 221.194 92.784 227.754]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a21bc467860d215a091d9f0d09b7223a1) >>
+>>
+endobj
+9669 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 221.194 163.917 227.447]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a21bc467860d215a091d9f0d09b7223a1) >>
+>>
+endobj
+9670 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 189.313 92.784 195.874]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a30718fd8e647815e78b1a0b63d878fd8) >>
+>>
+endobj
+9671 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 189.313 163.917 195.567]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a21bc467860d215a091d9f0d09b7223a1) >>
+>>
+endobj
+9672 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 157.433 92.784 163.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a8bb7c616cb01a03df35a73a4dd5edd34) >>
+>>
+endobj
+9673 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 157.433 163.917 163.687]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a21bc467860d215a091d9f0d09b7223a1) >>
+>>
+endobj
+9674 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 109.612 92.784 116.173]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ac25e85a1e15c6d2eb25565d6a362d867) >>
+>>
+endobj
+9675 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 109.612 168.101 115.866]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ac25e85a1e15c6d2eb25565d6a362d867) >>
+>>
+endobj
+9676 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 77.732 92.784 84.292]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_aa02862d7713c094d7ae5819eab23765f) >>
+>>
+endobj
+9677 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 77.732 230.866 84.292]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_aa02862d7713c094d7ae5819eab23765f) >>
+>>
+endobj
+9683 0 obj
+<<
+/D [9681 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+9684 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+9685 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+9686 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+9687 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+9688 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+9689 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+9690 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+9691 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+9692 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+9693 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+9694 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+9695 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+9696 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+9697 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+9698 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+9699 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+9700 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+9701 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+9702 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+9703 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+9704 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+9705 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+9706 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+9707 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+9708 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+9709 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+9710 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+9711 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+9712 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+9713 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+9714 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+9715 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+9716 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+9717 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+4510 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+9718 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+9719 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+9720 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+9721 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+3712 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+9722 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+9723 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+9724 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+3329 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 426.208 null]
+>>
+endobj
+2030 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 409.937 null]
+>>
+endobj
+4671 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 334.27 null]
+>>
+endobj
+2034 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 317.998 null]
+>>
+endobj
+9725 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+9726 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+9727 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+4670 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+9728 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+9729 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+9730 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+4687 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+9731 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+9732 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+9733 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+4688 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+9734 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+9735 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+9736 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+9737 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+4689 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+9738 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+9739 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+9740 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+4705 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+9741 0 obj
+<<
+/D [9681 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+9680 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9758 0 obj
+<<
+/Length 1190      
+/Filter /FlateDecode
+>>
+stream
+x��X�o�6~�_�e/
+��M���5	Zl�z{I�“�D�-e��6+���%˖)YM������ww��C� p9�q6�\��0���5�B�(0�-���⿟�T�Q&���x��1���"��+��"Nc::���am���@�jt���^{4b����
+0N!gT�/���o#�&g@�P�`;L�!��DZ�׋�����L#4��\��՘jK/S�:���n���+r�TQ���m#0��o����?�U^A�����g)\��b1��k�ivZ��E'7g]�������y:=O֫�4�M�H�-p��"�:��b��dh�Q	�ݧ��������۫[�	���jky	��B�мP��{(]��8)v_��8Y�O�t�d�
g;��(M�]��["=0-�?���X�i�Jޗ�_�̚c���=�����Ui-�>D�8�0g�y]=0��V5��Fx�������rs��!�pf�\w����j�7a�c�Q��u�цT	T�m�����+
+��
.��6K?vj�2�љWY�fM�UuU�XU��߶�N��/��R�^������wIZTE��k���N\���>}bd�>1�������n��px4�b�kU����j5��D�l1yٺo��Q���d5���)�Nm�b������bqڧX�P��9�d�BiV���?�w�����"�E�rp�j���J��*�J���t睹8�T�n
+�^��aն��S}6�r׸@�M.��|�e��?h���մ�����i�e��w�G#-�P��Y�}B#�У��߈�������4C�'gw���n�%���`C���hc&!�U��д6~��':����y�c�W��{���um�T��HY�������UX��I�\/*�:)�����I<�0�e^��)�aPϡN�%�,�
�<������2;s��C	�O���!2q|δD�8u�����6:]c�2�ZA�k��r�����ҭ�#P�	��o�#����s�E�{,f*��T[���n_��i"��'Md�@����Úa"q�P����/�Ý�1���MB���O]����J�w��ht&5�aJ{�@���Z_̎KȅFD��L��
	@�,�s�(��Qr=��H�LdL�&�t2�Q�j�K��l^*���O����ۧ���pcD�SI;�z�ag
+endstream
+endobj
+9757 0 obj
+<<
+/Type /Page
+/Contents 9758 0 R
+/Resources 9756 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9395 0 R
+/Annots [ 9678 0 R 9679 0 R 9742 0 R 9743 0 R 9744 0 R 9745 0 R 9746 0 R 9747 0 R 9748 0 R 9749 0 R 9750 0 R 9751 0 R 9752 0 R 9753 0 R ]
+>>
+endobj
+9678 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 736.046 92.784 742.607]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ad670fac86700dfca33f3fe79cc27602a) >>
+>>
+endobj
+9679 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 736.046 281.078 742.607]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ad670fac86700dfca33f3fe79cc27602a) >>
+>>
+endobj
+9742 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 696.196 92.784 702.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ac84d64e172ea5cbecf0e441c787872e0) >>
+>>
+endobj
+9743 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 696.196 184.839 702.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ac84d64e172ea5cbecf0e441c787872e0) >>
+>>
+endobj
+9744 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 600.554 92.784 607.115]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a2809b4d4200d001b62a5d3bd5d1aa04c) >>
+>>
+endobj
+9745 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 600.554 184.839 607.115]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_ac84d64e172ea5cbecf0e441c787872e0) >>
+>>
+endobj
+9746 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 504.913 92.784 511.473]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a20887b8fedec14630adfda595d117a41) >>
+>>
+endobj
+9747 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 504.913 180.654 511.167]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a20887b8fedec14630adfda595d117a41) >>
+>>
+endobj
+9748 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 409.272 92.784 415.832]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a18e004d4a882a61c94a902a3330014e2) >>
+>>
+endobj
+9749 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 409.272 180.654 415.525]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_a20887b8fedec14630adfda595d117a41) >>
+>>
+endobj
+9750 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 187.774 168.436 196.545]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+9751 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 172.849 129.333 180.942]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+9752 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.583 172.922 152.573 180.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+9753 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 105.957 166.042 114.728]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+9759 0 obj
+<<
+/D [9757 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+9760 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+9761 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+9762 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+4690 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+9763 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+9764 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+9765 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+9766 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+4703 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+9767 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+9768 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+9769 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+9770 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+9771 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+9772 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+9773 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+9774 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+9775 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+9776 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+9777 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+4704 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+9778 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+9779 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+9780 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+9781 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+9782 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+9783 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+9784 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+9785 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+9786 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+9787 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+9788 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+4729 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+9789 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+9790 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+9791 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+9792 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+9793 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+9794 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+9795 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+9796 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+9797 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+9798 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+9799 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+4730 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+9800 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+9801 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+9802 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+3330 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 385.699 null]
+>>
+endobj
+2038 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 369.286 null]
+>>
+endobj
+9803 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 227.723 null]
+>>
+endobj
+9804 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 145.905 null]
+>>
+endobj
+4669 0 obj
+<<
+/D [9757 0 R /XYZ 70.866 80.532 null]
+>>
+endobj
+9756 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9828 0 obj
+<<
+/Length 1271      
+/Filter /FlateDecode
+>>
+stream
+x��X�o�6~�_!t/203<��yg
�uk���TYqزg�i����{%[���n��=�i����;Rg�P���w6���W�;�{ǣD+�x>#
+��Ĺs}����U�����q|����%�@�|�w5�����l�iM4N8��}����q(�v>+玐�H�q<s�����F`��u�
+m�Jif��YMKD�Q�5��3��0���녱6��"3�,��<J� ���Z�Wk�Ԍ>P�fQ�KJ�ƌ���"��u���F#��`V�ӂ�`��ݜA���@��?-W�t��$��v���I8[O"��U�(=\$i$YZ~����.��e���l'Ӌ=Z��<Fa�X��"_l�$�F�̮��Tq4w�x��r����Vẹt����b����o�X�
��]������ڎ��<�i�`�]��v�j��*YϟG�o�|��	{�,�.W�c��N�;�Jd�?�w���C�����h�!M~�o�iN��L���d_��ÇEFiC�6�8b���,3�{ݞ)���3���;\[���AM;xf�[�����6��Y:���cUr��w�R���:���\n�-���d=]6��E�'t�?�7W{�� �~�4tж�9�mv��٧�����$�e�8�����I��m6��)�w��S���ٙ�&Y"�<7��a���=���������<���+�[��ʈ����n(p��Dx���`e/���]~�W;g�x�^���uI�\������]t�7�**������`��g��k#�<���ē~�U"��2[G�$̛���b4�P�Ӟ3`@�,����l�.�r�h�����و�j����j��/�����M����7)vM{K˜Ȝ��p`����a�.���fI��%�ZQEzU�yHY�D�����2K/�K�h}�3�b@�2H���3�x���#q��͕�B�p�w���ԁ��8����px��_o,Ҥ ��y���L��0	j�����G�l��f��e㹥��x�Q�hV�u�s���-�
+�aNb�m2�~X#���|my�K"��(4���@!_�YߌJ����L��}T6����ė���TV�k���	�)Y��� W���&Ɉ���]�
O���8V��(R0q��[5���Zx�y�^F�3`o�9���,N��n+_!x;/����g%�eJ��W)�J��,i{��`�������V�%��=�
+I�*/��(�V�cɧ��z��z�S���4?�n��!~�2BB
+endstream
+endobj
+9827 0 obj
+<<
+/Type /Page
+/Contents 9828 0 R
+/Resources 9826 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9868 0 R
+/Annots [ 9754 0 R 9755 0 R 9805 0 R 9806 0 R 9807 0 R 9808 0 R 9809 0 R 9810 0 R 9811 0 R 9812 0 R 9813 0 R 9814 0 R 9815 0 R 9816 0 R 9817 0 R 9818 0 R 9819 0 R 9820 0 R 9821 0 R 9822 0 R ]
+>>
+endobj
+9754 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 727.639 212.775 736.41]
+/A << /S /GoTo /D (_enum_8h) >>
+>>
+endobj
+9755 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 711.775 184.839 718.335]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+9805 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 671.924 155.549 678.177]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+9806 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 655.984 92.784 662.544]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+9807 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 655.984 172.286 661.972]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+9808 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 600.193 147.18 606.181]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+9809 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 584.253 147.18 590.241]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+9810 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 568.313 147.18 574.301]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+9811 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 552.372 151.364 558.361]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+9812 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.152 293.261 196.477 301.826]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9813 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.977 291.45 318.268 302.032]
+/A << /S /GoTo /D (_figure_8cpp_a879dfa5f8bb335421b721c57145b622e) >>
+>>
+endobj
+9814 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.152 280.701 196.477 289.266]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9815 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.977 278.997 326.105 289.472]
+/A << /S /GoTo /D (_figure_8cpp_a30e419f20fa7f6edd5cd20a93ad810ea) >>
+>>
+endobj
+9816 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.152 268.14 196.477 276.705]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9817 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.977 266.437 331.081 276.911]
+/A << /S /GoTo /D (_figure_8cpp_a2c60fe17aef5a333bceb59cbcbef54c0) >>
+>>
+endobj
+9818 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 124.614 119.683 131.174]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9819 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 123.51 191.414 131.827]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+9820 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [200.79 124.614 250.603 131.476]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+9821 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 91.142 148.111 99.707]
+/A << /S /GoTo /D (_figure_8cpp_source_l00043) >>
+>>
+endobj
+9822 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 89.331 216.747 99.707]
+/A << /S /GoTo /D (_figure_8cpp_source) >>
+>>
+endobj
+9829 0 obj
+<<
+/D [9827 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2042 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+9830 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 728.819 null]
+>>
+endobj
+9831 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 720.849 null]
+>>
+endobj
+9832 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 712.879 null]
+>>
+endobj
+9833 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 704.909 null]
+>>
+endobj
+9834 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 696.939 null]
+>>
+endobj
+9835 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 688.969 null]
+>>
+endobj
+9836 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 680.998 null]
+>>
+endobj
+9837 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 673.028 null]
+>>
+endobj
+4668 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 665.058 null]
+>>
+endobj
+9838 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 657.088 null]
+>>
+endobj
+9839 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 649.118 null]
+>>
+endobj
+9840 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 641.148 null]
+>>
+endobj
+9841 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 633.178 null]
+>>
+endobj
+9842 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 625.208 null]
+>>
+endobj
+9843 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 617.238 null]
+>>
+endobj
+9844 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 609.267 null]
+>>
+endobj
+9845 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 601.297 null]
+>>
+endobj
+9846 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 593.327 null]
+>>
+endobj
+9847 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 585.357 null]
+>>
+endobj
+9848 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 577.387 null]
+>>
+endobj
+9849 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 569.417 null]
+>>
+endobj
+9850 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 561.447 null]
+>>
+endobj
+9851 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 553.477 null]
+>>
+endobj
+9852 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 545.507 null]
+>>
+endobj
+9853 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 537.536 null]
+>>
+endobj
+9854 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 529.566 null]
+>>
+endobj
+9855 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 521.596 null]
+>>
+endobj
+9856 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 513.626 null]
+>>
+endobj
+9857 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 505.656 null]
+>>
+endobj
+9858 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 497.686 null]
+>>
+endobj
+9859 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 489.716 null]
+>>
+endobj
+9860 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 481.746 null]
+>>
+endobj
+9861 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 473.776 null]
+>>
+endobj
+9862 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 465.805 null]
+>>
+endobj
+9863 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 457.835 null]
+>>
+endobj
+9864 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 449.865 null]
+>>
+endobj
+3331 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 441.128 null]
+>>
+endobj
+2046 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 425.083 null]
+>>
+endobj
+9865 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 329.846 null]
+>>
+endobj
+2050 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 252.56 null]
+>>
+endobj
+9866 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 214.464 null]
+>>
+endobj
+2054 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 187.636 null]
+>>
+endobj
+9867 0 obj
+<<
+/D [9827 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+9826 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R /F22 2379 0 R /F79 3573 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9899 0 obj
+<<
+/Length 1038      
+/Filter /FlateDecode
+>>
+stream
+x��YMs�6��W`ҋt �]|T3>tb��4��rr2�dd�H�+Sm=����(�LGuŪ
��x���C22#���M��gBMc�8�~"�Z)�H�iB.G�����p3ƅ2+�Y6O�!Fz�zy�^�yqUd˼��N��03��K��FAn��GF3vA��X�?��"$�Rp�N���I�
+(�q�T!��c�w?��a2I�������������0I��:�WvJg`�3��雷�o� ���x�E4��>0���<)�h1(�q��6CՂ"]�ͯ
+H�pMQF�8���������`{�,��Tv����ϓ�Ž�c]�]g�2T�$o�l�������� 
6������$
uߪĮ׸]���!pN�)�v��e�J���)�†��"�$DanW�N?0�yVI�R�Ua��,O	�$����Nxκ�dח~�Ox8�f�U:9�7ww[�F�CNf�0�k�NK�`Z�/���Xe���N(��ILʸÊI�b�U�N����(��)FS���)�/L2�4�N3"�M���✅���v9�I�qǥ9��Q|�����z��m�i��@���r��L]����ݳ,��� g`gSY�fC
+(+�]KC�o��f�N���ţIv9��{l�q�갃+�y����pT���]�G����:U?�x�,����dg-���e;�]��e��]/�O�����?���Z�r���`x��UZ�W��8�y�O�2��M`}�������&�/����}dc���m34�xR�T���|hJ�Q
+�H(U�fOB�#�Y��j�EϢ��T�g���p�Q#�^2�GB&�nO:!��Յ�V���B�fy��o����B<�^h��uDkT�����{͜
�4C1mh�q�c��7�5�Eɸ�S���!�`���М���X�`�-�}F�=P��!p�~0Μ�����9#��3��<Ҥ�z�/iT�4�e�oRR�J��Q�P#%�w�RP)��R��w6i�����z�l�P$s6��aV�"��6�/w��
+endstream
+endobj
+9898 0 obj
+<<
+/Type /Page
+/Contents 9899 0 R
+/Resources 9897 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9868 0 R
+/Annots [ 9823 0 R 9824 0 R 9825 0 R 9871 0 R 9872 0 R 9873 0 R 9874 0 R 9875 0 R 9876 0 R 9877 0 R 9878 0 R 9879 0 R 9880 0 R 9881 0 R 9882 0 R 9883 0 R 9884 0 R 9885 0 R 9886 0 R 9887 0 R 9888 0 R 9889 0 R 9890 0 R 9891 0 R 9892 0 R 9893 0 R 9894 0 R 9895 0 R 9896 0 R ]
+>>
+endobj
+9823 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 716.132 119.683 722.691]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9824 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 715.028 191.414 723.344]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+9825 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [200.79 716.132 250.603 722.994]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+9871 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 679.296 148.111 687.86]
+/A << /S /GoTo /D (_figure_8cpp_source_l00037) >>
+>>
+endobj
+9872 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 677.485 216.747 687.86]
+/A << /S /GoTo /D (_figure_8cpp_source) >>
+>>
+endobj
+9873 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 570.665 119.683 577.224]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9874 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 569.561 191.414 577.878]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+9875 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 534.013 148.111 542.394]
+/A << /S /GoTo /D (_figure_8cpp_source_l00017) >>
+>>
+endobj
+9876 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 532.018 216.747 542.394]
+/A << /S /GoTo /D (_figure_8cpp_source) >>
+>>
+endobj
+9877 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 451.012 212.775 459.783]
+/A << /S /GoTo /D (_figure_8cpp) >>
+>>
+endobj
+9878 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 442.152 172.286 449.678]
+/A << /S /GoTo /D (_figure_8h) >>
+>>
+endobj
+9879 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 419.208 92.784 425.768]
+/A << /S /GoTo /D (namespace_s_o_i_l_a863aac9ac9eb4396135f86bd9bc29bad) >>
+>>
+endobj
+9880 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 419.208 138.811 425.196]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9881 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 418.242 235.05 425.768]
+/A << /S /GoTo /D (namespace_s_o_i_l_a863aac9ac9eb4396135f86bd9bc29bad) >>
+>>
+endobj
+9882 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 371.387 92.784 377.947]
+/A << /S /GoTo /D (namespace_s_o_i_l_a034d9e6f234755509cc20b01b506f761) >>
+>>
+endobj
+9883 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 371.387 138.811 377.376]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9884 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 370.421 226.682 377.947]
+/A << /S /GoTo /D (namespace_s_o_i_l_a034d9e6f234755509cc20b01b506f761) >>
+>>
+endobj
+9885 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 315.596 92.784 322.157]
+/A << /S /GoTo /D (_figure_8cpp_a879dfa5f8bb335421b721c57145b622e) >>
+>>
+endobj
+9886 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 315.596 138.811 321.585]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9887 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 259.805 92.784 266.366]
+/A << /S /GoTo /D (namespace_s_o_i_l_a980491413d86c50ced57a8345c8f63ed) >>
+>>
+endobj
+9888 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 259.805 138.811 265.794]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9889 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 258.84 239.235 266.366]
+/A << /S /GoTo /D (namespace_s_o_i_l_a980491413d86c50ced57a8345c8f63ed) >>
+>>
+endobj
+9890 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 204.015 92.784 210.575]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1e904aedc828f75201ffc0452ff28c03) >>
+>>
+endobj
+9891 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 204.015 138.811 210.003]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9892 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 203.049 222.497 210.575]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1e904aedc828f75201ffc0452ff28c03) >>
+>>
+endobj
+9893 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 156.194 92.784 162.754]
+/A << /S /GoTo /D (_figure_8cpp_a30e419f20fa7f6edd5cd20a93ad810ea) >>
+>>
+endobj
+9894 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 156.194 138.811 162.183]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9895 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 108.373 92.784 114.934]
+/A << /S /GoTo /D (_figure_8cpp_a2c60fe17aef5a333bceb59cbcbef54c0) >>
+>>
+endobj
+9896 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 108.373 138.811 114.362]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9900 0 obj
+<<
+/D [9898 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2058 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+9869 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 667.61 null]
+>>
+endobj
+2062 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 640.415 null]
+>>
+endobj
+3691 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 533.014 null]
+>>
+endobj
+2066 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 516.602 null]
+>>
+endobj
+9901 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 452.193 null]
+>>
+endobj
+9902 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 444.222 null]
+>>
+endobj
+9903 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 436.252 null]
+>>
+endobj
+3692 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 428.282 null]
+>>
+endobj
+9904 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 420.312 null]
+>>
+endobj
+9905 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 412.342 null]
+>>
+endobj
+9906 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 404.372 null]
+>>
+endobj
+9907 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 396.402 null]
+>>
+endobj
+9908 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 388.432 null]
+>>
+endobj
+3690 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 380.461 null]
+>>
+endobj
+9909 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 372.491 null]
+>>
+endobj
+9910 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 364.521 null]
+>>
+endobj
+9911 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 356.551 null]
+>>
+endobj
+9912 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 348.581 null]
+>>
+endobj
+9913 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 340.611 null]
+>>
+endobj
+9914 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 332.641 null]
+>>
+endobj
+9915 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 324.671 null]
+>>
+endobj
+9916 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 316.701 null]
+>>
+endobj
+9917 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 308.73 null]
+>>
+endobj
+9918 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 300.76 null]
+>>
+endobj
+9919 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 292.79 null]
+>>
+endobj
+9920 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 284.82 null]
+>>
+endobj
+9921 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 276.85 null]
+>>
+endobj
+3694 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 268.88 null]
+>>
+endobj
+9922 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 260.91 null]
+>>
+endobj
+9923 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 252.94 null]
+>>
+endobj
+9924 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 244.97 null]
+>>
+endobj
+9925 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 236.999 null]
+>>
+endobj
+9926 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 229.029 null]
+>>
+endobj
+9927 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 221.059 null]
+>>
+endobj
+3693 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 213.089 null]
+>>
+endobj
+9928 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 205.119 null]
+>>
+endobj
+9929 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 197.149 null]
+>>
+endobj
+9930 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 189.179 null]
+>>
+endobj
+9931 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 181.209 null]
+>>
+endobj
+9932 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 173.239 null]
+>>
+endobj
+9933 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 165.268 null]
+>>
+endobj
+9934 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 157.298 null]
+>>
+endobj
+9935 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 149.328 null]
+>>
+endobj
+9936 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 141.358 null]
+>>
+endobj
+9937 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 133.388 null]
+>>
+endobj
+9938 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 125.418 null]
+>>
+endobj
+9870 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 117.448 null]
+>>
+endobj
+9939 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 109.478 null]
+>>
+endobj
+9940 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 101.508 null]
+>>
+endobj
+9941 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 93.537 null]
+>>
+endobj
+3332 0 obj
+<<
+/D [9898 0 R /XYZ 70.866 84.8 null]
+>>
+endobj
+9897 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+9996 0 obj
+<<
+/Length 1348      
+/Filter /FlateDecode
+>>
+stream
+x��Y�s�6~�_�ܽ��Z�$$7����i2��5�}In:�MflHmr�L�����
�$�?�	V����]�v&vN;���Г�DJ�w�����E�8�عq^�G}�.�]��Q����EO���.�7��42wW�]�`7�G�1B9q��ݯ�y�$���!��v�Ҡ�HR��:7_�3�w�FLI��\r�x�!�1��:ם?:��	B�"���B��� ��8�r�Q��vz�C�*c�}����cX,�̻Q�,�0����^��	A��Z���!z���4�EIV���$�$��L�U�L"+j�����/�HϬ�0
�h��Z��2�PD _�N�2�y��[Jyi�s��\�#�ξб1�� ��E4!����r�;H����>�����?Q�A������S�bʑd�Xv\�z�}m��=�!���r6RΒ,��9�΢qf6���]�a7�7��W��n�w���iT�V�ɸYӗ��k�hg�v�FKvfƻqd�~�����y:k6c�����.�zL!,����-p����!�.�B����)ET�2�&� �o1�I��P(���Q>&#�� �k|D|F�Bd�Y4{���̝��)�b�G|�ȳ�"��\&b[�0�m5
+a�k�{����{>�	Z�f�����|�&�+�8�B�e]��b��0O�1ܓ-Q��l) ��r<h_�,�_��!R�UD�6�{�x��LEsȗ�-:��|��q]	�T!���9o��G�CB%�>��/�x�>�U�jaW�RU_��6F�N:	�W���X!�-M�uz�l�	�O)zȌM��x0Xd�S�L�vM����Y!/e���>tV6X��Lxg���ê2���C��$�N
8D�� ��!)6�3��O'u�U�1�\")���m|�\���F��rGu�:��Q�����@���x���Ny��N�2�9M��;+��Eǖ�u����<J�
+��v����֞ع}���cl��ǎ��ql�q=������'�V=�y�0'��n�dTi_����j���֠t�F]���Ը�a֚�vضKg�֜]��v�.o�ݵ��.�9lG��t�/����^~�r�:xj��Z|c��iT���WLyKo�lv��ڹ�[��i�G��WC�������f$�y8rW_�
�>l����|�1��ԗ��~��S��k-��<������tͺƓ�xJGzj2����m-�:Zz����7cՐ�+3��7�Y��B���u�D��]v"���[c*[�K���'#�{IFFZM�U���\\>����9�������_ �o���Ǒ�)<��
+p�Mc��x2�S����D7�n�T]��4�%
+endstream
+endobj
+9995 0 obj
+<<
+/Type /Page
+/Contents 9996 0 R
+/Resources 9994 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9868 0 R
+/Annots [ 9942 0 R 9943 0 R 9944 0 R 9945 0 R 9946 0 R 9947 0 R 9948 0 R 9949 0 R 9950 0 R 9951 0 R 9952 0 R 9953 0 R 9954 0 R 9955 0 R 9956 0 R 9957 0 R 9958 0 R 9959 0 R 9960 0 R 9961 0 R 9962 0 R 9963 0 R 9964 0 R 9965 0 R 9966 0 R 9967 0 R 9968 0 R 9969 0 R 9970 0 R 9971 0 R 9972 0 R 9973 0 R 9974 0 R 9975 0 R 9976 0 R 9977 0 R 9978 0 R 9979 0 R 9980 0 R 9981 0 R 9982 0 R 9983 0 R 9984 0 R 9985 0 R ]
+>>
+endobj
+9942 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 599.163 214.338 609.745]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+9943 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.29 586.246 219.276 594.081]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+9944 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [235.23 586.246 274.488 594.081]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+9945 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [336.995 586.246 368.587 594.081]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9946 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 521.553 166.042 530.324]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+9947 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.777 430.177 144.102 438.742]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9948 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [144.602 428.473 206.408 438.948]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+9949 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 415.542 132.012 423.284]
+/A << /S /GoTo /D (namespace_h_t_t_p) >>
+>>
+endobj
+9950 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 402.532 215.414 411.096]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9951 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 400.828 324.939 411.303]
+/A << /S /GoTo /D (namespace_s_o_i_l_a863aac9ac9eb4396135f86bd9bc29bad) >>
+>>
+endobj
+9952 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 389.705 215.414 398.27]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9953 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 388.002 315.148 398.476]
+/A << /S /GoTo /D (namespace_s_o_i_l_a034d9e6f234755509cc20b01b506f761) >>
+>>
+endobj
+9954 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 376.879 215.414 385.444]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9955 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 375.068 337.205 385.65]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa97c25e5a3e597eea65e13ac0ce85416) >>
+>>
+endobj
+9956 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 364.053 215.414 372.617]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9957 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 362.349 325.119 372.824]
+/A << /S /GoTo /D (namespace_s_o_i_l_a980491413d86c50ced57a8345c8f63ed) >>
+>>
+endobj
+9958 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 351.226 215.414 359.791]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9959 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 349.523 307.67 359.997]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1e904aedc828f75201ffc0452ff28c03) >>
+>>
+endobj
+9960 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 338.4 215.414 346.965]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9961 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 336.696 345.041 347.171]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa16db0f32c1f6a992261e1747be93097) >>
+>>
+endobj
+9962 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 325.574 215.414 334.138]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9963 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.914 323.87 350.018 334.345]
+/A << /S /GoTo /D (namespace_s_o_i_l_a3656e92123956c8afcfbe545eef81eb7) >>
+>>
+endobj
+9964 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 245.029 212.775 253.8]
+/A << /S /GoTo /D (_figure_8h) >>
+>>
+endobj
+9965 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 229.164 184.839 235.724]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+9966 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 220.228 168.101 227.754]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+9967 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 213.224 176.47 219.784]
+/A << /S /GoTo /D (_element_8h) >>
+>>
+endobj
+9968 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 205.254 184.839 211.814]
+/A << /S /GoTo /D (_container_8h) >>
+>>
+endobj
+9969 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 196.318 168.101 203.844]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+9970 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 189.313 155.549 195.567]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+9971 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 165.403 92.784 171.963]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+9972 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 165.403 155.549 171.392]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9973 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 164.437 193.207 171.963]
+/A << /S /GoTo /D (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) >>
+>>
+endobj
+9974 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 149.463 172.286 155.451]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9975 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 148.497 243.419 156.023]
+/A << /S /GoTo /D (namespace_s_o_i_l_a863aac9ac9eb4396135f86bd9bc29bad) >>
+>>
+endobj
+9976 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 133.523 172.286 139.511]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9977 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 132.557 235.05 140.083]
+/A << /S /GoTo /D (namespace_s_o_i_l_a034d9e6f234755509cc20b01b506f761) >>
+>>
+endobj
+9978 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 117.582 92.784 124.143]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa97c25e5a3e597eea65e13ac0ce85416) >>
+>>
+endobj
+9979 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 117.582 172.286 123.571]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9980 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 101.642 172.286 107.631]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9981 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 100.676 247.603 108.203]
+/A << /S /GoTo /D (namespace_s_o_i_l_a980491413d86c50ced57a8345c8f63ed) >>
+>>
+endobj
+9982 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 85.702 172.286 91.691]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9983 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 84.736 230.866 92.262]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1e904aedc828f75201ffc0452ff28c03) >>
+>>
+endobj
+9984 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 69.762 92.784 76.322]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa16db0f32c1f6a992261e1747be93097) >>
+>>
+endobj
+9985 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 69.762 172.286 75.75]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9997 0 obj
+<<
+/D [9995 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2070 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+9998 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 639.845 null]
+>>
+endobj
+9999 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 560.424 null]
+>>
+endobj
+10000 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 481.003 null]
+>>
+endobj
+4918 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 315.529 null]
+>>
+endobj
+2074 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 308.571 null]
+>>
+endobj
+10001 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+10002 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+10003 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+10004 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+10005 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+10006 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+10007 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+10008 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+10009 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+10010 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+10011 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+10012 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+10013 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+10014 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+10015 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+10016 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+10017 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+10018 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+10019 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+10020 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+10021 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+10022 0 obj
+<<
+/D [9995 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+9994 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R /F79 3573 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10113 0 obj
+<<
+/Length 1687      
+/Filter /FlateDecode
+>>
+stream
+x��ے�6�=_�ᡓt6�%�W�ۙ�]
+�@x�2������Vv�~{u�'�l��txYg%��s?GG���a{��{?]!����umc���,�w]���c<3���w/Ǐ
���ȥ�|�*N�`=�� ��8%���-�]�{�z����F����1]��_Zƌ�=6(��7��9�� ��N�罿zV�L�x�_'��U�iY�
����PȜ�������M��	^,���r�؂.*`J���?�e=��f{V ~��
+��Х~����E)�<��ET��K<z�ǣ'ax����[�%֚�q˄�п��ߧ�ų]�(p���	�;�a�.^���ϸO��t|��8L���Cp:l�[��l,�[8�E9M���]/7��x�ʥ��uƖ,W��x���e���o��0�` 8�(��ʦ[�_��S��꺩�v�� f[��^�qO�u���x�d��h‰*�,���=��Ҙ���"]�<KSt�f4��)�G�A�w��ۋn�҅7Q������49x�s<_�@�Vk��J�w���&��*J�!��c��fG�\r��$��\|,�}WW���u��}7K��b O����a��@�����I��7Q�g�%�Ge�h�K�����eh�������!)h��u��p1����>�;I��
�Y��oe���ھ���Ҿ��oݻ�$E�3���m*�p�]J�dx�~Ti�N�v�klT�qS��D�X��t+����<���[2��V�j��3_�<"Y>�R�$���6�,-��!h�T�dKK+�` �����N]6�F:��C���3~�F蛶��S����G&����uKW���
+.�WY�����
���H�oΞ�ϸM�U�;@��;p�#4�_C�t�z���:V8��9�9�~I!Ɏ��2:����Q�F�;��}���s�Û`�i�nq�h㪏��4;��<vƾ��y<��[�_[b�']"��f�f"�Ԉ�@�u�<�~��r�o�ǿ�J�{HOA���Y1��Pw ��L>ˡ�|ؑ��a�����]_�M�	�ato� ���G\�)O���^=�ZoJ�iY��TsL%\d;Pcm�Q��*��dT�����#���^YҼX{�˩�ud��P]J/���UӋP�Bʕ�Dsh-g���V�\>l��QM�l[k�U��Q�����<�A�=�V�}PX�p�BIG�L�'$��f�iU�<�@O>��}���_�g�(�&t���a�V�	�
+ XZ<�И�n�'I6};�9���"���Ŋ�e�d�>�.��/s$��{�?�a"��YF:W�;�?Z�B.*E�����V��~qҿ�2DA�Ųq{�r�f��&�:��$]%�2q<�>m2T���Զ������C�͆���`Ǖ���e(���@��ٚ�ILnÐ�����)�C�MĒ	�j� �/g��i"���
+o�D��V1o�H�Y��AzU[�	N��M�����!�����Tb������̖�Z�5�V��jAR]@|�ĺ
��-�IC��N���%d�Ҍ��ʼn/�V�&
+������S58[�c_����a[>\v�M߯���j>�c�����"YѼ�Y$����>��<�����cZ6��!x�N�5��"��9�tD��KQrU<�)�
+�3�,���Rr�'���y;����.���%Ū
+endstream
+endobj
+10112 0 obj
+<<
+/Type /Page
+/Contents 10113 0 R
+/Resources 10111 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9868 0 R
+/Annots [ 9986 0 R 9987 0 R 9988 0 R 9989 0 R 9990 0 R 9991 0 R 9992 0 R 9993 0 R 10023 0 R 10024 0 R 10025 0 R 10026 0 R 10027 0 R 10028 0 R 10029 0 R 10030 0 R 10031 0 R 10032 0 R 10033 0 R 10034 0 R 10035 0 R 10036 0 R 10037 0 R 10038 0 R 10039 0 R 10040 0 R 10041 0 R 10042 0 R 10043 0 R 10044 0 R 10045 0 R 10046 0 R 10047 0 R 10048 0 R 10049 0 R 10050 0 R 10051 0 R 10052 0 R 10053 0 R 10054 0 R 10055 0 R 10056 0 R 10057 0 R 10058 0 R 10059 0 R 10060 0 R 10061 0 R 10062 0 R 10063 0 R 10064 0 R 10065 0 R 10066 0 R 10067 0 R 10068 0 R 10069 0 R 10070 0 R 10071 0 R 10072 0 R 10073 0 R 10074 0 R 10075 0 R 10076 0 R 10077 0 R 10078 0 R 10079 0 R 10080 0 R 10081 0 R 10082 0 R 10083 0 R 10084 0 R 10085 0 R 10086 0 R 10087 0 R 10088 0 R 10089 0 R 10090 0 R 10091 0 R 10092 0 R 10093 0 R 10094 0 R 10095 0 R 10096 0 R 10097 0 R 10098 0 R 10099 0 R 10100 0 R 10101 0 R 10102 0 R 10103 0 R 10104 0 R 10105 0 R 10106 0 R 10107 0 R ]
+>>
+endobj
+9986 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 751.987 92.784 758.547]
+/A << /S /GoTo /D (namespace_s_o_i_l_a3656e92123956c8afcfbe545eef81eb7) >>
+>>
+endobj
+9987 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 751.987 172.286 757.975]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+9988 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 720.106 92.784 726.666]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+9989 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 719.14 163.917 726.666]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+9990 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 720.106 235.05 726.666]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+9991 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 696.196 92.784 702.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+9992 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 696.304 147.18 702.184]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+9993 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 696.196 168.101 702.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+10023 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 680.256 92.784 686.816]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+10024 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 680.256 197.392 686.816]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+10025 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 664.315 92.784 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+10026 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 663.349 205.76 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10027 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 664.315 235.05 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+10028 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 648.375 92.784 654.935]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+10029 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 647.409 163.917 654.364]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10030 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 647.409 189.023 653.516]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+10031 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 632.435 92.784 638.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6dc0dda3c135fb3512486192a52e0f8b) >>
+>>
+endobj
+10032 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 632.435 201.576 638.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6dc0dda3c135fb3512486192a52e0f8b) >>
+>>
+endobj
+10033 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 616.495 92.784 623.055]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_af07e6f343402f0f9280ede65d4b26fa0) >>
+>>
+endobj
+10034 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 616.495 205.76 623.055]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_af07e6f343402f0f9280ede65d4b26fa0) >>
+>>
+endobj
+10035 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 592.584 92.784 599.145]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8da920bd367b9a6ee8b70fcfa1f709ac) >>
+>>
+endobj
+10036 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 591.618 155.549 599.145]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8da920bd367b9a6ee8b70fcfa1f709ac) >>
+>>
+endobj
+10037 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [262.348 591.618 289.446 598.573]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+10038 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [346.034 592.584 364.764 599.145]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10039 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.352 592.584 440.081 597.725]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+10040 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 583.648 147.18 591.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+10041 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 584.614 222.497 591.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+10042 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [279.085 583.648 314.552 591.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+10043 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [346.034 583.648 381.501 590.603]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10044 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [383.693 583.648 406.607 589.755]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+10045 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [417.167 583.648 452.634 590.603]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10046 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [467.379 584.722 486.109 590.603]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+10047 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [488.3 584.614 507.03 591.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+10048 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 576.752 117.89 582.633]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+10049 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 560.704 92.784 567.264]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a1f20334aa82abbb7d0e9d2322e5683d0) >>
+>>
+endobj
+10050 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 559.738 159.733 567.264]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a1f20334aa82abbb7d0e9d2322e5683d0) >>
+>>
+endobj
+10051 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 544.764 92.784 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a4e4d6c93a559d5e18178de9a79b472ec) >>
+>>
+endobj
+10052 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 543.798 193.207 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+10053 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 543.798 243.419 550.752]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a4e4d6c93a559d5e18178de9a79b472ec) >>
+>>
+endobj
+10054 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 543.798 348.027 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10055 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [354.403 544.764 377.317 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+10056 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 520.853 92.784 527.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_abb3fe4e331a9a5f2f53b011309d6c937) >>
+>>
+endobj
+10057 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 519.887 205.76 527.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10058 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 519.887 255.972 526.842]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_abb3fe4e331a9a5f2f53b011309d6c937) >>
+>>
+endobj
+10059 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 504.913 92.784 511.473]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aaf9b99da1c712f54d758c492830a7566) >>
+>>
+endobj
+10060 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 503.947 197.392 511.473]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aaf9b99da1c712f54d758c492830a7566) >>
+>>
+endobj
+10061 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 503.947 301.999 511.473]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10062 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [308.375 504.913 331.289 511.473]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+10063 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 488.973 92.784 495.533]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_af096fd3a66cdc35d18a1cbbf637dddf9) >>
+>>
+endobj
+10064 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 488.007 189.023 494.961]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_af096fd3a66cdc35d18a1cbbf637dddf9) >>
+>>
+endobj
+10065 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 488.007 226.682 494.961]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10066 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.873 488.007 251.788 494.114]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+10067 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 473.033 92.784 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab47f2268fb3f31960ab7bc8473974b3e) >>
+>>
+endobj
+10068 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 472.224 184.839 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab47f2268fb3f31960ab7bc8473974b3e) >>
+>>
+endobj
+10069 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 473.141 205.76 479.021]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+10070 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 473.033 226.682 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+10071 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 457.092 92.784 463.653]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a358a1060f3f04ea4aa1cb0b7705af4d9) >>
+>>
+endobj
+10072 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 456.283 189.023 463.653]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a358a1060f3f04ea4aa1cb0b7705af4d9) >>
+>>
+endobj
+10073 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 456.127 293.631 463.653]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10074 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [300.007 457.092 322.921 463.653]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+10075 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 433.182 92.784 439.742]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) >>
+>>
+endobj
+10076 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 433.182 172.286 439.171]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10077 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 432.216 197.392 439.742]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) >>
+>>
+endobj
+10078 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 417.242 92.784 423.802]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6cebd6af4116112bb244b1444aa3a1da) >>
+>>
+endobj
+10079 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 416.276 205.76 423.802]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10080 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 417.242 226.682 423.23]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6cebd6af4116112bb244b1444aa3a1da) >>
+>>
+endobj
+10081 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 417.242 260.156 423.802]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+10082 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 401.302 92.784 407.862]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a65998054544cd71fdb47c0b1b956e883) >>
+>>
+endobj
+10083 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 400.336 209.944 407.862]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a65998054544cd71fdb47c0b1b956e883) >>
+>>
+endobj
+10084 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 400.336 314.552 407.862]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10085 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [320.928 401.302 343.842 407.862]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+10086 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [350.218 401.41 368.948 407.29]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+10087 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.14 401.302 389.87 407.862]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+10088 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 329.571 92.784 336.131]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8da920bd367b9a6ee8b70fcfa1f709ac) >>
+>>
+endobj
+10089 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 328.605 218.313 336.131]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8da920bd367b9a6ee8b70fcfa1f709ac) >>
+>>
+endobj
+10090 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.14 320.635 406.607 327.589]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10091 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [438.089 321.6 481.924 327.854]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+10092 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 313.63 117.89 319.884]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+10093 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 313.63 155.549 320.191]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+10094 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 273.78 92.784 280.34]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a1f20334aa82abbb7d0e9d2322e5683d0) >>
+>>
+endobj
+10095 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 272.814 214.129 280.34]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a1f20334aa82abbb7d0e9d2322e5683d0) >>
+>>
+endobj
+10096 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 225.959 92.784 232.519]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) >>
+>>
+endobj
+10097 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 225.959 138.811 231.948]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10098 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 224.993 251.788 232.519]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) >>
+>>
+endobj
+10099 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 194.079 155.549 200.067]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10100 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 193.113 293.631 200.639]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+10101 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.795 185.3 281.078 192.669]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) >>
+>>
+endobj
+10102 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [325.113 186.109 356.395 192.669]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a8b1d27ee800ce3dddeb38356c5edb86d) >>
+>>
+endobj
+10103 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [341.85 178.138 373.132 184.699]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a8b1d27ee800ce3dddeb38356c5edb86d) >>
+>>
+endobj
+10104 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 169.203 260.156 176.729]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a65b2542daa4ce48d6738533e6e417ade) >>
+>>
+endobj
+10105 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [392.061 161.232 448.45 168.759]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+10106 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 146.258 155.549 152.247]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10107 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 145.292 260.156 152.818]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a197355701a388b65d7ea327ddd45024a) >>
+>>
+endobj
+10114 0 obj
+<<
+/D [10112 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+10115 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+10116 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+10117 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+10118 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+10119 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+4917 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+10120 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+10121 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+5079 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+10122 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+5080 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+10123 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+5081 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+10124 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+5044 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+10125 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+10126 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+10127 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+10128 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+10129 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+10130 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+10131 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+10132 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+10133 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+10134 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+10135 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+10136 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+10137 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+10138 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+10139 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+10140 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+10141 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+10142 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+10143 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+10144 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+10145 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+10146 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+10147 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+10148 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+10149 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+10150 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+10151 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+10152 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+10153 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+10154 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+10155 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+10156 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+10157 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+10158 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+10159 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+10160 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+10161 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+4933 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+10162 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+10163 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+10164 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+10165 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+4934 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+10166 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+10167 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+10168 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+10169 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+10170 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+5041 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+10171 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+10172 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+10173 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+10174 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+10175 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+10176 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+10177 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+10178 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+10179 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+10180 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+10181 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+10182 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+10183 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+10184 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+10185 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+10186 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+10187 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+10188 0 obj
+<<
+/D [10112 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+10111 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10219 0 obj
+<<
+/Length 1248      
+/Filter /FlateDecode
+>>
+stream
+x��Zmo�6��_�u@ao1C�/��$�6E�
�Rc_�"pe:jK�,�	�����b��blŝ7�_b���w��/D� ���w|A�㜀��
+΁�9�c0����9W����A}����o=�HC?	�����fR�.�t�Q_�2�U����c�>���^�z�{8���O(
+�y���l�@�x|�ߜ�d�d�x����
+����xYX�(��s��Z�1D�f!�P�+�.	\
9B}e���/Q���PƧ��A�_�>�o#�"�Icirr⏗IMT��_���~�n<Ke���;����,,���[_��i�P�̱,W
+�OZK�2�L�8�̤��RX�2�'��X��yԩv���H1UiX�*%1���l�ȦR��O���B��y�\df�v)QNt�� ���~�w�jabu�;Q+���ؚ;i}����.
+&�@������������bƬ����s��※.��vB�M��l�߂�h!�q�g�`l[!?
+d��|�	�sd�2�S}05-�2�;�V����qx#k��T��a�����&j1���6���4[&��<�N�2����L8k��^�*�ゥ��ҤhL�o.[7���@N��4�uCCH�_���Q��i0i��8-�efΊ��6X��J��*�i͟��CLb�8Z��H�ʗ��MPk=�.������y�0w{�nysB.#���$~&)�K���СF8�(��
+�w�G��
+R�mBͱQ�Kj���V;��Y1{�'��e.7w��p�߸�{^�1�f�:L��:���k]�u{1�U�jN]�U��V��?� ��VC��X8���ɸK�����2y:fױu�>9���^��X��FV��g�����̮s��N�S;��uA�����$�o	����^�LV�Z1�Y�1����:U!�:����s=f��f�{�l�����M)4�S���R���)�ſY)*�ŶBAΡPT����S@1��d�a�F�qk٦��4���y� f��	�f��؁	{����İߌդ6�;�ח�dY9�"s�I��s*�g���Ts���x���y���s-J�+�}����^�[�
+�Uo�%�a�F�[��n��9/��z<���m<����0t�}?����a��ݍ�-�B�n��<��]G��`x��/� r����?K'�HYI����t��1�9c�k,�Wp8t\N+�Uh�/4z#CUW�V�|Tv?���h@�]��F9�/æ���z�?�
+endstream
+endobj
+10218 0 obj
+<<
+/Type /Page
+/Contents 10219 0 R
+/Resources 10217 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9868 0 R
+/Annots [ 10108 0 R 10109 0 R 10110 0 R 10189 0 R 10190 0 R 10191 0 R 10192 0 R 10193 0 R 10194 0 R 10195 0 R 10196 0 R 10197 0 R 10198 0 R 10199 0 R 10200 0 R 10201 0 R 10202 0 R 10203 0 R 10204 0 R 10205 0 R 10206 0 R 10207 0 R 10208 0 R 10209 0 R 10210 0 R 10211 0 R 10212 0 R 10213 0 R 10214 0 R 10215 0 R ]
+>>
+endobj
+10108 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 759.957 92.784 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6cebd6af4116112bb244b1444aa3a1da) >>
+>>
+endobj
+10109 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 758.991 197.392 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10110 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 758.991 314.552 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a6ef3653a14ca3245c529684e939b122d) >>
+>>
+endobj
+10189 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 743.051 218.313 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10190 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 712.136 92.784 718.696]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6dc0dda3c135fb3512486192a52e0f8b) >>
+>>
+endobj
+10191 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 711.17 222.497 718.696]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a6dc0dda3c135fb3512486192a52e0f8b) >>
+>>
+endobj
+10192 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 672.285 92.784 678.846]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a4e4d6c93a559d5e18178de9a79b472ec) >>
+>>
+endobj
+10193 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 671.32 184.839 678.846]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+10194 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 671.32 318.736 678.846]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a4e4d6c93a559d5e18178de9a79b472ec) >>
+>>
+endobj
+10195 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [346.034 671.32 423.344 678.846]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10196 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 576.644 92.784 583.204]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_abb3fe4e331a9a5f2f53b011309d6c937) >>
+>>
+endobj
+10197 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 575.678 197.392 583.204]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10198 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 575.678 331.289 583.204]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_abb3fe4e331a9a5f2f53b011309d6c937) >>
+>>
+endobj
+10199 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 520.853 92.784 527.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aaf9b99da1c712f54d758c492830a7566) >>
+>>
+endobj
+10200 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 519.887 260.156 527.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aaf9b99da1c712f54d758c492830a7566) >>
+>>
+endobj
+10201 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.454 519.887 364.764 527.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10202 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 503.947 214.129 511.473]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_ad1574e37bb9696fdee3986964e77f050) >>
+>>
+endobj
+10203 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 473.033 92.784 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_af096fd3a66cdc35d18a1cbbf637dddf9) >>
+>>
+endobj
+10204 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 472.067 243.419 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_af096fd3a66cdc35d18a1cbbf637dddf9) >>
+>>
+endobj
+10205 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 472.067 281.078 479.021]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10206 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 417.242 92.784 423.802]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab47f2268fb3f31960ab7bc8473974b3e) >>
+>>
+endobj
+10207 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 416.276 239.235 423.802]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab47f2268fb3f31960ab7bc8473974b3e) >>
+>>
+endobj
+10208 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 417.35 260.156 423.23]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+10209 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 361.451 92.784 368.011]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a358a1060f3f04ea4aa1cb0b7705af4d9) >>
+>>
+endobj
+10210 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 360.485 251.788 368.011]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a358a1060f3f04ea4aa1cb0b7705af4d9) >>
+>>
+endobj
+10211 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [279.085 360.485 356.395 368.011]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10212 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 281.75 92.784 288.31]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a65998054544cd71fdb47c0b1b956e883) >>
+>>
+endobj
+10213 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 280.784 230.866 288.31]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a65998054544cd71fdb47c0b1b956e883) >>
+>>
+endobj
+10214 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [258.164 280.784 327.105 288.31]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10215 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [362.771 281.858 381.501 287.738]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+10220 0 obj
+<<
+/D [10218 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+4956 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+10221 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+10222 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+10223 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+10224 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+10225 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+4986 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+10226 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+10227 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+10228 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+10229 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+4983 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+10230 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+10231 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+10232 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+10233 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+10234 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+10235 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+10236 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+10237 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+10238 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+10239 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+10240 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+4958 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+10241 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+10242 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+10243 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+10244 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+10245 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+10246 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+4957 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+10247 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+10248 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+10249 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+10250 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+10251 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+4987 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+10252 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+10253 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+10254 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+10255 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+10256 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+10257 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+5010 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+10258 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+10259 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+10260 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+10261 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+10262 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+10263 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+5011 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+10264 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+10265 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+10266 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+10267 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+10268 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+10269 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+10270 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+10271 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+10272 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+5012 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+10273 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+10274 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+10275 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+10276 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+10277 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+10278 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+10279 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+10280 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+10281 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+10282 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+10283 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+10284 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+10285 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+10286 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+3333 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 171.165 null]
+>>
+endobj
+2078 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 154.752 null]
+>>
+endobj
+5175 0 obj
+<<
+/D [10218 0 R /XYZ 70.866 76.501 null]
+>>
+endobj
+10217 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10318 0 obj
+<<
+/Length 1648      
+/Filter /FlateDecode
+>>
+stream
+x��Z�s�6��_�fw;X�*��lH��vM�v[�5��q���[��mBs��o�,�`I@���lYH���y_=
+��Ā�E�a����al�[Å���p{��1�Q������kæ�l�/���hF:]���/�`9'q��Q][g�֧�I{B�\�y��#��F��g�
:b�3V���p�
�c��q���0M�LUqb�h`��5!���eh@�X0DJ:��]�m�B]1�"����s*Ȇ5��)�-�D��B�F�Dm f�D��#����ڞ�ӥ7|F
+��7@E`<�Ǵ]o��QS�?Eq0[�[qw��Z�V��S����ZL[Ͷ
+�VO�6�9#vu��~�䰹��Ѹ#��a��M����E�>;��b�<D��'��w��(����2
+U�bNN_��g"���9$Y�F��j�$ΓY2���M��W.{,��8�XUHp�
+D5��n��f����|�����qq)��8z�H�趁�
[�W�������
�c�E(�؛>y^��d�Pw�~ң��7G���r���0*�Xx��9t�|�&+Y8�J�D���i�Vó�P����Ջ���6IŅ��>_fy�G?��(��+�'�x���D@�H�P�l�u�F�g�dE�wN�if�8=/E�>^�o��?y�~��lx"}���J������囫����_�������t+q�
OKt�Ga�"i~e��WW%�"7��nb-'woN�R���]g4З�&� %~Nq��Jc��!v����fO�^ZpG��E�"`���5�e�~a�{��ԇ�[���YY�����J�	Y��f�x�݉��l�=��e�$_��L�e\�jѶ��T�)/����X{kς���묱{g��C&_?`f6�����&��d�(˗�-_ޑ
+ʂ`�g�&Iސ�֯i�Y��j��]��tŽ)�t;ߩ��������l�A�'�ߖqeSG5 �TQ�z{�da|v�Liqj�Kz�k��g�/�9�+#�Ԡ
�>ѦV���o������>�H��aw���_\���cE[k�lGތ(h^k���m,�鴸��~W)�5)��4��I��+��@%j����:p�S�C�z������ͱ�_�I)�ptN�A;��F@>�*�#ق5��م��32��\�d>���Ӓd�M&�j>{��8��Ke1w\��p���40kt��b%�#vٍ&Q>�IB���?��tRA�PY���l$!)��x�X#=���1|��<�^���E����E��2�d2�c��G7���}�
����z��H���~��w�{T��b,��|GO�\f���_<���O��z�0t�0|Й�H�ZpCZ����a���6�5����P�g�=vCl�劝��$��z��
�D1W��D�
�������#�e�;�y��P#ut���$�%LW3�'�Ayi̓�?[�j*�9jh_1�\w䚽�1�'2#�VƁ�hr
+�=i�[���FEl��M&�ջhג��kE���z5d&���N�
+��������ي����5gATVN�QL����R��}�Q���B��ώnyvl���<KvZ�!{)�!�m�w�w0�\���;�9�`\�|Ob��9	���7��˷:6l���
+�I������
+endstream
+endobj
+10317 0 obj
+<<
+/Type /Page
+/Contents 10318 0 R
+/Resources 10316 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 9868 0 R
+/Annots [ 10216 0 R 10287 0 R 10288 0 R 10289 0 R 10290 0 R 10291 0 R 10292 0 R 10293 0 R 10294 0 R 10295 0 R 10296 0 R 10297 0 R 10298 0 R 10299 0 R 10300 0 R 10301 0 R 10302 0 R 10303 0 R 10304 0 R 10305 0 R 10306 0 R 10307 0 R 10308 0 R 10309 0 R 10310 0 R 10311 0 R 10312 0 R 10313 0 R 10314 0 R 10315 0 R ]
+>>
+endobj
+10216 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 724.275 212.775 733.046]
+/A << /S /GoTo /D (_function_8cpp) >>
+>>
+endobj
+10287 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 716.381 180.654 722.941]
+/A << /S /GoTo /D (_function_8h) >>
+>>
+endobj
+10288 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 692.47 92.784 699.031]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_add2a16248e512d8efe813f2a27df73b1) >>
+>>
+endobj
+10289 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 692.47 197.392 699.031]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_add2a16248e512d8efe813f2a27df73b1) >>
+>>
+endobj
+10290 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [304.191 684.5 335.474 691.06]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+10291 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 668.56 147.18 675.12]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10292 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 627.9 176.47 635.27]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a4a78094cb756c0886c787f93462621c0) >>
+>>
+endobj
+10293 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 596.829 92.784 603.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a8082d73f3dcb5567775dc2db5c291aec) >>
+>>
+endobj
+10294 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 596.829 201.576 603.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a8082d73f3dcb5567775dc2db5c291aec) >>
+>>
+endobj
+10295 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 564.948 92.784 571.509]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a50cf5e875bee2f192e04271642175bf6) >>
+>>
+endobj
+10296 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.873 564.948 322.921 571.509]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a50cf5e875bee2f192e04271642175bf6) >>
+>>
+endobj
+10297 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 541.038 147.18 547.598]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+10298 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 541.038 251.788 547.598]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+10299 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 532.102 197.392 539.056]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a3fb541cbb68722263ff8d7ab9628a260) >>
+>>
+endobj
+10300 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 509.158 92.784 515.718]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_add97197a51b3c44f9eb873a23329983e) >>
+>>
+endobj
+10301 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 509.158 138.811 515.146]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10302 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 508.192 230.866 515.718]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_add97197a51b3c44f9eb873a23329983e) >>
+>>
+endobj
+10303 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 493.217 155.549 499.206]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10304 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 492.252 268.525 499.778]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+10305 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 333.815 92.784 340.376]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a636a905c115a1686caef9815c5b1aac9) >>
+>>
+endobj
+10306 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 332.849 155.549 339.804]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10307 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 332.849 268.525 340.376]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a636a905c115a1686caef9815c5b1aac9) >>
+>>
+endobj
+10308 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 332.849 327.105 339.804]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+10309 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 316.909 172.286 323.863]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10310 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 270.054 92.784 276.615]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a5d0ba47fb669127afcbea1a3d192fe88) >>
+>>
+endobj
+10311 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 269.088 155.549 276.043]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10312 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 269.088 272.709 276.615]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a5d0ba47fb669127afcbea1a3d192fe88) >>
+>>
+endobj
+10313 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.901 269.088 331.289 276.043]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+10314 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 222.234 155.549 228.222]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10315 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 158.473 172.286 164.461]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10319 0 obj
+<<
+/D [10317 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2082 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+10320 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 725.455 null]
+>>
+endobj
+10321 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 717.485 null]
+>>
+endobj
+10322 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 709.515 null]
+>>
+endobj
+5174 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 701.545 null]
+>>
+endobj
+10323 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 685.604 null]
+>>
+endobj
+10324 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 677.634 null]
+>>
+endobj
+10325 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 669.664 null]
+>>
+endobj
+10326 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 661.694 null]
+>>
+endobj
+10327 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 653.724 null]
+>>
+endobj
+10328 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 645.754 null]
+>>
+endobj
+10329 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 637.784 null]
+>>
+endobj
+10330 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 621.844 null]
+>>
+endobj
+10331 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 613.873 null]
+>>
+endobj
+5176 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 605.903 null]
+>>
+endobj
+10332 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 597.933 null]
+>>
+endobj
+10333 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 589.963 null]
+>>
+endobj
+10334 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 581.993 null]
+>>
+endobj
+5239 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 574.023 null]
+>>
+endobj
+10335 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 558.083 null]
+>>
+endobj
+10336 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 550.113 null]
+>>
+endobj
+10337 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 542.142 null]
+>>
+endobj
+10338 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 534.172 null]
+>>
+endobj
+10339 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 526.202 null]
+>>
+endobj
+5317 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 518.232 null]
+>>
+endobj
+10340 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 510.262 null]
+>>
+endobj
+10341 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 502.292 null]
+>>
+endobj
+10342 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 494.322 null]
+>>
+endobj
+10343 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 486.352 null]
+>>
+endobj
+10344 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 478.382 null]
+>>
+endobj
+10345 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 470.411 null]
+>>
+endobj
+10346 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 462.441 null]
+>>
+endobj
+10347 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 454.471 null]
+>>
+endobj
+10348 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 446.501 null]
+>>
+endobj
+10349 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 438.531 null]
+>>
+endobj
+10350 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 430.561 null]
+>>
+endobj
+10351 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 422.591 null]
+>>
+endobj
+10352 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 414.621 null]
+>>
+endobj
+10353 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 406.651 null]
+>>
+endobj
+10354 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 398.68 null]
+>>
+endobj
+10355 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 390.71 null]
+>>
+endobj
+10356 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 382.74 null]
+>>
+endobj
+10357 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 374.77 null]
+>>
+endobj
+10358 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 366.8 null]
+>>
+endobj
+10359 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 358.83 null]
+>>
+endobj
+10360 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 350.86 null]
+>>
+endobj
+5241 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 342.89 null]
+>>
+endobj
+10361 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 334.92 null]
+>>
+endobj
+10362 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 326.949 null]
+>>
+endobj
+10363 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 318.979 null]
+>>
+endobj
+10364 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 311.009 null]
+>>
+endobj
+10365 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 303.039 null]
+>>
+endobj
+10366 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 295.069 null]
+>>
+endobj
+10367 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 287.099 null]
+>>
+endobj
+5269 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 279.129 null]
+>>
+endobj
+10368 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 271.159 null]
+>>
+endobj
+10369 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 263.189 null]
+>>
+endobj
+10370 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 255.218 null]
+>>
+endobj
+10371 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 247.248 null]
+>>
+endobj
+10372 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 239.278 null]
+>>
+endobj
+10373 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 231.308 null]
+>>
+endobj
+10374 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 223.338 null]
+>>
+endobj
+10375 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 215.368 null]
+>>
+endobj
+10376 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 207.398 null]
+>>
+endobj
+10377 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 199.428 null]
+>>
+endobj
+10378 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 191.458 null]
+>>
+endobj
+10379 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 183.487 null]
+>>
+endobj
+10380 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 175.517 null]
+>>
+endobj
+10381 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 167.547 null]
+>>
+endobj
+10382 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 159.577 null]
+>>
+endobj
+10383 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 151.607 null]
+>>
+endobj
+10384 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 143.637 null]
+>>
+endobj
+10385 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 135.667 null]
+>>
+endobj
+10386 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 127.697 null]
+>>
+endobj
+10387 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 119.727 null]
+>>
+endobj
+10388 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 111.756 null]
+>>
+endobj
+10389 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 103.786 null]
+>>
+endobj
+10390 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 95.816 null]
+>>
+endobj
+10391 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 87.846 null]
+>>
+endobj
+10392 0 obj
+<<
+/D [10317 0 R /XYZ 70.866 79.876 null]
+>>
+endobj
+10316 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10442 0 obj
+<<
+/Length 1313      
+/Filter /FlateDecode
+>>
+stream
+xڵXKs�6��W�ʅ��`<��ć&�[�Ӥ�zr<��%6ɒ�SM'��R�(���"B�����������ϓ�م�p#��Ѱ!p3l��Ihܙ.`�h�m�̳�fpv���볋UQ��Z��\�n��A�g<��R9��~r5x?�=@B;4�F���[F���C#kW�u�/�ΥaQ�E�xa�����2pm�4-`���GcjAh.��_���	RX��T���LJm����ׇ�U��J����h̄�7�!y�"���'��=//�(��Km���1��B���&�m�{�}�'��=@F�1>�y���$�B"-�f�Xeq�U>�>��g	���a���ꗭ�t�M�6Xe��&*q�L&=�J��1U��h�r�1;�Z'�D'ULv�ik���Y毥��:H���N/Rox�&q�[�JTY�v@�[9��r^L�p�dgO����ֹP�%/�b�O�$�R�2嶜���u�C�i����+Ao�5hS�8�.�(W�ǀkblO�)/��O��G�q{���m*�s��E�S�k|{j+'�l�Z�(����v��_�{���gɗ��,�YLy�%�I�;�s�oɋy����� N
+5x�<���2]pi2�pԝ�	)K4��E��
+'6[T��������T�K
����	��R@,`9�R�*���*�,��!bN8̇5x��K�v�{e��o���g����������|ᴍdE*6uk�)v傷?�y�㰳B�b�vlc�	�!Q�}�x/")ef �8铝�!�]��϶��[��L��Gc�]"���,��>m�R}i�Q��@G;�����3O����n��Z�q�:��A�d�D���* d�8�$;m�q�aa7��*���ߢ�e���R��y
.	ʤ闾+���zO����/»���b�9n����*�q��W&՝�max�f�l髨J�U�������桑�N�a��&/x�	���bp��9�\U���^l�='`��n.���i�c*��V�=r�����},t�\�v��n=ܲ�k��#X>��i	ø���n��Q�B������Y��b�T�j�EO~�ש��$�5���W3s?��4-�ו%��MZM���%D;m�gP]]���-܇�}���h�*�ﮯ��ON��´oՑY*���ϝ�CTI]��!�{e�D��2�+����B�Y���:�(X��٭uq���O�펫�x�y2�y���濮�Q�Y�}E�@�N��Z�e���j|<.՗r����F�A�0�j�.h������q���X
+endstream
+endobj
+10441 0 obj
+<<
+/Type /Page
+/Contents 10442 0 R
+/Resources 10440 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10483 0 R
+/Annots [ 10393 0 R 10394 0 R 10395 0 R 10396 0 R 10397 0 R 10398 0 R 10399 0 R 10400 0 R 10401 0 R 10402 0 R 10403 0 R 10404 0 R 10405 0 R 10406 0 R 10407 0 R 10408 0 R 10409 0 R 10410 0 R 10411 0 R 10412 0 R 10413 0 R 10414 0 R 10415 0 R 10416 0 R 10417 0 R 10418 0 R 10419 0 R ]
+>>
+endobj
+10393 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 720.106 155.549 726.095]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10394 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 719.14 176.47 726.666]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10395 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 711.17 130.443 718.696]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10396 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 695.23 172.286 702.184]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10397 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 687.26 205.76 694.786]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10398 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 640.405 92.784 646.965]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac4d8391f2f588a467502f0bf9c8c7c7b) >>
+>>
+endobj
+10399 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 640.405 331.289 646.965]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac4d8391f2f588a467502f0bf9c8c7c7b) >>
+>>
+endobj
+10400 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 411.665 179.491 420.436]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+10401 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 396.942 141.889 404.777]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+10402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 332.333 166.042 341.104]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+10403 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 237.058 212.775 245.829]
+/A << /S /GoTo /D (_function_8h) >>
+>>
+endobj
+10404 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 221.194 184.839 227.754]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+10405 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 213.224 176.47 219.784]
+/A << /S /GoTo /D (_element_8h) >>
+>>
+endobj
+10406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 205.254 184.839 211.814]
+/A << /S /GoTo /D (_container_8h) >>
+>>
+endobj
+10407 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 196.318 168.101 203.844]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+10408 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 189.313 184.839 195.874]
+/A << /S /GoTo /D (_parameter_8h) >>
+>>
+endobj
+10409 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 173.373 155.549 179.627]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+10410 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 157.433 92.784 163.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+10411 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 157.433 172.286 163.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function) >>
+>>
+endobj
+10412 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 149.463 189.023 156.023]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+10413 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 93.672 180.654 100.232]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_add2a16248e512d8efe813f2a27df73b1) >>
+>>
+endobj
+10414 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.454 92.706 314.552 99.661]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+10415 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.14 93.672 389.87 100.232]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10416 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [446.457 93.672 465.187 98.813]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+10417 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 84.736 147.18 92.262]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+10418 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 84.736 239.235 92.262]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+10419 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 69.762 184.839 76.322]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a8082d73f3dcb5567775dc2db5c291aec) >>
+>>
+endobj
+10443 0 obj
+<<
+/D [10441 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+10444 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+10445 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+10446 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+10447 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+10448 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+10449 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+10450 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+10451 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+10452 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+10453 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+10454 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+10455 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+10456 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+10457 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+10458 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+5270 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+10459 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+10460 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+10461 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+3334 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 616.832 null]
+>>
+endobj
+2086 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 600.541 null]
+>>
+endobj
+10462 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 450.496 null]
+>>
+endobj
+10463 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 371.164 null]
+>>
+endobj
+5158 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 307.687 null]
+>>
+endobj
+2090 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 300.71 null]
+>>
+endobj
+10464 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+10465 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+10466 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+10467 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+10468 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+10469 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+10470 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+10471 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+10472 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+5157 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+10473 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+10474 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+10475 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+10476 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+10477 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+10478 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+10479 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+10480 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+10481 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+10482 0 obj
+<<
+/D [10441 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+10440 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10558 0 obj
+<<
+/Length 1666      
+/Filter /FlateDecode
+>>
+stream
+x��[]s�F}ׯ`�б:e?X@u��&q��LSG}r="�
+ ۚN�{���}��k�X2w��=�rڭfhg�_F���a[�u���n4��mB4ˁ:�h�]��_��5��&�B~������Z�ћp��� q/�S{oG��=��44�2iۺ
�6����
m���5fѱ�{~�L�&�M��w_����gT�4�Ft�Bv�Mt���0����6�ة�ÖŽb��&�R���˳�v50�aũ����l^6D��t8�?����It�nLҥ�V�"3�����ID݄��m�F��[����؛��n�_�1���Vme��M)j�ѡSE������]���xy��v0I臷Kѽ|�b���:���a�i��+��?s�
�R��B�9��:��œ(�=J�s*���?:Ύ�,h�ҲU�6j��5{
����>�1�����Y>�BX��cn6#��.��]�w:��-�1y�n_����S3����g�������ғѩ��F�X=����oB}�F����o��Z���C�?�p?V�Ga'��կ,�]/���(_�C��l����w�'�;�_�g��� � $ە%����$��"
+^��d��ģ��C��Pr�)����u���r.p�~����q-�䙹_����j�|8^
+c�gŒ�
8�a�Dۑh��s����#V��K$q��҇�F��?���#���Fo..��Bz�������Ѭ֤�����X�m�\�����d���֙�rI�9��i�k>��ԧ�[��\�����€�����<s�ɧ~N���ת�$?���-յ-��������r�A��+����̝�TT-__�-mu/�������7�*$8n��  2��AT��;�^೴���
v��I��4��G<\�m�D�_�e�@Tf%�%+E�	A��i4��qR¢�|'�!J���lP:_h�7�� #�\n���}��k����kr��9�ݻw��Mڎ�"L�ȝ��X�	�����{�����^ի%
�����@G ����^��QT�^��iR
d1�z���w#v/�N���x���Y�coh�G"d7����M��4h
+'8�+�`!�b����n���De�NX|
+;+�fQ�ݔM��i{Y
#��!�.��!�vlm�t�	~��:"�V��Q��,��'%�����
+��`���`Ԓ�({YȴuS�R������r�-b֧q����0_Z>�=b�ra�݇�e¶W���1�%a�|��E�*����qx�Xs��l]10Q�ux��JV�����m�T
+���%��?���{�b�8JS�rc;�;�Ga���5�a��3�$�f�x��E�fe��5iT�Eq�*�U����cI�w����n�H����	w\������]R���&�,
ui�W2��.�9�RM� ��ȠI:����Ԅq�v�>���R�ݙ�7a$r���sI(i���ǰ�\�����]VwV�kpD�`����F�w#["�R."
1u���|���޼��C�Q�81�0�X����68*$]��ʱK.��]Gb����by�šX��o�8Y�E?Y4M�@`�_,?�$:�N��M��&f�:a&��g�-���i��ɏ}�� �~K�G�%�M�$"���/뭠�
+endstream
+endobj
+10557 0 obj
+<<
+/Type /Page
+/Contents 10558 0 R
+/Resources 10556 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10483 0 R
+/Annots [ 10420 0 R 10421 0 R 10422 0 R 10423 0 R 10424 0 R 10425 0 R 10426 0 R 10427 0 R 10428 0 R 10429 0 R 10430 0 R 10431 0 R 10432 0 R 10433 0 R 10434 0 R 10435 0 R 10436 0 R 10437 0 R 10438 0 R 10439 0 R 10484 0 R 10485 0 R 10486 0 R 10487 0 R 10488 0 R 10489 0 R 10490 0 R 10491 0 R 10492 0 R 10493 0 R 10494 0 R 10495 0 R 10496 0 R 10497 0 R 10498 0 R 10499 0 R 10500 0 R 10501 0 R 10502 0 R 10503 0 R 10504 0 R 10505 0 R 10506 0 R 10507 0 R 10508 0 R 10509 0 R 10510 0 R 10511 0 R 10512 0 R 10513 0 R 10514 0 R 10515 0 R 10516 0 R 10517 0 R 10518 0 R 10519 0 R 10520 0 R 10521 0 R 10522 0 R 10523 0 R 10524 0 R 10525 0 R 10526 0 R 10527 0 R 10528 0 R 10529 0 R 10530 0 R 10531 0 R 10532 0 R 10533 0 R 10534 0 R 10535 0 R 10536 0 R 10537 0 R 10538 0 R 10539 0 R 10540 0 R 10541 0 R 10542 0 R 10543 0 R 10544 0 R 10545 0 R 10546 0 R 10547 0 R 10548 0 R 10549 0 R 10550 0 R 10551 0 R 10552 0 R 10553 0 R 10554 0 R 10555 0 R ]
+>>
+endobj
+10420 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [266.532 751.987 293.631 757.975]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a50cf5e875bee2f192e04271642175bf6) >>
+>>
+endobj
+10421 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [400.43 751.021 427.528 757.975]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+10422 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [484.116 751.987 502.846 758.547]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10423 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 744.016 168.101 749.158]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+10424 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 743.051 272.709 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+10425 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [329.297 743.051 364.764 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+10426 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 719.14 201.576 726.666]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a7705b93afa26a8a3d3012d88a9fea04d) >>
+>>
+endobj
+10427 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 720.106 272.709 726.666]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10428 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [329.297 720.106 348.027 725.247]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+10429 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.614 719.14 452.634 726.666]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+10430 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 711.17 184.839 718.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10431 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.505 711.17 281.078 718.389]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10432 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [346.034 711.17 381.501 718.696]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+10433 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 695.23 201.576 702.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a7705b93afa26a8a3d3012d88a9fea04d) >>
+>>
+endobj
+10434 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 696.196 272.709 702.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10435 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [329.297 696.196 348.027 701.337]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+10436 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.614 695.23 452.634 702.756]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+10437 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 687.26 184.839 694.479]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10438 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 687.26 318.736 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10439 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [438.089 687.26 473.556 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+10484 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 663.506 193.207 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac3753d06d5d191ed95e63df56f51f680) >>
+>>
+endobj
+10485 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 664.315 264.34 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10486 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [320.928 664.315 339.658 669.456]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+10487 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [396.246 663.349 444.266 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+10488 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 655.379 159.733 662.599]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10489 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [195.399 655.379 255.972 662.599]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10490 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [320.928 655.379 356.395 662.906]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+10491 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 624.465 172.286 630.453]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10492 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 623.656 222.497 631.025]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a4cdaaf26db414f721aa0c79aaa38cd46) >>
+>>
+endobj
+10493 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.901 624.465 293.631 631.025]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10494 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [300.007 623.499 368.948 631.025]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10495 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 599.589 205.76 607.115]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10496 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 599.589 264.34 607.115]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a542306cc71842ef1fe4b13597a5b7d1b) >>
+>>
+endobj
+10497 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [316.744 600.554 335.474 607.115]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10498 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [341.85 600.554 385.685 606.543]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10499 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 584.614 189.023 590.603]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10500 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 583.648 214.129 591.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_add97197a51b3c44f9eb873a23329983e) >>
+>>
+endobj
+10501 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 567.708 239.235 574.662]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10502 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 567.708 285.262 575.234]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a636a905c115a1686caef9815c5b1aac9) >>
+>>
+endobj
+10503 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.454 567.708 343.842 574.662]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+10504 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 543.798 239.235 550.752]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10505 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 543.798 289.446 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a5d0ba47fb669127afcbea1a3d192fe88) >>
+>>
+endobj
+10506 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [291.638 543.798 348.027 550.752]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+10507 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [320.928 520.853 348.027 527.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac4d8391f2f588a467502f0bf9c8c7c7b) >>
+>>
+endobj
+10508 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 496.943 92.784 503.503]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a3fb541cbb68722263ff8d7ab9628a260) >>
+>>
+endobj
+10509 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.269 495.977 297.815 502.931]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a3fb541cbb68722263ff8d7ab9628a260) >>
+>>
+endobj
+10510 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [325.113 481.003 381.501 487.563]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+10511 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 449.122 92.784 455.683]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a7705b93afa26a8a3d3012d88a9fea04d) >>
+>>
+endobj
+10512 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 448.156 226.682 455.683]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a7705b93afa26a8a3d3012d88a9fea04d) >>
+>>
+endobj
+10513 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 440.186 235.05 447.406]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10514 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 425.212 189.023 431.772]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10515 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 424.246 314.552 431.2]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+10516 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [316.744 425.212 373.132 431.772]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+10517 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [379.508 425.212 398.238 431.772]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10518 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.614 425.212 423.344 430.353]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+10519 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [429.72 424.246 477.74 431.772]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+10520 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 416.276 163.917 423.802]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+10521 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 393.331 92.784 399.892]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a6e6b923ef2cd3c534e831719ac6bbdb0) >>
+>>
+endobj
+10522 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 392.366 226.682 399.892]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a7705b93afa26a8a3d3012d88a9fea04d) >>
+>>
+endobj
+10523 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 384.396 239.235 391.615]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10524 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [295.822 384.396 364.764 391.922]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10525 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 368.455 205.76 375.41]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+10526 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 368.455 331.289 375.41]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+10527 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [333.481 369.421 389.87 375.982]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+10528 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [396.246 369.421 414.975 375.982]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10529 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.352 369.421 440.081 374.562]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+10530 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [446.457 368.455 494.477 375.982]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+10531 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 360.485 163.917 368.011]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+10532 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 353.481 189.023 360.041]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10533 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 305.66 92.784 312.221]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac3753d06d5d191ed95e63df56f51f680) >>
+>>
+endobj
+10534 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 304.851 218.313 312.221]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_ac3753d06d5d191ed95e63df56f51f680) >>
+>>
+endobj
+10535 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 296.724 184.839 303.944]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+10536 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 281.75 180.654 288.31]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10537 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.873 280.784 306.184 287.738]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+10538 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [308.375 281.75 364.764 288.31]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+10539 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.14 281.75 389.87 288.31]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10540 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [396.246 281.75 414.975 286.891]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+10541 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.352 280.784 469.371 288.31]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+10542 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 272.814 163.917 280.34]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+10543 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 249.869 92.784 256.43]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a4cdaaf26db414f721aa0c79aaa38cd46) >>
+>>
+endobj
+10544 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 249.869 155.549 255.858]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10545 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 249.061 247.603 256.43]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a4cdaaf26db414f721aa0c79aaa38cd46) >>
+>>
+endobj
+10546 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [325.113 248.904 402.423 256.43]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10547 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 233.929 172.286 239.918]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10548 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [312.56 225.959 331.289 232.519]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10549 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 186.109 92.784 192.669]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a542306cc71842ef1fe4b13597a5b7d1b) >>
+>>
+endobj
+10550 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 185.143 189.023 192.669]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10551 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 185.143 289.446 192.669]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_function_a542306cc71842ef1fe4b13597a5b7d1b) >>
+>>
+endobj
+10552 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [366.956 186.109 410.791 192.097]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10553 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [325.113 154.228 343.842 160.788]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10554 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 137.322 268.525 144.848]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10555 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 113.412 235.05 120.938]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+10559 0 obj
+<<
+/D [10557 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+10560 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+10561 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+10562 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+10563 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+10564 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+10565 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+10566 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+10567 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+10568 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+10569 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+10570 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+10571 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+10572 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+10573 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+10574 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+10575 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+10576 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+10577 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+10578 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+10579 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+10580 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+10581 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+10582 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+10583 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+10584 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+10585 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+5316 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+10586 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+10587 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+10588 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+10589 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+10590 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+5210 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+10591 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+10592 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+10593 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+10594 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+5193 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+10595 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+10596 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+10597 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+10598 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+10599 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+10600 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+10601 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+10602 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+5211 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+10603 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+10604 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+10605 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+10606 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+5291 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+10607 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+10608 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+10609 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+10610 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+10611 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+10612 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+10613 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+5290 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+10614 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+10615 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+10616 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+10617 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+10618 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+10619 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+10620 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+10621 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+10622 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+10623 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+10624 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+10625 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+3335 0 obj
+<<
+/D [10557 0 R /XYZ 70.866 91.463 null]
+>>
+endobj
+10556 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10662 0 obj
+<<
+/Length 1036      
+/Filter /FlateDecode
+>>
+stream
+x��Y�nI}�+ZY)(���h��(&J����}r�ȁ�C�8^�}jn03n^���

�u9�OW�g猳׭��V��s���lp�,g��6��ȃ��Z-�m�Ѱ���ͻ��4��=���y[�h��,_�O������-x��d�=��D‹�����Ѡ��%(��ʯs�P��E��g#��-� �cW�����$���O�-��E x!t5#�׳����C9t�Z1O�I�q֑
+�����d8��fCޞU<,���t�C�Zw�gq�4ύ�վ���4���e2\���"��Ĥۗ�B�0`�e����7~FԵ=줣�����lr�,�D����/״83��|Iݓ��Wh�z��^�Wut:���)����|�H�NY���ӯ�@	��0BQp@�Z�X�z��rN��h���2�*��b�����\�!��,��t�=}�ʜ��:�T�h:Hi٧FNnp���Q('R�h�!��y���i��Ӧ�诿��i��}�V:�#m�um�i�����]�6�|�p�%�m:��r��1ф�c+(Tv��FY��A�*I���~"����S�������l:P�oeS쿆�G���;o����QH �!���9t��e�M��E��D1���B~7��//�dy�=*-���9�x�T-�lm�Lt#
+-���4��2i@�[��7�W��W_�D�5�E��4I��$��š�n��H#�m���mkj�U��ۙ6!8+G���iA�z�	j�!&�C��u�c�[���g�-�4x�A�l�����VI�k�A���ڮ�F�WP7E�t���������x-�Ӣq���-�T6�qN�������._����

��9"��+�MW���69�]����j�Q�C�;��6)�sp��\�U�N�G�����\�_�nhF5Q$��RC��ѓ����@�z�����ԏ&�Ճ�7
+*{\��|�(?M@kT�˄�`L�Y���xN�oO�o�e�ޖ<���<�,�8i���!�
+endstream
+endobj
+10661 0 obj
+<<
+/Type /Page
+/Contents 10662 0 R
+/Resources 10660 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10483 0 R
+/Annots [ 10626 0 R 10627 0 R 10628 0 R 10629 0 R 10630 0 R 10631 0 R 10632 0 R 10633 0 R 10634 0 R 10635 0 R 10636 0 R 10637 0 R 10638 0 R 10639 0 R 10640 0 R 10641 0 R 10642 0 R 10643 0 R 10644 0 R 10645 0 R 10646 0 R 10647 0 R 10648 0 R 10649 0 R 10650 0 R 10651 0 R 10652 0 R 10653 0 R ]
+>>
+endobj
+10626 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [213.618 635.806 329.422 646.388]
+/A << /S /GoTo /D (json__helpers_8cpp_a434c4f67044a7cc0f874ef0f5bf55b22) >>
+>>
+endobj
+10627 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [213.618 623.116 337.259 633.591]
+/A << /S /GoTo /D (json__helpers_8cpp_a10a05ce00d314258ffb9c6b536c1bf95) >>
+>>
+endobj
+10628 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [364.666 624.82 413.498 633.591]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+10629 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [213.618 610.319 342.235 620.794]
+/A << /S /GoTo /D (json__helpers_8cpp_a6ae5f67d92f7f1c13b8c5f816640b887) >>
+>>
+endobj
+10630 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [369.643 612.023 423.451 620.794]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+10631 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [213.618 597.522 340.755 607.996]
+/A << /S /GoTo /D (json__helpers_8cpp_aae694c8a60db24c08de0a3a22ef12a40) >>
+>>
+endobj
+10632 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [188.647 584.617 309.212 595.199]
+/A << /S /GoTo /D (json__helpers_8cpp_a9769894e25cf77bdd6aaea440439d6c6) >>
+>>
+endobj
+10633 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [379.164 584.725 397.601 594.993]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10634 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.152 573.631 195.984 582.402]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+10635 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.484 572.739 324.885 582.402]
+/A << /S /GoTo /D (json__helpers_8cpp_a682bf7d67c51ddd6da804bfd2416d99d) >>
+>>
+endobj
+10636 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [394.837 571.927 413.274 582.196]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10637 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.152 560.834 200.96 569.605]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+10638 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [201.46 559.941 334.838 569.605]
+/A << /S /GoTo /D (json__helpers_8cpp_ab40adce50ce6a2a1da1f33a133e674b8) >>
+>>
+endobj
+10639 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.79 559.13 423.227 569.398]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10640 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.165 407.61 215.325 415.927]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+10641 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.701 408.714 274.514 415.576]
+/A << /S /GoTo /D (namespace_s_o_i_l_a79f0d9e5821444f0265d9edf1e37f237) >>
+>>
+endobj
+10642 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 373.389 148.111 381.77]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00047) >>
+>>
+endobj
+10643 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 371.502 242.166 381.77]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+10644 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.165 267.597 215.325 275.914]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+10645 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.701 268.701 274.514 275.563]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+10646 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 256.746 209.85 263.608]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+10647 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 233.376 148.111 241.757]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00041) >>
+>>
+endobj
+10648 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 231.489 242.166 241.757]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+10649 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.165 127.584 215.325 135.901]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+10650 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.701 128.688 274.514 135.55]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+10651 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.037 116.733 209.85 123.595]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+10652 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 93.179 148.111 101.744]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00035) >>
+>>
+endobj
+10653 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 91.476 242.166 101.744]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+10663 0 obj
+<<
+/D [10661 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2094 0 obj
+<<
+/D [10661 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+10664 0 obj
+<<
+/D [10661 0 R /XYZ 70.866 676.238 null]
+>>
+endobj
+2098 0 obj
+<<
+/D [10661 0 R /XYZ 70.866 545.031 null]
+>>
+endobj
+10665 0 obj
+<<
+/D [10661 0 R /XYZ 70.866 502.86 null]
+>>
+endobj
+2102 0 obj
+<<
+/D [10661 0 R /XYZ 70.866 475.81 null]
+>>
+endobj
+10666 0 obj
+<<
+/D [10661 0 R /XYZ 70.866 362.847 null]
+>>
+endobj
+2106 0 obj
+<<
+/D [10661 0 R /XYZ 70.866 335.797 null]
+>>
+endobj
+10667 0 obj
+<<
+/D [10661 0 R /XYZ 70.866 222.834 null]
+>>
+endobj
+2110 0 obj
+<<
+/D [10661 0 R /XYZ 70.866 195.784 null]
+>>
+endobj
+10668 0 obj
+<<
+/D [10661 0 R /XYZ 70.866 82.821 null]
+>>
+endobj
+10660 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F22 2379 0 R /F79 3573 0 R /F95 3709 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10698 0 obj
+<<
+/Length 754       
+/Filter /FlateDecode
+>>
+stream
+x�ݗIO�@���s����/Všb��jIO�PHL�*q���������f j	)�9�y���~3J�����C7�9��XpZҽ&��՚�A3����9޹��sBj\X��I'�Ɔ{���$I�^6���i��
~-)a���`�$�IpvA���	*:K~�"��%����K@׺�Х�p���D�R�~>�����Ǣ�j�s�P��\��)��}i�x��%[Z,�A/��(z���j�]��#����*�?V�)���P��ELK\$I$X�*d�d6�eI�����W�dקY�D��S����\�q��8��o
+頬�|X��a@�"��g]��;L
+����p��=�؆�2 �j%���]�lѯ�G��*hUN���"����xW�;�"������r�[�N��PV����U`s���f)m��sJy:*�)p�e�s<J�(In�]�����\���(䵼���g�|�a*��l����˔DؤvD��j�w��4�OY�?�m���W7R����ۉGM)0�l?���.��<�H��.�z&W��C�(Մr��M���+�T���yx�q�VJ|�TQˀ�����&�ck	��e����Z��m��z�v�N�}���6tB\��"�}!�NDx�v����u��E	��G�n��}�*o@;K��X�O�I.o�7t �5���u?�`s]�B5�5��r\��[���·�$M���2��޻�=�#h��n�&i��?,���
+endstream
+endobj
+10697 0 obj
+<<
+/Type /Page
+/Contents 10698 0 R
+/Resources 10696 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10483 0 R
+/Annots [ 10654 0 R 10655 0 R 10656 0 R 10657 0 R 10658 0 R 10659 0 R 10675 0 R 10676 0 R 10677 0 R 10678 0 R 10679 0 R 10680 0 R 10681 0 R 10682 0 R 10683 0 R 10684 0 R ]
+>>
+endobj
+10654 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.165 715.028 215.325 723.344]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+10655 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 679.296 148.111 687.86]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00029) >>
+>>
+endobj
+10656 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 677.592 242.166 687.86]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+10657 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 570.665 119.683 577.527]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+10658 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 569.741 191.414 577.878]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+10659 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [200.79 570.665 250.603 577.527]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+10675 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 533.829 148.111 542.394]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00086) >>
+>>
+endobj
+10676 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 532.126 242.166 542.394]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+10677 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 425.199 119.683 432.061]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+10678 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.473 424.274 191.414 432.411]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+10679 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [200.79 425.199 250.603 432.061]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+10680 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 388.363 148.111 396.927]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00080) >>
+>>
+endobj
+10681 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 386.659 242.166 396.927]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+10682 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.255 278.808 196.196 286.945]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+10683 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 243.08 148.111 251.461]
+/A << /S /GoTo /D (json__helpers_8cpp_source_l00074) >>
+>>
+endobj
+10684 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 241.193 242.166 251.461]
+/A << /S /GoTo /D (json__helpers_8cpp_source) >>
+>>
+endobj
+10699 0 obj
+<<
+/D [10697 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2114 0 obj
+<<
+/D [10697 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+10671 0 obj
+<<
+/D [10697 0 R /XYZ 70.866 667.61 null]
+>>
+endobj
+2118 0 obj
+<<
+/D [10697 0 R /XYZ 70.866 640.415 null]
+>>
+endobj
+10670 0 obj
+<<
+/D [10697 0 R /XYZ 70.866 522.144 null]
+>>
+endobj
+2122 0 obj
+<<
+/D [10697 0 R /XYZ 70.866 494.948 null]
+>>
+endobj
+10669 0 obj
+<<
+/D [10697 0 R /XYZ 70.866 376.677 null]
+>>
+endobj
+2126 0 obj
+<<
+/D [10697 0 R /XYZ 70.866 349.482 null]
+>>
+endobj
+3756 0 obj
+<<
+/D [10697 0 R /XYZ 70.866 242.189 null]
+>>
+endobj
+10696 0 obj
+<<
+/Font << /F48 2333 0 R /F22 2379 0 R /F54 2381 0 R /F79 3573 0 R /F95 3709 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10727 0 obj
+<<
+/Length 1131      
+/Filter /FlateDecode
+>>
+stream
+x�ř[o�6���)�
쇰���?K�킮�SV�0�[�,�]0컗m�V(�Yy�LI���xx��� p�z�k�y�$�0����B� $P`���vܹ"�l��&q�Q�j������b�������K�����!5ͭ�^�֭�m�RBI�[�_�{��4��{��0N!gT_�����*����]�C��#�*����d��[�3�;~@��r(��}�&����Qًq2Z�U�
�iۦ�a��4�W!Df�(��ѭAo�q*�c��Q�G�>
�q��.Ą��[�zp%��?O��l5��̿�*Lս�8&��G���Z�\3�����B�,6��y3ۈ0}�e䗅�L��A��������3mG<�;_�uw�B�����Qd&/��
f+U���/w�?FQ�����4�����8͜*�jr	��v��O���'҄����?k5�x���2v	)��ش��{\iU��:�1:���u�j������)�'��Lu����"|w��7*��a�5�^��(�W�ZV�S,D�|�`�n��ԍ�4��g�CǺ��P�^�WAa;>A>��$B.HBA)�@��0�=)����WGx�	�Ͳ�Bƒ�q�f�(J��4�t�;�4��f��̴�g�\e��4{�"m�7�J� �}b�g{8x�J|LPw�JYLP~*�_������x!2�~O�ԛ��:�ҪU���%��aD)
]��	P�ڛ�RwV�P#���t����.���$��7Ee�J�L�25>� �Ml�;�e�$�,8��ww�OV�I2;
'o��.���jR�po�[a'�f�N���8���}9s�=�+���q���ױ}�(3H�V�&xT���{�{��݌��A��j�C)�*�NA@P�Չ�֭&����<�! �42�����x;���CN���7�:g�NM�qŨ?��u٘�c�[��U�Tcc�i��	�[H@��&`/��!�t��/._����O��QC�,oWك,�`�1S�"CH���^@��9l��,V]��*��#�/�Hrf�9�p7�V�����#j{�u�9Ds�9����@3�؜�X-�����O����CQ�ߧ�9�n��,�Y8�p
+endstream
+endobj
+10726 0 obj
+<<
+/Type /Page
+/Contents 10727 0 R
+/Resources 10725 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10483 0 R
+/Annots [ 10685 0 R 10686 0 R 10687 0 R 10688 0 R 10689 0 R 10690 0 R 10691 0 R 10692 0 R 10693 0 R 10694 0 R 10695 0 R 10704 0 R 10705 0 R 10706 0 R 10707 0 R 10708 0 R 10709 0 R 10710 0 R 10711 0 R 10712 0 R 10713 0 R 10714 0 R 10715 0 R 10716 0 R 10717 0 R 10718 0 R 10719 0 R 10720 0 R 10721 0 R 10722 0 R 10723 0 R 10724 0 R ]
+>>
+endobj
+10685 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 724.275 212.775 733.046]
+/A << /S /GoTo /D (json__helpers_8cpp) >>
+>>
+endobj
+10686 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 715.415 197.392 722.941]
+/A << /S /GoTo /D (json__helpers_8h) >>
+>>
+endobj
+10687 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 707.445 168.101 714.971]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+10688 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 683.534 222.497 691.06]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+10689 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 636.679 92.784 643.24]
+/A << /S /GoTo /D (namespace_s_o_i_l_aaff67634d006fd7dca3fffb14b28dd8e) >>
+>>
+endobj
+10690 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 635.714 255.972 643.24]
+/A << /S /GoTo /D (namespace_s_o_i_l_aaff67634d006fd7dca3fffb14b28dd8e) >>
+>>
+endobj
+10691 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 588.859 92.784 595.419]
+/A << /S /GoTo /D (namespace_s_o_i_l_ada5ccc8aa10b097eea146a1b2d720e95) >>
+>>
+endobj
+10692 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 587.893 260.156 595.419]
+/A << /S /GoTo /D (namespace_s_o_i_l_ada5ccc8aa10b097eea146a1b2d720e95) >>
+>>
+endobj
+10693 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 541.038 92.784 547.598]
+/A << /S /GoTo /D (namespace_s_o_i_l_a86cf6d407ececca2487dcbe521978d21) >>
+>>
+endobj
+10694 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 540.072 243.419 547.598]
+/A << /S /GoTo /D (namespace_s_o_i_l_a86cf6d407ececca2487dcbe521978d21) >>
+>>
+endobj
+10695 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 493.217 92.784 499.778]
+/A << /S /GoTo /D (json__helpers_8cpp_a434c4f67044a7cc0f874ef0f5bf55b22) >>
+>>
+endobj
+10704 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 445.397 92.784 451.957]
+/A << /S /GoTo /D (json__helpers_8cpp_a10a05ce00d314258ffb9c6b536c1bf95) >>
+>>
+endobj
+10705 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [300.007 445.397 343.842 451.65]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+10706 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 429.457 285.262 436.017]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a8b1d27ee800ce3dddeb38356c5edb86d) >>
+>>
+endobj
+10707 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 397.576 92.784 404.136]
+/A << /S /GoTo /D (json__helpers_8cpp_a6ae5f67d92f7f1c13b8c5f816640b887) >>
+>>
+endobj
+10708 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [300.007 397.576 343.842 403.83]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+10709 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 381.636 289.446 388.196]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_aa02862d7713c094d7ae5819eab23765f) >>
+>>
+endobj
+10710 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 349.755 92.784 356.316]
+/A << /S /GoTo /D (json__helpers_8cpp_aae694c8a60db24c08de0a3a22ef12a40) >>
+>>
+endobj
+10711 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 285.995 92.784 292.555]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa5865fafee3cc8f7eeba8269f24c86ec) >>
+>>
+endobj
+10712 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 285.186 218.313 292.555]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa5865fafee3cc8f7eeba8269f24c86ec) >>
+>>
+endobj
+10713 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 230.204 92.784 236.764]
+/A << /S /GoTo /D (namespace_s_o_i_l_a104dd24cc9e4f3291cd6f6cd4ef9a962) >>
+>>
+endobj
+10714 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 229.395 193.207 236.764]
+/A << /S /GoTo /D (namespace_s_o_i_l_a104dd24cc9e4f3291cd6f6cd4ef9a962) >>
+>>
+endobj
+10715 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 182.383 92.784 188.943]
+/A << /S /GoTo /D (namespace_s_o_i_l_ad66a788615277edb2f3e7077d89cd942) >>
+>>
+endobj
+10716 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 181.574 226.682 188.943]
+/A << /S /GoTo /D (namespace_s_o_i_l_ad66a788615277edb2f3e7077d89cd942) >>
+>>
+endobj
+10717 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 134.562 92.784 141.123]
+/A << /S /GoTo /D (json__helpers_8cpp_a9769894e25cf77bdd6aaea440439d6c6) >>
+>>
+endobj
+10718 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [333.481 133.597 352.211 141.123]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10719 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [291.638 117.656 310.368 125.183]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10720 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 86.742 92.784 93.302]
+/A << /S /GoTo /D (json__helpers_8cpp_a682bf7d67c51ddd6da804bfd2416d99d) >>
+>>
+endobj
+10721 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 86.742 138.811 92.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+10722 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [325.113 85.776 343.842 93.302]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10723 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 70.801 184.839 77.055]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+10724 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [279.085 69.836 297.815 77.362]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10728 0 obj
+<<
+/D [10726 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2130 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+10729 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 725.455 null]
+>>
+endobj
+10730 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 717.485 null]
+>>
+endobj
+10731 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 709.515 null]
+>>
+endobj
+10732 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 701.545 null]
+>>
+endobj
+10733 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 693.575 null]
+>>
+endobj
+10734 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 685.604 null]
+>>
+endobj
+10735 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 677.634 null]
+>>
+endobj
+10736 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 669.664 null]
+>>
+endobj
+10737 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 661.694 null]
+>>
+endobj
+10738 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 653.724 null]
+>>
+endobj
+3755 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 645.754 null]
+>>
+endobj
+10739 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 637.784 null]
+>>
+endobj
+10740 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 629.814 null]
+>>
+endobj
+10741 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 621.844 null]
+>>
+endobj
+10742 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 613.873 null]
+>>
+endobj
+10743 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 605.903 null]
+>>
+endobj
+3758 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 597.933 null]
+>>
+endobj
+10744 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 589.963 null]
+>>
+endobj
+10745 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 581.993 null]
+>>
+endobj
+10746 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 574.023 null]
+>>
+endobj
+10747 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 566.053 null]
+>>
+endobj
+10748 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 558.083 null]
+>>
+endobj
+3757 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 550.113 null]
+>>
+endobj
+10749 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 542.142 null]
+>>
+endobj
+10750 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 534.172 null]
+>>
+endobj
+10751 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 526.202 null]
+>>
+endobj
+10752 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 518.232 null]
+>>
+endobj
+10753 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 510.262 null]
+>>
+endobj
+10700 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 502.292 null]
+>>
+endobj
+10754 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 494.322 null]
+>>
+endobj
+10755 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 486.352 null]
+>>
+endobj
+10756 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 478.382 null]
+>>
+endobj
+10757 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 470.411 null]
+>>
+endobj
+10758 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 462.441 null]
+>>
+endobj
+10674 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 454.471 null]
+>>
+endobj
+10759 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 446.501 null]
+>>
+endobj
+10760 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 438.531 null]
+>>
+endobj
+10761 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 430.561 null]
+>>
+endobj
+10762 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 422.591 null]
+>>
+endobj
+10763 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 414.621 null]
+>>
+endobj
+10673 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 406.651 null]
+>>
+endobj
+10764 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 398.68 null]
+>>
+endobj
+10765 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 390.71 null]
+>>
+endobj
+10766 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 382.74 null]
+>>
+endobj
+10767 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 374.77 null]
+>>
+endobj
+10768 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 366.8 null]
+>>
+endobj
+10672 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 358.83 null]
+>>
+endobj
+10769 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 350.86 null]
+>>
+endobj
+10770 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 342.89 null]
+>>
+endobj
+10771 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 334.92 null]
+>>
+endobj
+10772 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 326.949 null]
+>>
+endobj
+10773 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 318.979 null]
+>>
+endobj
+10774 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 311.009 null]
+>>
+endobj
+10775 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 303.039 null]
+>>
+endobj
+3797 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 295.069 null]
+>>
+endobj
+10776 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 287.099 null]
+>>
+endobj
+10777 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 279.129 null]
+>>
+endobj
+10778 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 271.159 null]
+>>
+endobj
+10779 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 263.189 null]
+>>
+endobj
+10780 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 255.218 null]
+>>
+endobj
+10781 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 247.248 null]
+>>
+endobj
+3798 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 239.278 null]
+>>
+endobj
+10782 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 231.308 null]
+>>
+endobj
+10783 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 223.338 null]
+>>
+endobj
+10784 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 215.368 null]
+>>
+endobj
+10785 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 207.398 null]
+>>
+endobj
+10786 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 199.428 null]
+>>
+endobj
+3799 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 191.458 null]
+>>
+endobj
+10787 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 183.487 null]
+>>
+endobj
+10788 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 175.517 null]
+>>
+endobj
+10789 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 167.547 null]
+>>
+endobj
+10790 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 159.577 null]
+>>
+endobj
+10791 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 151.607 null]
+>>
+endobj
+10703 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 143.637 null]
+>>
+endobj
+10792 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 135.667 null]
+>>
+endobj
+10793 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 127.697 null]
+>>
+endobj
+10794 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 119.727 null]
+>>
+endobj
+10795 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 111.756 null]
+>>
+endobj
+10796 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 103.786 null]
+>>
+endobj
+10702 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 95.816 null]
+>>
+endobj
+10797 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 87.846 null]
+>>
+endobj
+10798 0 obj
+<<
+/D [10726 0 R /XYZ 70.866 79.876 null]
+>>
+endobj
+10725 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10842 0 obj
+<<
+/Length 1319      
+/Filter /FlateDecode
+>>
+stream
+x��Z�O�F�_��J����~�7E<��!�#��PH�
+N;GQ�����8���}�����ofv�6A׈����^��/`�G�+�	�B�0�(�
љG����5.0���G��o3x�&��m%�d4�,ik����E�� �8`
n[g���!�&@w)�-�c)8\��i��ɛ)R�h��T��NBH���"��'5����ժ��-S��,aqfu�˯-t�
+L��鸟�Jg���f�����@�*�Vp8M�'���ݽ�߾�t�V�����xwω$w�e��G<���t}�mN�%,�Rhu�������\�'	A.����V��,L注a0��d�8v�q2E�i����g��j�ͦ�2��6�/Rʰb1��f�S�?E�xk��r2?�e�-�n��|�W$�jU�J�UY���
��w}��K���R�
��v. 3���5����|F�A��c�_܄�i8��b|�z���~
�|J�pF��i�i��3�P�%VD9E?���x>�i�(N�Q�?dNP�������,���M�L/ƣ8	�pV��w?
3-.ki2��1�yܿ
�iƅ�w�9�mQTah�f��xΘ,�K)�e�'�
��x))���}m- ʢ|���p�Z`#�3��S@|u��sBX4�[bl�U����$��`�ȅ��y4p\
c��hL5��%�������d�dLc	&-wEA��Tg��ce�u�B ��%��R�ʙ��6k�Y����ɼK�|�[|&���%�4�Ze��N� �<��y)>kF���������8S�������M�����B���jX���K�M�s0���^eAV��p��{Zc�r-ڈ$r�q&�4�K�X����f�\�N�(������U�1�/����XZ*����*޶W���#��3�%.�jT1�aak`�4��D�,Kջ/�X�h��6/+��a��{����
+����]W�H�0�90T�@I��Bػ�'����^�ss��SÛLyy�ٌ�&��A���O�J���W���6��T=�����N��K:�ON���cp�5��c�`�&K.�WS�Y���2Dc&���צZ��FD NF��U�b�jE������|h��g[<��/P��m�q^� j�WUSmST���������P�f;��s�ц�2��Toa]T��C�|��>Q�
+G�ۜ�_U��`{�6�F�	^�NQ�õ��Ԗa�=��A���,�p���)�d߽(̴)l��&h!���L�KN@y������'/>'�_���ݭFe���Y�
+endstream
+endobj
+10841 0 obj
+<<
+/Type /Page
+/Contents 10842 0 R
+/Resources 10840 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10483 0 R
+/Annots [ 10799 0 R 10800 0 R 10801 0 R 10802 0 R 10803 0 R 10804 0 R 10805 0 R 10806 0 R 10807 0 R 10808 0 R 10809 0 R 10810 0 R 10811 0 R 10812 0 R 10813 0 R 10814 0 R 10815 0 R 10816 0 R 10817 0 R 10818 0 R 10819 0 R 10820 0 R 10821 0 R 10822 0 R 10823 0 R 10824 0 R 10825 0 R 10826 0 R 10827 0 R 10828 0 R 10829 0 R 10830 0 R 10831 0 R 10832 0 R 10833 0 R ]
+>>
+endobj
+10799 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 736.046 92.784 742.607]
+/A << /S /GoTo /D (json__helpers_8cpp_ab40adce50ce6a2a1da1f33a133e674b8) >>
+>>
+endobj
+10800 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 736.046 138.811 742.3]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+10801 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [325.113 735.08 343.842 742.607]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10802 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 720.106 184.839 726.36]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+10803 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [279.085 719.14 297.815 726.666]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10804 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 688.226 92.784 694.786]
+/A << /S /GoTo /D (namespace_s_o_i_l_adaab1a60ee0b36f8537055549511ba7b) >>
+>>
+endobj
+10805 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 687.417 201.576 694.786]
+/A << /S /GoTo /D (namespace_s_o_i_l_adaab1a60ee0b36f8537055549511ba7b) >>
+>>
+endobj
+10806 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.901 687.26 293.631 694.786]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10807 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 671.32 159.733 678.846]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10808 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 478.684 166.042 487.455]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+10809 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [180.179 383.207 236.498 393.682]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+10810 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.684 344.168 182.764 353.831]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+10811 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [252.716 343.357 271.152 353.625]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10812 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 315.461 336.093 325.936]
+/A << /S /GoTo /D (namespace_s_o_i_l_aaff67634d006fd7dca3fffb14b28dd8e) >>
+>>
+endobj
+10813 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 302.51 336.272 312.984]
+/A << /S /GoTo /D (namespace_s_o_i_l_ada5ccc8aa10b097eea146a1b2d720e95) >>
+>>
+endobj
+10814 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 289.558 318.824 300.033]
+/A << /S /GoTo /D (namespace_s_o_i_l_a86cf6d407ececca2487dcbe521978d21) >>
+>>
+endobj
+10815 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 276.499 348.359 287.081]
+/A << /S /GoTo /D (namespace_s_o_i_l_a02992988be78a7ab33f587f28f9d77ee) >>
+>>
+endobj
+10816 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 263.655 356.195 274.13]
+/A << /S /GoTo /D (namespace_s_o_i_l_a6cb86f8e799f4d035ef321becf44d6e2) >>
+>>
+endobj
+10817 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [383.603 265.359 432.435 274.13]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+10818 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 250.704 361.172 261.179]
+/A << /S /GoTo /D (namespace_s_o_i_l_a7a19e241bb85fab8d5669742af038a6b) >>
+>>
+endobj
+10819 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [388.579 252.408 442.387 261.179]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+10820 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [232.555 237.753 359.692 248.227]
+/A << /S /GoTo /D (namespace_s_o_i_l_a2c15040c8f4602cc146655bf71293721) >>
+>>
+endobj
+10821 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [195.318 225.613 303.618 235.276]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa5865fafee3cc8f7eeba8269f24c86ec) >>
+>>
+endobj
+10822 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.049 212.661 269.08 222.324]
+/A << /S /GoTo /D (namespace_s_o_i_l_a104dd24cc9e4f3291cd6f6cd4ef9a962) >>
+>>
+endobj
+10823 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [195.497 199.71 303.976 209.373]
+/A << /S /GoTo /D (namespace_s_o_i_l_ad66a788615277edb2f3e7077d89cd942) >>
+>>
+endobj
+10824 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.584 185.839 328.149 196.421]
+/A << /S /GoTo /D (namespace_s_o_i_l_a5b6625a4bf4d20d486a4258a17462ef9) >>
+>>
+endobj
+10825 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [398.101 185.947 416.537 196.215]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10826 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 174.699 214.92 183.47]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+10827 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [215.42 173.807 343.822 183.47]
+/A << /S /GoTo /D (namespace_s_o_i_l_a10e716692b430aae80488a4eb82c7711) >>
+>>
+endobj
+10828 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [413.774 172.995 432.211 183.264]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10829 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.088 161.748 219.897 170.519]
+/A << /S /GoTo /D (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) >>
+>>
+endobj
+10830 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.397 160.855 353.775 170.519]
+/A << /S /GoTo /D (namespace_s_o_i_l_a80e0cc86c7756c3f9b4ccf338cd146bd) >>
+>>
+endobj
+10831 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [423.727 160.044 442.163 170.312]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10832 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [185.527 147.904 284.035 157.567]
+/A << /S /GoTo /D (namespace_s_o_i_l_adaab1a60ee0b36f8537055549511ba7b) >>
+>>
+endobj
+10833 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [353.988 147.093 372.424 157.361]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10843 0 obj
+<<
+/D [10841 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+10844 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+10845 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+10846 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+10701 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+10847 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+10848 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+10849 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+10850 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+10851 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+3770 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+10852 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+10853 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+10854 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+3336 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 664.653 null]
+>>
+endobj
+2134 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 648.24 null]
+>>
+endobj
+10855 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 518.632 null]
+>>
+endobj
+10856 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 436.814 null]
+>>
+endobj
+10857 0 obj
+<<
+/D [10841 0 R /XYZ 70.866 138.126 null]
+>>
+endobj
+10840 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F73 2949 0 R /F79 3573 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10898 0 obj
+<<
+/Length 1356      
+/Filter /FlateDecode
+>>
+stream
+x��Ymo�8��_���S"���1oۍtU�n�v���O�U�7aE�r������$b�Hw��cf�yf<c�P*P��]:��k�TL`�:V�Wŀ��uŰT�#�(/u�q�f�{���B5��`����)61M&1��,‡k-�����(T�L�iSՔ����
*��N��[���+��h��{�S��,aE*�"y�:��A+���h�!�z��b���*g��l!�&�'�눊�AП���t7��P�:�����U�r� �.�9�&����f��`B#��
��q�JR���^y9ә���Qw8�6҇��ӂ�E��
+\��MTh8���I�~�t�dF�Z:f�����0�qr>J���qB}��*���xr�C�g�ҕ�8�OAp���v���ivKa#ÝNj��K���VC0�2�c�|'tzݤ������	#��$��iV9e�U�>�uu/l{�=��yƶ��zZ��tvt�ܒH�"\nL�����*p�ʙ�QJ�
+���|���>pV��wM����W�
+�1�k�a��+�ͼ��
+�zc�z1&=�6��YFSI>�����޲��B{#t.������Z'i�1d"����?7�7�4�t�(���L��5u�2T�4N�'���;�XN̚��C�3Os��;|'c���Ck+r��-C�'����k}y~8y\���!�ܝ��v��y��oK*P,H�X�ߟݶ+w��0r/����Т�BK���椪�nB�<
|�F��"�謷�_��������dEV���F��r�?�/9N�%�Yv�1���XipP¬���]�T]a��H�tt��b}�4�PIWg!�I������-w��dM�fMs-k��QC���9w�y�����C�̾v������6�ӈf�洟mKWuI����ޫ1��6�a���?7���OY�gY�7��j�l��ӫl��r6�Ft�	���Q 'd�~rZQ'wP���%%��T��34�Gnȣ�J^�'���z#��Ŝ"��`UΈ�ED�܌����%=��9��y��;��\�UV"�1���M)��I���?��%x��O���T�Ev�yN�I���D� ��Y���\���<?���ʎ	s����(
+��_�r��'�ϷW���5�2'��$O�a��e�on2w��'�het���T�U|�����-�1MF� ���i{���<����n�7-�T����ܶ�<�_~n�vuZ^�ti�㳓�Ï���\�\�8 yvDkgG�Uv��:=VF7�/��W�#yB��h���I�TC�r�:��b�OW٦l �g��*���U���������:���Z���
+endstream
+endobj
+10897 0 obj
+<<
+/Type /Page
+/Contents 10898 0 R
+/Resources 10896 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10956 0 R
+/Annots [ 10834 0 R 10835 0 R 10836 0 R 10837 0 R 10838 0 R 10839 0 R 10858 0 R 10859 0 R 10860 0 R 10861 0 R 10862 0 R 10863 0 R 10864 0 R 10865 0 R 10866 0 R 10867 0 R 10868 0 R 10869 0 R 10870 0 R 10871 0 R 10872 0 R 10873 0 R 10874 0 R 10875 0 R 10876 0 R 10877 0 R 10878 0 R 10879 0 R 10880 0 R 10881 0 R 10882 0 R 10883 0 R 10884 0 R 10885 0 R 10886 0 R 10887 0 R 10888 0 R 10889 0 R 10890 0 R 10891 0 R ]
+>>
+endobj
+10834 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 724.506 212.775 733.277]
+/A << /S /GoTo /D (json__helpers_8h) >>
+>>
+endobj
+10835 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 708.642 184.839 715.202]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+10836 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 691.736 168.101 699.262]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+10837 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 676.761 155.549 683.015]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+10838 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 652.851 92.784 659.411]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+10839 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 651.885 230.866 659.411]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+10858 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 628.941 92.784 635.501]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+10859 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 628.132 172.286 635.501]
+/A << /S /GoTo /D (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) >>
+>>
+endobj
+10860 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 627.975 264.34 635.501]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10861 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 596.094 264.34 603.62]
+/A << /S /GoTo /D (namespace_s_o_i_l_aaff67634d006fd7dca3fffb14b28dd8e) >>
+>>
+endobj
+10862 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 580.154 268.525 587.68]
+/A << /S /GoTo /D (namespace_s_o_i_l_ada5ccc8aa10b097eea146a1b2d720e95) >>
+>>
+endobj
+10863 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 564.214 251.788 571.74]
+/A << /S /GoTo /D (namespace_s_o_i_l_a86cf6d407ececca2487dcbe521978d21) >>
+>>
+endobj
+10864 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 549.239 92.784 555.8]
+/A << /S /GoTo /D (namespace_s_o_i_l_a02992988be78a7ab33f587f28f9d77ee) >>
+>>
+endobj
+10865 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 533.299 92.784 539.86]
+/A << /S /GoTo /D (namespace_s_o_i_l_a6cb86f8e799f4d035ef321becf44d6e2) >>
+>>
+endobj
+10866 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [308.375 533.299 352.211 539.553]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+10867 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 517.359 92.784 523.919]
+/A << /S /GoTo /D (namespace_s_o_i_l_a7a19e241bb85fab8d5669742af038a6b) >>
+>>
+endobj
+10868 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [308.375 517.359 352.211 523.612]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+10869 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 501.419 92.784 507.979]
+/A << /S /GoTo /D (namespace_s_o_i_l_a2c15040c8f4602cc146655bf71293721) >>
+>>
+endobj
+10870 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 484.67 226.682 492.039]
+/A << /S /GoTo /D (namespace_s_o_i_l_aa5865fafee3cc8f7eeba8269f24c86ec) >>
+>>
+endobj
+10871 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 468.729 201.576 476.099]
+/A << /S /GoTo /D (namespace_s_o_i_l_a104dd24cc9e4f3291cd6f6cd4ef9a962) >>
+>>
+endobj
+10872 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 452.789 235.05 460.158]
+/A << /S /GoTo /D (namespace_s_o_i_l_ad66a788615277edb2f3e7077d89cd942) >>
+>>
+endobj
+10873 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 437.658 92.784 444.218]
+/A << /S /GoTo /D (namespace_s_o_i_l_a5b6625a4bf4d20d486a4258a17462ef9) >>
+>>
+endobj
+10874 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [341.85 436.692 360.579 444.218]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10875 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 421.718 92.784 428.278]
+/A << /S /GoTo /D (namespace_s_o_i_l_a10e716692b430aae80488a4eb82c7711) >>
+>>
+endobj
+10876 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 421.718 172.286 427.971]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+10877 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [333.481 420.752 352.211 428.278]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10878 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 405.777 92.784 412.338]
+/A << /S /GoTo /D (namespace_s_o_i_l_a80e0cc86c7756c3f9b4ccf338cd146bd) >>
+>>
+endobj
+10879 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 405.777 172.286 412.031]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+10880 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [333.481 404.812 352.211 412.338]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10881 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 389.028 209.944 396.397]
+/A << /S /GoTo /D (namespace_s_o_i_l_adaab1a60ee0b36f8537055549511ba7b) >>
+>>
+endobj
+10882 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.269 388.871 301.999 396.397]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10883 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 205.178 212.775 213.949]
+/A << /S /GoTo /D (_object_8cpp) >>
+>>
+endobj
+10884 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 196.318 172.286 203.844]
+/A << /S /GoTo /D (_object_8h) >>
+>>
+endobj
+10885 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 173.373 92.784 179.934]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_ac821d8158a2c4214b15cb1d9be8954dd) >>
+>>
+endobj
+10886 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 172.407 180.654 179.934]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_ac821d8158a2c4214b15cb1d9be8954dd) >>
+>>
+endobj
+10887 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 165.403 285.262 171.963]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+10888 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 149.463 147.18 156.023]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+10889 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 116.774 176.47 124.143]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a4a78094cb756c0886c787f93462621c0) >>
+>>
+endobj
+10890 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 77.732 92.784 84.292]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_ab0d8fb2cb9e32c16ea631ed93e7a5d57) >>
+>>
+endobj
+10891 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 76.766 184.839 84.292]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_ab0d8fb2cb9e32c16ea631ed93e7a5d57) >>
+>>
+endobj
+10899 0 obj
+<<
+/D [10897 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2138 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+10900 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 725.686 null]
+>>
+endobj
+10901 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 717.716 null]
+>>
+endobj
+10902 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 709.746 null]
+>>
+endobj
+10903 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 701.776 null]
+>>
+endobj
+10904 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 693.806 null]
+>>
+endobj
+10905 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 685.836 null]
+>>
+endobj
+10906 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 677.866 null]
+>>
+endobj
+10907 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 669.895 null]
+>>
+endobj
+10908 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 661.925 null]
+>>
+endobj
+10909 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 653.955 null]
+>>
+endobj
+10910 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 645.985 null]
+>>
+endobj
+10911 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 638.015 null]
+>>
+endobj
+10912 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 630.045 null]
+>>
+endobj
+10913 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 622.075 null]
+>>
+endobj
+10914 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 614.105 null]
+>>
+endobj
+10915 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 606.135 null]
+>>
+endobj
+10916 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 598.164 null]
+>>
+endobj
+10917 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 590.194 null]
+>>
+endobj
+10918 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 582.224 null]
+>>
+endobj
+10919 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 574.254 null]
+>>
+endobj
+10920 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 566.284 null]
+>>
+endobj
+10921 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 558.314 null]
+>>
+endobj
+10922 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 550.344 null]
+>>
+endobj
+10923 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 542.374 null]
+>>
+endobj
+10924 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 534.404 null]
+>>
+endobj
+10925 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 526.433 null]
+>>
+endobj
+10926 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 518.463 null]
+>>
+endobj
+10927 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 510.493 null]
+>>
+endobj
+10928 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 502.523 null]
+>>
+endobj
+10929 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 494.553 null]
+>>
+endobj
+10930 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 486.583 null]
+>>
+endobj
+10931 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 478.613 null]
+>>
+endobj
+10932 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 470.643 null]
+>>
+endobj
+10933 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 462.672 null]
+>>
+endobj
+10934 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 454.702 null]
+>>
+endobj
+10935 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 446.732 null]
+>>
+endobj
+10936 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 438.762 null]
+>>
+endobj
+10937 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 430.792 null]
+>>
+endobj
+10938 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 422.822 null]
+>>
+endobj
+10939 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 414.852 null]
+>>
+endobj
+10940 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 406.882 null]
+>>
+endobj
+10941 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 398.912 null]
+>>
+endobj
+10942 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 390.941 null]
+>>
+endobj
+3337 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 382.204 null]
+>>
+endobj
+2142 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 365.817 null]
+>>
+endobj
+5502 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 288.687 null]
+>>
+endobj
+2146 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 272.3 null]
+>>
+endobj
+10943 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+10944 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+10945 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+5501 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+10946 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+10947 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+10948 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+10949 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+10950 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+10951 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+10952 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+10953 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+10954 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+5503 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+10955 0 obj
+<<
+/D [10897 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+10896 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+10994 0 obj
+<<
+/Length 1410      
+/Filter /FlateDecode
+>>
+stream
+x��Y[s�6~����L��	����C�ݴig�M�'7�!��lm�������^	A�D�8���Ń���w�s�17�q>�q28}�]�!�1�5\B�3A�$2�C����°�=��X~/�hl:���4ܬh�����>��zP��5���khD�ޅ�5z�q_H�l[���^W�?�	���c�M�X�"2����1v����S����y	��|�X�-%��ƴК����E��h�f��W�~����ݼ�!;ө�[���f4`�u��oh��o�T0{&�Z����5а,N�ra���ׅ�L�i�#�$XQ����a��3u"i��e:�rȨ8q��H��'��mz�v�	��Y��PҵK�1��A������<0 0m������Z�]`Ϩ7��#��~�����W\�NM���N��U�H�xT:����h����߱����&*�q݆���e�,ٵ���B%����aaf���i�ٕ���7cM���L&��E�&��w��}{c��Cbp:�K�H��9�YT�%�egOnix(�fβ4e��\PsT�z:��$��#�Մ���)��_Ry.�eē�DE�u���{��,�*�5
+�w�[�q�,'��&Â��6�T��P�*\�`��6U�HT���o�pr��i��}��xv��hޝ�׽T�{�Ӳ�
�@}�Ct���7_�qq��˘m�8�&w4�y��}��3)2cB�����Y.��F�Qu|�0�D����D�3q~�쒷��+M1�H�i�Ni9����e_�nW�����ç�Zg���'��7F]�w>x��S~��'Nr�1=�
+-{f��4���z0��l���ڇ9>E��fY�TV&�8��o7IX<��A��T��
��x��s��R�$u�a�3N��I�}��[�w��ӎ+��&U6�9f�~���K��y�O!w$ђ���IYyI?lh�UW4σ���U�…\(.��w&�]51�h|&�r�f�{�Q�X����4T��o�lV�&(a�5���JU���ga�A�J�W�"��ozu~���m<A�QO̾QO�g����EE=�]QO��wI��e�J���<;�@�Ȳ d�fpj���u\�b�G��^����YC.��jϱ�ӎ�F�{
�
+U��r�Ȫ�D��;r%r`W%�G�杋��R?��#=7�y�R�X]c���V*�~�J�%e�%+�t+�i�h1�u'�S�P�6��I*�-:�)��w�g��.:z���y��D�L�!d��_\;�D��E�<�p��H<���#]���ގRJ�66<����-H����$\n"*��4���I!�ٶR�|7\
+?���@h��Z����KL�`�����
 ��4��(`��AѶ�r9����v.�Ҥ���b�
+endstream
+endobj
+10993 0 obj
+<<
+/Type /Page
+/Contents 10994 0 R
+/Resources 10992 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10956 0 R
+/Annots [ 10892 0 R 10893 0 R 10894 0 R 10895 0 R 10957 0 R 10958 0 R 10959 0 R 10960 0 R 10961 0 R 10962 0 R 10963 0 R 10964 0 R 10965 0 R 10966 0 R 10967 0 R 10968 0 R 10969 0 R 10970 0 R 10971 0 R 10972 0 R 10973 0 R 10974 0 R 10975 0 R 10976 0 R 10977 0 R 10978 0 R 10979 0 R 10980 0 R 10981 0 R 10982 0 R 10983 0 R 10984 0 R 10985 0 R 10986 0 R 10987 0 R 10988 0 R 10989 0 R ]
+>>
+endobj
+10892 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 744.016 92.784 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4ce4f8d21682f894c34f447d2a62cd30) >>
+>>
+endobj
+10893 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.505 743.051 306.184 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4ce4f8d21682f894c34f447d2a62cd30) >>
+>>
+endobj
+10894 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 719.14 138.811 726.666]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+10895 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 719.14 226.682 726.666]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+10957 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 688.226 92.784 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_aebb0f522c4ced342fbd33cb377eeb4b3) >>
+>>
+endobj
+10958 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 688.226 138.811 694.214]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10959 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 687.26 222.497 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_aebb0f522c4ced342fbd33cb377eeb4b3) >>
+>>
+endobj
+10960 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 664.315 155.549 670.304]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10961 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 663.349 268.525 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) >>
+>>
+endobj
+10962 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 624.465 297.815 630.453]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10963 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 544.764 92.784 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a0d2c97d0d9a71ec307211897d596bbde) >>
+>>
+endobj
+10964 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 543.798 193.207 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a0d2c97d0d9a71ec307211897d596bbde) >>
+>>
+endobj
+10965 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 512.883 92.784 519.444]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a5dabf727c8256928d1f019520a34be1f) >>
+>>
+endobj
+10966 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 512.883 138.811 518.872]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10967 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 511.917 226.682 519.444]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a5dabf727c8256928d1f019520a34be1f) >>
+>>
+endobj
+10968 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.873 512.883 272.709 518.872]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10969 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 473.033 92.784 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a5480dbba0b410666dd030006e86b1108) >>
+>>
+endobj
+10970 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 472.067 201.576 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a5480dbba0b410666dd030006e86b1108) >>
+>>
+endobj
+10971 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 433.182 92.784 439.742]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a24b2c5323d9f5f0651d48d3d319eb225) >>
+>>
+endobj
+10972 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 432.216 155.549 439.171]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10973 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 432.216 260.156 439.742]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a24b2c5323d9f5f0651d48d3d319eb225) >>
+>>
+endobj
+10974 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [262.348 432.216 318.736 439.171]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+10975 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 408.306 172.286 415.26]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10976 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 361.451 92.784 368.011]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_ac6614134cf7d4c7caaaae13fac999978) >>
+>>
+endobj
+10977 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 360.485 155.549 367.44]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10978 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 360.485 260.156 368.011]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_ac6614134cf7d4c7caaaae13fac999978) >>
+>>
+endobj
+10979 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [262.348 360.485 318.736 367.44]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+10980 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 329.571 155.549 335.559]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10981 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 321.6 155.549 327.589]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+10982 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 320.635 176.47 328.161]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10983 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 312.665 172.286 319.619]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10984 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 304.694 205.76 312.221]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+10985 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 265.81 92.784 272.37]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4e237fb0358f5adaea25f2ac95b8b5e7) >>
+>>
+endobj
+10986 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 264.844 155.549 271.798]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10987 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 264.844 272.709 272.37]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4e237fb0358f5adaea25f2ac95b8b5e7) >>
+>>
+endobj
+10988 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.901 264.844 331.289 271.798]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+10989 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 232.963 172.286 239.918]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+10995 0 obj
+<<
+/D [10993 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+10996 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+10997 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+5531 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+10998 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+10999 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+11000 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+11001 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+11002 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+5640 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+11003 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+11004 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+11005 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+11006 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+11007 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+11008 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+11009 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+11010 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+11011 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+11012 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+11013 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+11014 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+11015 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+11016 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+11017 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+5598 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+11018 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+11019 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+11020 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+5596 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+11021 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+11022 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+11023 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+11024 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+5639 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+11025 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+11026 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+11027 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+11028 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+5567 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+11029 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+11030 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+11031 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+11032 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+11033 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+11034 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+11035 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+11036 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+5569 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+11037 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+11038 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+11039 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+11040 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+11041 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+11042 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+11043 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+11044 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+11045 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+11046 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+11047 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+5533 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+11048 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+11049 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+11050 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+11051 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+11052 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+11053 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+11054 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+3338 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 210.356 null]
+>>
+endobj
+2150 0 obj
+<<
+/D [10993 0 R /XYZ 70.866 193.943 null]
+>>
+endobj
+10992 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11080 0 obj
+<<
+/Length 1257      
+/Filter /FlateDecode
+>>
+stream
+x��X�o�6�_!d/03$%R]����k��--Ybl��Jr2#����C�e�r�"��>�N��w�;����w�_f��3�3<�Sj�[���p}(2f�qm��u�)v=���3�j��>��
����<�G�B�+ē��ɗ	�Rh��6�v�h5����;7 �}ϸ�#W�Cl@��O��?'��A��v!R`���4�*VI���3��X�(p=טb|5�#�do�q=%���P�|V��Ɯ+9D0����A���Sq��k8=s,H}W��p�oS��7�h�6�J;-DL �����>��|��V��W�*�h<9�'k5>N�QjF1���`*�b�B�%u�g}8p�H���G'��p/�����rm6�Uz��
+H�>�-�<Z�XV���혤R���mqw� �A���^��'bE"5�g��	z_������2\�BK����S��O^ ɢt3���` �wTfu�>j���!���~�2��瀋vx�1�h��T� �w���m(�4�6��Tq�0�A��K���bwuS�6i���\\��ݗ����<�'�8|j���I4��������R�>hAat����g뭴�a֤�Z�x�!��� ��a�⛢.j��Y�����Q���u�d%X��x蛈H�7��<�w-�Y�I!�␺<��4_l���-bwA�l����c''��+	e���ۈ6Ѳ��GX�{��ݒZm���#�'I��
}�*d�W���5{�k:6�������X��{6��U��]�����^H�́ S�D�=�E�H�˓x�����P�K�z��In$Li����X�_��ݎt�G��~��C�����2ι3u�&Y��zg��48�a�Ǜa{���ɿ��U~�^:�}ml#�=�s�W���5$��_�Y����+�e�*m��K�*\��UXGK%��}}0�=���r��]�I�7�|���׊��\���:L��9蹸�Y�j�?���,<Τ��D�R�x�w]�d'Y�d�)e��;�+ў'�iÌ+W�<�?�Ww�'��{S�]O&�z]f�T�^i%�M�'Y�ʛ(�ꖔ�1�T~�M�ގNۈ�Ʋ���vs��?�qT�L'��
�7m��iS������ޞ^Z64Ò���BDE�:,gI�4d�ح���x���β���b�i�����z�<�J\�m�E�7H���^���J��oﭴO]���б�S��ms��R��[�QHi����ߪbE�\D�F��o��Y�l�r����@��
+endstream
+endobj
+11079 0 obj
+<<
+/Type /Page
+/Contents 11080 0 R
+/Resources 11078 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10956 0 R
+/Annots [ 10990 0 R 10991 0 R 11055 0 R 11056 0 R 11057 0 R 11058 0 R 11059 0 R 11060 0 R 11061 0 R 11062 0 R 11063 0 R 11064 0 R 11065 0 R 11066 0 R 11067 0 R 11068 0 R 11069 0 R 11070 0 R 11071 0 R 11072 0 R 11073 0 R 11074 0 R 11075 0 R 11076 0 R 11077 0 R ]
+>>
+endobj
+10990 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 735.277 171.018 745.752]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+10991 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 720.745 134.263 730.371]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+11055 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 659.436 166.042 668.207]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11056 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 565.949 212.775 574.72]
+/A << /S /GoTo /D (_object_8h) >>
+>>
+endobj
+11057 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 550.084 184.839 556.645]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+11058 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 542.114 176.47 548.675]
+/A << /S /GoTo /D (_element_8h) >>
+>>
+endobj
+11059 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 526.174 155.549 532.427]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11060 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 510.234 92.784 516.794]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+11061 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 509.268 180.654 516.794]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+11062 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 502.264 189.023 508.824]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element) >>
+>>
+endobj
+11063 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 477.387 155.549 484.914]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+11064 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 453.477 159.733 461.003]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object) >>
+>>
+endobj
+11065 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 382.712 205.76 388.7]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11066 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 382.712 281.078 388.7]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11067 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 349.866 189.023 356.82]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+11068 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 349.866 293.631 356.82]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+11069 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 333.925 189.023 340.88]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+11070 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 333.925 293.631 340.88]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+11071 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 317.985 189.023 324.94]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+11072 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.795 317.985 306.184 324.94]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+11073 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 295.041 92.784 301.601]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a98e9761c2be5e2acdfe673f48259172e) >>
+>>
+endobj
+11074 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [258.164 294.075 272.709 301.029]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a98e9761c2be5e2acdfe673f48259172e) >>
+>>
+endobj
+11075 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [316.744 279.1 373.132 285.661]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+11076 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 77.656 212.775 86.427]
+/A << /S /GoTo /D (_parameter_8cpp) >>
+>>
+endobj
+11077 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 69.762 184.839 76.322]
+/A << /S /GoTo /D (_parameter_8h) >>
+>>
+endobj
+11081 0 obj
+<<
+/D [11079 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+11082 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 775.009 null]
+>>
+endobj
+11083 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 697.464 null]
+>>
+endobj
+5487 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 635.349 null]
+>>
+endobj
+2154 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 627.994 null]
+>>
+endobj
+11084 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 567.129 null]
+>>
+endobj
+11085 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 559.159 null]
+>>
+endobj
+11086 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 551.189 null]
+>>
+endobj
+11087 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 543.219 null]
+>>
+endobj
+11088 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 535.248 null]
+>>
+endobj
+11089 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 527.278 null]
+>>
+endobj
+5486 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 519.308 null]
+>>
+endobj
+11090 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 511.338 null]
+>>
+endobj
+11091 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 503.368 null]
+>>
+endobj
+11092 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 495.398 null]
+>>
+endobj
+11093 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 487.428 null]
+>>
+endobj
+11094 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 471.487 null]
+>>
+endobj
+11095 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 463.517 null]
+>>
+endobj
+11096 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 455.547 null]
+>>
+endobj
+11097 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 447.577 null]
+>>
+endobj
+11098 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 431.637 null]
+>>
+endobj
+11099 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 423.667 null]
+>>
+endobj
+11100 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 415.697 null]
+>>
+endobj
+11101 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 407.727 null]
+>>
+endobj
+11102 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 399.756 null]
+>>
+endobj
+11103 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 391.786 null]
+>>
+endobj
+11104 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 383.816 null]
+>>
+endobj
+11105 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 375.846 null]
+>>
+endobj
+11106 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 367.876 null]
+>>
+endobj
+11107 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 359.906 null]
+>>
+endobj
+11108 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 351.936 null]
+>>
+endobj
+11109 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 343.966 null]
+>>
+endobj
+11110 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 335.996 null]
+>>
+endobj
+11111 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 328.025 null]
+>>
+endobj
+11112 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 312.085 null]
+>>
+endobj
+5597 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 304.115 null]
+>>
+endobj
+11113 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 296.145 null]
+>>
+endobj
+11114 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 288.175 null]
+>>
+endobj
+11115 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 280.205 null]
+>>
+endobj
+11116 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 272.235 null]
+>>
+endobj
+11117 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 264.265 null]
+>>
+endobj
+11118 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 256.294 null]
+>>
+endobj
+3339 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 248.216 null]
+>>
+endobj
+2158 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 232.014 null]
+>>
+endobj
+11119 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 157.603 null]
+>>
+endobj
+2162 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 141.4 null]
+>>
+endobj
+11120 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+3370 0 obj
+<<
+/D [11079 0 R /XYZ 70.866 70.643 null]
+>>
+endobj
+11078 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F73 2949 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11185 0 obj
+<<
+/Length 1476      
+/Filter /FlateDecode
+>>
+stream
+x��Yߏ�8~�_���	�Ʊ�m`�݇�uW�ڻm���:�ěpG �6:�����$�0	�f��鞒�0��7�oL��������䊸�<�lczg8����C�tf�7��Z�/
[ܳ	��ˆ[c��/I�^�8��0�����t�i��%4�֥�#X����L�{i��k|),��6���#�����`"<�h'C�V@=�Bk� �f�Z����o/^Mn,�~�/y�S�A,J���;A��<�LarE��	Z0��1�	p�Q�z&f"�Y��Y��ygU�!�Q�5�nV�cJ���#.�f�,5c�3��s>��*��S>,��o�����6
+��a(�ר=���P]v�)��U�I��?�'i�/��,O�x>�#	c�X�4�K�
i��4���C��f�	.��X��..M�E~��h�7'W�][?��u��6�\E��i����Rfҝ�!J:W+�ma"�R�����Ed��Ml!Ѩ��<G�	�b��L�S�E�\_��F�S�ڨA�6��g;�ɕ#1@�9�H4(ƈ��8��V�e~u�$��Qhkf{�TƘ ��[��U8�V~p��ŕ�Å��S����&'e}�X�����8�*�fa'�[�.�
+#R¨�B}"-�Z
+x�����sQ�l��RrWلY�M&"��ʡF�X�x�������B
+�����!DBT���W�:H9z�J���/�)��eS5Uv������fmHc���`�՘:%X�``���p�����SfXmN	�y0��v�h�C��0��w?�vW���;�F���5`!T�!a(>��; �9۷�P�y�
�˜��B����l9<s�\E~�������ϛ�S�����cU�����Լ��7�s���O��t�6��e_�v$�J�a���=Pٛ�nE���p#���
+��*��ȼ*�U��K}Q�̮��؀[�I΃��� ��>��Z�P�k�j2y�$feJbk�E�K���5���å�����vi:2`{��L_�~���d�r&phc�,�ЅQ�
�j�.�m���p�����0��~�mYI���p6,����N��)<Jb��J/HO
����X�|�on���L�HKWۺ�[����~[0�'�Y>;?�~�g����B��/�}J-���q%P�e����e��z�ͤ>��Ļ|�B3�i���=z��������޲V�{zx���Q�xYJ�d�ُy���w���z��\��\L/����r��S+JJ����������	Pö��q���ۓ�E�eT��2ӯ��v�"h�!���*��Ӗ�-���1��?�PJ�:�N�Y��_-�5�F��wEsO��Z��N�|!6tS���Z��Ӂ��⩟'���U����ǣX
+���z؟�h����	�6\莳)�FǜfW��`�y�A(��	S�N�<���YyRr+ϱ7�9�<����˳��m����TR�
+endstream
+endobj
+11184 0 obj
+<<
+/Type /Page
+/Contents 11185 0 R
+/Resources 11183 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10956 0 R
+/Annots [ 11121 0 R 11122 0 R 11123 0 R 11124 0 R 11125 0 R 11126 0 R 11127 0 R 11128 0 R 11129 0 R 11130 0 R 11131 0 R 11132 0 R 11133 0 R 11134 0 R 11135 0 R 11136 0 R 11137 0 R 11138 0 R 11139 0 R 11140 0 R 11141 0 R 11142 0 R 11143 0 R 11144 0 R 11145 0 R 11146 0 R 11147 0 R 11148 0 R 11149 0 R 11150 0 R 11151 0 R 11152 0 R 11153 0 R 11154 0 R 11155 0 R 11156 0 R 11157 0 R 11158 0 R 11159 0 R 11160 0 R 11161 0 R 11162 0 R 11163 0 R 11164 0 R 11165 0 R 11166 0 R 11167 0 R 11168 0 R 11169 0 R 11170 0 R 11171 0 R 11172 0 R ]
+>>
+endobj
+11121 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 562.651 230.333 573.126]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+11122 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 549.599 148.208 557.433]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+11123 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 484.394 166.042 493.165]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11124 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 388.491 212.775 397.262]
+/A << /S /GoTo /D (_parameter_8h) >>
+>>
+endobj
+11125 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 372.626 184.839 379.186]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+11126 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 363.69 168.101 371.216]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+11127 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 356.686 176.47 363.246]
+/A << /S /GoTo /D (_element_8h) >>
+>>
+endobj
+11128 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 348.716 184.839 355.276]
+/A << /S /GoTo /D (_container_8h) >>
+>>
+endobj
+11129 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 339.78 168.101 347.306]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+11130 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 331.81 172.286 339.336]
+/A << /S /GoTo /D (_figure_8h) >>
+>>
+endobj
+11131 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 323.996 205.76 331.366]
+/A << /S /GoTo /D (_publisher_8h) >>
+>>
+endobj
+11132 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 300.895 155.549 307.149]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11133 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 276.985 92.784 283.545]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+11134 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 276.985 176.47 282.973]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+11135 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 276.019 243.419 283.545]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+11136 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 221.194 92.784 227.754]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aed57214457012af12a859669e182e841) >>
+>>
+endobj
+11137 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 221.194 184.839 227.182]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aed57214457012af12a859669e182e841) >>
+>>
+endobj
+11138 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 205.254 201.576 211.814]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a57567b4cfe6b370e9af7c3ef6f10be6d) >>
+>>
+endobj
+11139 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 189.313 205.76 195.874]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_af378abd9212084ebb270383d3cd4300c) >>
+>>
+endobj
+11140 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 165.403 168.101 171.392]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a698d4320aa3e34bf080f9e416fb12ce4) >>
+>>
+endobj
+11141 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.901 164.437 301.999 171.392]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+11142 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [358.587 165.403 377.317 171.963]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+11143 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [433.904 165.403 452.634 170.544]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+11144 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 156.467 147.18 163.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+11145 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 157.433 222.497 163.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+11146 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [249.795 157.433 285.262 163.422]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aed57214457012af12a859669e182e841) >>
+>>
+endobj
+11147 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.324 156.467 410.791 163.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+11148 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [438.089 156.467 473.556 163.422]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11149 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [475.748 156.467 498.662 162.574]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+11150 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 148.497 134.627 155.451]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11151 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 149.571 168.101 155.451]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11152 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 149.463 189.023 156.023]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+11153 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 149.571 218.313 155.451]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+11154 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 133.523 172.286 139.511]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a3c7401cb8d13756cc70d1df4e16db2e5) >>
+>>
+endobj
+11155 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 117.582 297.815 123.571]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_ae6326c41af3bca1b02f8d8dcca05ecad) >>
+>>
+endobj
+11156 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.614 116.617 431.713 123.571]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+11157 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [488.3 117.582 507.03 124.143]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+11158 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 109.612 168.101 114.753]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+11159 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 108.647 272.709 116.173]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+11160 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [329.297 109.612 348.027 116.173]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+11161 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.324 109.612 410.791 115.601]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aed57214457012af12a859669e182e841) >>
+>>
+endobj
+11162 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 100.676 134.627 108.203]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+11163 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.925 100.676 197.392 107.631]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11164 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 100.676 222.497 106.783]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+11165 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [233.058 100.676 268.525 107.631]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11166 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.269 101.75 301.999 107.631]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11167 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [304.191 101.642 322.921 108.203]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+11168 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [333.481 101.75 352.211 107.631]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+11169 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 84.736 205.76 91.691]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+11170 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 84.736 255.972 91.691]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a905eb12cd0e50cf245f2003643602acf) >>
+>>
+endobj
+11171 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.269 84.736 360.579 92.262]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+11172 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [366.956 85.702 389.87 92.262]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+11186 0 obj
+<<
+/D [11184 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2166 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+11187 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 603.468 null]
+>>
+endobj
+11188 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 523.508 null]
+>>
+endobj
+5721 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 459.551 null]
+>>
+endobj
+2170 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 452.707 null]
+>>
+endobj
+11189 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 389.671 null]
+>>
+endobj
+11190 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 381.701 null]
+>>
+endobj
+11191 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 373.73 null]
+>>
+endobj
+11192 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 365.76 null]
+>>
+endobj
+11193 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 357.79 null]
+>>
+endobj
+11194 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 349.82 null]
+>>
+endobj
+11195 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 341.85 null]
+>>
+endobj
+11196 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 333.88 null]
+>>
+endobj
+11197 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 325.91 null]
+>>
+endobj
+11198 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 317.94 null]
+>>
+endobj
+11199 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 309.969 null]
+>>
+endobj
+11200 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 301.999 null]
+>>
+endobj
+11201 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 294.029 null]
+>>
+endobj
+5720 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+11202 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+11203 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+11204 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+11205 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+11206 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+11207 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+5855 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+11208 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+11209 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+11210 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+11211 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+11212 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+11213 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+11214 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+11215 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+11216 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+11217 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+11218 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+11219 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+11220 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+11221 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+11222 0 obj
+<<
+/D [11184 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+11183 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11265 0 obj
+<<
+/Length 1701      
+/Filter /FlateDecode
+>>
+stream
+x��Z�r�6}�W0~�H��;�x&MǞ�Q���hh	��R�̋eO����/	Аl�ӎ^$ �gg �4��t������^5%S�t]��k�����a!Y��3�.��l��f4P@ߍ�Np4�A_��9璪��f�Dd>�ZV��;qz7=HZ�+��)�H�&���7 MI߹d�2�U��BR5E�T�\�җ��XWVS%]��\WV�2(��"3����
+.N{��PS�p��m��aP<H'`���?����~�m2��H#?��fM���m�MR`��L/��/k�[E�7G����� ���[�f
+�r��e�X��L}<�ᄏcl5�M����\�DZ;Ç��.N��/�d2�
k��[�dSg�>�*b6k���m����,Y�bqvC=\Pk�l�@כ��}���|/�,d��s7���2��F%��=��#�>/E�
6Ԙ���"$匙+(�;��aN�(�1�܅7/C/ @�'n�����'>^� !�b��e{��Va�_�n0�-��t��0����&a�\3f>~v��W�ϳȡR�n����+s߄��*;�n�_���p��� �^�~���k)��2�n��Y�R��4v��n6��� �Lv33"���)&����&-x�:����%&+�IS����Ӊ�?dk�ؒ����W��J�9r��uW������M*�`�re�� �H�I�3ڐ��4����Zg��	��xy���\��<���b#q���A����P�mn0�G�1�-����I�w�>��$$��.���������Ҩ���є��F8P�7}�ve�M�j��a�0��-}�i�v
��
+��ML�H��9ػf9�;�g�4���W6V)�K_�Y�1\D��}��ћ��Z�H',t,�j �G�[
+W�B�T�a����~={W���0�X��VѱHI�^L�F���K�B����@8�"`�	��m2�.��⪍L�Flۮ�+­Ēy8�YȽ.�4��>��m���\���O#���o_Z�KUm<����;����퇢
+��3��쨃h��w��P�5��f���΄���v�%�P���G��%L�����V��Z��s�l�H�9�0ù��s����G�V8��M*汅f������4����
+ȑ�!����u(
��P�6/�IMY�Mi��*���^����4�Y -]F�����۹�&k�K_��W�����;��eu�Ha7��,�C�Aڣ��#�$�N�Idcܝf�%��$�^w�	`�8_\b��%+�%@��wܺ~��E�;��x�I龽��:A��<�Q�`@*J��y��24�u�N�^�y�ah�ͦ�VgA���#���NeQw*۾Q��l~��涍��"�<X�k9��oR<��ɟGyC�'i{�x�H|W��Y��[�|�����O��a���Ga�4j(��6ȧ8�仨C��(�����V�Geu�<������߶�*�A�@��$�@H�����gϭv���U�����
J�f��lMpd�<����v�u���Gݟ�lz5���;��a�ڮ�W��>�y���<��:9�#RC�fe�;P��>��r�o�D��_�X����zQ;eۧ�q�?��VM2��d���j�^}C�^mt�>s�4(p��\�Oqu���u���:���8�A���S�=������wa�q���l0��������AD^�
+endstream
+endobj
+11264 0 obj
+<<
+/Type /Page
+/Contents 11265 0 R
+/Resources 11263 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10956 0 R
+/Annots [ 11173 0 R 11174 0 R 11175 0 R 11176 0 R 11177 0 R 11178 0 R 11179 0 R 11180 0 R 11181 0 R 11182 0 R 11223 0 R 11224 0 R 11225 0 R 11226 0 R 11227 0 R 11228 0 R 11229 0 R 11230 0 R 11231 0 R 11232 0 R 11233 0 R 11234 0 R 11235 0 R 11236 0 R 11237 0 R 11238 0 R 11239 0 R 11240 0 R 11241 0 R 11242 0 R 11243 0 R 11244 0 R 11245 0 R 11246 0 R 11247 0 R 11248 0 R 11249 0 R 11250 0 R 11251 0 R 11252 0 R 11253 0 R 11254 0 R 11255 0 R 11256 0 R 11257 0 R 11258 0 R 11259 0 R 11260 0 R 11261 0 R ]
+>>
+endobj
+11173 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 759.957 172.286 765.945]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11174 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 758.991 197.392 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aec2434faa57778dbc8783ec77a86d627) >>
+>>
+endobj
+11175 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 743.051 189.023 750.005]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+11176 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 743.051 235.05 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a37602b6b8f95595a78b70a9b0eb865ad) >>
+>>
+endobj
+11177 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 743.051 293.631 750.005]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+11178 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 727.11 189.023 734.065]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+11179 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 727.11 243.419 734.637]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_ac58916de16e381e40123bf9633a151ad) >>
+>>
+endobj
+11180 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 727.11 301.999 734.065]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+11181 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 704.166 92.784 710.726]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a3ee4708c79c724f7905eecb9e2b2cc08) >>
+>>
+endobj
+11182 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 703.2 285.262 710.154]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a3ee4708c79c724f7905eecb9e2b2cc08) >>
+>>
+endobj
+11223 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [329.297 688.226 385.685 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+11224 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 663.349 168.101 670.304]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aadc9c63027042e0e834b183698e964b9) >>
+>>
+endobj
+11225 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 584.614 92.784 591.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a698d4320aa3e34bf080f9e416fb12ce4) >>
+>>
+endobj
+11226 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 583.648 243.419 590.868]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a698d4320aa3e34bf080f9e416fb12ce4) >>
+>>
+endobj
+11227 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 567.708 134.627 574.662]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11228 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 568.674 209.944 574.927]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11229 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 568.674 264.34 574.927]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11230 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 567.708 297.815 575.234]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+11231 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 544.764 147.18 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+11232 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 504.104 243.419 511.473]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a4a78094cb756c0886c787f93462621c0) >>
+>>
+endobj
+11233 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 465.063 92.784 471.623]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a3c7401cb8d13756cc70d1df4e16db2e5) >>
+>>
+endobj
+11234 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 464.097 239.235 471.316]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a3c7401cb8d13756cc70d1df4e16db2e5) >>
+>>
+endobj
+11235 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 425.212 92.784 431.772]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_ae6326c41af3bca1b02f8d8dcca05ecad) >>
+>>
+endobj
+11236 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 416.276 235.05 423.495]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_ae6326c41af3bca1b02f8d8dcca05ecad) >>
+>>
+endobj
+11237 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [433.904 408.306 469.371 415.26]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11238 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [500.853 409.38 519.583 415.26]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11239 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 384.396 189.023 391.35]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+11240 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [262.348 384.396 339.658 391.35]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+11241 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 368.455 201.576 375.41]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a3ee4708c79c724f7905eecb9e2b2cc08) >>
+>>
+endobj
+11242 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 337.541 92.784 344.101]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a905eb12cd0e50cf245f2003643602acf) >>
+>>
+endobj
+11243 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 336.575 226.682 343.794]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter) >>
+>>
+endobj
+11244 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [233.058 336.575 381.501 343.794]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a905eb12cd0e50cf245f2003643602acf) >>
+>>
+endobj
+11245 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [408.799 336.575 486.109 344.101]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+11246 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 320.635 214.129 328.161]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a4e4d6c93a559d5e18178de9a79b472ec) >>
+>>
+endobj
+11247 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 273.78 92.784 280.34]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aec2434faa57778dbc8783ec77a86d627) >>
+>>
+endobj
+11248 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 273.78 138.811 279.768]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11249 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 272.814 264.34 280.34]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aec2434faa57778dbc8783ec77a86d627) >>
+>>
+endobj
+11250 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [295.822 257.84 356.395 264.4]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afc29676fd98e4c6b7ab004514c175b7c) >>
+>>
+endobj
+11251 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 249.869 155.549 255.858]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11252 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 248.904 297.815 256.43]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) >>
+>>
+endobj
+11253 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 194.079 92.784 200.639]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a57567b4cfe6b370e9af7c3ef6f10be6d) >>
+>>
+endobj
+11254 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 193.113 235.05 200.639]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a57567b4cfe6b370e9af7c3ef6f10be6d) >>
+>>
+endobj
+11255 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 154.228 92.784 160.788]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_af378abd9212084ebb270383d3cd4300c) >>
+>>
+endobj
+11256 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 153.262 276.893 160.788]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_af378abd9212084ebb270383d3cd4300c) >>
+>>
+endobj
+11257 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 106.407 92.784 112.968]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a37602b6b8f95595a78b70a9b0eb865ad) >>
+>>
+endobj
+11258 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 105.442 184.839 112.396]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+11259 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 105.442 339.658 112.968]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_a37602b6b8f95595a78b70a9b0eb865ad) >>
+>>
+endobj
+11260 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [341.85 105.442 398.238 112.396]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+11261 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 73.561 172.286 80.515]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+11266 0 obj
+<<
+/D [11264 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+11267 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+11268 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+11269 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+11270 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+11271 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+11272 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+5827 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+11273 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+11274 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+11275 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+11276 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+11277 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+11278 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+11279 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+11280 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+11281 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+11282 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+11283 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+11284 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+11285 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+11286 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+5742 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+11287 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+11288 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+11289 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+11290 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+11291 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+11292 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+11293 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+11294 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+11295 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+11296 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+5743 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+11297 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+11298 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+11299 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+11300 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+5773 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+11301 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+11302 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+11303 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+11304 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+11305 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+11306 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+5826 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+11307 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+11308 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+11309 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+11310 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+11311 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+11312 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+11313 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+5853 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+11314 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+11315 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+11316 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+11317 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+11318 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+11319 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+11320 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+11321 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+11322 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+5828 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+11323 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+11324 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+11325 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+11326 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+5854 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+11327 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+11328 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+11329 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+11330 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+11331 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+5774 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+11332 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+11333 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+11334 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+11335 0 obj
+<<
+/D [11264 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+11263 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11358 0 obj
+<<
+/Length 1467      
+/Filter /FlateDecode
+>>
+stream
+x��Y[s�8~��`�/�L�Hĥi��[v;mS�S���m���fw���n`�q��m�A:��\�ZZ�z5�u6:}���B�5[X>!�؀ k�XWc���م��3��Q�_��Lm��V��5�Y��"KG/f���+����|۱����3�����ߺ�+ז�b�:��g��чl��:�����X�	��R��[.���F��Cǯg��axQi=k�1�O���n"[�����_�	�����hM=�L#���P�jS�es�O��׾��L�M,+���EBge�GI�w�H�m�2�($��so�|��m��^Iٶ4W��#�Uh�k~J�d�ve�TG#���d�{*�����݆�њ�,�=�p`��7��KL���i�L��=���>�����/ͳ4���3�4�s��|ܞ�����c�hyƱ���V��*ʓ��7�W�nޛύF7[ZA[Ӫ��T�X��Z�Q�ŭ�s�j�?ƧN�.і&�XT�5�"{Wf���~ce�����C�8f�6J�=��*�\1Z�Q&5�VH!I��wU��f��{�R!4{���ɔ#Ǣ���h�L&GW�ta+l� VQ5_�4Kģ?�q+�[���淊�ƆC����l����'H���u�0u=W̿Fٖ�	t�l�zL3>Df��0w�,���Cf��.J}���(%� 
�-��yqk*e��x�L6��O�� ���&�r��>/���[��D�,��@�1�$Zn��<3�7��*�e�@��@s��Rjl�G�K�=4KF���g��%���4Gc`�ƀ���2������qc��|���C�c��C��.���&��
c�b��UT�d�a����絽��jE�s�aS�~<�o��;��b�����x"�jތ
Ӄh`�Ű.A
+V����6iܙ#�B�([����a����u�ZܤI]���&$�Sc�xj�?B�i�<=׷�a���@'�r8@�w��ܮ�Z�����†�k&c��P�Kyڃl �s��q����#��/'6ǧ"�N/#��g�ɔSA�٨���!�%]LĂ��1U�\�
+@@l�%a`�(I��y�m�,<(X����z��v�#�:��2���%ƭS�=e^�V_Wڨ�s�%IŢ^�V���&�A��{GV{��P�"<U�7�ߡ�b��(�h>���dpr�� `��Ǖl��Y�ʜkZ_)�C�N��;��[����N�U�\5�>�>-�x���UgU�7�3�!�o�ʘG�NJc�p�Br4��OC�A-g��1K��w��~~�EF�rkp��컸�c�?�`�{�=�~��䲯4fEY��D�}��
�
��"�G8/Q��r7���1���s@��vn���z�h*K�>�O��I��Yo����b��/�l�8�M8�\�8x[&���O�����2�p�Eg����L0�s�t��u��5=
+endstream
+endobj
+11357 0 obj
+<<
+/Type /Page
+/Contents 11358 0 R
+/Resources 11356 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 10956 0 R
+/Annots [ 11262 0 R 11336 0 R 11337 0 R 11338 0 R 11339 0 R 11340 0 R 11341 0 R 11342 0 R 11343 0 R 11344 0 R 11345 0 R 11346 0 R 11347 0 R 11348 0 R 11349 0 R 11350 0 R 11351 0 R 11352 0 R 11353 0 R 11354 0 R 11355 0 R ]
+>>
+endobj
+11262 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 759.957 155.549 765.945]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11336 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 688.226 92.784 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_ac58916de16e381e40123bf9633a151ad) >>
+>>
+endobj
+11337 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 687.26 184.839 694.214]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+11338 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 687.26 348.027 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_ac58916de16e381e40123bf9633a151ad) >>
+>>
+endobj
+11339 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [350.218 687.26 406.607 694.214]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+11340 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 656.345 155.549 662.334]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11341 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 640.405 155.549 646.658]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11342 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 575.835 260.156 582.898]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_ae06629b296dcd9b01b6019101a020208) >>
+>>
+endobj
+11343 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 543.798 243.419 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+11344 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 503.947 172.286 510.902]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+11345 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 433.182 92.784 439.742]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aadc9c63027042e0e834b183698e964b9) >>
+>>
+endobj
+11346 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 432.216 272.709 439.436]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_parameter_aadc9c63027042e0e834b183698e964b9) >>
+>>
+endobj
+11347 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.901 400.336 293.631 407.862]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+11348 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 197.208 212.775 205.979]
+/A << /S /GoTo /D (_range_8cpp) >>
+>>
+endobj
+11349 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 188.348 168.101 195.874]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+11350 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 173.373 92.784 179.934]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a635b0935b69730c81232c9f26267e5ec) >>
+>>
+endobj
+11351 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 172.407 226.682 179.934]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11352 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 141.493 92.784 148.053]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a940f37a4449075b3d335deb546644df1) >>
+>>
+endobj
+11353 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 140.527 226.682 148.053]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11354 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 109.612 92.784 116.173]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_ae8c03e56fc933a95c0fec0d69b81da55) >>
+>>
+endobj
+11355 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 108.647 226.682 116.173]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11359 0 obj
+<<
+/D [11357 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+11360 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+11361 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+11362 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+11363 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+11364 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+11365 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+11366 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+11367 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+11368 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+5803 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+11369 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+11370 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+11371 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+11372 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+11373 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+11374 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+11375 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+11376 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+11377 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+11378 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+11379 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+11380 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+11381 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+11382 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+11383 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+11384 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+11385 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+11386 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+11387 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+11388 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+11389 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+11390 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+11391 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+11392 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+11393 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+11394 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+11395 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+11396 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+11397 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+11398 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+11399 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+5804 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+11400 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+11401 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+11402 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+11403 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+11404 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+11405 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+11406 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+3371 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 370.417 null]
+>>
+endobj
+2174 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 354.146 null]
+>>
+endobj
+6019 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 278.479 null]
+>>
+endobj
+2178 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 262.208 null]
+>>
+endobj
+11407 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+11408 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+6137 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+11409 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+11410 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+11411 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+6138 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+11412 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+11413 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+11414 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+6139 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+11415 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+11416 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+11417 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+11418 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+11419 0 obj
+<<
+/D [11357 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+11356 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11441 0 obj
+<<
+/Length 1217      
+/Filter /FlateDecode
+>>
+stream
+x��YKs�6��W�9t�I��
�Q|�4�$ӦSG=��L�[�LIڮ�I{A4Qʶ�C�H<���~X�\�'?,'��D%���9�s �'9��G`��Sߓd6�BN�V��l��4R�p����N�o�%�cR*��Q�<y���=A�t'XJOb
+����	k��@���T#/e�c���-x7�m��2
+��"��r��Z[!��S��159S����	8�5rm�H6���$��������6������Q���Ь�|�R�⪩���Pv4:˙�製۟�U���ƈ�?f�UQ.X���*�C#`_l�% �d$�QQ�84p�êȮ�Zӎ��k>ٗ'w�}aԉ6fc֪�(6��%�b�URė�i�eiV�{��J������+��g����6^k����H3�|^?d*#�'q��VE�&�<�#�p*w�.���6G巶C=����Iv��ݯ���f�E`^dqrq�V���`J���h�7�\�<�6Bl΂��<M�@9�.	v����a3�D(�:ltUa�m��t��X�D��vj��e&d�؄��*�V����jL�A{x>:�YY�հ��ID�kYuOz���i���F/�8v���*Q����X�����W��SϾ�U;�۔�9�[�B_@�njE��
+�K��Ϣ�*Kla�B��'�]dG�X���A(Wk������@��¿v�0M�bp���5@ߚ���A֠�E�tߤEݤE���e8�/�
+KE{PW��!x=�ą�8&s|g���OQ��90e�1�>�Dn� n<�+��7s;�L��&wOj��������ʮ����|��9��w%'�.��]$��f2��gqEG�����9ܤq�C���T�}�
���8>��!¹���@8pg�g�4�2���hб�K�q�F�~2h�O�=ﲂ;w!F��}@��|կU����Ŭݺ0�*��R�E�MZ#�<>N}0�G����cA|�ѳ[��ٮ�����ݧY_n�V"�)���%�pJΒ�%�>w	ޡ�=V�jo�]$ŞYA��i��5������:�V�1�ֆRߪp�]l�i�V�u͌ �k��S����|��;����R��#mN�����|ߕ��/zCк���uE�`����i�1�˗�������E�2���j��(��U��7����[��c:#p�ϭ�(��U��F�7
+endstream
+endobj
+11440 0 obj
+<<
+/Type /Page
+/Contents 11441 0 R
+/Resources 11439 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11523 0 R
+/Annots [ 11420 0 R 11421 0 R 11422 0 R 11423 0 R 11424 0 R 11425 0 R 11426 0 R 11427 0 R 11428 0 R 11429 0 R 11430 0 R 11431 0 R 11432 0 R 11433 0 R 11434 0 R 11435 0 R 11436 0 R ]
+>>
+endobj
+11420 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 664.315 92.784 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a280aacb2fb5b4ad22c866a83671967c5) >>
+>>
+endobj
+11421 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 663.349 230.866 670.876]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_ae371a8bd8d3c27d3e77b4e563084b19b) >>
+>>
+endobj
+11422 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 632.435 92.784 638.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_ad5847bdeceb2dcf632de0e7c0c3bc73f) >>
+>>
+endobj
+11423 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 631.469 297.815 638.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a65b2542daa4ce48d6738533e6e417ade) >>
+>>
+endobj
+11424 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 591.618 276.893 599.145]
+/A << /S /GoTo /D (namespace_s_o_i_l_a86cf6d407ececca2487dcbe521978d21) >>
+>>
+endobj
+11425 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 583.648 276.893 591.175]
+/A << /S /GoTo /D (namespace_s_o_i_l_a86cf6d407ececca2487dcbe521978d21) >>
+>>
+endobj
+11426 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 544.764 92.784 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a030f2f9b3f2e56f0e832956e069226d2) >>
+>>
+endobj
+11427 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 543.798 247.603 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a98473208bab6e8563fef085b9c71cd53) >>
+>>
+endobj
+11428 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 433.182 92.784 439.742]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11429 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 432.216 222.497 439.436]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11430 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 392.366 222.497 399.585]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11431 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 353.481 92.784 360.041]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_ae371a8bd8d3c27d3e77b4e563084b19b) >>
+>>
+endobj
+11432 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 352.515 226.682 359.734]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_ae371a8bd8d3c27d3e77b4e563084b19b) >>
+>>
+endobj
+11433 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 321.6 92.784 328.161]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a65b2542daa4ce48d6738533e6e417ade) >>
+>>
+endobj
+11434 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.109 320.635 293.631 328.161]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a65b2542daa4ce48d6738533e6e417ade) >>
+>>
+endobj
+11435 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 217.989 92.784 224.549]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a98473208bab6e8563fef085b9c71cd53) >>
+>>
+endobj
+11436 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 217.023 243.419 224.549]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a98473208bab6e8563fef085b9c71cd53) >>
+>>
+endobj
+11442 0 obj
+<<
+/D [11440 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+11443 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+11444 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+11445 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+11446 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+11447 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+11448 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+11449 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+11450 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+11451 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+11452 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+11453 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+11454 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+6140 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+11455 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+11456 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+11457 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+6195 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+11458 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+11459 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+11460 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+11461 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+11462 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+11463 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+11464 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+11465 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+11466 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+11467 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+6194 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+11468 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+11469 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+11470 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+11471 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+11472 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+11473 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+11474 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+11475 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+11476 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+11477 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+11478 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+11479 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+11480 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+6018 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+11481 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+11482 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+11483 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+11484 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+11485 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+11486 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+11487 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+11488 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+11489 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+6041 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+11490 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+11491 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+11492 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+6080 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+11493 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+11494 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+11495 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+11496 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+11497 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+11498 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+11499 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+11500 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+11501 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+11502 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+11503 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+11504 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+6042 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+11505 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+11506 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+11507 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+11508 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+11509 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+11510 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+11511 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+11512 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+11513 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+11514 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+11515 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+11516 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+11517 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+11518 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+11519 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+11520 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+11521 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+11522 0 obj
+<<
+/D [11440 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+11439 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11552 0 obj
+<<
+/Length 1224      
+/Filter /FlateDecode
+>>
+stream
+x��X�o�6~�_!�� 3MR$E:A�%邵��)-Gfbu��Yr�`����dK2�؅l�e�x���;ޑ�{�w��.�
/�8�^t�pƼP`��M�[C��]y�z�&��d&�r��,^�eZ��$K�h�<���CJzh��s�1��y���&�ݕ�4
+�=ɹGh�(	��̻��ڃu��x�0�u�X�Ab�+�\��T}!��|��Cח=�v� ��lfg��,j=�<l$o~����z�>�S�|���g�Q<��

+�GHa9�2[j4�F�gi^bZ�k���odz�T&�Y*�
B�Նj��r�e%k�נn�YT
+��X-����&���0�=7x@���S~.g2.��ŚvCN�hC����\��F��%E�HX98��v(_�1��&x��V��:���6�7�~-����R����TX
+�=��v����$�g����ߘ��E�o*�A�S�s���O�l!�{Έ�rK�9E��o�a]�RAHE�����ӿ���\��^Am�@�<���$�i1��h����V���Z�Y|ט��U{ѩ�h�Q�N��C����Y+ۿm�ËP[�L߽�BB�('
+W��k�u�k�̢ڐ2����.n,�_�-�c���d4���#Q9��� @ۏ�6�H9�D�䖻�M�\���U�?�]����+NJf!@y3��S����/W�ݴ�w�A ���B$�j���\�q|�'�4��V��:TjDE}����[m�OT]�8Mtw���v�Z�ЬS��Sۥ��F��VA��,����V-���+�$�O�
U	{U�7k�dU����V]غ'k�l������a>��*K�Vm�h��6�V�����8x5�ͦᘘɫa.ېc�����81s��P5���l{g��(�Ă6V�����nL�P��b6.��p��XT(r�O���Y��l�$m:v����sԵ-�j�6j;�c{�X&����#�����hz�Ͳ��`�����a�V@`}x1$<��m�m��K�sYtX��0���%�~�Q��
��.�:��AR�f_mj���ڧ�*u�`n�W�0M��:�g�S��S2O��D��� �ٟ�Mr�6&^0�.�~���,�ox��m����c��n?:��}݁��w���b�ھmش�N���CJ�!w���&8d�A)Tu�����¥L�r��L�{�/���[�~��/�e۝�1����?
+endstream
+endobj
+11551 0 obj
+<<
+/Type /Page
+/Contents 11552 0 R
+/Resources 11550 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11523 0 R
+/Annots [ 11437 0 R 11438 0 R 11524 0 R 11525 0 R 11526 0 R 11527 0 R 11528 0 R 11529 0 R 11530 0 R 11531 0 R 11532 0 R 11533 0 R 11534 0 R 11535 0 R 11536 0 R 11537 0 R 11538 0 R 11539 0 R 11540 0 R 11541 0 R 11542 0 R 11543 0 R 11544 0 R 11545 0 R 11546 0 R 11547 0 R ]
+>>
+endobj
+11437 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 758.991 243.419 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a98473208bab6e8563fef085b9c71cd53) >>
+>>
+endobj
+11438 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 759.957 314.552 766.21]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+11524 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [216.321 744.016 251.788 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum_aa02862d7713c094d7ae5819eab23765f) >>
+>>
+endobj
+11525 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 531.31 197.481 541.893]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11526 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 516.638 134.715 526.176]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11527 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 503.56 231.006 514.142]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4) >>
+>>
+endobj
+11528 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.392 488.888 158.157 498.425]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11529 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 475.809 218.399 486.392]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4) >>
+>>
+endobj
+11530 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 462.84 131.939 470.675]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+11531 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.19 461.137 157.956 470.675]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11532 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 397.191 166.042 405.962]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11533 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 300.819 212.775 309.59]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+11534 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 284.955 184.839 291.515]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+11535 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 276.019 197.392 283.545]
+/A << /S /GoTo /D (json__helpers_8h) >>
+>>
+endobj
+11536 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 268.049 168.101 275.575]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+11537 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 260.079 189.023 267.605]
+/A << /S /GoTo /D (_r_e_s_t_2_types_8h) >>
+>>
+endobj
+11538 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 245.104 155.549 251.358]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11539 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 221.194 92.784 227.754]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11540 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 220.228 159.733 227.182]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11541 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 148.497 151.364 155.451]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11542 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 132.557 151.364 139.511]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11543 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 116.617 151.364 123.571]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11544 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 100.676 155.549 107.631]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_ae371a8bd8d3c27d3e77b4e563084b19b) >>
+>>
+endobj
+11545 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 85.702 172.286 91.691]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11546 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 84.736 197.392 92.262]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a65b2542daa4ce48d6738533e6e417ade) >>
+>>
+endobj
+11547 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 69.762 172.286 76.322]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a98473208bab6e8563fef085b9c71cd53) >>
+>>
+endobj
+11553 0 obj
+<<
+/D [11551 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+11554 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+11555 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+11556 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+11557 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+11558 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+3372 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 729.072 null]
+>>
+endobj
+2182 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 712.728 null]
+>>
+endobj
+11559 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 572.446 null]
+>>
+endobj
+11560 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 436.516 null]
+>>
+endobj
+6017 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 372.201 null]
+>>
+endobj
+2186 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 365.457 null]
+>>
+endobj
+11561 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 301.999 null]
+>>
+endobj
+11562 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 294.029 null]
+>>
+endobj
+11563 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+11564 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+11565 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+11566 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+11567 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+11568 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+11569 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+6016 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+11570 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+11571 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+11572 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+11573 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+11574 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+11575 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+11576 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+11577 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+11578 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+11579 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+11580 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+11581 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+11582 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+11583 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+11584 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+11585 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+11586 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+11587 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+11588 0 obj
+<<
+/D [11551 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+11550 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11623 0 obj
+<<
+/Length 1279      
+/Filter /FlateDecode
+>>
+stream
+x��Z�r�6��)�2�L��B��u�$u�q��=��,�6[�tHڮ�i�� @�
@В�=آ�������+8G�����?`�0/�9���Q���Q��3�tz��#?`�w���A0L�w0��ݳ����y�1NP,���o�������d󘏝�bpz��;v��B�܋������y?�m����P/�J�������`��wB<�����G��PHͅ��,j������9�$�dq3�TI�TJ�������r+�7��@����n:��e�׈��'':�rAm��R��,�ʪH������N��B���"�S`�9Jg�>���9)��5�ސ�@0�P���J�<�W[��N��5���.�|�bS&���1���<�Z�!�;�Q�Q���ɶ���fwx��9�Z��
��W�]2���@r�R�t�V���ְ�do�6�}���q�k�y�B��O>����t�T����8�^'ӿZ�5Q5��Y��Nb})
w7��&鑹H�X9��)R~�"��3|���?�����Uu��F�.c�M��Fr��6~��ӤԄ�"��X:�(�;��UŊە���6�)����~0����&wk�Td�݋�1�[)�KJ�E�V]Q
+���4X����T�rx��ۓ(R�q����e�M�X]71٥n�կn�l�HTƏ��	S}a���p��Ș$f��L����d^
+՜ca�l��z:T�5ѵ	 ���-��-����`�U!����zT~,��`IA�����d4Q!��tt��V���	K
�9`H�yx���#��NN/U@o"x��o5��'Ћ6}�Z<
+�Q��76$�����҇O�o)l�������$}�k6�� ���Rd�7��^B�q$o"��p+BIC�w=h�@��j���Fm�f���m����[�
+�
3Fu]p��:��6��Er�E^��4P4MM��.�؋�oJx�*��<�����Fzd�V)_�qR�y������I�oL��R;�Ϫ�	�u�c>��Sc�3�L�᳂��5nz�k!��=�:�h3��t)�|R���D��"1k��fhE^�����e���s
+�VT����|ܐ��R�U��&r�ko��m1��Q$�m�Δ)Bcx�@=�6H�?��7|I&ij?��)`ߗ�Ѩ�W+��� $�9CjnE���ѻq�h��B�2>�
�6�eYo����YS�!�����x��M��/6@=?���.��!�Q�%��������|~���~h~L��E���w�
+endstream
+endobj
+11622 0 obj
+<<
+/Type /Page
+/Contents 11623 0 R
+/Resources 11621 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11523 0 R
+/Annots [ 11548 0 R 11549 0 R 11589 0 R 11590 0 R 11591 0 R 11592 0 R 11593 0 R 11594 0 R 11595 0 R 11596 0 R 11597 0 R 11598 0 R 11599 0 R 11600 0 R 11601 0 R 11602 0 R 11603 0 R 11604 0 R 11605 0 R 11606 0 R 11607 0 R 11608 0 R 11609 0 R 11610 0 R 11611 0 R 11612 0 R 11613 0 R 11614 0 R 11615 0 R 11616 0 R 11617 0 R 11618 0 R 11619 0 R 11620 0 R ]
+>>
+endobj
+11548 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 736.046 92.784 742.607]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4) >>
+>>
+endobj
+11549 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 735.08 176.47 742.035]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11589 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 679.29 151.364 686.244]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11590 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 671.32 151.364 678.274]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11591 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 663.349 151.364 670.304]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11592 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 655.379 155.549 662.334]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11593 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 648.375 172.286 654.364]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11594 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 608.525 92.784 615.085]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4) >>
+>>
+endobj
+11595 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 607.559 176.47 614.513]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+11596 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 608.525 197.392 614.513]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+11597 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 560.704 92.784 567.264]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_ab17c214a8c1af57e06e292b19ce1ae38) >>
+>>
+endobj
+11598 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 559.738 151.364 566.692]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_ab17c214a8c1af57e06e292b19ce1ae38) >>
+>>
+endobj
+11599 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 552.734 92.784 559.294]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_abd3d86c944aa61089231909a8d24e7f8) >>
+>>
+endobj
+11600 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 551.768 151.364 558.722]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_abd3d86c944aa61089231909a8d24e7f8) >>
+>>
+endobj
+11601 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 544.764 92.784 551.324]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_ac783001a590c29c1b9f128d3ad293c2c) >>
+>>
+endobj
+11602 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 543.798 155.549 550.752]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_ac783001a590c29c1b9f128d3ad293c2c) >>
+>>
+endobj
+11603 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 536.794 92.784 543.354]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_acb0783d3e05740740715a4fb8948a2d3) >>
+>>
+endobj
+11604 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 536.794 172.286 542.782]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11605 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 535.828 197.392 543.354]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_acb0783d3e05740740715a4fb8948a2d3) >>
+>>
+endobj
+11606 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 528.823 92.784 535.384]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_a4099d35a82c3b57745d3c4d0165f590b) >>
+>>
+endobj
+11607 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 528.823 172.286 535.384]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_a4099d35a82c3b57745d3c4d0165f590b) >>
+>>
+endobj
+11608 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 520.853 92.784 527.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_afd07b4bbc51b9b69f1ad8798fcc77fa6) >>
+>>
+endobj
+11609 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 520.853 172.286 527.414]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_afd07b4bbc51b9b69f1ad8798fcc77fa6) >>
+>>
+endobj
+11610 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 520.853 243.419 527.107]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_enum) >>
+>>
+endobj
+11611 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 488.007 176.47 494.961]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11612 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 449.122 92.784 455.683]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a97c8857f5b22eb87ca35c1c21a1bd814) >>
+>>
+endobj
+11613 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 448.156 176.47 455.111]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11614 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 409.272 92.784 415.832]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a7f49766e22783da9259eee242663581b) >>
+>>
+endobj
+11615 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 408.306 176.47 415.26]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) >>
+>>
+endobj
+11616 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 256.874 180.654 263.828]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_ae371a8bd8d3c27d3e77b4e563084b19b) >>
+>>
+endobj
+11617 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 217.989 155.549 223.978]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11618 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 217.023 222.497 224.549]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a65b2542daa4ce48d6738533e6e417ade) >>
+>>
+endobj
+11619 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 202.049 172.286 208.037]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+11620 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 113.412 197.392 120.938]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range_a98473208bab6e8563fef085b9c71cd53) >>
+>>
+endobj
+11624 0 obj
+<<
+/D [11622 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+11625 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+11626 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+11627 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+6136 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+11628 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+11629 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+11630 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+11631 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+11632 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+11633 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+11634 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+11635 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+11636 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+11637 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+11638 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+11639 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+11640 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+11641 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+11642 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+6084 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+11643 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+11644 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+11645 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+11646 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+11647 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+11648 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+11649 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+11650 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+11651 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+11652 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+11653 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+11654 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+11655 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+11656 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+11657 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+11658 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+11659 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+11660 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+11661 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+6020 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+11662 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+11663 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+11664 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+11665 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+6040 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+11666 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+11667 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+11668 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+11669 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+11670 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+11671 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+11672 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+11673 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+11674 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+11675 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+11676 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+11677 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+11678 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+11679 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+11680 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+11681 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+11682 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+11683 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+11684 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+11685 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+11686 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+11687 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+11688 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+11689 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+11690 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+11691 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+11692 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+11693 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+11694 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+11695 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+11696 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+11697 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+11698 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+11699 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+11700 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+11701 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+11702 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+11703 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+11704 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+11705 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+11706 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+11707 0 obj
+<<
+/D [11622 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+11621 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11725 0 obj
+<<
+/Length 1168      
+/Filter /FlateDecode
+>>
+stream
+xڭX[��F~���/��s�$U��F��&~�&��w�0��Ӎ�������Y�3�3�|�;�G������dq�<�A_
+V;�"�	\�@��*�3������r�2!7��(�q��o����bSDi��N~_M��`�|�y�#l����r��}��W��rF��|��=AM59�.��j
+Q�'B����rғ��ܜI	����	xp8Ch�yh���ǕT�Bs���6�l�9����,,�Y�:
5��6��Ȏ�f�ؕ ���٧�ܡ�;��yf�����>�ڇ��6�G3�:��֜��s�m��	Ia����s+��lN�l����.V�^1���p0ԬI�>�ͱt{&��"�K�+���!�9�(��� 46L�h�4�t���wVj��4dJ:���e�����B��Ղ/i��M��fQ�_�E%��,<ě�<^u~��1$�t�[~����`tK����5�$7w�6E����\Tϧ����P���D���I�^:
+�l����Sr�HT�a�M�F��긵�T)�8�
+�'a�l"
|���/���
�-�P;�z���s&At��V8/���(��^�bw�T�/��nK)����⨄OEx������4
+,Rp�J�ݦI^\@�Ӂ�toL�Щ;��Э��7���1�m0** ����za���嵧�a���q����tT�C�j[=MF#|�@��p�c��7IoJ��u���y�`^.i=�M�"]Gy���0	�`mv)���A��^*P
+.��zǵ%�Չ�c\�����S[�� F��?$��~s��IZ8'���$M�2ȹ��P�����^�����5�]-:.u��`�v�������Ǒ�:LG�tÈ�����]j\.����)vu���Nf��B�Sj�S|;[���M|{-�d�BJoP��?��Ƨ��5�����t�����$=uoX��7l�?X�7�+^���7F���[���6\Q�Y��O��ŎG��wY�o�:���9���w�3z�Q��AJ36����o&&n��,�
+�E92w(�*�n
w���'��6Z{���Ѐ+z�夥����s(K�5���5���L�T0� �L>���}���l-s��E�\}�nP�͞�=���Y�tu�$1��
+endstream
+endobj
+11724 0 obj
+<<
+/Type /Page
+/Contents 11725 0 R
+/Resources 11723 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11523 0 R
+/Annots [ 11708 0 R 11709 0 R 11710 0 R 11711 0 R 11712 0 R 11713 0 R 11714 0 R 11715 0 R 11716 0 R 11717 0 R 11718 0 R ]
+>>
+endobj
+11708 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 484.132 212.775 492.903]
+/A << /S /GoTo /D (_time_8cpp) >>
+>>
+endobj
+11709 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 476.238 163.917 482.798]
+/A << /S /GoTo /D (_time_8h) >>
+>>
+endobj
+11710 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 436.387 92.784 442.947]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a8b1d27ee800ce3dddeb38356c5edb86d) >>
+>>
+endobj
+11711 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 436.387 226.682 442.947]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a8b1d27ee800ce3dddeb38356c5edb86d) >>
+>>
+endobj
+11712 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 419.638 159.733 427.007]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) >>
+>>
+endobj
+11713 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 269.015 92.784 275.575]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a60eb480cb5dca0fbcd090b2e85e7ebaf) >>
+>>
+endobj
+11714 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 269.015 163.917 275.575]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a60eb480cb5dca0fbcd090b2e85e7ebaf) >>
+>>
+endobj
+11715 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 237.134 92.784 243.694]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a7e51f091b04752599a4086ea3b0856f4) >>
+>>
+endobj
+11716 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 237.134 163.917 243.694]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a60eb480cb5dca0fbcd090b2e85e7ebaf) >>
+>>
+endobj
+11717 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 117.582 92.784 124.143]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_ac84bbf33a7816b4502795d68a5e62486) >>
+>>
+endobj
+11718 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 117.582 163.917 124.143]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a60eb480cb5dca0fbcd090b2e85e7ebaf) >>
+>>
+endobj
+11726 0 obj
+<<
+/D [11724 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+11727 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+11728 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+11729 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+11730 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+11731 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+11732 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+11733 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+11734 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+11735 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+11736 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+11737 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+11738 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+3373 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 673.282 null]
+>>
+endobj
+2190 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 656.907 null]
+>>
+endobj
+3731 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 567.396 null]
+>>
+endobj
+2194 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 551.021 null]
+>>
+endobj
+11739 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 485.312 null]
+>>
+endobj
+11740 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 477.342 null]
+>>
+endobj
+11741 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 469.372 null]
+>>
+endobj
+11742 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 461.402 null]
+>>
+endobj
+11743 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 453.432 null]
+>>
+endobj
+6592 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 445.461 null]
+>>
+endobj
+11744 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 437.491 null]
+>>
+endobj
+11745 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 429.521 null]
+>>
+endobj
+11746 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 421.551 null]
+>>
+endobj
+11747 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 413.581 null]
+>>
+endobj
+11748 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 405.611 null]
+>>
+endobj
+11749 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 397.641 null]
+>>
+endobj
+11750 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 389.671 null]
+>>
+endobj
+11751 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 381.701 null]
+>>
+endobj
+11752 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 373.73 null]
+>>
+endobj
+11753 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 365.76 null]
+>>
+endobj
+11754 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 357.79 null]
+>>
+endobj
+11755 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 349.82 null]
+>>
+endobj
+11756 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 341.85 null]
+>>
+endobj
+11757 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 333.88 null]
+>>
+endobj
+11758 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 325.91 null]
+>>
+endobj
+11759 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 317.94 null]
+>>
+endobj
+11760 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 309.969 null]
+>>
+endobj
+11761 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 301.999 null]
+>>
+endobj
+11762 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 294.029 null]
+>>
+endobj
+11763 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+6564 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+11764 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+11765 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+11766 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+6565 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+11767 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+11768 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+11769 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+11770 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+11771 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+11772 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+11773 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+11774 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+11775 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+11776 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+11777 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+11778 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+11779 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+11780 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+6582 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+11781 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+11782 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+11783 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+11784 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+11785 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+11786 0 obj
+<<
+/D [11724 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+11723 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11803 0 obj
+<<
+/Length 1566      
+/Filter /FlateDecode
+>>
+stream
+x��Z[S�6~ϯp�a'���b�rx���Ng:��'�d�〇�Jm�v��^I�c'�A��l�ı�9�;�O�X�ޕ���o�_�3���R�M�F�FP�M��aXxp�C6<��<�C�,g�<�00&��[1���wg��H��Z�d0�{�|p~����΃�D̻�w�=?  ��<�y�?`mf%����R�QHX�p��l,�D�/�;?����Ï��8��qv�M��
P�"
zG���j���?�W���_櫴V�e�֝�QZ�%����>���-��K��s~gB\����@�A��qJ��lb���Nh��iQ�[e�z*��o��X��o�YR�2M�Ɍ'7|�ݦE���&�o�6Qh$E����dl)&��m�^/�2���I�/���S�x�i�ų��y#��Yf-*�f��b�_��@,b6�cN�;%��s�MM>W��q��͚��9�e�E��B]l	|)@\[�֦��_e�8-
+^����T;j��
+ի������>s.��2�La|c�L�H{�՗wel����Xd<恵�AYY+�	>F/���G'��T�̧�JYf�@t,tB�{���yH�g8�#0��|iS������lW����	��J\��#Q����(��	k7b�H��[͌JI?;��	��z�2^
+n
+�$�P�Eҥ���.��:${h�j�Ҭ��|:���;�k�6�TI�O��=?��\��Ro�w%�&exj�
+�=���^����5 �<�O��=�6�AbE��˴WKs!5�Q}	�:������0]�e�A��ʎ�3f\�/E�`T����L@d���I��Ԧ�F�`�ZN�#��S����gZĉZ�d;�ͼn1��[�w�H���Km���qǸIv��rg�Ɉ��d����vj2�����$��^�a��@�o�=��;�M�l"���a��n�po�/�4��O\ý�CGf��	�c�L����ޞ�̞�г��^��t/g�c��'�#�g�_���U6����N|�{tk���-
+̧�#�����|�UD3$�C�s	&�v�l�N.׉Խ�)R}��H�a�q~��
	����$Ƶ�u��7)@���;ANyѷ�=쁒��IP�6jIN�=~�)�{xػ�F̺�FQ���3�bY^�/��Fi���<��S��M��\G�Y|MO3��7��2�)��H�[���-|����v�h{�>!�|���>#B�0� GF	���fJ��:]fA��^e�^i���#� �╶������9d��-���"�[vP
+wP��/�K�g�䋴�/NO��S�&��]��o_�!�W��z�S)�MkZ��bO�=#����{7���Z�Ǐ
��K�����ۂ��y�0T�5��x�5��'(��m.@�}�J�tn	�>�@���!뉱z&_��d�Օ���v�PU�Е�0������2Tbd�*?�"�Z���"�Z��B�"��!�٨��ATE��mj�᪕�����@��V�8�~�U+?�T~hަ�b���^�<�px_�~��:8B2&��������
+endstream
+endobj
+11802 0 obj
+<<
+/Type /Page
+/Contents 11803 0 R
+/Resources 11801 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11523 0 R
+/Annots [ 11719 0 R 11720 0 R 11721 0 R 11722 0 R 11787 0 R 11788 0 R 11789 0 R 11790 0 R 11791 0 R 11792 0 R 11793 0 R 11794 0 R 11795 0 R 11796 0 R 11797 0 R 11798 0 R 11799 0 R 11800 0 R ]
+>>
+endobj
+11719 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 759.957 92.784 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5fe6292ab3b05d9107c6884dfbb5da16) >>
+>>
+endobj
+11720 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 759.957 168.101 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5fe6292ab3b05d9107c6884dfbb5da16) >>
+>>
+endobj
+11721 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 728.076 92.784 734.637]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_ae06629b296dcd9b01b6019101a020208) >>
+>>
+endobj
+11722 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 727.267 281.078 734.637]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_ae06629b296dcd9b01b6019101a020208) >>
+>>
+endobj
+11787 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 688.226 92.784 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_abf817530c975ea5bfce48be781a55993) >>
+>>
+endobj
+11788 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 688.226 297.815 694.786]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_abf817530c975ea5bfce48be781a55993) >>
+>>
+endobj
+11789 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 257.84 92.784 264.4]
+/A << /S /GoTo /D (namespace_s_o_i_l_adc8de2e2651ccc2e7c03e8289cd64c2b) >>
+>>
+endobj
+11790 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 256.874 184.839 264.093]
+/A << /S /GoTo /D (namespace_s_o_i_l_adc8de2e2651ccc2e7c03e8289cd64c2b) >>
+>>
+endobj
+11791 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 257.84 255.972 264.4]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11792 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [308.375 257.84 352.211 264.4]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11793 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 241.09 172.286 248.46]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) >>
+>>
+endobj
+11794 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 241.09 239.235 248.46]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) >>
+>>
+endobj
+11795 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 162.198 92.784 168.759]
+/A << /S /GoTo /D (namespace_s_o_i_l_a3b4ec3441b90255cca35259c5e4a9321) >>
+>>
+endobj
+11796 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 161.232 184.839 168.452]
+/A << /S /GoTo /D (namespace_s_o_i_l_a3b4ec3441b90255cca35259c5e4a9321) >>
+>>
+endobj
+11797 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 162.198 255.972 168.759]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11798 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [308.375 162.198 352.211 168.759]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11799 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 145.449 172.286 152.818]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) >>
+>>
+endobj
+11800 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 145.449 239.235 152.818]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) >>
+>>
+endobj
+11804 0 obj
+<<
+/D [11802 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+6583 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+11805 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+11806 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+11807 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+6612 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+11808 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+11809 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+11810 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+11811 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+6593 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+11812 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+11813 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+11814 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+11815 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+11816 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+11817 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+11818 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+11819 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+11820 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+11821 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+11822 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+11823 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+11824 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+11825 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+11826 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+11827 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+11828 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+11829 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+11830 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+11831 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+11832 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+11833 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+11834 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+11835 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+11836 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+11837 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+11838 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+11839 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+11840 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+11841 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+11842 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+11843 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+11844 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+11845 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+11846 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+11847 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+11848 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+11849 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+11850 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+11851 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+11852 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+11853 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+11854 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+11855 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+11856 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+11857 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+11858 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+11859 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+11860 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+11861 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+11862 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+11863 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+11864 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+3732 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+11865 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+11866 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+11867 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+11868 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+11869 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+11870 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+11871 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+11872 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+11873 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+11874 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+11875 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+3730 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+11876 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+11877 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+11878 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+11879 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+11880 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+11881 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+11882 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+11883 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+11884 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+11885 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+3374 0 obj
+<<
+/D [11802 0 R /XYZ 70.866 82.834 null]
+>>
+endobj
+11801 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11926 0 obj
+<<
+/Length 1378      
+/Filter /FlateDecode
+>>
+stream
+x��Y]o�H}��@�Tai=�o7��n��U�U[�%UD1q�0x��V�߾3؀7I�U��x����9w�������O�S�Z.�kzm9��[���#k:�.l�����E�=B�\��O�(����/�����$VS/���H΄Z�t]�bj����h��ז�(\듞��(#�Q"�#������`"B���#�+���p� �v�1����7����p��B��7���C� 
b?P�ǧ�ZBҁ�r��	^xx�~����\:y�'q�{q���'�"9! kM׆1��;u��K.���PQM��$Y>�yyp��݌�I~n_�����
+S��*S'_#9��},�Q�{��aZ�&4�46����5��ҧ��G�eY��`��d|JH-�����ry��c�Xb]�㶯��7TĦ�2t��)*PT M&:�����ǧ�B�p�`!7�(�(e�e�Öw�)#B*.(�t����@�����~�vr����0"y|�婝��8T�&"֟��U������&yB�!4D�$Y��:^���3� �֡h l��6.��2���p:��Y�~+�:nc�k	5p�)��˷�I0İS��B�.�F������:��:P��e�:s�MQeQ��a3����{����M�
�J��9a6,��X֠*[�8�u������QƔD
K�S͊,y�a�A7G
+U[�t�z�W�I���r�v��B:�k��>����1��������=�}�>/UZ�VK����n���j�VM�v��_��m/@��ڌ���Xox�@�N[�ɰ���ꁛ��n���e��phw7�EKٵ���uo�j�������U=7�A��M�c��*�Y>�lbV^�:�)��J���l��>��>F�ߏR��O!���d��iϻs���^����-?�DD�}��3����������a^����i�W��åcf�}]�%�o�hta����Hv�X\���?�k��Q�̍jGa���}3
7%��=��N>?ک��ີ����4ޑY��W����TP���Q�-:;̂��$�Y�
+��˙������$��N��� 2�=��E�Tw�˕|��QOw��U�_�ɧ�;Fύ)�;��ы���:
�����g�E'��^�twr��etC"9��=+CS>�~C��&W��� $�*�z��+{��+��q�c�|���U���8�w�/=ٝ�� 
�(�;�9jDi����>3��W/�?/=j�nJ3�و��C��>�|vqh�{Z�5}e@��Z}��;��7��Q������i+-T�ү��Wл�+�@���\�������_�f��
+endstream
+endobj
+11925 0 obj
+<<
+/Type /Page
+/Contents 11926 0 R
+/Resources 11924 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11523 0 R
+/Annots [ 11886 0 R 11887 0 R 11888 0 R 11889 0 R 11890 0 R 11891 0 R 11892 0 R 11893 0 R 11894 0 R 11895 0 R 11896 0 R 11897 0 R 11898 0 R 11899 0 R 11900 0 R 11901 0 R 11902 0 R 11903 0 R 11904 0 R 11905 0 R 11906 0 R 11907 0 R 11908 0 R 11909 0 R 11910 0 R 11911 0 R 11912 0 R 11913 0 R 11914 0 R 11915 0 R 11916 0 R 11917 0 R 11918 0 R 11919 0 R 11920 0 R 11921 0 R 11922 0 R 11923 0 R ]
+>>
+endobj
+11886 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 641.467 165.029 650.238]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11887 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 627.286 129.333 635.379]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11888 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.583 627.358 149.507 635.193]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11889 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 573.914 166.042 582.685]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11890 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.152 504.659 206.849 515.133]
+/A << /S /GoTo /D (namespace_s_o_i_l_adc8de2e2651ccc2e7c03e8289cd64c2b) >>
+>>
+endobj
+11891 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.132 492.254 149.055 500.089]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11892 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.152 478.252 206.849 488.727]
+/A << /S /GoTo /D (namespace_s_o_i_l_a3b4ec3441b90255cca35259c5e4a9321) >>
+>>
+endobj
+11893 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.34 465.848 147.263 473.682]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11894 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 396.461 212.775 405.232]
+/A << /S /GoTo /D (_time_8h) >>
+>>
+endobj
+11895 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 380.596 184.839 387.157]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+11896 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 356.686 155.549 362.939]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11897 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 340.746 92.784 347.306]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11898 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 340.746 155.549 347.306]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11899 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [195.399 284.955 226.682 291.515]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a8b1d27ee800ce3dddeb38356c5edb86d) >>
+>>
+endobj
+11900 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 269.015 163.917 275.575]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a60eb480cb5dca0fbcd090b2e85e7ebaf) >>
+>>
+endobj
+11901 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 253.074 163.917 259.635]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a60eb480cb5dca0fbcd090b2e85e7ebaf) >>
+>>
+endobj
+11902 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 237.134 163.917 243.694]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a60eb480cb5dca0fbcd090b2e85e7ebaf) >>
+>>
+endobj
+11903 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 221.194 168.101 227.754]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5fe6292ab3b05d9107c6884dfbb5da16) >>
+>>
+endobj
+11904 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 205.254 92.784 211.814]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) >>
+>>
+endobj
+11905 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 204.445 209.944 211.814]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) >>
+>>
+endobj
+11906 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 189.313 92.784 195.874]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a78fdd7cac3e6ce1141080c35efd5f95f) >>
+>>
+endobj
+11907 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 188.505 214.129 195.874]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a78fdd7cac3e6ce1141080c35efd5f95f) >>
+>>
+endobj
+11908 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.269 172.564 314.552 179.362]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_ae06629b296dcd9b01b6019101a020208) >>
+>>
+endobj
+11909 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 157.433 92.784 163.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_abe58e5fa4fc2cb986785a751fa6807aa) >>
+>>
+endobj
+11910 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 156.467 243.419 163.422]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_abe58e5fa4fc2cb986785a751fa6807aa) >>
+>>
+endobj
+11911 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 157.433 289.446 163.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11912 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [337.665 157.433 356.395 163.993]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11913 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 141.493 92.784 148.053]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a155e5f5e05694a584161bcc064d57eda) >>
+>>
+endobj
+11914 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.583 140.527 243.419 147.481]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_a155e5f5e05694a584161bcc064d57eda) >>
+>>
+endobj
+11915 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 141.493 289.446 148.053]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11916 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [337.665 141.493 356.395 148.053]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11917 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [258.164 125.553 297.815 132.113]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_abf817530c975ea5bfce48be781a55993) >>
+>>
+endobj
+11918 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 100.676 193.207 107.631]
+/A << /S /GoTo /D (namespace_s_o_i_l_adc8de2e2651ccc2e7c03e8289cd64c2b) >>
+>>
+endobj
+11919 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.505 101.642 239.235 108.203]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11920 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.454 101.642 306.184 108.203]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11921 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 76.766 193.207 83.72]
+/A << /S /GoTo /D (namespace_s_o_i_l_a3b4ec3441b90255cca35259c5e4a9321) >>
+>>
+endobj
+11922 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [220.505 77.732 239.235 84.292]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11923 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.454 77.732 306.184 84.292]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+11927 0 obj
+<<
+/D [11925 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2198 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+11928 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 675.005 null]
+>>
+endobj
+11929 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 607.453 null]
+>>
+endobj
+11930 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 539.9 null]
+>>
+endobj
+6563 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 458.998 null]
+>>
+endobj
+2202 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 449.526 null]
+>>
+endobj
+11931 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 397.641 null]
+>>
+endobj
+11932 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 389.671 null]
+>>
+endobj
+11933 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 381.701 null]
+>>
+endobj
+11934 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 373.73 null]
+>>
+endobj
+11935 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 365.76 null]
+>>
+endobj
+11936 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 357.79 null]
+>>
+endobj
+6562 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 349.82 null]
+>>
+endobj
+11937 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 341.85 null]
+>>
+endobj
+11938 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 333.88 null]
+>>
+endobj
+11939 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 325.91 null]
+>>
+endobj
+11940 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 317.94 null]
+>>
+endobj
+11941 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 309.969 null]
+>>
+endobj
+11942 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 301.999 null]
+>>
+endobj
+11943 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 294.029 null]
+>>
+endobj
+11944 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+11945 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+11946 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+11947 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+11948 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+11949 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+11950 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+11951 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+11952 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+6584 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+11953 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+6611 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+11954 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+11955 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+11956 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+11957 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+11958 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+11959 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+11960 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+11961 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+11962 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+11963 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+11964 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+11965 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+11966 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+11967 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+11968 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+3375 0 obj
+<<
+/D [11925 0 R /XYZ 70.866 70.099 null]
+>>
+endobj
+11924 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+11985 0 obj
+<<
+/Length 816       
+/Filter /FlateDecode
+>>
+stream
+x��V�n�@���tc�f|�mGUMMԦM��!Y8�W`Sl�����؀�$N����}��@c���t����})
+��I��O�$(���c��TyN��Rp"w����t%8�y��h>��{�4�����K��q�W��������C4�@d���G9�f�����v��3�C�K��a��>OѠsՁ� �>!b;
+I04� ���qh�nOp�MI*�#@�L`	��x���t9��R�9
+J��#�؄�5����kt�B�d�L-�e�}0c[Yہ��,��~N�pFY���iI��W�C-���t@u�D8��ny.C��W̫|*��zԸ�Xi,L�<�C�(A7�h�hX����j������VC�#�+Lɦ4�Ҹ1�Ixo���	p޾LnJӸu��
+����W�����/��/��ۖM��y�E=a�8!���a���46�n'|���H�x�N�:L�q;�^2^.�d�18�_��d�G��%�'m�]��cy?M��ɤt+�z{)���
+~8�n��k��,�7���ERLfn^,�t��̒Ol��8 ��Dm��f��V�/e�)��T��|+z:
�<�w*�1+���SF_�i�uK�h��B:���d[��o���䦫L���iZ��~`�j �a��0外�D�zo{�z��{�6[��ܟ��`�iƙ�����PK����(�1n�f�9X�Ͻ�1���� �5}��|F�Hy>sim���=��3�b�&/6Gz$U+&6�#M̆���ȡ�yͅ��(JL��[�D��l�^��!a�,�2c+{��u�-�q56#߉�]��ɜ�a
+endstream
+endobj
+11984 0 obj
+<<
+/Type /Page
+/Contents 11985 0 R
+/Resources 11983 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11993 0 R
+/Annots [ 11969 0 R 11970 0 R 11971 0 R 11972 0 R 11973 0 R 11974 0 R 11975 0 R ]
+>>
+endobj
+11969 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 629.503 212.775 638.274]
+/A << /S /GoTo /D (_types_8cpp) >>
+>>
+endobj
+11970 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 620.643 168.101 628.169]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+11971 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 443.944 212.775 452.715]
+/A << /S /GoTo /D (_variable_8cpp) >>
+>>
+endobj
+11972 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 436.05 180.654 442.61]
+/A << /S /GoTo /D (_variable_8h) >>
+>>
+endobj
+11973 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 165.028 221.143 175.503]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+11974 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 151.879 139.936 159.714]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+11975 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 84.914 166.042 93.685]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11986 0 obj
+<<
+/D [11984 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2206 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+11987 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 713.5 null]
+>>
+endobj
+2210 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 697.087 null]
+>>
+endobj
+11988 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 630.683 null]
+>>
+endobj
+3377 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 621.639 null]
+>>
+endobj
+2214 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 605.226 null]
+>>
+endobj
+11989 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 527.941 null]
+>>
+endobj
+2218 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 511.528 null]
+>>
+endobj
+11990 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 445.124 null]
+>>
+endobj
+3378 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 436.931 null]
+>>
+endobj
+2222 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 420.518 null]
+>>
+endobj
+11991 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 206.68 null]
+>>
+endobj
+11992 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 124.862 null]
+>>
+endobj
+6756 0 obj
+<<
+/D [11984 0 R /XYZ 70.866 59.489 null]
+>>
+endobj
+11983 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12077 0 obj
+<<
+/Length 1750      
+/Filter /FlateDecode
+>>
+stream
+x��Z�s�8~�_��fn�L�%~åy��&M�����/i'C@��` ��z:���l@�h!��܋m�,}��jWZ-�V��g�/g�3Y�t�PU�[�rtU�4CT�-��>��|�I��$���Y����������� ?�7�Ӯ�g���➀�吺.��ٛ��G�9���h���熓IPd	����������`@��T��
+��`(�c����U�[�k��!�3���8�*Z��ޝ��%��K���{1��{���T�Κ�ۢ��_���P�|v"��L�9U04I�����K� �-()G:�������`��ձ�E�%���ƚg�o��t�	�����mDfx��%��8��$.g���
�4��.D#��'��C�э��*���#�+��Q4.��d��Y�
+�V�왻�F#��'C{yq�zq�F�cZ�ϭx=2d&����r�x�����Q�C}rq���U��z�����W�O���0<�>Z�f�y�ՠ\����i�~����šU�4^��]����Q�R�ʠ���^�	=+�Ep���|�CY*��ˣ\y��D�P{զ����І�Bd|J���x#�j#���y�YX�`ög�1���g�H�ʨ�o_a�m���3�Mğ`�����)ݴ�9���$�� Av��:�>�̪��Sd<_�8�I|@�?#˴������R�P{�v���<��֏�x�����v#]�X�TY���~ʐ�����|9�����}j��tk
+�Y�1��%[˫"�D��a[[�F�(`��j�GF�tjt��l�?5�q(F͍!ћe/���uU�qX�
[�L��� �	/z�\�It��z\@��7��/Df���6�:e+0`�D�PA���
�<ϏH�?�vv��v�����#��in������<iB�9;#�,O}Oڻ�Yr�LWV��ūgl�w3_e�6�@h��8?�>���a��м�j�����y�:?5j��3�4�h�(�;�[���qhL��KYk�!�8�V����	[&x4.p�Q���U(�����s�!�_{�9D��]󊸔-i[�#�y`St�Ii0�{��"�/���_�zx~�\�1�q��o�?�M5޶�?�ܣ(r�s$Ttj�&1���!V>com����W(鲱ff���n�bj�j���Z�ʒ�X��&
?�6��b
+r5��ֵ��
�?B��n���T���a˔�\��Q~:V�Y�8�)C9���⚁��zˋ�i�&F�u{�{�N�sl'�~$�Ƽ�����rov	�81&Jt�F��DE} �J�(�t�eD�pw��lz�k��&�t^�E�����/�El4��x��b��0jޕ
��]ՠ6k��jB�4�k������1w��N��m�[��+�u�u�������ٍD���V2��om\�:��Qtm[q����%��(�n�P��}�
+�S)��ʬ!��&<�ش�K��?-{0Ͳ�!_�a�<��]W������Ti,������[ˋ�c�����[�{�ެқ5����No6��'�3�d8
+��K�,�#�F�CHPd/g1͎����A"���.�m�R�0${�	�֩|�F�@=����z�hp��<�5-��HzɂR����J�7;*B�“T��h�(�E'*�3^c�JA�L�i�6�*�J��sEp�!��Eɹ*��*�ڲ"�"�oAU��p��tG��z��Ŭ����%��n�V��ȯc��9�
+endstream
+endobj
+12076 0 obj
+<<
+/Type /Page
+/Contents 12077 0 R
+/Resources 12075 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11993 0 R
+/Annots [ 11976 0 R 11977 0 R 11978 0 R 11979 0 R 11980 0 R 11981 0 R 11982 0 R 11994 0 R 11995 0 R 11996 0 R 11997 0 R 11998 0 R 11999 0 R 12000 0 R 12001 0 R 12002 0 R 12003 0 R 12004 0 R 12005 0 R 12006 0 R 12007 0 R 12008 0 R 12009 0 R 12010 0 R 12011 0 R 12012 0 R 12013 0 R 12014 0 R 12015 0 R 12016 0 R 12017 0 R 12018 0 R 12019 0 R 12020 0 R 12021 0 R 12022 0 R 12023 0 R 12024 0 R 12025 0 R 12026 0 R 12027 0 R 12028 0 R 12029 0 R 12030 0 R 12031 0 R 12032 0 R 12033 0 R 12034 0 R 12035 0 R 12036 0 R 12037 0 R 12038 0 R 12039 0 R 12040 0 R 12041 0 R 12042 0 R 12043 0 R 12044 0 R 12045 0 R 12046 0 R 12047 0 R 12048 0 R 12049 0 R 12050 0 R 12051 0 R 12052 0 R 12053 0 R 12054 0 R 12055 0 R 12056 0 R 12057 0 R 12058 0 R 12059 0 R 12060 0 R 12061 0 R 12062 0 R 12063 0 R 12064 0 R 12065 0 R 12066 0 R 12067 0 R 12068 0 R 12069 0 R 12070 0 R 12071 0 R 12072 0 R 12073 0 R ]
+>>
+endobj
+11976 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 724.275 212.775 733.046]
+/A << /S /GoTo /D (_variable_8h) >>
+>>
+endobj
+11977 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 708.41 184.839 714.971]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+11978 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 699.475 168.101 707.001]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+11979 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 692.47 176.47 699.031]
+/A << /S /GoTo /D (_element_8h) >>
+>>
+endobj
+11980 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 684.5 184.839 691.06]
+/A << /S /GoTo /D (_container_8h) >>
+>>
+endobj
+11981 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 675.564 168.101 683.09]
+/A << /S /GoTo /D (_range_8h) >>
+>>
+endobj
+11982 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 667.594 172.286 675.12]
+/A << /S /GoTo /D (_figure_8h) >>
+>>
+endobj
+11994 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 659.624 193.207 667.15]
+/A << /S /GoTo /D (_signer_8h) >>
+>>
+endobj
+11995 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 652.177 193.207 659.18]
+/A << /S /GoTo /D (_hasher_8h) >>
+>>
+endobj
+11996 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 643.841 205.76 651.21]
+/A << /S /GoTo /D (_publisher_8h) >>
+>>
+endobj
+11997 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 612.769 155.549 619.023]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+11998 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 588.859 92.784 595.419]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+11999 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 588.859 172.286 595.419]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+12000 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 587.893 239.235 595.419]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+12001 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 556.978 92.784 563.539]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a159b3f2994697e91aeaef8649376aee3) >>
+>>
+endobj
+12002 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 556.978 201.576 562.119]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a159b3f2994697e91aeaef8649376aee3) >>
+>>
+endobj
+12003 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 541.038 92.784 547.598]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ae5349b85d820a6204f44af04b528f6a9) >>
+>>
+endobj
+12004 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [241.426 541.038 260.156 547.598]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ae5349b85d820a6204f44af04b528f6a9) >>
+>>
+endobj
+12005 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 525.098 92.784 531.658]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_abaafa5ebe21c155fc27800d22275d639) >>
+>>
+endobj
+12006 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 524.439 205.76 531.658]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+12007 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 525.098 255.972 531.658]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_abaafa5ebe21c155fc27800d22275d639) >>
+>>
+endobj
+12008 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 509.158 201.576 515.718]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a95274da091367dba743e0cf0052b4dd7) >>
+>>
+endobj
+12009 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 493.217 205.76 499.778]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a9b112a792be9ae8647bc58fd4e28c5bb) >>
+>>
+endobj
+12010 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 469.307 163.917 475.867]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a42d3242d0f2619bbedbe54473e5bde05) >>
+>>
+endobj
+12011 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [270.717 468.341 297.815 475.296]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+12012 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [354.403 469.307 373.132 475.867]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+12013 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [429.72 469.307 448.45 474.448]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+12014 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 460.371 147.18 467.897]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+12015 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 461.337 222.497 467.897]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+12016 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [279.085 460.371 314.552 467.897]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+12017 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [341.85 460.371 377.317 467.325]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+12018 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [379.508 460.371 402.423 466.478]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+12019 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [412.983 460.371 448.45 467.325]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+12020 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [463.195 461.445 481.924 467.325]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+12021 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [484.116 461.337 502.846 467.897]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+12022 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 453.475 117.89 459.355]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+12023 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 453.367 205.76 458.508]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a159b3f2994697e91aeaef8649376aee3) >>
+>>
+endobj
+12024 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 437.427 168.101 443.987]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_abb8683a103f7eed6be691c6057312baa) >>
+>>
+endobj
+12025 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [266.532 421.486 293.631 427.475]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a421f6aeaee92e362e455edcbe6b58231) >>
+>>
+endobj
+12026 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [400.43 420.521 427.528 427.475]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) >>
+>>
+endobj
+12027 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [484.116 421.486 502.846 428.047]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+12028 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 413.516 168.101 418.657]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) >>
+>>
+endobj
+12029 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 412.55 272.709 420.077]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) >>
+>>
+endobj
+12030 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [329.297 413.516 348.027 420.077]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) >>
+>>
+endobj
+12031 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.614 412.55 440.081 420.077]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) >>
+>>
+endobj
+12032 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [467.379 412.55 502.846 419.505]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+12033 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 404.58 122.074 410.687]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) >>
+>>
+endobj
+12034 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 404.58 168.101 411.535]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+12035 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 405.654 201.576 411.535]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+12036 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 405.546 222.497 412.107]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+12037 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [233.058 405.654 251.788 411.535]
+/A << /S /GoTo /D (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) >>
+>>
+endobj
+12038 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [316.744 405.546 339.658 410.687]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a159b3f2994697e91aeaef8649376aee3) >>
+>>
+endobj
+12039 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 388.64 201.576 396.166]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+12040 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 388.64 251.788 395.594]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a85828d5d8162aff4c496c782a432b55d) >>
+>>
+endobj
+12041 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [279.085 388.64 356.395 396.166]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+12042 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [362.771 389.606 385.685 396.166]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+12043 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 373.666 172.286 379.654]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+12044 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 372.7 197.392 380.226]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a37198446b18018989419984f3ec82c68) >>
+>>
+endobj
+12045 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 356.76 189.023 363.714]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+12046 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 356.76 235.05 364.286]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a10c29b035a567af07850dd1f27e218fe) >>
+>>
+endobj
+12047 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 356.76 293.631 363.714]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+12048 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 340.819 189.023 347.774]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+12049 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 340.819 251.788 348.346]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a62d80e5cd14d377d3bea90e6332b0b72) >>
+>>
+endobj
+12050 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 340.819 310.368 347.774]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+12051 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 316.909 176.47 324.435]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ab1c36ffeef15739332ebd39c3c63184e) >>
+>>
+endobj
+12052 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [203.768 316.909 281.078 324.435]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+12053 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [287.454 317.875 310.368 324.435]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) >>
+>>
+endobj
+12054 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [316.744 317.983 335.474 323.863]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+12055 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [337.665 317.875 356.395 324.435]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) >>
+>>
+endobj
+12056 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [412.983 317.875 435.897 323.016]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a159b3f2994697e91aeaef8649376aee3) >>
+>>
+endobj
+12057 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 301.126 209.944 308.495]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a2bdfc0ecf346e6544ba897f86a5fa1e4) >>
+>>
+endobj
+12058 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 301.276 289.446 308.495]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+12059 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [295.822 301.935 339.658 308.495]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_abaafa5ebe21c155fc27800d22275d639) >>
+>>
+endobj
+12060 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 285.029 268.525 292.555]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ab7eac644327edcff9e211b45e1905d2a) >>
+>>
+endobj
+12061 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 270.054 272.709 276.615]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a04574823a93f387d4d1aaa4a7087f22e) >>
+>>
+endobj
+12062 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 253.148 264.34 260.674]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_adf66dfb35361158c8c05cc5ed81bd247) >>
+>>
+endobj
+12063 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [245.611 237.208 293.631 244.734]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_aaeba9a89d6c0b950246fff61ac221fa7) >>
+>>
+endobj
+12064 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 214.264 92.784 220.824]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a22c13c0c69fca4f40a3b25285e746e06) >>
+>>
+endobj
+12065 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [266.532 213.298 281.078 220.252]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a22c13c0c69fca4f40a3b25285e746e06) >>
+>>
+endobj
+12066 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [325.113 198.323 381.501 204.884]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) >>
+>>
+endobj
+12067 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.372 173.447 168.101 180.401]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a8ef20bb80d404cba203ebe64a9c3296f) >>
+>>
+endobj
+12068 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 102.682 92.784 109.242]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a42d3242d0f2619bbedbe54473e5bde05) >>
+>>
+endobj
+12069 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 101.716 235.05 109.242]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a42d3242d0f2619bbedbe54473e5bde05) >>
+>>
+endobj
+12070 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.14 93.746 406.607 100.7]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+12071 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [438.089 94.82 456.819 100.7]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+12072 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 86.742 205.76 92.995]
+/A << /S /GoTo /D (namespace_s_o_i_l) >>
+>>
+endobj
+12073 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [212.136 85.776 239.235 93.302]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+12078 0 obj
+<<
+/D [12076 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2226 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+12079 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 725.455 null]
+>>
+endobj
+12080 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 717.485 null]
+>>
+endobj
+12081 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 709.515 null]
+>>
+endobj
+12082 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 701.545 null]
+>>
+endobj
+12083 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 693.575 null]
+>>
+endobj
+12084 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 685.604 null]
+>>
+endobj
+12085 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 677.634 null]
+>>
+endobj
+12086 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 669.664 null]
+>>
+endobj
+12087 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 661.694 null]
+>>
+endobj
+12088 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 653.724 null]
+>>
+endobj
+12089 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 645.754 null]
+>>
+endobj
+12090 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 637.784 null]
+>>
+endobj
+12091 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 629.814 null]
+>>
+endobj
+12092 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 621.844 null]
+>>
+endobj
+12093 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 613.873 null]
+>>
+endobj
+12094 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 605.903 null]
+>>
+endobj
+6755 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 597.933 null]
+>>
+endobj
+12095 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 589.963 null]
+>>
+endobj
+12096 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 581.993 null]
+>>
+endobj
+12097 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 574.023 null]
+>>
+endobj
+6963 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 566.053 null]
+>>
+endobj
+12098 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 558.083 null]
+>>
+endobj
+6962 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 550.113 null]
+>>
+endobj
+12099 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 542.142 null]
+>>
+endobj
+6961 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 534.172 null]
+>>
+endobj
+12100 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 526.202 null]
+>>
+endobj
+12101 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 518.232 null]
+>>
+endobj
+12102 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 510.262 null]
+>>
+endobj
+12103 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 502.292 null]
+>>
+endobj
+12104 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 494.322 null]
+>>
+endobj
+12105 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 486.352 null]
+>>
+endobj
+12106 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 478.382 null]
+>>
+endobj
+12107 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 454.471 null]
+>>
+endobj
+12108 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 446.501 null]
+>>
+endobj
+12109 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 438.531 null]
+>>
+endobj
+12110 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 430.561 null]
+>>
+endobj
+12111 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 406.651 null]
+>>
+endobj
+12112 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 398.68 null]
+>>
+endobj
+12113 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 390.71 null]
+>>
+endobj
+12114 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 382.74 null]
+>>
+endobj
+12115 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 374.77 null]
+>>
+endobj
+12116 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 366.8 null]
+>>
+endobj
+12117 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 358.83 null]
+>>
+endobj
+12118 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 350.86 null]
+>>
+endobj
+12119 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 334.92 null]
+>>
+endobj
+12120 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 326.949 null]
+>>
+endobj
+12121 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 318.979 null]
+>>
+endobj
+12122 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 311.009 null]
+>>
+endobj
+12123 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 303.039 null]
+>>
+endobj
+12124 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 295.069 null]
+>>
+endobj
+12125 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 287.099 null]
+>>
+endobj
+12126 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 279.129 null]
+>>
+endobj
+12127 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 271.159 null]
+>>
+endobj
+12128 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 263.189 null]
+>>
+endobj
+12129 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 255.218 null]
+>>
+endobj
+12130 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 247.248 null]
+>>
+endobj
+12131 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 239.278 null]
+>>
+endobj
+12132 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 231.308 null]
+>>
+endobj
+6893 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 223.338 null]
+>>
+endobj
+12133 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 215.368 null]
+>>
+endobj
+12134 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 207.398 null]
+>>
+endobj
+12135 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 199.428 null]
+>>
+endobj
+12136 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 191.458 null]
+>>
+endobj
+12137 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 183.487 null]
+>>
+endobj
+12138 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 175.517 null]
+>>
+endobj
+12139 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 167.547 null]
+>>
+endobj
+12140 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 159.577 null]
+>>
+endobj
+12141 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 151.607 null]
+>>
+endobj
+12142 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 143.637 null]
+>>
+endobj
+12143 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 135.667 null]
+>>
+endobj
+12144 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 127.697 null]
+>>
+endobj
+12145 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 119.727 null]
+>>
+endobj
+6770 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 111.756 null]
+>>
+endobj
+12146 0 obj
+<<
+/D [12076 0 R /XYZ 70.866 79.876 null]
+>>
+endobj
+12075 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12188 0 obj
+<<
+/Length 1814      
+/Filter /FlateDecode
+>>
+stream
+x��Z�w�6�_��5�ķ�iv�5M���]��%��ql%fÐ
+���t�$6`I�N�u�����tu�����.4��~�~|a#
�u-mx�y ��<���
��i���L���.�I8>�
؏0��>���ǚm!� D��L�3r�`���3(jƒ9B���6��N?BmJ�kX>��ȹf;pl��G����=Xر5��������Z�],OR��C'�a��䰧�,a?<�C�%(٥�Ё%���f7��~���֬>H�4#l"��&�c���V܀aR	���LW�O���v��^�`ư������6K�Sl����Ǧ�I"8�lQrNF�����eC��w������E����4�˕Ƥ�]�٬���;!O�;�J@���:�f4�T�����M��4���8�����8�%�T�S�������Ã��`�+�d4}`�u�[_�������˃gϿp�k��~Mȧ�Q2��f�K�W�԰#�0���h�����S���%��s,‘�A��Bܶ����$���L����X���,f
6�1_hc����G�A�{�}\�כ� ��z*p(
�]Y��4W�0��`��jۂ�0��KCr:�.3��f9׻T�b�T������&��l�-�A��8�J!.)=�v���	�N`'�����u�\7�鄄�Y���e�P*Bg	=�nv��v2�/(2�"����ãW��Y�m�qO���Ł�W��o9��o
+n&e�j�f~(�D�r}�F��bVy*�7b��1;Kˍ�a�5��F&�#n6�43��S�te7u�鴩6Łl��V����";�����Wꝲ��8�[�ꀰ,1�~8�8,�N����E[߫#Y��"��d�%�����$q�u��/���iO��D9�&K����-�Ex��-�Y
+%.k,t�������`-S�
��cx6�5N��f�hYՖ�W��#�-V��PwlK�u/��$��:e�G�[��;�пJ�{-Rǵ�U�]5J����r<��ɟ{��IN��
+��y��˼�=Ww��<7�i���۩�p�c!�wD�$k�T*�)"�T]�
xb���b�u����_<�s1���sL�k9PL�2�ޓ��WK��5��XL�B�z���4�{�2�3��-�
+?��c*�u���n�����d�e�2�v&��8;��}���@�Y��#�cI/WS:"��G�d�R���ͣ���d@��%*�;7*�M�p�ok���b�u�J��&R먂�hA�IX//�SwM(�������l�:���º��+Q�S�G䆗pT@��W�[9�2ĝ�ۨ�\[†�dž��i1��n֤ߑ{�Oz�T
�8�~�t��Y2��VI���uG�Z;�(2����(@���$)
+�n�������P��&����{�d,!��$\OU_�HL��-�6�M_���RU0?��E�g��
+O��ĝ1�3��:߈.H(~r�f��w��+�)��'���C4���[��?�[Z��VI��)��gȻ��—a�u��)#+2��v
��i���`�l.��MW>���r�t?���M��d	���4���T�lL������&��W�iRz��My��hA(4Q�%�<�$��M8�MC*t��K�U�a-����15�����ꮉon�	��������Jvks�o����%܆o�}{siٷ���{k���H//����\*�%�f�g�A1O��|�!��~@������d��k׾����K��!���T�m���nRK���ݢ�{s���q[���K�
+endstream
+endobj
+12187 0 obj
+<<
+/Type /Page
+/Contents 12188 0 R
+/Resources 12186 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11993 0 R
+/Annots [ 12074 0 R 12147 0 R 12148 0 R 12149 0 R 12150 0 R 12151 0 R 12152 0 R 12153 0 R 12154 0 R 12155 0 R 12156 0 R 12157 0 R 12158 0 R 12159 0 R 12160 0 R 12161 0 R 12162 0 R 12163 0 R 12164 0 R 12165 0 R 12166 0 R 12167 0 R 12168 0 R 12169 0 R 12170 0 R 12171 0 R 12172 0 R 12173 0 R 12174 0 R 12175 0 R 12176 0 R 12177 0 R 12178 0 R 12179 0 R 12180 0 R 12181 0 R 12182 0 R 12183 0 R 12184 0 R 12185 0 R ]
+>>
+endobj
+12074 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 759.957 147.18 766.517]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) >>
+>>
+endobj
+12147 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 719.297 243.419 726.666]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_resource_a4a78094cb756c0886c787f93462621c0) >>
+>>
+endobj
+12148 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 680.256 92.784 686.816]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_abb8683a103f7eed6be691c6057312baa) >>
+>>
+endobj
+12149 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 679.29 239.235 686.816]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_abb8683a103f7eed6be691c6057312baa) >>
+>>
+endobj
+12150 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 640.405 92.784 646.965]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a421f6aeaee92e362e455edcbe6b58231) >>
+>>
+endobj
+12151 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 631.469 230.866 638.995]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a421f6aeaee92e362e455edcbe6b58231) >>
+>>
+endobj
+12152 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.14 623.499 406.607 630.453]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_range) >>
+>>
+endobj
+12153 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [438.089 624.573 456.819 630.453]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+12154 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 599.589 184.839 607.115]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+12155 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [253.979 599.589 327.105 607.115]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+12156 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.846 583.648 197.392 590.603]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a22c13c0c69fca4f40a3b25285e746e06) >>
+>>
+endobj
+12157 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 552.734 92.784 559.294]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a85828d5d8162aff4c496c782a432b55d) >>
+>>
+endobj
+12158 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 551.768 222.497 559.294]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable) >>
+>>
+endobj
+12159 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [228.873 551.768 373.132 559.294]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a85828d5d8162aff4c496c782a432b55d) >>
+>>
+endobj
+12160 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [400.43 551.768 477.74 559.294]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+12161 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 535.828 222.497 543.354]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a4e4d6c93a559d5e18178de9a79b472ec) >>
+>>
+endobj
+12162 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 488.973 92.784 495.533]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a37198446b18018989419984f3ec82c68) >>
+>>
+endobj
+12163 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 488.973 138.811 494.961]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+12164 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 488.007 268.525 495.533]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a37198446b18018989419984f3ec82c68) >>
+>>
+endobj
+12165 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [295.822 473.033 356.395 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afc29676fd98e4c6b7ab004514c175b7c) >>
+>>
+endobj
+12166 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 465.063 155.549 471.051]
+/A << /S /GoTo /D (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) >>
+>>
+endobj
+12167 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 464.097 327.105 471.623]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) >>
+>>
+endobj
+12168 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [366.956 336.575 423.344 344.101]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+12169 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [396.246 328.605 452.634 336.131]
+/A << /S /GoTo /D (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) >>
+>>
+endobj
+12170 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [279.085 320.635 301.999 328.161]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a197355701a388b65d7ea327ddd45024a) >>
+>>
+endobj
+12171 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 273.78 92.784 280.34]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a95274da091367dba743e0cf0052b4dd7) >>
+>>
+endobj
+12172 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 272.814 239.235 280.34]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a95274da091367dba743e0cf0052b4dd7) >>
+>>
+endobj
+12173 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 233.929 92.784 240.49]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a9b112a792be9ae8647bc58fd4e28c5bb) >>
+>>
+endobj
+12174 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 232.963 243.419 240.49]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a9b112a792be9ae8647bc58fd4e28c5bb) >>
+>>
+endobj
+12175 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 194.079 92.784 200.639]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a2bdfc0ecf346e6544ba897f86a5fa1e4) >>
+>>
+endobj
+12176 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 193.113 310.368 200.639]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a2bdfc0ecf346e6544ba897f86a5fa1e4) >>
+>>
+endobj
+12177 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [312.56 193.42 389.87 200.639]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+12178 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [295.822 178.138 356.395 184.699]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afc29676fd98e4c6b7ab004514c175b7c) >>
+>>
+endobj
+12179 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 138.288 92.784 144.848]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ab7eac644327edcff9e211b45e1905d2a) >>
+>>
+endobj
+12180 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 137.322 364.764 144.848]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ab7eac644327edcff9e211b45e1905d2a) >>
+>>
+endobj
+12181 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [295.822 122.348 356.395 128.908]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_afc29676fd98e4c6b7ab004514c175b7c) >>
+>>
+endobj
+12182 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [300.007 105.442 394.054 112.968]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+12183 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [283.269 97.472 377.317 104.998]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+12184 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [350.218 89.658 414.975 97.028]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a5bb5198238af5ed6058e2f77ddb15f38) >>
+>>
+endobj
+12185 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [279.085 73.561 360.579 81.087]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+12189 0 obj
+<<
+/D [12187 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+12190 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+12191 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+12192 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+12193 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+12194 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+12195 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+12196 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+12197 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+12198 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+6771 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+12199 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+12200 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+12201 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+12202 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+6815 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+12203 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+12204 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+12205 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+12206 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+12207 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+12208 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+6873 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+12209 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+12210 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+12211 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+12212 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+12213 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+12214 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+12215 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+6948 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+12216 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+12217 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+12218 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+12219 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+12220 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+12221 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+12222 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+12223 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+12224 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+12225 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+12226 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+12227 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+12228 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+12229 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+12230 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+12231 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+12232 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+12233 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+12234 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+12235 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+12236 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+12237 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+12238 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+12239 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+12240 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+12241 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+6894 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+12242 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+12243 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+12244 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+12245 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+6949 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+12246 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+12247 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+12248 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+12249 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+6895 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+12250 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+12251 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+12252 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+12253 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+12254 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+12255 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+6787 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+12256 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+12257 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+12258 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+12259 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+12260 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+12261 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+12262 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+12263 0 obj
+<<
+/D [12187 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+12186 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12294 0 obj
+<<
+/Length 1579      
+/Filter /FlateDecode
+>>
+stream
+x��ZYs�6~ׯ`�Б&�G\=����9����h(��R�L@N�N�{q�"i0-+��$R���v�a���Nz�Nzώm_���u-mr�y@�]W�Sw
mk�}���ϓךE�,�%/���$���������f3�$�製��e� O�؊�}�7mm��ZL�^kDb�k_ٓ+�v,ݱ-r�jg��=Є�ؚ���7a��*��X�;Y��>�q^�9΋�M��E���%=�eT����C4��l�3
�6���8�iC��	R��P���IO;�^���L���2,��I^�
������~�a���C��_��A���_��|:�>"b�tpf�U��@�4�h��B�:J���6z�h�J2KY��V0��ᯑ���f���q���h2�6���&Kn����0[�%NeW��|O��_����t��|�W<?��ȱ�3��#LK���e}�c�J𧿕W�B
��I�
�����
�?�Y�
+\+p���ʣ6�Z��7h9�E��^��D-�V;�7WV@�I�.�>ĪXH�0�+���'��!k}��4�(t�ڨ9�X��t8x7����UT$u�H�!�F{�a<"º;��{"���
+��cO<��x7����̃ě"1�B2�����G��*Wi&��:�0��G�_�a��H���N��iVL��'�z,#��y�Ҏr�4ɄV�-kT.�g�_��។#f�xAG��t\a�m9�ʓX ���s���2��Z�6^&h4f1YE�8Lp�p�[��ɻ0|�%,T��u�u�MX;M\o��Pų)f�z��=�ٴB<_$��bW��v�E�d��G|��Q|��-
�X(7%���w�=���q���JU�a�ëC�x�H����c��)x+�x�iLE��2T��ev��B����0?��޻?NO�,�&�Q�.w�<��d�,�
v�Qȃ�r��M�;-�	'���^e��!��Wk�mp�������ʵ�6�~��}(;��'��<O;f�����wJ�~�L���f�&4o-�n]�>��/s������)$�"�3W�)��bf�U�G��ܢ$�|��[B�!�Q�ȋ/Wa�%Oy��eҨ"Tqc0�Je��kM�<{"�GI8�;��l�<��L
��ɗ�����Ʀ����OT~���+yM̸|��Kw��Hw{Нcޏ�d��r2��� Z��#�e��)�. �2D�s��Hh�D(Z���H�*��2�`�Ҕ˱Td�T�x\�bu*∫s�ڂ�|L���uŐ�I�m���c:�x:�����R�}��"Q��
-fǬ����0|�F!.�SFU�U&_����>�^���k?D2�����a�$�ݴ	J��ʔ�����ޛ]qXzqũ�����S��'f�]�a���v�$��lֱ������y����-�h�����;��Cuqn���a�#Y���������lU3��.J{�Q�������[}���y��)��b֧�����9�,�.gت#v�nz�MϮ�lTw�\u��dO q<�2�'�f��^��X� �dwl�>�nb�9��-
+endstream
+endobj
+12293 0 obj
+<<
+/Type /Page
+/Contents 12294 0 R
+/Resources 12292 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11993 0 R
+/Annots [ 12264 0 R 12265 0 R 12266 0 R 12267 0 R 12268 0 R 12269 0 R 12270 0 R 12271 0 R 12272 0 R 12273 0 R 12274 0 R 12275 0 R 12276 0 R 12277 0 R 12278 0 R 12279 0 R 12280 0 R 12281 0 R 12282 0 R 12283 0 R 12284 0 R 12285 0 R 12286 0 R 12287 0 R 12288 0 R 12289 0 R 12290 0 R 12291 0 R ]
+>>
+endobj
+12264 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 743.051 180.654 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+12265 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.952 727.11 297.815 734.637]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure) >>
+>>
+endobj
+12266 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 672.285 168.101 678.846]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_element_a06d51f457b4412d64c3980a377fbc9f0) >>
+>>
+endobj
+12267 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 584.614 92.784 591.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a04574823a93f387d4d1aaa4a7087f22e) >>
+>>
+endobj
+12268 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 583.648 368.948 591.175]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a04574823a93f387d4d1aaa4a7087f22e) >>
+>>
+endobj
+12269 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.003 560.704 226.682 567.264]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_hasher_a1478050616af6fac27055b9a5190a044) >>
+>>
+endobj
+12270 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 528.823 92.784 535.384]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_aaeba9a89d6c0b950246fff61ac221fa7) >>
+>>
+endobj
+12271 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 527.858 389.87 535.384]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_aaeba9a89d6c0b950246fff61ac221fa7) >>
+>>
+endobj
+12272 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 473.033 92.784 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_adf66dfb35361158c8c05cc5ed81bd247) >>
+>>
+endobj
+12273 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [237.242 472.067 360.579 479.593]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_adf66dfb35361158c8c05cc5ed81bd247) >>
+>>
+endobj
+12274 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 361.451 92.784 368.011]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a8ef20bb80d404cba203ebe64a9c3296f) >>
+>>
+endobj
+12275 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 360.485 268.525 368.011]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a8ef20bb80d404cba203ebe64a9c3296f) >>
+>>
+endobj
+12276 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [274.901 328.605 293.631 336.131]
+/A << /S /GoTo /D (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) >>
+>>
+endobj
+12277 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 289.72 92.784 296.28]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a10c29b035a567af07850dd1f27e218fe) >>
+>>
+endobj
+12278 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 288.754 184.839 295.709]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+12279 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 288.754 335.474 296.28]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a10c29b035a567af07850dd1f27e218fe) >>
+>>
+endobj
+12280 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [337.665 288.754 394.054 295.709]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+12281 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 256.874 172.286 263.828]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+12282 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 194.079 92.784 200.639]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a62d80e5cd14d377d3bea90e6332b0b72) >>
+>>
+endobj
+12283 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.266 193.113 184.839 200.067]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+12284 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 193.113 352.211 200.639]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a62d80e5cd14d377d3bea90e6332b0b72) >>
+>>
+endobj
+12285 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [354.403 193.113 410.791 200.067]
+/A << /S /GoTo /D (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) >>
+>>
+endobj
+12286 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 169.203 172.286 176.157]
+/A << /S /GoTo /D (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) >>
+>>
+endobj
+12287 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 106.407 92.784 112.968]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ab1c36ffeef15739332ebd39c3c63184e) >>
+>>
+endobj
+12288 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.187 105.442 276.893 112.968]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_ab1c36ffeef15739332ebd39c3c63184e) >>
+>>
+endobj
+12289 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [304.191 105.442 381.501 112.968]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container) >>
+>>
+endobj
+12290 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [417.167 106.516 435.897 112.396]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time) >>
+>>
+endobj
+12291 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 81.531 209.944 89.057]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_figure_a65998054544cd71fdb47c0b1b956e883) >>
+>>
+endobj
+12295 0 obj
+<<
+/D [12293 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+12296 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+12297 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+12298 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+12299 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+12300 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+12301 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+12302 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+12303 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+12304 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+12305 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+12306 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+12307 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+12308 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+12309 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+12310 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+12311 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+12312 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+12313 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+12314 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+12315 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+12316 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+6918 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+12317 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+12318 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+12319 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+12320 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+12321 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+12322 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+6816 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+12323 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+12324 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+12325 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+12326 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+12327 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+6919 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+12328 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+12329 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+12330 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+12331 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+12332 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+12333 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+12334 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+12335 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+12336 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+12337 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+12338 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+12339 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+12340 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+6872 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+12341 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+12342 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+12343 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+12344 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+12345 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+12346 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+12347 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+6847 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+12348 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+12349 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+12350 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+12351 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+12352 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+12353 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+12354 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+12355 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+12356 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+12357 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+12358 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+6848 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+12359 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+12360 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+12361 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+12362 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+12363 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+12364 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+12365 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+12366 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+12367 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+6947 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+12368 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+12369 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+12370 0 obj
+<<
+/D [12293 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+12292 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12389 0 obj
+<<
+/Length 1039      
+/Filter /FlateDecode
+>>
+stream
+xڵXIo�F��W����b�8R�Y,��8(hj,��(��������P"�K,R�o��2�=�����h0�PH�8'At$�PpD��k����n�!�a2��΢�*Ns��ܸW�4���B_u��Đ䐆�����m4�>@�6�Ζ�@b$���o0��w�����*���F�y΂����6�3p��M�X;�!Қ72#aX�deB.��$���KȠ�Ы^	�@����46.��1�Q��]LF`�˿�m�y��Э�Z
+0Curգ�,���:�
+
G܀���7���H��N��̒�jA(��
��@A���l�~�V*�&�V�^=��I���4O��\;g_��%�Ɵ�WY�Y�,_Ը��^�?�?���x�ě�+�zE.�3]��l�_`�����OW��|��_���2����Fo�������]�(vX`�.���a�H�9�œ^��z+���f(����=z��g{ݣg����
+Y�ޔ۪G�i�{�!����T��e��׏
�=���qcH��d�'e��7��3���!E0����c��V#�x�����X�����n��~�C�d�X��Q�e\x�Y�o����\BH��[>XR����ֶ��0!̀2iQhz�w9�|���搝���J�e\�j�{��qe�Ӧ��.�z��o�0Du74�
+_�6@܋��z�f�Q�ڕ�1����"4,�H^��y�V�٧A���u m�`��i�1�QVǥ�N�%l��.�sm��<�''������.�����W'ę~�������qST4*���k��z\�?];�e}_��;oUi˷r�nZ^�S:���pu�ݢW-3��@S7�ݦ�P٢�L���Tw�?��N�O�O���PwV�c�&'�Zz�	��rk�:&dvZ����iA�������8���{�(��B���cBVσ|����[A�V���!;�6gn�n[��}�*���|��?�p���O���&5�&�q��n�^ٿ�w�F9$0��na7�P��e�*m#�
+endstream
+endobj
+12388 0 obj
+<<
+/Type /Page
+/Contents 12389 0 R
+/Resources 12387 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11993 0 R
+/Annots [ 12371 0 R 12372 0 R 12373 0 R 12374 0 R 12375 0 R 12376 0 R 12377 0 R 12378 0 R 12379 0 R 12380 0 R 12381 0 R 12382 0 R 12383 0 R ]
+>>
+endobj
+12371 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [157.74 743.207 193.207 750.577]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_container_a386c1992526628067cad3295763e6e39) >>
+>>
+endobj
+12372 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.737 427.298 128.16 435.782]
+/A << /S /GoTo /D (main_8cpp_a3c04138a5bfe5d72780bb7e82a18e627) >>
+>>
+endobj
+12373 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.148 238.012 148.111 246.577]
+/A << /S /GoTo /D (main_8cpp_source_l00015) >>
+>>
+endobj
+12374 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.533 236.308 210.901 246.577]
+/A << /S /GoTo /D (main_8cpp_source) >>
+>>
+endobj
+12375 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 157.357 212.775 166.128]
+/A << /S /GoTo /D (main_8cpp) >>
+>>
+endobj
+12376 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 148.654 205.76 156.023]
+/A << /S /GoTo /D (_publisher_8h) >>
+>>
+endobj
+12377 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 141.05 201.576 148.053]
+/A << /S /GoTo /D (_broadcast_8h) >>
+>>
+endobj
+12378 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 133.08 193.207 140.083]
+/A << /S /GoTo /D (_server_8h) >>
+>>
+endobj
+12379 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 124.587 193.207 132.113]
+/A << /S /GoTo /D (_object_8h) >>
+>>
+endobj
+12380 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 117.14 201.576 124.143]
+/A << /S /GoTo /D (_variable_8h) >>
+>>
+endobj
+12381 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 108.647 189.023 116.173]
+/A << /S /GoTo /D (_s_o_i_l_2_types_8h) >>
+>>
+endobj
+12382 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 101.199 193.207 108.203]
+/A << /S /GoTo /D (_hasher_8h) >>
+>>
+endobj
+12383 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 92.706 193.207 100.232]
+/A << /S /GoTo /D (_signer_8h) >>
+>>
+endobj
+12390 0 obj
+<<
+/D [12388 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+12391 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+12392 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+12393 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+12394 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+12395 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+12396 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+12397 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+12398 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+2967 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 705.162 null]
+>>
+endobj
+2230 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 688.861 null]
+>>
+endobj
+12399 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 466.14 null]
+>>
+endobj
+2234 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 411.274 null]
+>>
+endobj
+12400 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 368.606 null]
+>>
+endobj
+2238 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 341.523 null]
+>>
+endobj
+12401 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 237.305 null]
+>>
+endobj
+2242 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 221.004 null]
+>>
+endobj
+12402 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+12403 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+12404 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+12405 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+12406 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+12407 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+12408 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+12409 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+12410 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+12411 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+12412 0 obj
+<<
+/D [12388 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+12387 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F25 2380 0 R /F95 3709 0 R /F81 3708 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12434 0 obj
+<<
+/Length 2278      
+/Filter /FlateDecode
+>>
+stream
+x��Z�s�F����I�ȭ9���;N�N+��|q3g��H�����{�<$��N=�u����o��v�AR�׃����H[�.��%[�eI�X�*�}�v������IGc�a����U�Y�����[/a��YGx��b>�<P�LERs��͐�����"�h썄(�����S���v(���2��!Y`l�N�MK
+�SQƩ"�6�Zt��n�0K�L�7�͙&�I�A\;�u�D�T���ua*���(� ʪ���щK7�*3��(�B�:n�؎w��%��{t�*9US����Mc��=�WՀi�Ri���A"�dXVu8H�5l���ײ�J*��fqHοQ^u4s�%OU^jtN�̯b{�Ȧ���̟L�x�Q���L�[
+��@E5X|/@{�]釒�M/�h�<��3���v�E����(�WS���HU�_��������d2"��1R�KaN%,�@#�e��jc��ˬ��k7���
�0��4�Y:Z%��͠��M�A�|+�|&�F�(��"FK=�vo/�_M?�ŻH0�����4\l`�"�A!Ǣ���6}#�L�wB/c�N�8[Ĥ�v����ns�$:	D��ty����\�o��t��Y?27H �JC���C�'�i	47�i�nȹ��*�.�4��6�GH�؇!��6�Ի+6L���k�^���j�vO���r�0{J3���O��0B�8"��-h�֌�ZC�dL����":���(񂱸'�o�;�/G Ɂd�������{����70[���~Pu�L��i�}+�MӘ1���Pf��I��V=~p����s?^��S����>6l��6���[l�|ɢ�����F~�ο��ρȜSy��r�_��p
�F�Sܩ0͂�a_�1�ٓBo��	�I��d+�I��������ń6/4�]�aF�a��֎2c��Aޯ#��6`�q�B�d1#���E͒u�a�~�i��I�Z�T&�\�'/��C�w�[�U�#��y�ƭH>[�|t�0*��o��v�X_��*PNy�d-
(��F����_���L֙���/��\��-Dq?�C3G�����h�J
�9-��|��*���+�>��&��k�S������h���Q*���l�jSV�b	y����4��KC��&�}(ʲ̢���r�</y3�^�bD���ߥ#�}S������D*>]>�3���L~u�����?�Uzt[�-�����Xo�ϛu���3�v�K���N&���}�N�*sm����=<kߪ&�����M%>@�dC&Yp�{.�u�'A�$�^*��9��ZD��>�h�SP
�CwI�>�5GĊw����@.�OpA�6(�Ҩ�Z���[Tx�FY�9���l�ܥU;k���8}�0D��aT%��q���:	�b��N۰���s�-��Ca8��
A����.�A�7�(�5~ǫ�x���h5�;}p����J��W,��>?��cG1�t����R�O�	
+��ۂ�uyD���C=J*B)?��{�����~�!֐�;T�)�#���D�zZ�����u�ip�n9R������-��=�uɸd]KTW��U�m�'`��EL����%d\�:ҫeY�ǰ5�U�"�H�xv�	Y�:N��PQ�fie�K��&�X�:�ޚ	:6p�:�V䎙�i7������t��?��5n,�7aE�7b;	�������qѐ�m�-����o`�>�u��k��L9/e1ݔ*X�L���T��/�M�畡e�� ����>`��|�\�X��Ъ!٨�wx9�7N,FL��4����%��X��K����1Aƈl2�p�@|�BE��ASQ�^�q�-�%6���SxjYGO_�Lt
�z��}D��]��5v���
+�_�;��7���p�6�P�X���-��U[�"Ë$v}������[���oeѶ2	ϼEQ^��sn=�L���&��j�?�V\(��c��^�Ot�ǘO��*N�N���m�	�qZ붳
��
�}Ԇ�~_������-���eV�9�[�����j�w�_�st�g0�@a���e�EJ�{y$�n2�7A����9����b}�������g<�WW
�*�U�:F9W��)�ߺ+�/*���ͺ�j/i�+�m�n��s��; l:�C�
/ꢘ �Ei�;�=�:�.�i��%�	q��yd��o���s������gEW����_���f[~�0
`��$�8a�5D�'�/|�f�݉���[�'�2��	���ԫ�����
+endstream
+endobj
+12433 0 obj
+<<
+/Type /Page
+/Contents 12434 0 R
+/Resources 12432 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 11993 0 R
+/Annots [ 12384 0 R 12385 0 R 12386 0 R 12414 0 R 12415 0 R 12416 0 R 12417 0 R 12418 0 R 12419 0 R 12420 0 R 12421 0 R 12422 0 R 12423 0 R 12424 0 R 12425 0 R 12426 0 R 12427 0 R 12428 0 R 12429 0 R 12430 0 R 12431 0 R ]
+>>
+endobj
+12384 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 736.046 92.784 742.607]
+/A << /S /GoTo /D (main_8cpp_a3c04138a5bfe5d72780bb7e82a18e627) >>
+>>
+endobj
+12385 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.713 736.046 130.443 742.607]
+/A << /S /GoTo /D (main_8cpp_a3c04138a5bfe5d72780bb7e82a18e627) >>
+>>
+endobj
+12386 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 687.26 151.364 694.786]
+/A << /S /GoTo /D (class_s_i_g_n_1_1_signer) >>
+>>
+endobj
+12414 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [312.56 671.32 398.238 678.846]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4ce4f8d21682f894c34f447d2a62cd30) >>
+>>
+endobj
+12415 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [308.375 655.379 394.054 662.906]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4ce4f8d21682f894c34f447d2a62cd30) >>
+>>
+endobj
+12416 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [329.297 639.439 414.975 646.965]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4ce4f8d21682f894c34f447d2a62cd30) >>
+>>
+endobj
+12417 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [312.56 623.499 398.238 631.025]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_object_a4ce4f8d21682f894c34f447d2a62cd30) >>
+>>
+endobj
+12418 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 599.895 239.235 607.115]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_variable_a421f6aeaee92e362e455edcbe6b58231) >>
+>>
+endobj
+12419 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [366.956 559.895 448.45 566.957]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_ae06629b296dcd9b01b6019101a020208) >>
+>>
+endobj
+12420 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 464.097 209.944 471.623]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration) >>
+>>
+endobj
+12421 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 456.127 268.525 463.653]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_aa943275c72ea7cc94bd9de56c0dfaa9d) >>
+>>
+endobj
+12422 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [358.587 417.242 373.132 423.802]
+/A << /S /GoTo /D (class_m_q_t_t_1_1_configuration_ac4b05210a99b650da641d3966266ec04) >>
+>>
+endobj
+12423 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [99.16 336.732 180.654 343.794]
+/A << /S /GoTo /D (class_s_o_i_l_1_1_time_ae06629b296dcd9b01b6019101a020208) >>
+>>
+endobj
+12424 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 177.173 205.76 184.699]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+12425 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 170.168 189.023 176.729]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+12426 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 161.232 226.682 168.759]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a4083638acba927342d411db85d6fe9a1) >>
+>>
+endobj
+12427 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 154.228 205.76 160.788]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a9c923c64d3e48d85c3e91db348ffaa45) >>
+>>
+endobj
+12428 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [433.904 146.258 465.187 152.818]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a320ba9474ff76cbc5626d667a4388a55) >>
+>>
+endobj
+12429 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 106.407 180.654 112.661]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server) >>
+>>
+endobj
+12430 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 98.437 193.207 104.998]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_abb452f50d7c5660ee204e47e20066c83) >>
+>>
+endobj
+12431 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 89.501 197.392 95.608]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_aec1277227e7f17a1115e6d868a07b486) >>
+>>
+endobj
+12435 0 obj
+<<
+/D [12433 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+12436 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+12437 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+12438 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+12413 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+12439 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+12440 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+12441 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+12442 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+12443 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+12444 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+12445 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+12446 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+12447 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+12448 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+12449 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+12450 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+12451 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+12452 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+12453 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+12454 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+12455 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+12456 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+12457 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+12458 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+12459 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+12460 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+12461 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+12462 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+12463 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+12464 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+12465 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 458.197 null]
+>>
+endobj
+12466 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+12467 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+12468 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+12469 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+12470 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+12471 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+12472 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+12473 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+12474 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+12475 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+12476 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+12477 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+12478 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+12479 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+12480 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+12481 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+12482 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 298.794 null]
+>>
+endobj
+12483 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 290.824 null]
+>>
+endobj
+12484 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+12485 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+12486 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+12487 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+12488 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+12489 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+12490 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+12491 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+12492 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+12493 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+12494 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+12495 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+12496 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+12497 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+12498 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+12499 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+12500 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+12501 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+12502 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 115.482 null]
+>>
+endobj
+12503 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+12504 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+12505 0 obj
+<<
+/D [12433 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+12432 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12519 0 obj
+<<
+/Length 1433      
+/Filter /FlateDecode
+>>
+stream
+xڵXߓ�6~��3709�dYƦ)�\�I�^�S��-�	g[�K�i���'� ��+}{-�~����pVp^��f��+?tB7
+�̖��a8��s��R�c?r�p0��a�,�'�?^�]�g:O�y��d�UC^e��n�r�A�$O�(��=��go{׳޷��w6��
=�In{?'���:�EQ��ˑ�����}ğ7·��=P��N�Fc����#��
���_�t2)Y���0��0�m8�J����a�,'���=��K=��`�
+�U���%)�H��((���������lhI�g�
+��:ȄVL���ad������({�wiV����o���_9�]l��f��������1������.��M��((e1]|!	sR����U��
C�'�U:�Sn+��UEns
+�MFp0D������w�i� ��dm
�����-�h~��+��f�F����.�\�ܼ��Dy�Ľ_�w8xS"lgX�&��,���K�őrHN�)zn!�����p=�Ba�?$Ti��<�-�ma�T�2�S�'�*%z��
+�z�̸��al~mX��[|¡;w.Eڥc7�n�
+�Z�9���*���_� �4�nI���ѥ�������}���5�pԼ�G�f��VC��
+AkO��?����:��o�k�N�Ⱥ{���h$n�A���
5��^{�V��tE����M�r1˙-��1[d����*���L��j��o��M����~N�mp�
+���xU�j{TA�I���=-������d�Q��d	�L�n�u/���:�N��KZ��г,n�Vi
+���&����[��Ag��PWj�q8M�?#ڂpKGy�����5�EeZԋS��M�Q��+ag��v2�R��Tw�E%$�	���F���^T�n�Ļ�-��^���;ߴ/:�� ��1N
�̊����
�tK�Sv��**��x1/�ʓ�$�<M��
+yC�𒱢��Dڲ�伈��"Gζ#}:��h�;9�P�F�Ž0UE�ZHq��D�H��pR��Oy��8�y��|�� �;��z�i5��΢ۚ=�R&�$���U![��T������|2�ms;Ġ3}{��'AN�26�°�nԜ�[0qn����\W,��iH���zd��l��B,ȋ��;2��N]��A���h.xN�C{^!���!l�:��~n8�������y�}`ǜ�+��ԝ��N?�k���h�>-O�'����<qtQ�m/���IU^f���O���3�҂��Ivu��i���U�}�H��L!�#�u*R��c����>:9M��Gw����t�����I-^t7[S.c���zQ��پ��<���k/�Ko�1�,z+J�s{\�m���<a=�z�\��7�ڵ��݀�����Hpnʻ���>���_���?V�n�g�C��r��
+endstream
+endobj
+12518 0 obj
+<<
+/Type /Page
+/Contents 12519 0 R
+/Resources 12517 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12581 0 R
+/Annots [ 12506 0 R 12507 0 R 12508 0 R 12509 0 R 12510 0 R 12511 0 R 12512 0 R 12513 0 R 12514 0 R 12515 0 R ]
+>>
+endobj
+12506 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.662 744.016 201.576 750.577]
+/A << /S /GoTo /D (class_h_t_t_p_1_1_server_a9f24bc848a91d7d8a7e084b102de4e7a) >>
+>>
+endobj
+12507 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 444.281 212.775 453.052]
+/A << /S /GoTo /D (_broadcast_8cpp) >>
+>>
+endobj
+12508 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 436.387 184.839 442.947]
+/A << /S /GoTo /D (_broadcast_8h) >>
+>>
+endobj
+12509 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 427.451 184.839 434.977]
+/A << /S /GoTo /D (_exception_8h) >>
+>>
+endobj
+12510 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 404.507 92.784 411.067]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a1b28acbf05f00ee1a23e5f148c952ac7) >>
+>>
+endobj
+12511 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 404.507 201.576 411.067]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a1b28acbf05f00ee1a23e5f148c952ac7) >>
+>>
+endobj
+12512 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 253.074 92.784 259.635]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_aa7e94761b0526d1fc1dac158b841377f) >>
+>>
+endobj
+12513 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 253.074 205.76 259.635]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_aa7e94761b0526d1fc1dac158b841377f) >>
+>>
+endobj
+12514 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 117.582 92.784 124.143]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_ab4a1b3beb24edbadae5701c0d3c66c3b) >>
+>>
+endobj
+12515 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 116.774 226.682 124.143]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_ab4a1b3beb24edbadae5701c0d3c66c3b) >>
+>>
+endobj
+12520 0 obj
+<<
+/D [12518 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+12521 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+12522 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+12523 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+12524 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+12525 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+12526 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+12527 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+12528 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+12529 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+12530 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+12531 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+12532 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+12533 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+12534 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+12535 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+12536 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+12537 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+3379 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 632.772 null]
+>>
+endobj
+2246 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 616.397 null]
+>>
+endobj
+3864 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 527.545 null]
+>>
+endobj
+2250 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 511.17 null]
+>>
+endobj
+12538 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 445.461 null]
+>>
+endobj
+12539 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 437.491 null]
+>>
+endobj
+12540 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 429.521 null]
+>>
+endobj
+12541 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 421.551 null]
+>>
+endobj
+3863 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 413.581 null]
+>>
+endobj
+12542 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 405.611 null]
+>>
+endobj
+12543 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 397.641 null]
+>>
+endobj
+12544 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 389.671 null]
+>>
+endobj
+12545 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 381.701 null]
+>>
+endobj
+12546 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 373.73 null]
+>>
+endobj
+12547 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 365.76 null]
+>>
+endobj
+12548 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 357.79 null]
+>>
+endobj
+12549 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 349.82 null]
+>>
+endobj
+12550 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 333.88 null]
+>>
+endobj
+12551 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 325.91 null]
+>>
+endobj
+12552 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 317.94 null]
+>>
+endobj
+12553 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 309.969 null]
+>>
+endobj
+12554 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 301.999 null]
+>>
+endobj
+12555 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 294.029 null]
+>>
+endobj
+12556 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+12557 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+12558 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+3865 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+12559 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+12560 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+12561 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+12562 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+12563 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+12564 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+12565 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+12566 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+12567 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+12568 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+12569 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+12570 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+12571 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+12572 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+12573 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+12574 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+3866 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+12575 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+12576 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+12577 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+12578 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+12579 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+12580 0 obj
+<<
+/D [12518 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+12517 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12593 0 obj
+<<
+/Length 1724      
+/Filter /FlateDecode
+>>
+stream
+x��Z�s�8~�_A��q.�"	���C�ig�t��=�%fj�8i������a��'�}�H�vW��~,@�Ƃ֛�˫��k�Z����յ�A@	�<����z?��9�x�ֲ���~cu�u�ags���4�oYRE�&���������B�HJŎn'�?B+�co-.ѧ�]5sk9�
\�������V�u,|Ϧm5	P�	!t�jy>H�h�ߜq	�ٻ7���u �^���+���	���0.Ϊ�?�?�D�4N���M��3��]���Oz��Qo��yyZ�Zs����Nτf_����<Z.s=dY�WI�	��o��X��j��:V�r\�� �2��� � is3(L�#�����BA����c"���b��w+��;��w�����k����]
��3S��~�0_�!�9��M����9��^���MƂ�^�l��F��4�� ��3ƻ����S�!-�4�v�t�7��l���aG7�����r��J�Wi��E���b��}���r��ٙ0b�fz
+7+�gs+D�lq% �p=�㼈��jO���S�!�zR������E���r7��Z�N�e���S��[W9T�P�G�8+�-ĉ6b����nM����Δ�kғ \r�)��$P��&>��n�]9T�7��l*6M�_�����4�Np�K���m�[�۬�V��n��S��&*0+��$��g�M~z^]����P^-��Ʋ5l���.����=Y�%��ea�f��i��V�,(T��ŀ��ݓ'�`��ur����u�n�M��7��=��ً��{ѓ�G�.�m�.�3���8a�t�zHz���{�X���lx��5�L���Զ ?���<�/IՅD��6q^�`y�(4n#E=��Y����b#���b�1&z�q1V���gdUq~'+��>�~�4G��f7!Bɏaj?��k�3c������}U���2�Yl����G&�����5�zsN�X�9���>)��hC�wF+c�>K�5��o~�ɣ�f�"Η�%G�o��~�V>.;��N&[���"{ނ\#;�,�5)L����i��t�9H�- *�9�w���_��r�f��*V��X��e���+���5�j��|��;��U��sBOV�� bT����D�=�ſ..N5�v�͵��t�E�M&����L�OZ6�;�V귊Ŷ?;��� �6L���u�:]R����n�	B�N7���]U%g}pnY�,_Y���]<tB����GʭrM\Abʽz��� �.A���w��$Gj7BPS��p@H:1N9?�n㐁���U��1o�X;�e�i6��d�
�x��oJl�/]��IČλ�G5!ӈ)e��DK��9�����pO�	��M��tД�_��N��@u
$!����է@���B�hg(�C��S�N�W~U���'�~Du���%��ƫ\���<���c�U���t<4���v�:� �����)��1cc�¶���U
+�h7�]��q�S/�_��r�,&�PSRM�*]����~�
���m%A�ϯ��g}��Z0�l�D���C���H�09�wMhc�,C�tG7�N%p��&�c��+o��D
y�!��0I�4���� ����m�vP{�ݷ$���N��D}�B��q���3��3���EV��aIYvX$>lY�a8�W���p���*(;�r��#�4
+endstream
+endobj
+12592 0 obj
+<<
+/Type /Page
+/Contents 12593 0 R
+/Resources 12591 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12581 0 R
+/Annots [ 12516 0 R 12582 0 R 12583 0 R 12584 0 R 12585 0 R 12586 0 R 12587 0 R 12588 0 R 12589 0 R 12590 0 R ]
+>>
+endobj
+12516 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.03 727.11 247.603 734.637]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+12582 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 663.349 214.129 670.876]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+12583 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 632.435 92.784 638.995]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a093abc49c309116a4674e2264b352c92) >>
+>>
+endobj
+12584 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 631.626 239.235 638.995]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a093abc49c309116a4674e2264b352c92) >>
+>>
+endobj
+12585 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.293 503.947 230.866 511.473]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+12586 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 440.186 214.129 447.713]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+12587 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 241.899 92.784 248.46]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a9c923c64d3e48d85c3e91db348ffaa45) >>
+>>
+endobj
+12588 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 241.899 201.576 248.46]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a9c923c64d3e48d85c3e91db348ffaa45) >>
+>>
+endobj
+12589 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 202.049 92.784 208.609]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a43e3f6b55707430a2eb698c41d181f6d) >>
+>>
+endobj
+12590 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 202.049 201.576 208.609]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a9c923c64d3e48d85c3e91db348ffaa45) >>
+>>
+endobj
+12594 0 obj
+<<
+/D [12592 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+12595 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+12596 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+12597 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+12598 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+12599 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+12600 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+12601 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+12602 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+12603 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+12604 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+12605 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+12606 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+12607 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+12608 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+12609 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+12610 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+3888 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+12611 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+12612 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 625.569 null]
+>>
+endobj
+12613 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+12614 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+12615 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+12616 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+12617 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+12618 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+12619 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+12620 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 561.808 null]
+>>
+endobj
+12621 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 553.838 null]
+>>
+endobj
+12622 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 545.868 null]
+>>
+endobj
+12623 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 537.898 null]
+>>
+endobj
+12624 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 529.928 null]
+>>
+endobj
+12625 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 521.958 null]
+>>
+endobj
+12626 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 513.988 null]
+>>
+endobj
+12627 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 506.017 null]
+>>
+endobj
+12628 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 498.047 null]
+>>
+endobj
+12629 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 490.077 null]
+>>
+endobj
+12630 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 482.107 null]
+>>
+endobj
+12631 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 474.137 null]
+>>
+endobj
+12632 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 466.167 null]
+>>
+endobj
+12633 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 450.227 null]
+>>
+endobj
+12634 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 442.257 null]
+>>
+endobj
+12635 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 434.286 null]
+>>
+endobj
+12636 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 426.316 null]
+>>
+endobj
+12637 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 418.346 null]
+>>
+endobj
+12638 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 410.376 null]
+>>
+endobj
+12639 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 402.406 null]
+>>
+endobj
+12640 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 394.436 null]
+>>
+endobj
+12641 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 386.466 null]
+>>
+endobj
+12642 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 378.496 null]
+>>
+endobj
+12643 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 370.525 null]
+>>
+endobj
+12644 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 362.555 null]
+>>
+endobj
+12645 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 354.585 null]
+>>
+endobj
+12646 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 346.615 null]
+>>
+endobj
+12647 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 338.645 null]
+>>
+endobj
+12648 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 330.675 null]
+>>
+endobj
+12649 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 322.705 null]
+>>
+endobj
+12650 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 314.735 null]
+>>
+endobj
+12651 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 306.765 null]
+>>
+endobj
+12652 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 282.854 null]
+>>
+endobj
+12653 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 274.884 null]
+>>
+endobj
+12654 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 266.914 null]
+>>
+endobj
+12655 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 258.944 null]
+>>
+endobj
+3889 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 250.974 null]
+>>
+endobj
+12656 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 243.004 null]
+>>
+endobj
+12657 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 235.034 null]
+>>
+endobj
+12658 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 227.063 null]
+>>
+endobj
+12659 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 219.093 null]
+>>
+endobj
+3916 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 211.123 null]
+>>
+endobj
+12660 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 203.153 null]
+>>
+endobj
+12661 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 195.183 null]
+>>
+endobj
+12662 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 187.213 null]
+>>
+endobj
+12663 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 179.243 null]
+>>
+endobj
+12664 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 171.273 null]
+>>
+endobj
+12665 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 163.303 null]
+>>
+endobj
+12666 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 155.332 null]
+>>
+endobj
+12667 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 147.362 null]
+>>
+endobj
+12668 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 139.392 null]
+>>
+endobj
+12669 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 131.422 null]
+>>
+endobj
+12670 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 123.452 null]
+>>
+endobj
+12671 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 107.512 null]
+>>
+endobj
+12672 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 99.542 null]
+>>
+endobj
+12673 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 91.572 null]
+>>
+endobj
+12674 0 obj
+<<
+/D [12592 0 R /XYZ 70.866 83.601 null]
+>>
+endobj
+12591 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F24 2940 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12696 0 obj
+<<
+/Length 1284      
+/Filter /FlateDecode
+>>
+stream
+x��X�o�6~�_��/�:�$ER?��!��(��˞�"P$�K�$�	���;��mɴ��	���N�ww��;
+;3;��������!\�r�x�B8^@� �e�\
D0����bD�0��y����QGe����<��z�ENGe!�XM��!%|��������_.`��)}��9�bp�;	���`���\8���3�w���x;�������&���kz�x�X��f��b�P�
+gL������񙳙�hC�@l����
1F*B�S�Z�D�W�B~k�S
+�j,0��i�~z�O[Š��ia�+�<���U!۱\
�1��\��0ͳQ��Y���L�R��݈�Qm���.3k��fu���tL.�i^��B����-���?��bC���TfU��+���4S������8\f���w��z�H�p��ј3�]��r|%ɍfV$i5>��EY��0�OJ	�'��
+���}
U߭+�( ��w����[�(��\�j�>*�ː�}��6��U"�_o ��� �h����p�1���Pl��fyPð6�`���ǂ����"�-8.�K�1;���1⾖g�ȋ���g�J>X`�0���1���_˱�J�C,�U/��9x����K{w/cS�^xA�;Ӫ������yYM�y!�͗Kb��`�pƹb○�Q��{\�]$�n�U9�����!u!�z4�jӏwQYʶ0L��j���<߃v�(ϴ2ה��q.@g�n��u����F��߅��{�;,���J��R�AF�P�w7ʗuc�#���°�#!L��5Z�r�/�¬A�Mc���~ㆳ�@��@b4��{v�N ��	�ȵHV��ܨf�ǫ�n��|�ؤ�]cLAf	�N(���#� ��f\w��~�5�ib�.�h��t}ɳ�Ӽ�P[����l�va;Оmڄgp�����s���)NzX��,�?���
�8�F�}_,ޑ$k��#�$����ڎ���Z��LMW�{�Dȋ�5���F�x���MW�և�։V��Ռ�C}��l�}����I�Ӽ�s�]B��|���~��hY��?uS1e
�'�EzU;�9B+�K��
+@���Ͳ*��C�ofE��R�����v<����!�	�0�oJYܧ���y������:͸aۃn���k;8�O	��'Ų�U?e��	E_���k���t��C%�d��YC�\�Y*�[[����s;�9_(��QO��/���	a�����O2��ԭ����,�x��8S�D�u�_�16
+endstream
+endobj
+12695 0 obj
+<<
+/Type /Page
+/Contents 12696 0 R
+/Resources 12694 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12581 0 R
+/Annots [ 12675 0 R 12676 0 R 12677 0 R 12678 0 R 12679 0 R 12680 0 R 12681 0 R 12682 0 R 12683 0 R 12684 0 R 12685 0 R 12686 0 R 12687 0 R 12688 0 R 12689 0 R 12690 0 R 12691 0 R ]
+>>
+endobj
+12675 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 744.016 92.784 750.577]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a4083638acba927342d411db85d6fe9a1) >>
+>>
+endobj
+12676 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.897 743.051 222.497 750.577]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a4083638acba927342d411db85d6fe9a1) >>
+>>
+endobj
+12677 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.689 743.051 301.999 750.577]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+12678 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [132.634 727.11 251.788 734.637]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a2f1e39379df27d5d6f81987dcade6053) >>
+>>
+endobj
+12679 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [304.191 728.076 335.474 734.637]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a320ba9474ff76cbc5626d667a4388a55) >>
+>>
+endobj
+12680 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [429.72 728.076 461.003 734.637]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration_a320ba9474ff76cbc5626d667a4388a55) >>
+>>
+endobj
+12681 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 444.101 183.965 452.666]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+12682 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 429.32 127.977 437.228]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+12683 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.228 429.393 166.55 437.228]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+12684 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 365.062 164.536 373.627]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+12685 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 284.879 212.775 293.65]
+/A << /S /GoTo /D (_broadcast_8h) >>
+>>
+endobj
+12686 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 261.044 184.839 267.605]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+12687 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 212.258 201.576 219.784]
+/A << /S /GoTo /D (_u_d_p_2_configuration_8h) >>
+>>
+endobj
+12688 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 181.343 92.784 187.904]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+12689 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 181.343 151.364 187.332]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+12690 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 165.403 92.784 171.963]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+12691 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 165.403 193.207 171.963]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+12697 0 obj
+<<
+/D [12695 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+12698 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+12699 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+3887 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+12700 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+12701 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+12702 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+12703 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+12704 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+12705 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+3380 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 696.533 null]
+>>
+endobj
+2254 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 680.257 null]
+>>
+endobj
+12706 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 482.8 null]
+>>
+endobj
+12707 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 403.761 null]
+>>
+endobj
+3849 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 355.117 null]
+>>
+endobj
+2258 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 348.078 null]
+>>
+endobj
+12708 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 286.059 null]
+>>
+endobj
+12709 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 278.089 null]
+>>
+endobj
+12710 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 270.119 null]
+>>
+endobj
+12711 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 262.149 null]
+>>
+endobj
+12712 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 254.179 null]
+>>
+endobj
+12713 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 246.209 null]
+>>
+endobj
+12714 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 238.238 null]
+>>
+endobj
+12715 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 230.268 null]
+>>
+endobj
+12716 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 222.298 null]
+>>
+endobj
+12717 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 214.328 null]
+>>
+endobj
+12718 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 206.358 null]
+>>
+endobj
+12719 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 198.388 null]
+>>
+endobj
+12720 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 190.418 null]
+>>
+endobj
+12721 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 182.448 null]
+>>
+endobj
+3848 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 174.478 null]
+>>
+endobj
+12722 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 166.507 null]
+>>
+endobj
+12723 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 158.537 null]
+>>
+endobj
+12724 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 150.567 null]
+>>
+endobj
+12725 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 142.597 null]
+>>
+endobj
+12726 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 134.627 null]
+>>
+endobj
+12727 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 126.657 null]
+>>
+endobj
+12728 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 118.687 null]
+>>
+endobj
+12729 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 110.717 null]
+>>
+endobj
+12730 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 102.747 null]
+>>
+endobj
+12731 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 94.776 null]
+>>
+endobj
+12732 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 86.806 null]
+>>
+endobj
+12733 0 obj
+<<
+/D [12695 0 R /XYZ 70.866 78.836 null]
+>>
+endobj
+12694 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F22 2379 0 R /F33 2286 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12752 0 obj
+<<
+/Length 1244      
+/Filter /FlateDecode
+>>
+stream
+xڵXMo�6��W[���5����4��H�=m�����H�#��\IN����CR�d�r����5�y�y��9"�r��z0���PJ���Op %�C�%E�	�2*G_�� ϸ'�E3|�.�h��`�)��K�UQ��6|��5�`Iݺ0����W�x���0@�%����p�@~�6L�!�C�m��b��I�r4!òJ���RO���{�%�<ͪrf64��c���=@
�/�Cᷘ�������X��y������2+�-� ,�"���R�e4W������=,�yV}i�p���w�4��N���GX=�.Z�}(�(����:ԁE���ES6�
+%����G��	�k�B�~0���B�5L�)s%J�Y�H���	���7�~i���<S���g�VyQ��E�3w)e'��P��Qf�!��aFN���ڧ
��_�U\��Y��ֲ�J:���Ja��`��-l��Agfz��d���B%�Uu��{{��������R��TE^��<Q?�;�0��X�Y�m�I�Q����x��x�U/�Ӟ=f��r�r�P�-�L��~��h���b���	Tޑq����[;�V���U�«u���+�к%�gZ���D��,�t�sIۮ�$�l(6�o�B�{�?a�C�ܧ�u���t����O�M�kۦ�s:;�^^0�}�7�bx�!>,@ӨR�CJ�n������1%l4�z��1@5���O�Zi�8^�l��t�W�~D��,Vvh3C膙�����9~H�x�N���q�����i���wQ��\p���;X.sB���cJv�q3��ol��^�€*�xgA;mv��!��p�s��iJ�CY���<b���:���Wj0!�u�h*b�uٯ�}�aw�7y���ԇ��(S�X�u?��
+0�!j
�:�4�Q-��� ��R��ި�h[kwcx������F���N_�^)�m+���Rmcۛ.8T[��$J6�����
+�I�H�?V��9�8�cn3�r'qN��Y��15(�n m���EW�
Q�"4&�J`�	L��ϭ��ET���Ԏ(R������c��U�eLtw)!�0�������ݔ�Y�_�}
�H���1h	9��A�uD�����@ܧ�^����N�y�I��I���E�k5����ѝm<�H��g�'$!0���/H�\3_z:OxX@"CaJY��t7p*6��ti>o�m�8>=�u��.���?ߐ�>
+endstream
+endobj
+12751 0 obj
+<<
+/Type /Page
+/Contents 12752 0 R
+/Resources 12750 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12581 0 R
+/Annots [ 12692 0 R 12693 0 R 12734 0 R 12735 0 R 12736 0 R 12737 0 R 12738 0 R 12739 0 R 12740 0 R 12741 0 R 12742 0 R 12743 0 R 12744 0 R 12745 0 R 12746 0 R 12747 0 R ]
+>>
+endobj
+12692 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 720.106 168.101 726.666]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+12693 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 704.166 172.286 710.726]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+12734 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 600.554 92.784 607.115]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a909590437de40c1fdff2b8a2c3c934de) >>
+>>
+endobj
+12735 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [174.478 599.745 214.129 606.543]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast_a909590437de40c1fdff2b8a2c3c934de) >>
+>>
+endobj
+12736 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [191.215 583.648 268.525 591.175]
+/A << /S /GoTo /D (class_u_d_p_1_1_configuration) >>
+>>
+endobj
+12737 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 388.498 212.775 397.269]
+/A << /S /GoTo /D (_exception_8cpp) >>
+>>
+endobj
+12738 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 379.638 184.839 387.164]
+/A << /S /GoTo /D (_exception_8h) >>
+>>
+endobj
+12739 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 364.663 92.784 371.224]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception_a303fac04b1c83a4c5f8119344b6d8ec1) >>
+>>
+endobj
+12740 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 363.697 201.576 371.224]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception_a303fac04b1c83a4c5f8119344b6d8ec1) >>
+>>
+endobj
+12741 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 332.783 92.784 339.343]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception_a825ce3fc0f996f9de64b075bad9bc7e0) >>
+>>
+endobj
+12742 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [94.976 331.817 205.76 339.343]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception_a825ce3fc0f996f9de64b075bad9bc7e0) >>
+>>
+endobj
+12743 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.694 146.921 182.97 157.189]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+12744 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.95 133.849 127.977 141.757]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+12745 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.228 133.922 166.55 141.757]
+/A << /S /GoTo /D (class_u_d_p_1_1_broadcast) >>
+>>
+endobj
+12746 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [166.801 132.316 204.227 141.757]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+12747 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.616 69.686 164.536 78.251]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+12753 0 obj
+<<
+/D [12751 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+12754 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 769.031 null]
+>>
+endobj
+12755 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 761.061 null]
+>>
+endobj
+12756 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 753.091 null]
+>>
+endobj
+12757 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 745.121 null]
+>>
+endobj
+12758 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 737.151 null]
+>>
+endobj
+12759 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 729.181 null]
+>>
+endobj
+12760 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 721.21 null]
+>>
+endobj
+12761 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 713.24 null]
+>>
+endobj
+12762 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 705.27 null]
+>>
+endobj
+12763 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 697.3 null]
+>>
+endobj
+12764 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 689.33 null]
+>>
+endobj
+12765 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 681.36 null]
+>>
+endobj
+12766 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 673.39 null]
+>>
+endobj
+12767 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 665.42 null]
+>>
+endobj
+12768 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 657.45 null]
+>>
+endobj
+12769 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 649.479 null]
+>>
+endobj
+12770 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 641.509 null]
+>>
+endobj
+12771 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 633.539 null]
+>>
+endobj
+12772 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 617.599 null]
+>>
+endobj
+3917 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 609.629 null]
+>>
+endobj
+12773 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 601.659 null]
+>>
+endobj
+12774 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 593.689 null]
+>>
+endobj
+12775 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 585.719 null]
+>>
+endobj
+12776 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 577.748 null]
+>>
+endobj
+12777 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 569.778 null]
+>>
+endobj
+3384 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 561.7 null]
+>>
+endobj
+2262 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 545.429 null]
+>>
+endobj
+4803 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 469.765 null]
+>>
+endobj
+2266 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 453.494 null]
+>>
+endobj
+12778 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 389.678 null]
+>>
+endobj
+12779 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 381.708 null]
+>>
+endobj
+4802 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 373.738 null]
+>>
+endobj
+12780 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 365.768 null]
+>>
+endobj
+12781 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 357.797 null]
+>>
+endobj
+12782 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 349.827 null]
+>>
+endobj
+4871 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 341.857 null]
+>>
+endobj
+12783 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 333.887 null]
+>>
+endobj
+12784 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 325.917 null]
+>>
+endobj
+3385 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 317.18 null]
+>>
+endobj
+2270 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 300.909 null]
+>>
+endobj
+12785 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 187.279 null]
+>>
+endobj
+12786 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 108.34 null]
+>>
+endobj
+4801 0 obj
+<<
+/D [12751 0 R /XYZ 70.866 59.768 null]
+>>
+endobj
+12750 0 obj
+<<
+/Font << /F48 2333 0 R /F54 2381 0 R /F33 2286 0 R /F22 2379 0 R /F73 2949 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12794 0 obj
+<<
+/Length 636       
+/Filter /FlateDecode
+>>
+stream
+xڥU[o�0~�WX�L��6&�<Li#U}�%{ʪ��� %��ZU�o��!M�=a������� �̬Os���@@�s
+���CPp<�@��<ۇ1gL<a_>�r[�iW����T@&���=	�J�u9�~YXY���B@A\n��-��w
�������B�R�^�o�uXb}�Y�&�uxb�P��e�dˊ�י�Hi#oƔA���5KM�E�]I���p��I���)��}�ܬ~ D���̆�I�⊹�Cߣ����� *�o�Ja���I�-�=X��J��6���ћ4	e��� N��.�a4����I^I�ׂ����8D����yI]
+O��uje�*9�<�N��̷AG�>5�����^L|�e��Ӑ�]�w���Ҳ�u��m����f��þy�NOt�1#/��\ut��[�a_PuM�I�K�x#�,K�~�ܞ���D}���@V�3RJ���H�4L�:M=�,��pG�*�ڠ�%�p�1$�*��:-)W�����8�U�|����Bn���QO����c� ��+"��V����➩��;��a�G����ЯU����b��s�o2��kfa=9$w#�US��SK&2
+�1t�d?��4u(��倴eҥ��cШ
+endstream
+endobj
+12793 0 obj
+<<
+/Type /Page
+/Contents 12794 0 R
+/Resources 12792 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12581 0 R
+/Annots [ 12748 0 R 12749 0 R 12787 0 R 12788 0 R 12789 0 R 12790 0 R 12791 0 R ]
+>>
+endobj
+12748 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 724.275 212.775 733.046]
+/A << /S /GoTo /D (_exception_8h) >>
+>>
+endobj
+12749 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 708.41 184.839 714.971]
+/A << /S /GoTo /D (_u_d_p_2constants_8h) >>
+>>
+endobj
+12787 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.819 692.47 151.364 698.459]
+/A << /S /GoTo /D (namespace_u_d_p) >>
+>>
+endobj
+12788 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [69.87 676.53 92.784 683.09]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+12789 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.556 675.564 193.207 683.09]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+12790 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 643.684 168.101 651.21]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+12791 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.45 627.743 172.286 635.27]
+/A << /S /GoTo /D (class_u_d_p_1_1_exception) >>
+>>
+endobj
+12795 0 obj
+<<
+/D [12793 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2274 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 771.024 null]
+>>
+endobj
+12796 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 725.455 null]
+>>
+endobj
+12797 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 717.485 null]
+>>
+endobj
+12798 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 709.515 null]
+>>
+endobj
+12799 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 701.545 null]
+>>
+endobj
+12800 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 693.575 null]
+>>
+endobj
+4800 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 685.604 null]
+>>
+endobj
+12801 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 677.634 null]
+>>
+endobj
+12802 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 669.664 null]
+>>
+endobj
+12803 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 661.694 null]
+>>
+endobj
+12804 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 653.724 null]
+>>
+endobj
+12805 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 645.754 null]
+>>
+endobj
+12806 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 637.784 null]
+>>
+endobj
+12807 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 629.814 null]
+>>
+endobj
+12808 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 621.844 null]
+>>
+endobj
+12809 0 obj
+<<
+/D [12793 0 R /XYZ 70.866 613.873 null]
+>>
+endobj
+12792 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F54 2381 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12812 0 obj
+<<
+/Length 212       
+/Filter /FlateDecode
+>>
+stream
+xڕ��N1��<��d�qǗ[�R7D��C酪R�*�!���^9&&[��O�@�2���-9C�V$By��0�@����
>�mYC�]d��i�<��[�&ۇ����ø���5�ż�I���s`��f�%�t�%�>�d�"&�ڟ��<�ys��)!E��l,�1'ƔX+�"'�U��n��M����Y�E�_��[x���;?��߉�M�
+endstream
+endobj
+12811 0 obj
+<<
+/Type /Page
+/Contents 12812 0 R
+/Resources 12810 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12581 0 R
+>>
+endobj
+12813 0 obj
+<<
+/D [12811 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+12810 0 obj
+<<
+/Font << /F48 2333 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12875 0 obj
+<<
+/Length 1294      
+/Filter /FlateDecode
+>>
+stream
+x��ZQs�8~���fjE��<7���I�i�6�wI�CAgӳ!gp����81q ���<�e���v��"hM,h`�	0-~����?�;`��1p!ǖ���A�S
+b�Y��QI!���쿽�r��u-cn��ZC
+�|w��ѱ����~�j�!B@PZ
+�i��A�g�6���ց��"ŏ�Áu>��@���Y�K6�xㅽ@�`���:HЅ�K5�<����d�i�A���a�<���ӫ��Z�`W�`�(_���x�\8�A�I#��}����4o���ͨ�J5����^��z&�2i���ѻѨ�2@�n?��G˹	c%f����=��U(/[n���	���Hws��.�Klb���!2�BjY|gYU�{��7�ZH�g�n$|)��pV]U�k�^L���k���0��C�]��u�[�n����6�W��P��7A6�����F�� ���<��U���U
+�
+��Q���s�뜹o�|m�3��b���3G��U��\��RT�Y�uo��
y����mp$S�\���$RQ!����O�u��s�Up��k(8�ۧaY�FY�p����D�� @��H�f�2�H�2�++}�ug�v�-����Tf�r6��7��(ˍ�$�%�T�����`jo)%ؚ�	3�]�œ�؅K!#�~ڰ�Mխ1�����z�le30�m|���`.��bS��9��z%ê�qd
�S ^j	��q:�EF�O�:_���ʀq��,oO���0��g8���|�Фyх̗*�*x���w9yp����`��cnQ��P�d6K�!�����h���4�2��k�:0j�����I�<
�������z<�A$]-\�
0%��4Ƀ8�A���X��h�C��ŀC�+�C�{�ȟ��m�b�b��K���R��{��k�AW����F[�?9y�u��J�H���I*���\�23�����l
ƃ��:�m1���??���u+�h3,��v_0� ��`��w����FV��Gm2�S�m��O6g��s�K�Y������ɰ6��gZ�L�~>Z9@P��}���x-���ݎ�0ت�qhd��}7oXq&�d��,[��H=��V0��J����`�VN����x�֊���l��]�h�l�Q�5�s�!}���� ��l���̸."�ED�V;��ܐ~���Jiu���^�
+`8��V���ւ�����[�����v��:|,�ȩ�����sC�P�X�C���:De�-���W��v���DqJh�e�.��9
+endstream
+endobj
+12874 0 obj
+<<
+/Type /Page
+/Contents 12875 0 R
+/Resources 12873 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12877 0 R
+/Annots [ 12814 0 R 12815 0 R 12816 0 R 12817 0 R 12818 0 R 12819 0 R 12820 0 R 12821 0 R 12822 0 R 12823 0 R 12824 0 R 12825 0 R 12826 0 R 12827 0 R 12828 0 R 12829 0 R 12830 0 R 12831 0 R 12832 0 R 12833 0 R 12834 0 R 12835 0 R 12836 0 R 12837 0 R 12838 0 R 12839 0 R 12840 0 R 12841 0 R 12842 0 R 12843 0 R 12844 0 R 12845 0 R 12846 0 R 12847 0 R 12848 0 R 12849 0 R 12850 0 R 12851 0 R 12852 0 R 12853 0 R 12854 0 R 12855 0 R 12856 0 R 12857 0 R 12858 0 R 12859 0 R 12860 0 R 12861 0 R 12862 0 R 12863 0 R 12864 0 R 12865 0 R 12866 0 R 12867 0 R 12868 0 R 12869 0 R 12870 0 R 12871 0 R ]
+>>
+endobj
+12814 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.499 641.046 157.447 650.754]
+/A << /S /GoTo /D (page.149) >>
+>>
+endobj
+12815 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [160.44 641.046 177.388 650.754]
+/A << /S /GoTo /D (page.152) >>
+>>
+endobj
+12816 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [159.059 617.136 171.022 626.844]
+/A << /S /GoTo /D (page.30) >>
+>>
+endobj
+12817 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.22 592.557 190.183 603.14]
+/A << /S /GoTo /D (page.34) >>
+>>
+endobj
+12818 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [171.925 580.602 183.888 591.184]
+/A << /S /GoTo /D (page.39) >>
+>>
+endobj
+12819 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 557.36 165.05 567.274]
+/A << /S /GoTo /D (page.53) >>
+>>
+endobj
+12820 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.529 533.449 155.492 543.364]
+/A << /S /GoTo /D (page.63) >>
+>>
+endobj
+12821 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.358 508.979 176.321 519.453]
+/A << /S /GoTo /D (page.67) >>
+>>
+endobj
+12822 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.064 497.024 170.027 507.292]
+/A << /S /GoTo /D (page.68) >>
+>>
+endobj
+12823 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.431 473.006 201.394 483.588]
+/A << /S /GoTo /D (page.71) >>
+>>
+endobj
+12824 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [154.585 449.763 166.548 459.678]
+/A << /S /GoTo /D (page.78) >>
+>>
+endobj
+12825 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [150.586 425.853 162.549 435.767]
+/A << /S /GoTo /D (page.85) >>
+>>
+endobj
+12826 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.112 401.382 158.075 411.857]
+/A << /S /GoTo /D (page.91) >>
+>>
+endobj
+12827 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [205.427 377.472 217.39 387.947]
+/A << /S /GoTo /D (page.98) >>
+>>
+endobj
+12828 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.179 354.122 179.127 364.036]
+/A << /S /GoTo /D (page.104) >>
+>>
+endobj
+12829 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [193.493 329.544 210.441 340.126]
+/A << /S /GoTo /D (page.111) >>
+>>
+endobj
+12830 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [206.099 317.588 223.047 328.171]
+/A << /S /GoTo /D (page.113) >>
+>>
+endobj
+12831 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [172.575 305.633 189.523 316.216]
+/A << /S /GoTo /D (page.110) >>
+>>
+endobj
+12832 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.543 282.391 178.491 292.099]
+/A << /S /GoTo /D (page.116) >>
+>>
+endobj
+12833 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.627 258.481 166.575 268.395]
+/A << /S /GoTo /D (page.123) >>
+>>
+endobj
+12834 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.6 233.902 164.548 244.485]
+/A << /S /GoTo /D (page.125) >>
+>>
+endobj
+12835 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.122 210.66 157.07 220.574]
+/A << /S /GoTo /D (page.129) >>
+>>
+endobj
+12836 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.236 186.189 213.184 196.664]
+/A << /S /GoTo /D (page.135) >>
+>>
+endobj
+12837 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.627 152.877 166.575 162.791]
+/A << /S /GoTo /D (page.123) >>
+>>
+endobj
+12838 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 140.921 165.05 150.836]
+/A << /S /GoTo /D (page.54) >>
+>>
+endobj
+12839 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [154.585 117.011 166.548 126.925]
+/A << /S /GoTo /D (page.78) >>
+>>
+endobj
+12840 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [169.54 117.011 181.503 126.925]
+/A << /S /GoTo /D (page.79) >>
+>>
+endobj
+12841 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [159.059 93.101 171.022 102.809]
+/A << /S /GoTo /D (page.30) >>
+>>
+endobj
+12842 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [154.585 69.19 166.548 79.105]
+/A << /S /GoTo /D (page.80) >>
+>>
+endobj
+12843 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 641.046 410.244 650.754]
+/A << /S /GoTo /D (page.121) >>
+>>
+endobj
+12844 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 617.136 410.244 626.844]
+/A << /S /GoTo /D (page.121) >>
+>>
+endobj
+12845 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 593.225 410.244 602.933]
+/A << /S /GoTo /D (page.116) >>
+>>
+endobj
+12846 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [441.618 569.315 453.581 579.229]
+/A << /S /GoTo /D (page.47) >>
+>>
+endobj
+12847 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [438.13 557.36 450.093 567.274]
+/A << /S /GoTo /D (page.50) >>
+>>
+endobj
+12848 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [434.642 544.844 446.605 555.319]
+/A << /S /GoTo /D (page.43) >>
+>>
+endobj
+12849 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [346.967 511.532 358.93 521.446]
+/A << /S /GoTo /D (page.19) >>
+>>
+endobj
+12850 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [390.812 487.621 402.775 497.329]
+/A << /S /GoTo /D (page.30) >>
+>>
+endobj
+12851 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 463.151 444.937 473.625]
+/A << /S /GoTo /D (page.135) >>
+>>
+endobj
+12852 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.84 429.838 396.803 439.752]
+/A << /S /GoTo /D (page.55) >>
+>>
+endobj
+12853 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.184 417.215 433.147 427.797]
+/A << /S /GoTo /D (page.71) >>
+>>
+endobj
+12854 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.973 393.305 421.936 403.887]
+/A << /S /GoTo /D (page.34) >>
+>>
+endobj
+12855 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [425.246 369.394 442.194 379.976]
+/A << /S /GoTo /D (page.112) >>
+>>
+endobj
+12856 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.852 357.439 454.8 368.021]
+/A << /S /GoTo /D (page.113) >>
+>>
+endobj
+12857 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.328 345.484 421.276 356.066]
+/A << /S /GoTo /D (page.110) >>
+>>
+endobj
+12858 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [441.618 322.242 453.581 332.156]
+/A << /S /GoTo /D (page.47) >>
+>>
+endobj
+12859 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [438.13 310.286 450.093 320.201]
+/A << /S /GoTo /D (page.50) >>
+>>
+endobj
+12860 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [434.642 297.771 446.605 308.245]
+/A << /S /GoTo /D (page.43) >>
+>>
+endobj
+12861 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.184 285.708 433.147 296.29]
+/A << /S /GoTo /D (page.72) >>
+>>
+endobj
+12862 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.84 262.466 396.803 272.38]
+/A << /S /GoTo /D (page.60) >>
+>>
+endobj
+12863 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.282 238.555 387.245 248.47]
+/A << /S /GoTo /D (page.63) >>
+>>
+endobj
+12864 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.973 213.977 421.936 224.559]
+/A << /S /GoTo /D (page.35) >>
+>>
+endobj
+12865 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [403.678 190.067 415.641 200.649]
+/A << /S /GoTo /D (page.40) >>
+>>
+endobj
+12866 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [381.379 166.824 398.328 176.739]
+/A << /S /GoTo /D (page.124) >>
+>>
+endobj
+12867 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [396.111 142.354 408.074 152.828]
+/A << /S /GoTo /D (page.67) >>
+>>
+endobj
+12868 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.973 118.336 421.936 128.918]
+/A << /S /GoTo /D (page.33) >>
+>>
+endobj
+12869 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [403.678 106.381 415.641 116.963]
+/A << /S /GoTo /D (page.39) >>
+>>
+endobj
+12870 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [342.977 82.578 359.925 92.846]
+/A << /S /GoTo /D (page.145) >>
+>>
+endobj
+12871 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [362.918 82.578 379.866 92.846]
+/A << /S /GoTo /D (page.147) >>
+>>
+endobj
+12876 0 obj
+<<
+/D [12874 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+2278 0 obj
+<<
+/D [12874 0 R /XYZ 70.866 665.287 null]
+>>
+endobj
+12873 0 obj
+<<
+/Font << /F67 2922 0 R /F33 2286 0 R /F25 2380 0 R /F22 2379 0 R /F48 2333 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+12954 0 obj
+<<
+/Length 1408      
+/Filter /FlateDecode
+>>
+stream
+x��Z[s�8~�W�f���%fgҐ4݆����N�a\�;�M��&�~el�`lK4&ˤ��= ��w�::c:ǭ���
+G��9q�o����q%9^�\�1��/��b%z����a�S�C��nZHtO@ 0uF׭�/�	�oo��?˕�e�%�+���
+E��$�Ԥ9p%��;��`����_ӗ�i<Q�K�2Q��\���-粋]�F��2^�����eT?��z��F~���N��$���SEa�F�������`���Q8L��*Z$�xSV�U~����m?�oB�R�8�äR�������L3��*Q�t��#���c�:�ڹ���V����S�Z�u���Eg)�m��+!����^B�.��F+�".��r`�bm0�t��'��ρg�L�:���g�y�6b�„�3f6���ں��(�Bm�Jm�E�/%�	�MY��"��
nB��O��m@X�dc��
}`��O���flRWت�!X�H�F0'*L���LUF�k��u潊��|�L����L�=�w0K�gW�O�p���������J�d.�����P�� ��+?1As�G�O�چ"�u��o]�
�$*�ğiu�b#}@���+�)�U~����J�'~yy������!�bM��i����5��J�h���:������^A��
+Ѣ��t�Ÿ��v��G����3-�Y�^��f�k�#p���z��rRh��vT��*f��?�pZ�'51X��ɽw�LM��_B��~��`u]
+ �k�I���I^�q��P�j�՝�|{emΆ��G�x��o�l~sǼR׺O6p�6��Ppqr6xL�D�F�i\9�a����}8xۯ�g�\�nF'7M#d�B�U�ک��a�4/�
m�j��1��^D�l�����p���T-�t���l��	�&zR��������������B�Y���v��SƏ��_k����ִD]����t��ϔ������Ů�-���6�	Q��BAɕLg���̀HM�dD�Aydó�`WlD3���u�;P���i�"v"��b#��v���LOq�3Z��H8�y�K`{�/���kĵ��}���2k�=�tE�A]3�<�&�O�0��N�ۍw���5�W&�0PW*iL��)(�WAut,V7�hRڧ���*i�����v"�ve������v"�����O������=Zz�gi����̢����m�'��S��`.��?�Kʮ~����*	���$u�p�xR
����-q��_�z�׾�O�_0�Pb�N2�vr�E�i���Rg7�V�SVob�8���NU2���qDޫ��2ބD�@$�麭G�"�E�%�n����4�n�2�nG�������v9]N7�Q����p�B5�d���w��a�<ݍuN�m�ɪe�v	�
+endstream
+endobj
+12953 0 obj
+<<
+/Type /Page
+/Contents 12954 0 R
+/Resources 12952 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12877 0 R
+/Annots [ 12872 0 R 12878 0 R 12879 0 R 12880 0 R 12881 0 R 12882 0 R 12883 0 R 12884 0 R 12885 0 R 12886 0 R 12887 0 R 12888 0 R 12889 0 R 12890 0 R 12891 0 R 12892 0 R 12893 0 R 12894 0 R 12895 0 R 12896 0 R 12897 0 R 12898 0 R 12899 0 R 12900 0 R 12901 0 R 12902 0 R 12903 0 R 12904 0 R 12905 0 R 12906 0 R 12907 0 R 12908 0 R 12909 0 R 12910 0 R 12911 0 R 12912 0 R 12913 0 R 12914 0 R 12915 0 R 12916 0 R 12917 0 R 12918 0 R 12919 0 R 12920 0 R 12921 0 R 12922 0 R 12923 0 R 12924 0 R 12925 0 R 12926 0 R 12927 0 R 12928 0 R 12929 0 R 12930 0 R 12931 0 R 12932 0 R 12933 0 R 12934 0 R 12935 0 R 12936 0 R 12937 0 R 12938 0 R 12939 0 R 12940 0 R 12941 0 R 12942 0 R 12943 0 R 12944 0 R 12945 0 R 12946 0 R 12947 0 R 12948 0 R 12949 0 R 12950 0 R ]
+>>
+endobj
+12872 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.179 758.738 179.127 768.652]
+/A << /S /GoTo /D (page.104) >>
+>>
+endobj
+12878 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [159.059 746.783 171.022 756.491]
+/A << /S /GoTo /D (page.31) >>
+>>
+endobj
+12879 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.179 722.872 179.127 732.786]
+/A << /S /GoTo /D (page.105) >>
+>>
+endobj
+12880 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.22 698.294 190.183 708.876]
+/A << /S /GoTo /D (page.35) >>
+>>
+endobj
+12881 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [205.427 674.491 222.375 684.966]
+/A << /S /GoTo /D (page.102) >>
+>>
+endobj
+12882 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.534 651.141 178.482 660.849]
+/A << /S /GoTo /D (page.149) >>
+>>
+endobj
+12883 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [181.475 651.141 198.423 660.849]
+/A << /S /GoTo /D (page.152) >>
+>>
+endobj
+12884 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [209.865 627.231 221.828 637.145]
+/A << /S /GoTo /D (page.46) >>
+>>
+endobj
+12885 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [224.82 627.231 236.783 637.145]
+/A << /S /GoTo /D (page.47) >>
+>>
+endobj
+12886 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [206.377 615.276 218.34 625.19]
+/A << /S /GoTo /D (page.49) >>
+>>
+endobj
+12887 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.889 602.76 214.852 613.235]
+/A << /S /GoTo /D (page.42) >>
+>>
+endobj
+12888 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.543 579.41 178.491 589.118]
+/A << /S /GoTo /D (page.121) >>
+>>
+endobj
+12889 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.236 554.94 213.184 565.414]
+/A << /S /GoTo /D (page.142) >>
+>>
+endobj
+12890 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [154.585 531.59 166.548 541.504]
+/A << /S /GoTo /D (page.80) >>
+>>
+endobj
+12891 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.112 519.074 158.075 529.549]
+/A << /S /GoTo /D (page.91) >>
+>>
+endobj
+12892 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [205.427 507.119 217.39 517.593]
+/A << /S /GoTo /D (page.98) >>
+>>
+endobj
+12893 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.236 495.164 213.184 505.638]
+/A << /S /GoTo /D (page.136) >>
+>>
+endobj
+12894 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 461.851 127.177 471.765]
+/A << /S /GoTo /D (page.20) >>
+>>
+endobj
+12895 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 437.941 127.177 447.855]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+12896 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 414.03 127.177 423.945]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+12897 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 390.12 127.177 400.034]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+12898 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 366.21 127.177 376.124]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+12899 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 342.299 127.177 352.214]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+12900 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 318.389 127.177 328.303]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+12901 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 294.479 127.177 304.393]
+/A << /S /GoTo /D (page.22) >>
+>>
+endobj
+12902 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 270.568 165.05 280.483]
+/A << /S /GoTo /D (page.60) >>
+>>
+endobj
+12903 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 246.658 127.177 256.572]
+/A << /S /GoTo /D (page.19) >>
+>>
+endobj
+12904 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.179 222.748 179.127 232.662]
+/A << /S /GoTo /D (page.105) >>
+>>
+endobj
+12905 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 198.837 127.177 208.752]
+/A << /S /GoTo /D (page.19) >>
+>>
+endobj
+12906 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 164.964 165.05 174.879]
+/A << /S /GoTo /D (page.53) >>
+>>
+endobj
+12907 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 141.054 127.177 150.968]
+/A << /S /GoTo /D (page.19) >>
+>>
+endobj
+12908 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.529 117.144 155.492 127.058]
+/A << /S /GoTo /D (page.62) >>
+>>
+endobj
+12909 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.485 117.144 170.448 127.058]
+/A << /S /GoTo /D (page.63) >>
+>>
+endobj
+12910 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.722 92.565 144.67 103.148]
+/A << /S /GoTo /D (page.170) >>
+>>
+endobj
+12911 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.722 68.655 144.67 79.237]
+/A << /S /GoTo /D (page.170) >>
+>>
+endobj
+12912 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [396.111 746.222 408.074 756.697]
+/A << /S /GoTo /D (page.66) >>
+>>
+endobj
+12913 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [389.817 734.267 401.78 744.535]
+/A << /S /GoTo /D (page.68) >>
+>>
+endobj
+12914 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.184 700.286 433.147 710.869]
+/A << /S /GoTo /D (page.70) >>
+>>
+endobj
+12915 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [458.645 676.484 475.593 686.958]
+/A << /S /GoTo /D (page.183) >>
+>>
+endobj
+12916 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [453.668 664.529 470.617 675.003]
+/A << /S /GoTo /D (page.183) >>
+>>
+endobj
+12917 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [445.832 652.466 462.78 663.048]
+/A << /S /GoTo /D (page.184) >>
+>>
+endobj
+12918 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 628.663 444.937 639.138]
+/A << /S /GoTo /D (page.137) >>
+>>
+endobj
+12919 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.84 605.313 396.803 615.227]
+/A << /S /GoTo /D (page.55) >>
+>>
+endobj
+12920 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [386.338 581.403 398.301 591.317]
+/A << /S /GoTo /D (page.78) >>
+>>
+endobj
+12921 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 547.53 410.244 557.238]
+/A << /S /GoTo /D (page.116) >>
+>>
+endobj
+12922 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.84 535.575 396.803 545.489]
+/A << /S /GoTo /D (page.55) >>
+>>
+endobj
+12923 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 511.664 410.244 521.372]
+/A << /S /GoTo /D (page.117) >>
+>>
+endobj
+12924 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.865 499.149 389.827 509.623]
+/A << /S /GoTo /D (page.92) >>
+>>
+endobj
+12925 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 475.799 410.244 485.507]
+/A << /S /GoTo /D (page.117) >>
+>>
+endobj
+12926 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 451.888 410.244 461.596]
+/A << /S /GoTo /D (page.118) >>
+>>
+endobj
+12927 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [386.338 439.933 398.301 449.847]
+/A << /S /GoTo /D (page.81) >>
+>>
+endobj
+12928 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.865 427.418 389.827 437.892]
+/A << /S /GoTo /D (page.92) >>
+>>
+endobj
+12929 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.18 415.463 449.143 425.937]
+/A << /S /GoTo /D (page.99) >>
+>>
+endobj
+12930 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 403.507 444.937 413.982]
+/A << /S /GoTo /D (page.137) >>
+>>
+endobj
+12931 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 380.157 410.244 389.865]
+/A << /S /GoTo /D (page.118) >>
+>>
+endobj
+12932 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 356.247 410.244 365.955]
+/A << /S /GoTo /D (page.119) >>
+>>
+endobj
+12933 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 343.732 444.937 354.206]
+/A << /S /GoTo /D (page.138) >>
+>>
+endobj
+12934 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 320.382 410.244 330.09]
+/A << /S /GoTo /D (page.119) >>
+>>
+endobj
+12935 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.18 307.866 449.143 318.341]
+/A << /S /GoTo /D (page.99) >>
+>>
+endobj
+12936 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 284.516 410.244 294.224]
+/A << /S /GoTo /D (page.120) >>
+>>
+endobj
+12937 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [386.338 272.561 398.301 282.475]
+/A << /S /GoTo /D (page.81) >>
+>>
+endobj
+12938 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 248.651 410.244 258.359]
+/A << /S /GoTo /D (page.120) >>
+>>
+endobj
+12939 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.865 236.135 389.827 246.61]
+/A << /S /GoTo /D (page.93) >>
+>>
+endobj
+12940 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.339 212.785 394.302 222.699]
+/A << /S /GoTo /D (page.85) >>
+>>
+endobj
+12941 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 200.27 444.937 210.744]
+/A << /S /GoTo /D (page.143) >>
+>>
+endobj
+12942 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.339 176.92 394.302 186.834]
+/A << /S /GoTo /D (page.85) >>
+>>
+endobj
+12943 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.973 152.341 421.936 162.923]
+/A << /S /GoTo /D (page.35) >>
+>>
+endobj
+12944 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [330.019 141.054 341.982 150.762]
+/A << /S /GoTo /D (page.15) >>
+>>
+endobj
+12945 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [345.47 129.099 357.433 138.807]
+/A << /S /GoTo /D (page.15) >>
+>>
+endobj
+12946 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [360.919 117.144 372.882 126.852]
+/A << /S /GoTo /D (page.15) >>
+>>
+endobj
+12947 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [359.923 104.628 371.886 114.897]
+/A << /S /GoTo /D (page.16) >>
+>>
+endobj
+12948 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [366.899 92.673 378.862 102.941]
+/A << /S /GoTo /D (page.16) >>
+>>
+endobj
+12949 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.952 81.278 363.915 91.192]
+/A << /S /GoTo /D (page.16) >>
+>>
+endobj
+12950 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [373.37 69.323 390.319 79.031]
+/A << /S /GoTo /D (page.114) >>
+>>
+endobj
+12955 0 obj
+<<
+/D [12953 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+12952 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+13052 0 obj
+<<
+/Length 1510      
+/Filter /FlateDecode
+>>
+stream
+x��Z]s�8}���ўY���!<;��m�m�i҆��L�a((6]��m��W�&� al�O!6>�ܫ�s�>�17��j��={i2��Rb�w�
�԰(2�и�~����g��a,��O�/0F��х;�!�)4��1��i���gh��7�aƷ�ͥaZX&ϱq3z?�Ia�p)L%)���e�	(�?{I�C��6�-�<K�u�+iV����W#�v�m6F��/T�i�2E8�Ua�q�N�5�6Ap�Co��Ef*�:D;h؍��'S�o4����i
�Z�o������h��$�I�����O˜�S�x!�y�Ʋu���������(M�9��u�a
$�P�ǔ��=u:8:`+?G�J3e�0�B*���}��܋�;��p��Y
BB��>����^�f7\Ȅ���[c�Vď���fFG\�� �}a�B��Z��N�tœC!�6����W��g�h��#,0�0�$����m)ps���lv���T,FicTnǪ��.j�t݄�\E3�KQ�F��RA]}���C���m��v�V
���	�3#�W>rE�^I�Q��1�y�1HD�x������+��f���G�B���҈� pW�s�����&E+��)�&?JD�R��ե&�?:��[�A�M�}Ý�:#fU�s�v-����P�"&�^L� ;��߻�� �9����˱���6w-�V��t�wO�!:�'Z�-յ�ћBi)�g��+-�/VnՈ��r��~���+ljz���@�+=�ӧ����L�O�yQ��.���6�d-[ZUV��_���8��Je״z�5ȴ;ã���Z��X�ˎSz���<���jH�e"�T���
+�����60Q�0;�,#5�!�P�9<�x���	0x2�3ᰈ(e0�Iv__^�����t�!E����2e��a���Y��j����D�t���`?��U����#z/��߽5A�0z67���h
S���:gp�'����2a�=���ʓ�<?��]
+�������k,EC��u��F��i��-X��a��������θ���^�\�T�nr$�D�<�2��O�՛�5��:��eu�s��u%�0×[ro��f�to�QC5���* ��8/�s�~��~:A�'&7W���;���������k���~MT�~����C�u��X��ޅ�E-
$a�s�$G'�0;NO�)l7�#	����Яz��MO{G+�O�L�l�J
��q Q�O�mh���ђ�E�e�(.��
+����@<�^#�����2�T^<H��P�|1!��w�:M"dY����)��6l��їl�|�+龍P�V��6����*_�4��]�x�r���\h� �)�Yۺ���i�{�4­͆�
+��^��Q��p�>�����E뾒���(�	1=��'9E^��`�/k�"��µW�G�ۿm�-@�c��|��	I����&�iJ��z��\��iwɨ�z~���)6s!�B�GT����v�
+endstream
+endobj
+13051 0 obj
+<<
+/Type /Page
+/Contents 13052 0 R
+/Resources 13050 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12877 0 R
+/Annots [ 12951 0 R 12956 0 R 12957 0 R 12958 0 R 12959 0 R 12960 0 R 12961 0 R 12962 0 R 12963 0 R 12964 0 R 12965 0 R 12966 0 R 12967 0 R 12968 0 R 12969 0 R 12970 0 R 12971 0 R 12972 0 R 12973 0 R 12974 0 R 12975 0 R 12976 0 R 12977 0 R 12978 0 R 12979 0 R 12980 0 R 12981 0 R 12982 0 R 12983 0 R 12984 0 R 12985 0 R 12986 0 R 12987 0 R 12988 0 R 12989 0 R 12990 0 R 12991 0 R 12992 0 R 12993 0 R 12994 0 R 12995 0 R 12996 0 R 12997 0 R 12998 0 R 12999 0 R 13000 0 R 13001 0 R 13002 0 R 13003 0 R 13004 0 R 13005 0 R 13006 0 R 13007 0 R 13008 0 R 13009 0 R 13010 0 R 13011 0 R 13012 0 R 13013 0 R 13014 0 R 13015 0 R 13016 0 R 13017 0 R 13018 0 R 13019 0 R 13020 0 R 13021 0 R 13022 0 R 13023 0 R 13024 0 R 13025 0 R 13026 0 R 13027 0 R 13028 0 R 13029 0 R 13030 0 R 13031 0 R 13032 0 R 13033 0 R 13034 0 R 13035 0 R 13036 0 R 13037 0 R 13038 0 R 13039 0 R 13040 0 R 13041 0 R 13042 0 R 13043 0 R 13044 0 R 13045 0 R 13046 0 R 13047 0 R 13048 0 R ]
+>>
+endobj
+12951 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.896 758.738 157.844 768.446]
+/A << /S /GoTo /D (page.116) >>
+>>
+endobj
+12956 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.322 746.783 181.27 756.491]
+/A << /S /GoTo /D (page.121) >>
+>>
+endobj
+12957 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [156.477 734.159 173.425 744.535]
+/A << /S /GoTo /D (page.121) >>
+>>
+endobj
+12958 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.59 722.312 170.538 732.58]
+/A << /S /GoTo /D (page.116) >>
+>>
+endobj
+12959 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.121 710.357 163.069 720.625]
+/A << /S /GoTo /D (page.121) >>
+>>
+endobj
+12960 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.697 698.962 138.645 708.67]
+/A << /S /GoTo /D (page.116) >>
+>>
+endobj
+12961 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.106 687.007 168.054 696.715]
+/A << /S /GoTo /D (page.117) >>
+>>
+endobj
+12962 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.788 674.491 181.737 684.76]
+/A << /S /GoTo /D (page.117) >>
+>>
+endobj
+12963 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.145 662.428 156.093 672.804]
+/A << /S /GoTo /D (page.118) >>
+>>
+endobj
+12964 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.623 651.141 163.571 660.849]
+/A << /S /GoTo /D (page.118) >>
+>>
+endobj
+12965 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.589 638.626 172.537 648.894]
+/A << /S /GoTo /D (page.119) >>
+>>
+endobj
+12966 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [148.613 626.671 165.562 636.939]
+/A << /S /GoTo /D (page.119) >>
+>>
+endobj
+12967 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.628 614.715 160.576 624.984]
+/A << /S /GoTo /D (page.120) >>
+>>
+endobj
+12968 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.145 602.76 156.093 613.029]
+/A << /S /GoTo /D (page.120) >>
+>>
+endobj
+12969 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.852 590.805 160.8 601.28]
+/A << /S /GoTo /D (page.120) >>
+>>
+endobj
+12970 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.147 579.41 150.095 589.118]
+/A << /S /GoTo /D (page.115) >>
+>>
+endobj
+12971 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [129.701 567.455 146.649 577.369]
+/A << /S /GoTo /D (page.122) >>
+>>
+endobj
+12972 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.979 555.5 145.927 565.414]
+/A << /S /GoTo /D (page.123) >>
+>>
+endobj
+12973 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [109.736 543.545 126.684 553.253]
+/A << /S /GoTo /D (page.123) >>
+>>
+endobj
+12974 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.707 531.59 132.656 541.297]
+/A << /S /GoTo /D (page.124) >>
+>>
+endobj
+12975 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.721 519.074 131.669 529.342]
+/A << /S /GoTo /D (page.124) >>
+>>
+endobj
+12976 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.315 507.679 141.263 517.387]
+/A << /S /GoTo /D (page.124) >>
+>>
+endobj
+12977 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.231 495.724 138.179 505.638]
+/A << /S /GoTo /D (page.122) >>
+>>
+endobj
+12978 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.529 461.851 155.492 471.765]
+/A << /S /GoTo /D (page.63) >>
+>>
+endobj
+12979 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.485 461.851 170.448 471.765]
+/A << /S /GoTo /D (page.64) >>
+>>
+endobj
+12980 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 437.941 165.05 447.855]
+/A << /S /GoTo /D (page.56) >>
+>>
+endobj
+12981 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.112 425.425 158.075 435.9]
+/A << /S /GoTo /D (page.93) >>
+>>
+endobj
+12982 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 402.075 127.177 411.989]
+/A << /S /GoTo /D (page.19) >>
+>>
+endobj
+12983 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [154.585 378.165 166.548 388.079]
+/A << /S /GoTo /D (page.82) >>
+>>
+endobj
+12984 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.179 354.255 179.127 364.169]
+/A << /S /GoTo /D (page.105) >>
+>>
+endobj
+12985 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 330.344 165.05 340.258]
+/A << /S /GoTo /D (page.57) >>
+>>
+endobj
+12986 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [209.865 306.434 221.828 316.348]
+/A << /S /GoTo /D (page.47) >>
+>>
+endobj
+12987 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [206.377 294.479 218.34 304.393]
+/A << /S /GoTo /D (page.50) >>
+>>
+endobj
+12988 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.889 281.963 214.852 292.438]
+/A << /S /GoTo /D (page.44) >>
+>>
+endobj
+12989 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.122 270.568 157.07 280.483]
+/A << /S /GoTo /D (page.129) >>
+>>
+endobj
+12990 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 246.658 165.05 256.572]
+/A << /S /GoTo /D (page.57) >>
+>>
+endobj
+12991 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 222.748 165.05 232.662]
+/A << /S /GoTo /D (page.57) >>
+>>
+endobj
+12992 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 198.837 165.05 208.752]
+/A << /S /GoTo /D (page.58) >>
+>>
+endobj
+12993 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [171.925 174.259 183.888 184.841]
+/A << /S /GoTo /D (page.39) >>
+>>
+endobj
+12994 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.191 141.054 130.154 150.762]
+/A << /S /GoTo /D (page.15) >>
+>>
+endobj
+12995 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [164.959 116.476 181.907 127.058]
+/A << /S /GoTo /D (page.145) >>
+>>
+endobj
+12996 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [184.899 116.476 201.848 127.058]
+/A << /S /GoTo /D (page.147) >>
+>>
+endobj
+12997 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 105.189 165.05 115.103]
+/A << /S /GoTo /D (page.58) >>
+>>
+endobj
+12998 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [219.925 80.718 236.873 91.192]
+/A << /S /GoTo /D (page.191) >>
+>>
+endobj
+12999 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [221.405 68.763 238.353 79.237]
+/A << /S /GoTo /D (page.191) >>
+>>
+endobj
+13000 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [448.181 758.177 465.129 768.652]
+/A << /S /GoTo /D (page.191) >>
+>>
+endobj
+13001 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [440.345 746.115 457.293 756.697]
+/A << /S /GoTo /D (page.191) >>
+>>
+endobj
+13002 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [457.919 734.827 474.867 744.742]
+/A << /S /GoTo /D (page.192) >>
+>>
+endobj
+13003 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [452.942 722.872 469.89 732.786]
+/A << /S /GoTo /D (page.192) >>
+>>
+endobj
+13004 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [445.106 710.249 462.054 720.831]
+/A << /S /GoTo /D (page.192) >>
+>>
+endobj
+13005 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.973 676.376 421.936 686.958]
+/A << /S /GoTo /D (page.35) >>
+>>
+endobj
+13006 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [362.909 642.611 379.857 652.879]
+/A << /S /GoTo /D (page.211) >>
+>>
+endobj
+13007 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [345.963 619.261 362.911 628.969]
+/A << /S /GoTo /D (page.211) >>
+>>
+endobj
+13008 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [386.338 595.35 398.301 605.265]
+/A << /S /GoTo /D (page.82) >>
+>>
+endobj
+13009 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [386.338 571.44 398.301 581.354]
+/A << /S /GoTo /D (page.83) >>
+>>
+endobj
+13010 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [431.985 546.862 443.948 557.444]
+/A << /S /GoTo /D (page.88) >>
+>>
+endobj
+13011 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.944 523.619 361.907 533.327]
+/A << /S /GoTo /D (page.15) >>
+>>
+endobj
+13012 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.973 499.041 421.936 509.623]
+/A << /S /GoTo /D (page.36) >>
+>>
+endobj
+13013 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.932 487.754 410.88 497.668]
+/A << /S /GoTo /D (page.106) >>
+>>
+endobj
+13014 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [332.009 475.799 343.972 485.713]
+/A << /S /GoTo /D (page.16) >>
+>>
+endobj
+13015 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [324.047 463.283 336.01 473.552]
+/A << /S /GoTo /D (page.17) >>
+>>
+endobj
+13016 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.18 451.328 454.128 461.803]
+/A << /S /GoTo /D (page.100) >>
+>>
+endobj
+13017 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 439.373 444.937 449.847]
+/A << /S /GoTo /D (page.138) >>
+>>
+endobj
+13018 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [390.048 427.31 402.01 437.892]
+/A << /S /GoTo /D (page.32) >>
+>>
+endobj
+13019 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [387.514 415.355 399.477 425.937]
+/A << /S /GoTo /D (page.34) >>
+>>
+endobj
+13020 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.763 403.507 416.726 413.982]
+/A << /S /GoTo /D (page.34) >>
+>>
+endobj
+13021 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [383.343 392.113 395.306 401.821]
+/A << /S /GoTo /D (page.35) >>
+>>
+endobj
+13022 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [379.766 379.489 391.729 390.072]
+/A << /S /GoTo /D (page.33) >>
+>>
+endobj
+13023 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [413.748 368.202 425.71 377.91]
+/A << /S /GoTo /D (page.35) >>
+>>
+endobj
+13024 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [343.479 356.247 355.442 365.955]
+/A << /S /GoTo /D (page.35) >>
+>>
+endobj
+13025 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [368.988 343.732 380.951 354]
+/A << /S /GoTo /D (page.35) >>
+>>
+endobj
+13026 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.061 331.776 396.024 342.045]
+/A << /S /GoTo /D (page.36) >>
+>>
+endobj
+13027 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [364.541 319.821 376.504 330.09]
+/A << /S /GoTo /D (page.36) >>
+>>
+endobj
+13028 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [343.981 307.866 355.944 318.134]
+/A << /S /GoTo /D (page.36) >>
+>>
+endobj
+13029 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [342.34 295.911 354.303 306.179]
+/A << /S /GoTo /D (page.36) >>
+>>
+endobj
+13030 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [341.982 284.516 353.945 294.224]
+/A << /S /GoTo /D (page.36) >>
+>>
+endobj
+13031 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [337.49 272.561 349.453 282.269]
+/A << /S /GoTo /D (page.37) >>
+>>
+endobj
+13032 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [336.629 260.606 348.592 270.314]
+/A << /S /GoTo /D (page.34) >>
+>>
+endobj
+13033 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [366.621 248.651 378.584 258.359]
+/A << /S /GoTo /D (page.37) >>
+>>
+endobj
+13034 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [347.864 236.135 359.827 246.61]
+/A << /S /GoTo /D (page.37) >>
+>>
+endobj
+13035 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [368.441 224.74 380.404 234.448]
+/A << /S /GoTo /D (page.37) >>
+>>
+endobj
+13036 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [376.186 212.225 388.149 222.699]
+/A << /S /GoTo /D (page.65) >>
+>>
+endobj
+13037 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [373.653 200.27 385.616 210.538]
+/A << /S /GoTo /D (page.67) >>
+>>
+endobj
+13038 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [345.972 188.875 357.935 198.583]
+/A << /S /GoTo /D (page.67) >>
+>>
+endobj
+13039 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [365.904 176.359 377.867 186.628]
+/A << /S /GoTo /D (page.66) >>
+>>
+endobj
+13040 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [412.06 164.296 424.023 174.879]
+/A << /S /GoTo /D (page.88) >>
+>>
+endobj
+13041 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [362.909 152.341 374.872 162.717]
+/A << /S /GoTo /D (page.88) >>
+>>
+endobj
+13042 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [340.987 140.494 352.95 150.762]
+/A << /S /GoTo /D (page.88) >>
+>>
+endobj
+13043 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [348.958 129.099 360.921 138.807]
+/A << /S /GoTo /D (page.89) >>
+>>
+endobj
+13044 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [345.47 116.583 357.433 126.852]
+/A << /S /GoTo /D (page.89) >>
+>>
+endobj
+13045 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [374.007 105.189 390.955 115.103]
+/A << /S /GoTo /D (page.103) >>
+>>
+endobj
+13046 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.474 93.233 388.422 102.941]
+/A << /S /GoTo /D (page.104) >>
+>>
+endobj
+13047 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [363.411 80.61 380.359 91.192]
+/A << /S /GoTo /D (page.104) >>
+>>
+endobj
+13048 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [357.933 69.323 374.881 79.031]
+/A << /S /GoTo /D (page.105) >>
+>>
+endobj
+13053 0 obj
+<<
+/D [13051 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+13050 0 obj
+<<
+/Font << /F48 2333 0 R /F25 2380 0 R /F33 2286 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+13125 0 obj
+<<
+/Length 1401      
+/Filter /FlateDecode
+>>
+stream
+x��ZYo�6��У�,oQ�Z�]�b9�À,0�q�ْ#�k��GI�g;��$J�f}�����$����;����=*,\Ή�]Y�s�q1���F�ycl_x_,�9@�����wv�����z��R�C����S+�v�/�5R�}�  ���+�e�ob�u�v�:S��1�B�
+�#��\��4��Hٻ���z2^�1��X�=�.�l���W=���X	���=jFÑ��6�ݻ�4���j8^���6��I�^?i���H2�b�F�D���i�Ie6,��_]�
+3`L��q6��Yh��&X���lˠ6R�e2����U;������N�TF:�pXC+@䔀�?��������p�5��ݢ���8
+*8� �������=ĺ�_�e���=�-��<z��N�2��R��HL�r�g#��.��]<�*�1���k+�ਤ�X��1%ۊQ�$mi���$�2�I��4$�|\�C��9��KŨ��"
9������,���;
�}-�ɨ�ځ睪 Qz������ �`jH6M'�f��\<%T��<S)G�8��lB�i
+�ܯ��۹�(��샕���R'7AfJ7���3�M^D�z{�����T��Cj�S������HVi�S��xd���՗*ca �cl.����F��/+�m����m���F%'s�W����+������U���yR�I���ZY��dEm�ֹW����)ღھ9��p��D=�i�U暙.�m��J���(M�F�~�C���覉k�M���E+='M�i��O'ã��7<<:=䳡wV����m3��l��c�A��7��
��{���R%�{�'���L$&]��O����*��Q-��yr�(J�jܰJӥ;�iB�	1�f~v�
+ԗzP�jO�Z��,,2b������7��$��V��P��%�. ��Q` � ��������*)��*ik��a%]�c6�և�#�d����6&:�����v�O��+s���K?�9��RWu[s��?�i��j��Q6i�~4�m��l�J�����񷣪�@���s5�o�,8�<�`i6���lY������$��.GEejKJ����^Ƅ��U�o��e]�;�?z��͈�Y�?z� M{?{��=X�� 4����v�v�T{��2�����(Ǡ�K�4���ʃ��=�{�96s
�ɕ
ݦV��$lڒ���t�9��Q�:�F'Hy3�i�h������a�9b��2��I�=%�Јv*ۙ�#����$!2�,�R�f�{�ڻ'�\�W!����P��b#rq��;T�O*'ŕ3��dyqd�۟4�E��U;����h���� c��z��[��+�`��b�a�3eT=�i���I?Wo�pQ����;qq��n���-��/��`�
+endstream
+endobj
+13124 0 obj
+<<
+/Type /Page
+/Contents 13125 0 R
+/Resources 13123 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12877 0 R
+/Annots [ 13049 0 R 13054 0 R 13055 0 R 13056 0 R 13057 0 R 13058 0 R 13059 0 R 13060 0 R 13061 0 R 13062 0 R 13063 0 R 13064 0 R 13065 0 R 13066 0 R 13067 0 R 13068 0 R 13069 0 R 13070 0 R 13071 0 R 13072 0 R 13073 0 R 13074 0 R 13075 0 R 13076 0 R 13077 0 R 13078 0 R 13079 0 R 13080 0 R 13081 0 R 13082 0 R 13083 0 R 13084 0 R 13085 0 R 13086 0 R 13087 0 R 13088 0 R 13089 0 R 13090 0 R 13091 0 R 13092 0 R 13093 0 R 13094 0 R 13095 0 R 13096 0 R 13097 0 R 13098 0 R 13099 0 R 13100 0 R 13101 0 R 13102 0 R 13103 0 R 13104 0 R 13105 0 R 13106 0 R 13107 0 R 13108 0 R 13109 0 R 13110 0 R 13111 0 R 13112 0 R 13113 0 R 13114 0 R 13115 0 R 13116 0 R 13117 0 R 13118 0 R 13119 0 R 13120 0 R 13121 0 R ]
+>>
+endobj
+13049 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.639 758.738 154.587 768.446]
+/A << /S /GoTo /D (page.105) >>
+>>
+endobj
+13054 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.609 746.783 164.557 756.491]
+/A << /S /GoTo /D (page.105) >>
+>>
+endobj
+13055 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152.308 734.267 169.256 744.535]
+/A << /S /GoTo /D (page.106) >>
+>>
+endobj
+13056 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [123.006 722.312 139.954 732.58]
+/A << /S /GoTo /D (page.106) >>
+>>
+endobj
+13057 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.972 710.917 148.92 720.625]
+/A << /S /GoTo /D (page.104) >>
+>>
+endobj
+13058 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.151 698.962 151.099 708.67]
+/A << /S /GoTo /D (page.107) >>
+>>
+endobj
+13059 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.205 687.007 151.153 696.921]
+/A << /S /GoTo /D (page.107) >>
+>>
+endobj
+13060 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [151.097 674.491 168.045 684.76]
+/A << /S /GoTo /D (page.108) >>
+>>
+endobj
+13061 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 651.141 165.05 661.055]
+/A << /S /GoTo /D (page.60) >>
+>>
+endobj
+13062 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.6 616.6 164.548 627.182]
+/A << /S /GoTo /D (page.126) >>
+>>
+endobj
+13063 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 605.313 165.05 615.227]
+/A << /S /GoTo /D (page.60) >>
+>>
+endobj
+13064 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.236 580.842 213.184 591.317]
+/A << /S /GoTo /D (page.143) >>
+>>
+endobj
+13065 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 557.492 127.177 567.407]
+/A << /S /GoTo /D (page.22) >>
+>>
+endobj
+13066 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [146.112 523.059 158.075 533.534]
+/A << /S /GoTo /D (page.90) >>
+>>
+endobj
+13067 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 499.709 165.05 509.623]
+/A << /S /GoTo /D (page.60) >>
+>>
+endobj
+13068 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.627 475.799 166.575 485.713]
+/A << /S /GoTo /D (page.124) >>
+>>
+endobj
+13069 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.6 451.22 164.548 461.803]
+/A << /S /GoTo /D (page.126) >>
+>>
+endobj
+13070 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 427.978 127.177 437.892]
+/A << /S /GoTo /D (page.22) >>
+>>
+endobj
+13071 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.122 416.023 157.07 425.937]
+/A << /S /GoTo /D (page.131) >>
+>>
+endobj
+13072 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 392.113 127.177 402.027]
+/A << /S /GoTo /D (page.23) >>
+>>
+endobj
+13073 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.122 380.157 157.07 390.072]
+/A << /S /GoTo /D (page.131) >>
+>>
+endobj
+13074 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [209.865 356.247 221.828 366.161]
+/A << /S /GoTo /D (page.47) >>
+>>
+endobj
+13075 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [206.377 344.292 218.34 354.206]
+/A << /S /GoTo /D (page.50) >>
+>>
+endobj
+13076 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.889 331.776 214.852 342.251]
+/A << /S /GoTo /D (page.44) >>
+>>
+endobj
+13077 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.431 319.714 201.394 330.296]
+/A << /S /GoTo /D (page.72) >>
+>>
+endobj
+13078 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.431 295.803 201.394 306.385]
+/A << /S /GoTo /D (page.72) >>
+>>
+endobj
+13079 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [205.427 283.956 222.375 294.43]
+/A << /S /GoTo /D (page.100) >>
+>>
+endobj
+13080 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.236 272.001 213.184 282.475]
+/A << /S /GoTo /D (page.139) >>
+>>
+endobj
+13081 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 248.651 165.05 258.565]
+/A << /S /GoTo /D (page.58) >>
+>>
+endobj
+13082 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [148.47 214.217 165.418 224.486]
+/A << /S /GoTo /D (page.155) >>
+>>
+endobj
+13083 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [205.427 190.307 217.39 200.781]
+/A << /S /GoTo /D (page.97) >>
+>>
+endobj
+13084 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.087 166.957 165.05 176.871]
+/A << /S /GoTo /D (page.61) >>
+>>
+endobj
+13085 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.22 142.379 190.183 152.961]
+/A << /S /GoTo /D (page.36) >>
+>>
+endobj
+13086 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.22 118.468 190.183 129.05]
+/A << /S /GoTo /D (page.36) >>
+>>
+endobj
+13087 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.22 94.558 190.183 105.14]
+/A << /S /GoTo /D (page.36) >>
+>>
+endobj
+13088 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [150.586 71.316 162.549 81.23]
+/A << /S /GoTo /D (page.86) >>
+>>
+endobj
+13089 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [386.338 746.783 398.301 756.697]
+/A << /S /GoTo /D (page.83) >>
+>>
+endobj
+13090 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.865 734.267 389.827 744.742]
+/A << /S /GoTo /D (page.94) >>
+>>
+endobj
+13091 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.18 722.312 454.128 732.786]
+/A << /S /GoTo /D (page.101) >>
+>>
+endobj
+13092 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 710.357 444.937 720.831]
+/A << /S /GoTo /D (page.139) >>
+>>
+endobj
+13093 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.932 687.007 410.88 696.921]
+/A << /S /GoTo /D (page.106) >>
+>>
+endobj
+13094 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.932 663.096 410.88 673.011]
+/A << /S /GoTo /D (page.104) >>
+>>
+endobj
+13095 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [426.821 639.186 443.769 649.1]
+/A << /S /GoTo /D (page.155) >>
+>>
+endobj
+13096 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.339 615.276 394.302 625.19]
+/A << /S /GoTo /D (page.86) >>
+>>
+endobj
+13097 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [431.985 580.735 443.948 591.317]
+/A << /S /GoTo /D (page.88) >>
+>>
+endobj
+13098 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [425.246 546.862 442.194 557.444]
+/A << /S /GoTo /D (page.111) >>
+>>
+endobj
+13099 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.852 534.907 454.8 545.489]
+/A << /S /GoTo /D (page.113) >>
+>>
+endobj
+13100 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.328 522.951 421.276 533.534]
+/A << /S /GoTo /D (page.109) >>
+>>
+endobj
+13101 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.184 499.041 433.147 509.623]
+/A << /S /GoTo /D (page.75) >>
+>>
+endobj
+13102 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.184 475.131 433.147 485.713]
+/A << /S /GoTo /D (page.73) >>
+>>
+endobj
+13103 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.865 463.283 389.827 473.758]
+/A << /S /GoTo /D (page.94) >>
+>>
+endobj
+13104 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.18 451.328 454.128 461.803]
+/A << /S /GoTo /D (page.101) >>
+>>
+endobj
+13105 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 439.373 444.937 449.847]
+/A << /S /GoTo /D (page.140) >>
+>>
+endobj
+13106 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [359.912 427.978 376.86 437.686]
+/A << /S /GoTo /D (page.145) >>
+>>
+endobj
+13107 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.932 404.068 410.88 413.982]
+/A << /S /GoTo /D (page.107) >>
+>>
+endobj
+13108 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [381.379 380.157 398.328 390.072]
+/A << /S /GoTo /D (page.124) >>
+>>
+endobj
+13109 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.84 368.202 396.803 378.116]
+/A << /S /GoTo /D (page.59) >>
+>>
+endobj
+13110 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.865 355.687 389.827 366.161]
+/A << /S /GoTo /D (page.94) >>
+>>
+endobj
+13111 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [390.812 332.337 402.775 342.045]
+/A << /S /GoTo /D (page.31) >>
+>>
+endobj
+13112 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.944 308.426 361.907 318.134]
+/A << /S /GoTo /D (page.16) >>
+>>
+endobj
+13113 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 284.516 410.244 294.224]
+/A << /S /GoTo /D (page.120) >>
+>>
+endobj
+13114 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.339 260.606 394.302 270.52]
+/A << /S /GoTo /D (page.87) >>
+>>
+endobj
+13115 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.296 236.695 410.244 246.403]
+/A << /S /GoTo /D (page.115) >>
+>>
+endobj
+13116 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.944 212.785 361.907 222.493]
+/A << /S /GoTo /D (page.16) >>
+>>
+endobj
+13117 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [431.985 188.207 443.948 198.789]
+/A << /S /GoTo /D (page.89) >>
+>>
+endobj
+13118 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.875 164.964 388.823 174.879]
+/A << /S /GoTo /D (page.129) >>
+>>
+endobj
+13119 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.973 140.386 421.936 150.968]
+/A << /S /GoTo /D (page.36) >>
+>>
+endobj
+13120 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.282 107.181 387.245 117.095]
+/A << /S /GoTo /D (page.64) >>
+>>
+endobj
+13121 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.84 83.271 396.803 93.185]
+/A << /S /GoTo /D (page.61) >>
+>>
+endobj
+13126 0 obj
+<<
+/D [13124 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+13123 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+13230 0 obj
+<<
+/Length 1584      
+/Filter /FlateDecode
+>>
+stream
+x��[[s�F}�W�f��޵˴ypL�;��I'�0
+(�#�&��
+�
Ң]�D��Oh`9���Ag�@�q�5����@rN��B 8w\�G�7t>6���·�g�C��L������F�k��@�[�;�!���\7>~��P��ʁ�H�|[��v(#�Q��'�e�M�EȚPW*h��\I����>���p�G� ���R���
��vE�������@b�>����Q0k!����?-�,H�^�w_����:0L�,��o��?T��hN#���i쏧
+A�{�cG
�'z��{s�����,��S����'���G��AM0�]���.��5Q��b����^�K@���/�y��ɤ�C����2 6���Y�X�H�)���0k��y��\�z�\\&A@`s��)]�߿�<U�2�M�c�2��3m!؜_���F
qfU+����2���ז�^���7���l�/拿L�ѕYKе�R&Y*�Q��5�r����ǧr�c.������\-����J�f2yL����'�\�� (�Y&���,�!:2e���|�M+j}��Q�x?����%9���<_fa���f<��K�����o{�)ög��Vz�cƷ��{�k�_��(2m	|l.ֵhB*�^4M
F�TC,Zl�����VB�V�����Rҳ5�u6��Z�vSg+{
+�1ٕ�&�o{����Y:�Դ�)�}�f]�����
��j)�,P�\KfI���ю(G����m���Z�m�S�܉�b�7�4�&��C�C]1I�%!�Ԑ���|)�{x��1�W[P��E�����`�r��2��`��ˈ����_���}G�-�3Ƴ��[��m���_s|~n���^8�c?��1E�V(�
+
+�����0�h`{JDUm0��~���l:E����|{Ä%����&�L�G�6s�B�������8q%$eur��ME���V�$��Zn��ޝ��v�09�s�g
��T�r�pSvC�6nQ<l��x�9�tUe��2�e�\$Blf����e��W�����;~�)��xt9�n�+�:%��I{�����j�e���fBT��"��p�_w��r&xׅ�=DzVZ$R$Ҫ���v{���$a�C����q=�%��U����nJ�N�:Id�]v7ݦ:be��)1u٪l�Q�R�h��8Y�����O^93)��kfV�@U�RM��!��Z��i�q�����m��+3]vE���\b�;s�/_;6N���Φ�����-˯�a�ܽbb��9��}��;Hy��u�ɺy�F��Z�z=��q�+',ڞ�*�w�������5_Xr$�{]Wr�}�,a��b����;Z|�6�
+�S��kJ���T�#;�:��#�qtwY��Z�e��+~��h�L������"�{b�5���Mv���o�E��-"
+M��b��
+�s�����fuw�l%�E;�+N
@��P��h����?"�s/U�허��M��#݀d��է�F��$h�WoW�5����ە���h�7���a?�i�/�U���I�����v�T
��tCT%⿕��
+endstream
+endobj
+13229 0 obj
+<<
+/Type /Page
+/Contents 13230 0 R
+/Resources 13228 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12877 0 R
+/Annots [ 13122 0 R 13127 0 R 13128 0 R 13129 0 R 13130 0 R 13131 0 R 13132 0 R 13133 0 R 13134 0 R 13135 0 R 13136 0 R 13137 0 R 13138 0 R 13139 0 R 13140 0 R 13141 0 R 13142 0 R 13143 0 R 13144 0 R 13145 0 R 13146 0 R 13147 0 R 13148 0 R 13149 0 R 13150 0 R 13151 0 R 13152 0 R 13153 0 R 13154 0 R 13155 0 R 13156 0 R 13157 0 R 13158 0 R 13159 0 R 13160 0 R 13161 0 R 13162 0 R 13163 0 R 13164 0 R 13165 0 R 13166 0 R 13167 0 R 13168 0 R 13169 0 R 13170 0 R 13171 0 R 13172 0 R 13173 0 R 13174 0 R 13175 0 R 13176 0 R 13177 0 R 13178 0 R 13179 0 R 13180 0 R 13181 0 R 13182 0 R 13183 0 R 13184 0 R 13185 0 R 13186 0 R 13187 0 R 13188 0 R 13189 0 R 13190 0 R 13191 0 R 13192 0 R 13193 0 R 13194 0 R 13195 0 R 13196 0 R 13197 0 R 13198 0 R 13199 0 R 13200 0 R 13201 0 R 13202 0 R 13203 0 R 13204 0 R 13205 0 R 13206 0 R 13207 0 R 13208 0 R 13209 0 R 13210 0 R 13211 0 R 13212 0 R 13213 0 R 13214 0 R 13215 0 R 13216 0 R 13217 0 R 13218 0 R 13219 0 R 13220 0 R 13221 0 R 13222 0 R 13223 0 R 13224 0 R 13225 0 R 13226 0 R ]
+>>
+endobj
+13122 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [159.059 758.738 171.022 768.446]
+/A << /S /GoTo /D (page.31) >>
+>>
+endobj
+13127 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.122 734.827 157.07 744.742]
+/A << /S /GoTo /D (page.130) >>
+>>
+endobj
+13128 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [209.865 710.917 221.828 720.831]
+/A << /S /GoTo /D (page.48) >>
+>>
+endobj
+13129 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [206.377 698.962 218.34 708.876]
+/A << /S /GoTo /D (page.50) >>
+>>
+endobj
+13130 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.889 686.446 214.852 696.921]
+/A << /S /GoTo /D (page.44) >>
+>>
+endobj
+13131 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [209.865 663.096 221.828 673.011]
+/A << /S /GoTo /D (page.48) >>
+>>
+endobj
+13132 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [206.377 651.141 218.34 661.055]
+/A << /S /GoTo /D (page.51) >>
+>>
+endobj
+13133 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.889 638.626 214.852 649.1]
+/A << /S /GoTo /D (page.44) >>
+>>
+endobj
+13134 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [149.627 615.276 166.575 625.19]
+/A << /S /GoTo /D (page.122) >>
+>>
+endobj
+13135 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [143.529 591.365 155.492 601.28]
+/A << /S /GoTo /D (page.64) >>
+>>
+endobj
+13136 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [158.485 591.365 170.448 601.28]
+/A << /S /GoTo /D (page.65) >>
+>>
+endobj
+13137 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.179 567.455 179.127 577.369]
+/A << /S /GoTo /D (page.107) >>
+>>
+endobj
+13138 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.236 542.984 213.184 553.459]
+/A << /S /GoTo /D (page.140) >>
+>>
+endobj
+13139 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [209.865 519.634 221.828 529.549]
+/A << /S /GoTo /D (page.48) >>
+>>
+endobj
+13140 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [206.377 507.679 218.34 517.593]
+/A << /S /GoTo /D (page.51) >>
+>>
+endobj
+13141 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [202.889 495.164 214.852 505.638]
+/A << /S /GoTo /D (page.45) >>
+>>
+endobj
+13142 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [140.122 483.769 157.07 493.683]
+/A << /S /GoTo /D (page.130) >>
+>>
+endobj
+13143 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.431 459.191 201.394 469.773]
+/A << /S /GoTo /D (page.73) >>
+>>
+endobj
+13144 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.179 435.948 179.127 445.862]
+/A << /S /GoTo /D (page.108) >>
+>>
+endobj
+13145 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.431 411.37 201.394 421.952]
+/A << /S /GoTo /D (page.73) >>
+>>
+endobj
+13146 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.431 387.46 201.394 398.042]
+/A << /S /GoTo /D (page.74) >>
+>>
+endobj
+13147 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [150.586 364.217 162.549 374.131]
+/A << /S /GoTo /D (page.87) >>
+>>
+endobj
+13148 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.236 351.702 213.184 362.176]
+/A << /S /GoTo /D (page.140) >>
+>>
+endobj
+13149 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [96.777 340.307 108.74 350.221]
+/A << /S /GoTo /D (page.17) >>
+>>
+endobj
+13150 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.6 315.729 164.548 326.311]
+/A << /S /GoTo /D (page.126) >>
+>>
+endobj
+13151 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.236 303.881 213.184 314.356]
+/A << /S /GoTo /D (page.141) >>
+>>
+endobj
+13152 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.661 292.486 142.624 302.4]
+/A << /S /GoTo /D (page.84) >>
+>>
+endobj
+13153 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.427 280.531 143.39 290.239]
+/A << /S /GoTo /D (page.85) >>
+>>
+endobj
+13154 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.219 268.576 126.182 278.284]
+/A << /S /GoTo /D (page.85) >>
+>>
+endobj
+13155 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [123.678 256.621 135.641 266.329]
+/A << /S /GoTo /D (page.85) >>
+>>
+endobj
+13156 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [112.354 244.105 124.317 254.373]
+/A << /S /GoTo /D (page.86) >>
+>>
+endobj
+13157 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.962 232.15 149.925 242.418]
+/A << /S /GoTo /D (page.86) >>
+>>
+endobj
+13158 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.712 220.755 126.675 230.463]
+/A << /S /GoTo /D (page.87) >>
+>>
+endobj
+13159 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.189 208.8 136.152 218.508]
+/A << /S /GoTo /D (page.87) >>
+>>
+endobj
+13160 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [110.588 196.845 122.551 206.553]
+/A << /S /GoTo /D (page.87) >>
+>>
+endobj
+13161 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.675 184.222 144.623 194.804]
+/A << /S /GoTo /D (page.124) >>
+>>
+endobj
+13162 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.441 172.267 145.389 182.849]
+/A << /S /GoTo /D (page.125) >>
+>>
+endobj
+13163 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.205 160.979 134.153 170.687]
+/A << /S /GoTo /D (page.126) >>
+>>
+endobj
+13164 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [159.337 148.464 176.285 158.732]
+/A << /S /GoTo /D (page.126) >>
+>>
+endobj
+13165 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.224 136.401 128.172 146.777]
+/A << /S /GoTo /D (page.126) >>
+>>
+endobj
+13166 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [120.693 124.446 137.641 135.028]
+/A << /S /GoTo /D (page.125) >>
+>>
+endobj
+13167 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.6 100.535 164.548 111.118]
+/A << /S /GoTo /D (page.125) >>
+>>
+endobj
+13168 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [154.567 77.293 171.515 87.207]
+/A << /S /GoTo /D (page.170) >>
+>>
+endobj
+13169 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [373.382 758.738 390.33 768.446]
+/A << /S /GoTo /D (page.170) >>
+>>
+endobj
+13170 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.339 734.827 394.302 744.742]
+/A << /S /GoTo /D (page.87) >>
+>>
+endobj
+13171 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [327.042 722.872 339.005 732.786]
+/A << /S /GoTo /D (page.17) >>
+>>
+endobj
+13172 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.45 710.917 363.413 720.831]
+/A << /S /GoTo /D (page.19) >>
+>>
+endobj
+13173 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [360.928 698.402 372.89 708.67]
+/A << /S /GoTo /D (page.20) >>
+>>
+endobj
+13174 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [398.356 686.446 410.319 696.715]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+13175 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [408.147 674.491 420.11 684.76]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+13176 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [390.878 662.536 402.841 672.804]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+13177 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [408.327 650.581 420.289 660.849]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+13178 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [433.226 638.626 445.189 649.1]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+13179 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [428.249 626.671 440.212 637.145]
+/A << /S /GoTo /D (page.21) >>
+>>
+endobj
+13180 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [420.413 614.608 432.376 624.984]
+/A << /S /GoTo /D (page.22) >>
+>>
+endobj
+13181 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.345 603.321 389.308 613.235]
+/A << /S /GoTo /D (page.19) >>
+>>
+endobj
+13182 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [363.402 591.365 375.365 601.28]
+/A << /S /GoTo /D (page.19) >>
+>>
+endobj
+13183 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [352.93 579.41 364.893 589.118]
+/A << /S /GoTo /D (page.19) >>
+>>
+endobj
+13184 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [340.978 567.455 352.941 577.163]
+/A << /S /GoTo /D (page.19) >>
+>>
+endobj
+13185 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [372.79 555.5 384.753 565.208]
+/A << /S /GoTo /D (page.22) >>
+>>
+endobj
+13186 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [372.819 542.984 384.782 553.253]
+/A << /S /GoTo /D (page.22) >>
+>>
+endobj
+13187 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [372.819 531.029 384.782 541.297]
+/A << /S /GoTo /D (page.23) >>
+>>
+endobj
+13188 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [360.408 519.634 372.371 529.549]
+/A << /S /GoTo /D (page.20) >>
+>>
+endobj
+13189 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [347.954 507.679 359.916 517.387]
+/A << /S /GoTo /D (page.20) >>
+>>
+endobj
+13190 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [355.44 495.164 367.403 505.432]
+/A << /S /GoTo /D (page.23) >>
+>>
+endobj
+13191 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [402.66 483.209 414.623 493.477]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13192 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [385.391 471.253 397.354 481.522]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13193 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [402.839 459.298 414.802 469.566]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13194 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [426.259 447.343 438.222 457.818]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13195 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.738 435.388 439.701 445.862]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13196 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [422.762 423.433 434.725 433.907]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13197 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [414.926 411.37 426.889 421.746]
+/A << /S /GoTo /D (page.25) >>
+>>
+endobj
+13198 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [360.201 400.083 372.164 409.791]
+/A << /S /GoTo /D (page.25) >>
+>>
+endobj
+13199 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [397.63 388.128 409.593 397.835]
+/A << /S /GoTo /D (page.25) >>
+>>
+endobj
+13200 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.421 376.172 419.384 385.88]
+/A << /S /GoTo /D (page.25) >>
+>>
+endobj
+13201 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [390.152 364.217 402.115 373.925]
+/A << /S /GoTo /D (page.26) >>
+>>
+endobj
+13202 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [407.6 352.262 419.563 361.97]
+/A << /S /GoTo /D (page.26) >>
+>>
+endobj
+13203 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [432.5 340.307 444.462 350.221]
+/A << /S /GoTo /D (page.26) >>
+>>
+endobj
+13204 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.523 328.352 439.486 338.266]
+/A << /S /GoTo /D (page.26) >>
+>>
+endobj
+13205 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [419.687 315.729 431.65 326.104]
+/A << /S /GoTo /D (page.26) >>
+>>
+endobj
+13206 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.693 304.441 433.656 314.356]
+/A << /S /GoTo /D (page.46) >>
+>>
+endobj
+13207 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [334.011 292.486 345.974 302.194]
+/A << /S /GoTo /D (page.47) >>
+>>
+endobj
+13208 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.596 279.863 389.559 290.239]
+/A << /S /GoTo /D (page.47) >>
+>>
+endobj
+13209 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [365.402 268.576 377.365 278.49]
+/A << /S /GoTo /D (page.46) >>
+>>
+endobj
+13210 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [380.357 268.576 392.32 278.49]
+/A << /S /GoTo /D (page.47) >>
+>>
+endobj
+13211 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.854 256.621 363.817 266.329]
+/A << /S /GoTo /D (page.47) >>
+>>
+endobj
+13212 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [364.815 244.105 376.778 254.373]
+/A << /S /GoTo /D (page.47) >>
+>>
+endobj
+13213 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.74 232.71 421.703 242.418]
+/A << /S /GoTo /D (page.48) >>
+>>
+endobj
+13214 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [385.603 220.755 397.566 230.463]
+/A << /S /GoTo /D (page.48) >>
+>>
+endobj
+13215 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [357.341 208.8 369.304 218.508]
+/A << /S /GoTo /D (page.48) >>
+>>
+endobj
+13216 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.451 196.284 361.414 206.553]
+/A << /S /GoTo /D (page.48) >>
+>>
+endobj
+13217 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [418.205 184.89 430.168 194.804]
+/A << /S /GoTo /D (page.48) >>
+>>
+endobj
+13218 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [334.011 172.934 345.974 182.642]
+/A << /S /GoTo /D (page.50) >>
+>>
+endobj
+13219 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.596 160.311 389.559 170.687]
+/A << /S /GoTo /D (page.50) >>
+>>
+endobj
+13220 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [365.402 149.024 377.365 158.938]
+/A << /S /GoTo /D (page.49) >>
+>>
+endobj
+13221 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.854 137.069 363.817 146.777]
+/A << /S /GoTo /D (page.50) >>
+>>
+endobj
+13222 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [364.815 124.553 376.778 134.822]
+/A << /S /GoTo /D (page.50) >>
+>>
+endobj
+13223 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.74 113.159 421.703 122.867]
+/A << /S /GoTo /D (page.50) >>
+>>
+endobj
+13224 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [385.603 101.203 397.566 110.911]
+/A << /S /GoTo /D (page.51) >>
+>>
+endobj
+13225 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [357.341 89.248 369.304 98.956]
+/A << /S /GoTo /D (page.51) >>
+>>
+endobj
+13226 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.451 76.733 361.414 87.001]
+/A << /S /GoTo /D (page.51) >>
+>>
+endobj
+13231 0 obj
+<<
+/D [13229 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+13228 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+13351 0 obj
+<<
+/Length 1406      
+/Filter /FlateDecode
+>>
+stream
+x��Z[o�6}��У
�,o��`���$H��[�� P%�QkK�%7�~�(�lU�GIN�=Y�����/2����G��F�ϸ�$RB0ov�I!�@Q$�7���1�|r={�q*��<X}}����_�������G�D�r/Z������^y1%���Υ�}��
+o��1���k!%�;V��^�vr�k�a��uI����2OQQ>%8�R���T�q�K0����M��g�)
�����C0��d��������
�*%��YϷj�<yW�	o����FsDroJR�_c���Q���ѝ�&F�O7�	��0�란�|T<C����&-	m�[����%+��/�{&c1�h����q�$q�Z�ΔI�m��Tn8M�?N�E���\�8Y�4O�4&o��	���b��"�6�>r�1�ҎSb�fLw@���8,��a�["�WH�:��Q����u7�"m�=%�#��!˳d�Y��(Z����d?N�����0�c�*�R����;/ⓓ���L:o�� �|���G�����Y�Ӆ6���>9�l��6���a�d9��4e�qX��B���(�A>P��E��P&ؚ�b�G[�YI�������$���0�zF�V���1(��j����4rP�@ME�ᣎ��0��n*���;�.л�����`�K+�C��U�/���"��Ӱ�0Me���Q�z���a�1�ǩ V��^fe���\���'���60k���uM1l���6�)�$���p�R�eI��H���K�"��\��n�u=6&O�x(J����>�l;��&#I�{���B�kp��ΑU�8; ���`@����k7��jc��uc�O��09�ھDX���d`�"YvDi~z����̜|�u�p��\(ڛ�M��1'�+3���c��1�_�q��ڋ�z=��n�
;
����.�F��p=�8�M88iٻ���.6�:�S a�=!G&Հ�0z����X~3�I���U�JҲ|V�}*/A5�k�2�Q\����/���X����|�ϐ�)2��ъ8�G.�<:6cE�d�:��aGڣ@n��_q`��m��_��	��%������Xi5���Y�������X�_C����h��� }F��y���`:�̫#h��rGXDwÐ��X1�鋁X��LG��c�7!:$�u��ʋ-��l��O�d�/I��>�J$�:V�!���MRv�8��}���u�nY���L/B}\�|O9���n^C�u� ��Sy�����k�sC/B���w���`H�&[�z	�V/�$�z*/���ܺAl����#�H�?Z���)
��������DBl=�\�zm:��nE�����ˬzW�07�o�����/�wv�
+endstream
+endobj
+13350 0 obj
+<<
+/Type /Page
+/Contents 13351 0 R
+/Resources 13349 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 12877 0 R
+/Annots [ 13227 0 R 13232 0 R 13233 0 R 13234 0 R 13235 0 R 13236 0 R 13237 0 R 13238 0 R 13239 0 R 13240 0 R 13241 0 R 13242 0 R 13243 0 R 13244 0 R 13245 0 R 13246 0 R 13247 0 R 13248 0 R 13249 0 R 13250 0 R 13251 0 R 13252 0 R 13253 0 R 13254 0 R 13255 0 R 13256 0 R 13257 0 R 13258 0 R 13259 0 R 13260 0 R 13261 0 R 13262 0 R 13263 0 R 13264 0 R 13265 0 R 13266 0 R 13267 0 R 13268 0 R 13269 0 R 13270 0 R 13271 0 R 13272 0 R 13273 0 R 13274 0 R 13275 0 R 13276 0 R 13277 0 R 13278 0 R 13279 0 R 13280 0 R 13281 0 R 13282 0 R 13283 0 R 13284 0 R 13285 0 R 13286 0 R 13287 0 R 13288 0 R 13289 0 R 13290 0 R 13291 0 R 13292 0 R 13293 0 R 13294 0 R 13295 0 R 13296 0 R 13297 0 R 13298 0 R 13299 0 R 13300 0 R 13301 0 R 13302 0 R 13303 0 R 13304 0 R 13305 0 R 13306 0 R 13307 0 R 13308 0 R 13309 0 R 13310 0 R 13311 0 R 13312 0 R 13313 0 R 13314 0 R 13315 0 R 13316 0 R 13317 0 R 13318 0 R 13319 0 R 13320 0 R 13321 0 R 13322 0 R 13323 0 R 13324 0 R 13325 0 R 13326 0 R 13327 0 R 13328 0 R 13329 0 R 13330 0 R 13331 0 R 13332 0 R 13333 0 R 13334 0 R 13335 0 R 13336 0 R 13337 0 R 13338 0 R 13339 0 R 13340 0 R 13341 0 R 13342 0 R 13343 0 R 13344 0 R 13345 0 R 13346 0 R 13347 0 R ]
+>>
+endobj
+13227 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.964 758.177 194.927 768.652]
+/A << /S /GoTo /D (page.40) >>
+>>
+endobj
+13232 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [102.258 746.783 114.221 756.491]
+/A << /S /GoTo /D (page.43) >>
+>>
+endobj
+13233 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.843 734.159 157.806 744.535]
+/A << /S /GoTo /D (page.43) >>
+>>
+endobj
+13234 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.649 722.872 145.612 732.786]
+/A << /S /GoTo /D (page.42) >>
+>>
+endobj
+13235 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [120.101 710.917 132.064 720.625]
+/A << /S /GoTo /D (page.44) >>
+>>
+endobj
+13236 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.062 698.402 145.025 708.67]
+/A << /S /GoTo /D (page.44) >>
+>>
+endobj
+13237 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.987 687.007 189.95 696.715]
+/A << /S /GoTo /D (page.44) >>
+>>
+endobj
+13238 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [153.85 675.052 165.813 684.76]
+/A << /S /GoTo /D (page.44) >>
+>>
+endobj
+13239 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [125.588 663.096 137.551 672.804]
+/A << /S /GoTo /D (page.45) >>
+>>
+endobj
+13240 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.698 650.581 129.661 660.849]
+/A << /S /GoTo /D (page.45) >>
+>>
+endobj
+13241 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.002 626.563 153.95 636.939]
+/A << /S /GoTo /D (page.183) >>
+>>
+endobj
+13242 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.002 602.653 153.95 613.029]
+/A << /S /GoTo /D (page.183) >>
+>>
+endobj
+13243 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.002 578.742 153.95 589.118]
+/A << /S /GoTo /D (page.184) >>
+>>
+endobj
+13244 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.162 567.455 145.125 577.369]
+/A << /S /GoTo /D (page.51) >>
+>>
+endobj
+13245 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.417 555.5 147.38 565.208]
+/A << /S /GoTo /D (page.53) >>
+>>
+endobj
+13246 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [109.736 543.545 121.699 553.253]
+/A << /S /GoTo /D (page.54) >>
+>>
+endobj
+13247 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.224 531.59 123.187 540.993]
+/A << /S /GoTo /D (page.55) >>
+>>
+endobj
+13248 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.171 519.634 138.134 529.342]
+/A << /S /GoTo /D (page.60) >>
+>>
+endobj
+13249 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [138.266 507.119 150.229 517.387]
+/A << /S /GoTo /D (page.60) >>
+>>
+endobj
+13250 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.668 495.724 139.631 505.432]
+/A << /S /GoTo /D (page.53) >>
+>>
+endobj
+13251 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [109.234 483.209 121.197 493.683]
+/A << /S /GoTo /D (page.55) >>
+>>
+endobj
+13252 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.697 471.814 133.66 481.522]
+/A << /S /GoTo /D (page.55) >>
+>>
+endobj
+13253 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.061 459.859 129.024 469.566]
+/A << /S /GoTo /D (page.56) >>
+>>
+endobj
+13254 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.639 447.903 149.602 457.818]
+/A << /S /GoTo /D (page.57) >>
+>>
+endobj
+13255 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.161 435.388 142.124 445.656]
+/A << /S /GoTo /D (page.57) >>
+>>
+endobj
+13256 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [147.008 423.433 158.971 433.701]
+/A << /S /GoTo /D (page.57) >>
+>>
+endobj
+13257 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.361 412.038 149.324 421.746]
+/A << /S /GoTo /D (page.58) >>
+>>
+endobj
+13258 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.224 399.522 123.187 409.791]
+/A << /S /GoTo /D (page.58) >>
+>>
+endobj
+13259 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.837 388.128 130.8 397.835]
+/A << /S /GoTo /D (page.60) >>
+>>
+endobj
+13260 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.205 376.172 129.168 385.88]
+/A << /S /GoTo /D (page.60) >>
+>>
+endobj
+13261 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.672 363.549 140.635 373.925]
+/A << /S /GoTo /D (page.60) >>
+>>
+endobj
+13262 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.066 351.702 145.029 361.97]
+/A << /S /GoTo /D (page.58) >>
+>>
+endobj
+13263 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [120.199 339.747 132.162 350.015]
+/A << /S /GoTo /D (page.61) >>
+>>
+endobj
+13264 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.315 328.352 136.278 338.06]
+/A << /S /GoTo /D (page.59) >>
+>>
+endobj
+13265 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [108.732 316.397 120.695 326.311]
+/A << /S /GoTo /D (page.61) >>
+>>
+endobj
+13266 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.726 304.441 123.689 314.149]
+/A << /S /GoTo /D (page.61) >>
+>>
+endobj
+13267 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.698 291.926 129.661 302.194]
+/A << /S /GoTo /D (page.59) >>
+>>
+endobj
+13268 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [123.604 280.531 135.567 290.445]
+/A << /S /GoTo /D (page.62) >>
+>>
+endobj
+13269 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [125.859 268.576 137.822 278.284]
+/A << /S /GoTo /D (page.63) >>
+>>
+endobj
+13270 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [125.176 256.621 137.139 266.329]
+/A << /S /GoTo /D (page.63) >>
+>>
+endobj
+13271 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [118.11 244.665 130.073 254.373]
+/A << /S /GoTo /D (page.62) >>
+>>
+endobj
+13272 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.066 244.665 145.029 254.373]
+/A << /S /GoTo /D (page.63) >>
+>>
+endobj
+13273 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.941 232.71 127.904 242.418]
+/A << /S /GoTo /D (page.63) >>
+>>
+endobj
+13274 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [130.896 232.71 142.859 242.418]
+/A << /S /GoTo /D (page.64) >>
+>>
+endobj
+13275 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.17 220.755 140.133 230.463]
+/A << /S /GoTo /D (page.64) >>
+>>
+endobj
+13276 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [106.741 208.8 118.704 218.508]
+/A << /S /GoTo /D (page.64) >>
+>>
+endobj
+13277 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.697 208.8 133.66 218.508]
+/A << /S /GoTo /D (page.65) >>
+>>
+endobj
+13278 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [169.506 196.177 181.469 206.759]
+/A << /S /GoTo /D (page.69) >>
+>>
+endobj
+13279 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.939 184.222 139.902 194.598]
+/A << /S /GoTo /D (page.71) >>
+>>
+endobj
+13280 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.224 172.934 123.187 182.642]
+/A << /S /GoTo /D (page.71) >>
+>>
+endobj
+13281 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [145.843 160.311 157.806 170.687]
+/A << /S /GoTo /D (page.72) >>
+>>
+endobj
+13282 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [120.191 148.356 132.153 158.732]
+/A << /S /GoTo /D (page.70) >>
+>>
+endobj
+13283 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.062 136.509 145.025 146.777]
+/A << /S /GoTo /D (page.72) >>
+>>
+endobj
+13284 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.317 124.553 145.28 134.822]
+/A << /S /GoTo /D (page.72) >>
+>>
+endobj
+13285 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.617 112.491 129.58 122.562]
+/A << /S /GoTo /D (page.75) >>
+>>
+endobj
+13286 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [112.722 101.203 124.685 110.911]
+/A << /S /GoTo /D (page.73) >>
+>>
+endobj
+13287 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.563 88.58 146.526 98.956]
+/A << /S /GoTo /D (page.73) >>
+>>
+endobj
+13288 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.664 77.293 140.626 87.001]
+/A << /S /GoTo /D (page.73) >>
+>>
+endobj
+13289 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [364.684 758.738 376.647 768.446]
+/A << /S /GoTo /D (page.74) >>
+>>
+endobj
+13290 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [343.47 746.783 355.433 756.491]
+/A << /S /GoTo /D (page.75) >>
+>>
+endobj
+13291 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [340.987 734.827 352.95 744.535]
+/A << /S /GoTo /D (page.76) >>
+>>
+endobj
+13292 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [353.952 722.312 365.915 732.58]
+/A << /S /GoTo /D (page.74) >>
+>>
+endobj
+13293 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [347.738 710.917 359.701 720.625]
+/A << /S /GoTo /D (page.76) >>
+>>
+endobj
+13294 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.451 698.402 361.414 708.67]
+/A << /S /GoTo /D (page.75) >>
+>>
+endobj
+13295 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [345.595 687.007 357.558 696.715]
+/A << /S /GoTo /D (page.75) >>
+>>
+endobj
+13296 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [366.412 675.052 378.375 684.966]
+/A << /S /GoTo /D (page.76) >>
+>>
+endobj
+13297 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [368.667 663.096 380.63 672.804]
+/A << /S /GoTo /D (page.78) >>
+>>
+endobj
+13298 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.347 650.473 396.31 660.849]
+/A << /S /GoTo /D (page.78) >>
+>>
+endobj
+13299 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [399.303 650.473 411.266 660.849]
+/A << /S /GoTo /D (page.79) >>
+>>
+endobj
+13300 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [370.118 639.186 382.081 648.894]
+/A << /S /GoTo /D (page.80) >>
+>>
+endobj
+13301 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.45 627.231 363.413 636.939]
+/A << /S /GoTo /D (page.80) >>
+>>
+endobj
+13302 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [360.919 615.276 372.882 624.984]
+/A << /S /GoTo /D (page.78) >>
+>>
+endobj
+13303 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [370.898 602.653 382.861 613.029]
+/A << /S /GoTo /D (page.81) >>
+>>
+endobj
+13304 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.381 590.805 387.344 601.073]
+/A << /S /GoTo /D (page.81) >>
+>>
+endobj
+13305 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.863 579.41 363.826 589.118]
+/A << /S /GoTo /D (page.82) >>
+>>
+endobj
+13306 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [391.135 566.787 403.098 577.163]
+/A << /S /GoTo /D (page.82) >>
+>>
+endobj
+13307 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [376.905 555.5 388.868 565.208]
+/A << /S /GoTo /D (page.83) >>
+>>
+endobj
+13308 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [336.997 542.984 348.96 553.253]
+/A << /S /GoTo /D (page.83) >>
+>>
+endobj
+13309 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.451 531.029 361.414 541.297]
+/A << /S /GoTo /D (page.84) >>
+>>
+endobj
+13310 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [357.939 519.074 369.902 529.549]
+/A << /S /GoTo /D (page.89) >>
+>>
+endobj
+13311 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [360.194 507.119 372.157 517.593]
+/A << /S /GoTo /D (page.91) >>
+>>
+endobj
+13312 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.45 495.724 363.413 505.432]
+/A << /S /GoTo /D (page.91) >>
+>>
+endobj
+13313 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.859 483.769 394.822 493.477]
+/A << /S /GoTo /D (page.92) >>
+>>
+endobj
+13314 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [370.898 471.146 382.861 481.522]
+/A << /S /GoTo /D (page.92) >>
+>>
+endobj
+13315 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [370.898 459.298 382.861 469.566]
+/A << /S /GoTo /D (page.93) >>
+>>
+endobj
+13316 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [348.814 447.903 360.777 457.611]
+/A << /S /GoTo /D (page.93) >>
+>>
+endobj
+13317 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [352.446 435.388 364.408 445.862]
+/A << /S /GoTo /D (page.90) >>
+>>
+endobj
+13318 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [336.997 423.433 348.96 433.701]
+/A << /S /GoTo /D (page.94) >>
+>>
+endobj
+13319 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [344.475 412.038 356.438 421.746]
+/A << /S /GoTo /D (page.94) >>
+>>
+endobj
+13320 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [356.068 400.083 368.031 409.791]
+/A << /S /GoTo /D (page.94) >>
+>>
+endobj
+13321 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.451 387.567 361.414 397.835]
+/A << /S /GoTo /D (page.95) >>
+>>
+endobj
+13322 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [417.254 375.612 429.217 386.087]
+/A << /S /GoTo /D (page.95) >>
+>>
+endobj
+13323 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [375.688 364.217 387.651 373.925]
+/A << /S /GoTo /D (page.98) >>
+>>
+endobj
+13324 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [360.425 352.262 377.374 361.97]
+/A << /S /GoTo /D (page.102) >>
+>>
+endobj
+13325 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [351.45 340.307 363.413 350.015]
+/A << /S /GoTo /D (page.98) >>
+>>
+endobj
+13326 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [370.898 327.684 382.861 338.06]
+/A << /S /GoTo /D (page.99) >>
+>>
+endobj
+13327 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [380.366 315.836 392.329 326.104]
+/A << /S /GoTo /D (page.99) >>
+>>
+endobj
+13328 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [343.972 303.881 360.921 314.149]
+/A << /S /GoTo /D (page.100) >>
+>>
+endobj
+13329 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [365.07 291.926 382.018 302.194]
+/A << /S /GoTo /D (page.100) >>
+>>
+endobj
+13330 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [367.939 280.531 379.902 290.239]
+/A << /S /GoTo /D (page.97) >>
+>>
+endobj
+13331 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [336.997 268.015 353.945 278.284]
+/A << /S /GoTo /D (page.101) >>
+>>
+endobj
+13332 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [344.475 256.621 361.423 266.329]
+/A << /S /GoTo /D (page.101) >>
+>>
+endobj
+13333 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.451 244.105 366.399 254.373]
+/A << /S /GoTo /D (page.101) >>
+>>
+endobj
+13334 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [345.595 232.71 362.543 242.418]
+/A << /S /GoTo /D (page.102) >>
+>>
+endobj
+13335 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [405.321 220.087 422.269 230.669]
+/A << /S /GoTo /D (page.111) >>
+>>
+endobj
+13336 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [360.696 208.132 377.645 218.508]
+/A << /S /GoTo /D (page.111) >>
+>>
+endobj
+13337 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.774 196.845 366.722 206.553]
+/A << /S /GoTo /D (page.112) >>
+>>
+endobj
+13338 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [352.948 184.222 369.896 194.598]
+/A << /S /GoTo /D (page.111) >>
+>>
+endobj
+13339 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.451 172.374 366.399 182.642]
+/A << /S /GoTo /D (page.112) >>
+>>
+endobj
+13340 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [417.927 160.311 434.875 170.894]
+/A << /S /GoTo /D (page.112) >>
+>>
+endobj
+13341 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [360.696 148.356 377.645 158.732]
+/A << /S /GoTo /D (page.113) >>
+>>
+endobj
+13342 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.774 137.069 366.722 146.777]
+/A << /S /GoTo /D (page.113) >>
+>>
+endobj
+13343 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [352.948 124.446 369.896 134.822]
+/A << /S /GoTo /D (page.113) >>
+>>
+endobj
+13344 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.451 112.598 366.399 122.867]
+/A << /S /GoTo /D (page.114) >>
+>>
+endobj
+13345 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.402 100.535 401.351 111.118]
+/A << /S /GoTo /D (page.108) >>
+>>
+endobj
+13346 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [360.696 88.58 377.645 98.956]
+/A << /S /GoTo /D (page.110) >>
+>>
+endobj
+13347 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.774 77.293 366.722 87.001]
+/A << /S /GoTo /D (page.110) >>
+>>
+endobj
+13352 0 obj
+<<
+/D [13350 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+13349 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+13474 0 obj
+<<
+/Length 1524      
+/Filter /FlateDecode
+>>
+stream
+x��Z�r�H}�+�Ua<��kw�!�S�%���UIʥH�D�X���;B�5�����l^�
+����t��\p0
+pp�yvN�shd�dA�1Pi)e(�$�����������ˀ3����_W/(�םA���!�[���Z#My�:o��`h߽0bF��_�.���ip�y���I1����H-	�V7Q:J���W��5���N�O��l�?���>!�Qa�ʳԅA�6F�d��F��:uzNfNJTm��<�PPRY*�–�;�VjNQHq�
+��3�–�I~���.�S_��o�y�(��"[T�)}$�1�0���ť�WFj⸍q��߾��ǘ1f�unu���N����}p��̀rX��`���L�
+�,�4+u�{�|w��]��
� 8b��%6	F�
�
+���ի&0j�i���Q�+�ͱ�v7N�6d�R9��s�x���.�\�����Y�����ć��0nc�]<CF�t��bxz��ғ��\@7��Z"���v�_=*��t�4�� ������R�!�u�y��b�A��<p�d���6���|�?z�vD���C����!
+I;D`��=b���V���?��@���.g@���&H��\i����"��
+�Hr_�Z���*�74��I��v�En�����.�,+���M�NT�ڣ��t8M�F��@b(��,u�v��c��Y+��sQ�"� C��8�ZǴ�ռX싰Y(%��);VI�ݾY�@GT�CA&#�^'������@�!�����(E�kJ�wMk��E|r�:O~�Ҳ@���h�E�2��Z9v�L��J�r�ݾ�߀Ƕ�QZT�������UG���8�C=.�^��c�^$y�;<E4Imq�A�a���*�&�x

q	��/�Rw�n�C�P��ĩqE�&ɳ�"N�]��N��`��ܮo�π2��`���.�u[��Fl5	�CM2��6��q���E��<Ǝ���Ώ��K� &0��O�K�-Oy��bXh�[�yx�]�nm�)��)_.����`�g'���x|,��4�%ib�� ��Wcw��(T�'3�,
��өKSo]����v�����
+���y��!���4���ڻ�i��­��b���n}A߰q�4�s���ՇOI*=��nM����_��˕�,)��Q�pj6�V��յ`�R�}A�NH�<[k�irOL7K	D��!\�a�݉{o�H������}M8�S�Ε�\
�l?I�ƛg�'OY4����a2OL���pF^���v���o�̀����>[h�HO̱/�;��c$���aӉe�3U���i�89��������X���_�~��β1ޜ_��4SVg��a�b���]�������j5����F[[���A��5F��U�Ę���5?�{�g�e�+D�<�q=b�-w_-�Q�z/�k���� �'r�
(�-� _5ݜaP�7��%�J�G���@R�e�%i���dX�ru��z~���~y��w��N�c���
+endstream
+endobj
+13473 0 obj
+<<
+/Type /Page
+/Contents 13474 0 R
+/Resources 13472 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 13476 0 R
+/Annots [ 13348 0 R 13353 0 R 13354 0 R 13355 0 R 13356 0 R 13357 0 R 13358 0 R 13359 0 R 13360 0 R 13361 0 R 13362 0 R 13363 0 R 13364 0 R 13365 0 R 13366 0 R 13367 0 R 13368 0 R 13369 0 R 13370 0 R 13371 0 R 13372 0 R 13373 0 R 13374 0 R 13375 0 R 13376 0 R 13377 0 R 13378 0 R 13379 0 R 13380 0 R 13381 0 R 13382 0 R 13383 0 R 13384 0 R 13385 0 R 13386 0 R 13387 0 R 13388 0 R 13389 0 R 13390 0 R 13391 0 R 13392 0 R 13393 0 R 13394 0 R 13395 0 R 13396 0 R 13397 0 R 13398 0 R 13399 0 R 13400 0 R 13401 0 R 13402 0 R 13403 0 R 13404 0 R 13405 0 R 13406 0 R 13407 0 R 13408 0 R 13409 0 R 13410 0 R 13411 0 R 13412 0 R 13413 0 R 13414 0 R 13415 0 R 13416 0 R 13417 0 R 13418 0 R 13419 0 R 13420 0 R 13421 0 R 13422 0 R 13423 0 R 13424 0 R 13425 0 R 13426 0 R 13427 0 R 13428 0 R 13429 0 R 13430 0 R 13431 0 R 13432 0 R 13433 0 R 13434 0 R 13435 0 R 13436 0 R 13437 0 R 13438 0 R 13439 0 R 13440 0 R 13441 0 R 13442 0 R 13443 0 R 13444 0 R 13445 0 R 13446 0 R 13447 0 R 13448 0 R 13449 0 R 13450 0 R 13451 0 R 13452 0 R 13453 0 R 13454 0 R 13455 0 R 13456 0 R 13457 0 R 13458 0 R 13459 0 R 13460 0 R 13461 0 R 13462 0 R 13463 0 R 13464 0 R 13465 0 R 13466 0 R 13467 0 R 13468 0 R 13469 0 R 13470 0 R ]
+>>
+endobj
+13348 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [121.195 758.07 138.143 768.446]
+/A << /S /GoTo /D (page.109) >>
+>>
+endobj
+13353 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.698 746.222 134.646 756.491]
+/A << /S /GoTo /D (page.110) >>
+>>
+endobj
+13354 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [120.197 734.827 137.145 744.742]
+/A << /S /GoTo /D (page.127) >>
+>>
+endobj
+13355 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.452 722.872 139.4 732.58]
+/A << /S /GoTo /D (page.129) >>
+>>
+endobj
+13356 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [120.101 710.917 137.049 720.625]
+/A << /S /GoTo /D (page.129) >>
+>>
+endobj
+13357 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.066 698.402 158.014 708.67]
+/A << /S /GoTo /D (page.131) >>
+>>
+endobj
+13358 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.066 686.446 158.014 696.715]
+/A << /S /GoTo /D (page.131) >>
+>>
+endobj
+13359 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.683 675.052 141.631 684.966]
+/A << /S /GoTo /D (page.129) >>
+>>
+endobj
+13360 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [127.659 663.096 144.608 672.804]
+/A << /S /GoTo /D (page.130) >>
+>>
+endobj
+13361 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [125.588 651.141 142.536 660.849]
+/A << /S /GoTo /D (page.130) >>
+>>
+endobj
+13362 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.703 639.186 131.651 648.894]
+/A << /S /GoTo /D (page.128) >>
+>>
+endobj
+13363 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [128.036 627.231 144.984 636.939]
+/A << /S /GoTo /D (page.131) >>
+>>
+endobj
+13364 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.421 602.76 179.37 613.029]
+/A << /S /GoTo /D (page.191) >>
+>>
+endobj
+13365 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.421 578.85 179.37 589.118]
+/A << /S /GoTo /D (page.191) >>
+>>
+endobj
+13366 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.421 554.94 179.37 565.208]
+/A << /S /GoTo /D (page.191) >>
+>>
+endobj
+13367 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.421 531.029 179.37 541.297]
+/A << /S /GoTo /D (page.191) >>
+>>
+endobj
+13368 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.421 507.119 179.37 517.387]
+/A << /S /GoTo /D (page.192) >>
+>>
+endobj
+13369 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.421 483.209 179.37 493.477]
+/A << /S /GoTo /D (page.192) >>
+>>
+endobj
+13370 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.421 459.298 179.37 469.566]
+/A << /S /GoTo /D (page.192) >>
+>>
+endobj
+13371 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [176.311 447.343 193.259 457.818]
+/A << /S /GoTo /D (page.132) >>
+>>
+endobj
+13372 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.745 435.948 151.693 445.656]
+/A << /S /GoTo /D (page.135) >>
+>>
+endobj
+13373 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [116.03 423.433 132.978 433.701]
+/A << /S /GoTo /D (page.135) >>
+>>
+endobj
+13374 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [137.908 412.038 154.856 421.746]
+/A << /S /GoTo /D (page.142) >>
+>>
+endobj
+13375 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.697 400.083 136.645 409.791]
+/A << /S /GoTo /D (page.136) >>
+>>
+endobj
+13376 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.047 387.46 151.995 398.042]
+/A << /S /GoTo /D (page.137) >>
+>>
+endobj
+13377 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.145 375.504 156.093 385.88]
+/A << /S /GoTo /D (page.137) >>
+>>
+endobj
+13378 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.589 363.657 172.537 373.925]
+/A << /S /GoTo /D (page.138) >>
+>>
+endobj
+13379 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.219 352.262 131.167 361.97]
+/A << /S /GoTo /D (page.143) >>
+>>
+endobj
+13380 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [112.219 339.747 129.168 350.015]
+/A << /S /GoTo /D (page.138) >>
+>>
+endobj
+13381 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [119.204 328.352 136.152 338.06]
+/A << /S /GoTo /D (page.143) >>
+>>
+endobj
+13382 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [133.317 315.836 150.265 326.104]
+/A << /S /GoTo /D (page.139) >>
+>>
+endobj
+13383 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [105.244 303.881 122.192 314.149]
+/A << /S /GoTo /D (page.139) >>
+>>
+endobj
+13384 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [112.722 292.486 129.67 302.194]
+/A << /S /GoTo /D (page.140) >>
+>>
+endobj
+13385 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [154.854 280.531 171.802 290.239]
+/A << /S /GoTo /D (page.140) >>
+>>
+endobj
+13386 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [124.189 268.576 141.138 278.284]
+/A << /S /GoTo /D (page.140) >>
+>>
+endobj
+13387 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [111.224 255.953 128.172 266.329]
+/A << /S /GoTo /D (page.141) >>
+>>
+endobj
+13388 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.199 244.105 139.147 254.373]
+/A << /S /GoTo /D (page.141) >>
+>>
+endobj
+13389 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [126.996 232.71 143.944 242.418]
+/A << /S /GoTo /D (page.134) >>
+>>
+endobj
+13390 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [117.698 220.195 134.646 230.463]
+/A << /S /GoTo /D (page.142) >>
+>>
+endobj
+13391 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [113.842 208.8 130.79 218.508]
+/A << /S /GoTo /D (page.142) >>
+>>
+endobj
+13392 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [187.372 196.177 204.32 206.759]
+/A << /S /GoTo /D (page.145) >>
+>>
+endobj
+13393 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [207.313 196.177 224.261 206.759]
+/A << /S /GoTo /D (page.146) >>
+>>
+endobj
+13394 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [177.904 184.222 194.852 194.804]
+/A << /S /GoTo /D (page.148) >>
+>>
+endobj
+13395 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [162.912 172.934 179.86 182.849]
+/A << /S /GoTo /D (page.149) >>
+>>
+endobj
+13396 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [182.853 172.934 199.801 182.849]
+/A << /S /GoTo /D (page.150) >>
+>>
+endobj
+13397 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [194.94 160.419 211.888 170.894]
+/A << /S /GoTo /D (page.153) >>
+>>
+endobj
+13398 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [185.471 148.464 202.419 158.938]
+/A << /S /GoTo /D (page.153) >>
+>>
+endobj
+13399 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [199.467 136.401 216.416 146.983]
+/A << /S /GoTo /D (page.154) >>
+>>
+endobj
+13400 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.883 124.553 187.831 135.028]
+/A << /S /GoTo /D (page.154) >>
+>>
+endobj
+13401 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [190.824 124.553 207.772 135.028]
+/A << /S /GoTo /D (page.155) >>
+>>
+endobj
+13402 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.415 113.159 178.363 123.073]
+/A << /S /GoTo /D (page.158) >>
+>>
+endobj
+13403 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.424 101.203 178.372 111.118]
+/A << /S /GoTo /D (page.150) >>
+>>
+endobj
+13404 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [181.365 101.203 198.313 111.118]
+/A << /S /GoTo /D (page.151) >>
+>>
+endobj
+13405 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [170.883 88.688 187.831 99.163]
+/A << /S /GoTo /D (page.159) >>
+>>
+endobj
+13406 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [190.824 88.688 207.772 99.163]
+/A << /S /GoTo /D (page.160) >>
+>>
+endobj
+13407 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [161.415 77.293 178.363 87.207]
+/A << /S /GoTo /D (page.162) >>
+>>
+endobj
+13408 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [390.406 758.177 407.354 768.652]
+/A << /S /GoTo /D (page.163) >>
+>>
+endobj
+13409 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [380.938 746.783 397.886 756.697]
+/A << /S /GoTo /D (page.164) >>
+>>
+endobj
+13410 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [378.141 734.267 395.089 744.742]
+/A << /S /GoTo /D (page.164) >>
+>>
+endobj
+13411 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [398.081 734.267 415.03 744.742]
+/A << /S /GoTo /D (page.165) >>
+>>
+endobj
+13412 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [391.186 722.872 408.134 732.786]
+/A << /S /GoTo /D (page.151) >>
+>>
+endobj
+13413 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [390.863 710.357 407.812 720.831]
+/A << /S /GoTo /D (page.166) >>
+>>
+endobj
+13414 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [410.804 710.357 427.752 720.831]
+/A << /S /GoTo /D (page.167) >>
+>>
+endobj
+13415 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [381.395 698.962 398.343 708.876]
+/A << /S /GoTo /D (page.167) >>
+>>
+endobj
+13416 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [401.336 698.962 418.284 708.876]
+/A << /S /GoTo /D (page.168) >>
+>>
+endobj
+13417 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [387.878 686.339 404.826 696.921]
+/A << /S /GoTo /D (page.168) >>
+>>
+endobj
+13418 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [378.409 674.384 395.357 684.966]
+/A << /S /GoTo /D (page.169) >>
+>>
+endobj
+13419 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [398.35 674.384 415.298 684.966]
+/A << /S /GoTo /D (page.170) >>
+>>
+endobj
+13420 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [389.698 663.096 406.646 673.011]
+/A << /S /GoTo /D (page.152) >>
+>>
+endobj
+13421 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [399.345 650.581 416.293 661.055]
+/A << /S /GoTo /D (page.171) >>
+>>
+endobj
+13422 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [389.877 639.186 406.825 649.1]
+/A << /S /GoTo /D (page.171) >>
+>>
+endobj
+13423 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.813 626.671 410.761 637.145]
+/A << /S /GoTo /D (page.177) >>
+>>
+endobj
+13424 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.345 615.276 401.293 625.19]
+/A << /S /GoTo /D (page.179) >>
+>>
+endobj
+13425 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.286 615.276 421.234 625.19]
+/A << /S /GoTo /D (page.180) >>
+>>
+endobj
+13426 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.255 602.76 401.203 613.235]
+/A << /S /GoTo /D (page.181) >>
+>>
+endobj
+13427 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [374.787 591.365 391.735 601.28]
+/A << /S /GoTo /D (page.182) >>
+>>
+endobj
+13428 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [394.728 591.365 411.676 601.28]
+/A << /S /GoTo /D (page.183) >>
+>>
+endobj
+13429 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [386.201 578.742 403.149 589.324]
+/A << /S /GoTo /D (page.183) >>
+>>
+endobj
+13430 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [406.142 578.742 423.09 589.324]
+/A << /S /GoTo /D (page.184) >>
+>>
+endobj
+13431 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [376.733 566.787 393.681 577.369]
+/A << /S /GoTo /D (page.185) >>
+>>
+endobj
+13432 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [395.311 554.94 412.259 565.414]
+/A << /S /GoTo /D (page.187) >>
+>>
+endobj
+13433 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [415.251 554.94 432.199 565.414]
+/A << /S /GoTo /D (page.188) >>
+>>
+endobj
+13434 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [385.842 543.545 402.79 553.459]
+/A << /S /GoTo /D (page.189) >>
+>>
+endobj
+13435 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [411.62 531.029 428.568 541.504]
+/A << /S /GoTo /D (page.191) >>
+>>
+endobj
+13436 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [431.561 531.029 448.509 541.504]
+/A << /S /GoTo /D (page.193) >>
+>>
+endobj
+13437 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [402.152 519.074 419.1 529.549]
+/A << /S /GoTo /D (page.194) >>
+>>
+endobj
+13438 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [422.093 519.074 439.041 529.549]
+/A << /S /GoTo /D (page.195) >>
+>>
+endobj
+13439 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [386.837 507.119 403.786 517.593]
+/A << /S /GoTo /D (page.195) >>
+>>
+endobj
+13440 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.369 495.164 394.317 505.638]
+/A << /S /GoTo /D (page.196) >>
+>>
+endobj
+13441 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [397.31 495.164 414.258 505.638]
+/A << /S /GoTo /D (page.197) >>
+>>
+endobj
+13442 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [401.883 483.209 418.831 493.683]
+/A << /S /GoTo /D (page.197) >>
+>>
+endobj
+13443 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [392.414 471.814 409.363 481.728]
+/A << /S /GoTo /D (page.198) >>
+>>
+endobj
+13444 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [387.205 459.191 404.153 469.773]
+/A << /S /GoTo /D (page.200) >>
+>>
+endobj
+13445 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.737 447.235 394.685 457.818]
+/A << /S /GoTo /D (page.202) >>
+>>
+endobj
+13446 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [380.714 435.388 397.662 445.862]
+/A << /S /GoTo /D (page.204) >>
+>>
+endobj
+13447 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.245 423.993 388.194 433.907]
+/A << /S /GoTo /D (page.206) >>
+>>
+endobj
+13448 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.13 411.478 401.078 421.952]
+/A << /S /GoTo /D (page.207) >>
+>>
+endobj
+13449 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [374.662 399.522 391.61 409.997]
+/A << /S /GoTo /D (page.165) >>
+>>
+endobj
+13450 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [394.602 399.522 411.55 409.997]
+/A << /S /GoTo /D (page.166) >>
+>>
+endobj
+13451 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [393.006 387.567 409.954 398.042]
+/A << /S /GoTo /D (page.207) >>
+>>
+endobj
+13452 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [383.538 376.172 400.486 386.087]
+/A << /S /GoTo /D (page.207) >>
+>>
+endobj
+13453 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [403.479 376.172 420.427 386.087]
+/A << /S /GoTo /D (page.208) >>
+>>
+endobj
+13454 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [382.839 363.657 399.787 374.131]
+/A << /S /GoTo /D (page.211) >>
+>>
+endobj
+13455 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [399.785 351.702 416.733 362.176]
+/A << /S /GoTo /D (page.213) >>
+>>
+endobj
+13456 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [390.316 340.307 407.265 350.221]
+/A << /S /GoTo /D (page.215) >>
+>>
+endobj
+13457 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [412.651 327.684 429.6 338.266]
+/A << /S /GoTo /D (page.147) >>
+>>
+endobj
+13458 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [403.183 315.729 420.131 326.311]
+/A << /S /GoTo /D (page.149) >>
+>>
+endobj
+13459 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [388.192 304.441 405.14 314.356]
+/A << /S /GoTo /D (page.152) >>
+>>
+endobj
+13460 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [398.79 291.926 415.738 302.4]
+/A << /S /GoTo /D (page.216) >>
+>>
+endobj
+13461 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [389.321 279.971 406.269 290.445]
+/A << /S /GoTo /D (page.216) >>
+>>
+endobj
+13462 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.262 279.971 426.21 290.445]
+/A << /S /GoTo /D (page.217) >>
+>>
+endobj
+13463 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.973 255.953 421.936 266.535]
+/A << /S /GoTo /D (page.37) >>
+>>
+endobj
+13464 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [349.944 232.71 361.907 242.418]
+/A << /S /GoTo /D (page.16) >>
+>>
+endobj
+13465 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [346.967 208.8 358.93 218.714]
+/A << /S /GoTo /D (page.20) >>
+>>
+endobj
+13466 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [346.967 176.139 358.93 186.054]
+/A << /S /GoTo /D (page.20) >>
+>>
+endobj
+13467 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.875 152.229 388.823 162.143]
+/A << /S /GoTo /D (page.128) >>
+>>
+endobj
+13468 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.184 127.651 433.147 138.233]
+/A << /S /GoTo /D (page.75) >>
+>>
+endobj
+13469 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [346.967 104.408 358.93 114.323]
+/A << /S /GoTo /D (page.23) >>
+>>
+endobj
+13470 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [346.967 80.498 358.93 90.412]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13475 0 obj
+<<
+/D [13473 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+13472 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F25 2380 0 R /F22 2379 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+13537 0 obj
+<<
+/Length 1266      
+/Filter /FlateDecode
+>>
+stream
+x��Z[o�H~�W��f:�Z�C��R5M/nU)�"��.�Y0M���`6���{Ӱ/����9�3G`o�a����<����H�<���0�Rz�P$���E�R����8��p?�>>}wx�u�E�����!�9��
+@k�)����w���#f�w���x\0$2������;��=�F���$/��t~��Ef>�;|<�xT�.���9�w@2T�� #D��&�?gI�X��R�H*V)8�Ւ����_#��r�(N%�LmHql���� p�$�e�MQ6Mq�Q������LP�x5KEM���<z���ƒ#VKy͞	K�����
b@����H�g�,
��Y:�'th�J7��+1�*�"��GE7ϣLgm��2���!)���^%���9��;�8e
������U���8�K;e�L��QŸE8��٢	%���2|���O�q�*
�d�5̳���/b���iD
}!}l%�z͈|T*gA�_ʾ��^�[����_Hi��f�0z��i0��i�mm�ئP�q����}U��e�����i��`��a�]�(�r	�8��0Öp(��Jv\��H�6$G)�	��r0E�C�ֶeW��`I�
c:�O�: R	4�&I�?;X�#�-�EhfQ>Ω�<I���P�S�%���~���(�밵sJ
+����S��y�f5H�:���Z�Ҩ�J�%�5�G�����7�J�v�n
��X6���(�����ǣ�Z�|ְ�n���#Pv^�2�n�睭	H��f���5��6J&�H(YN��u�Ѿo����p$�Q��Sp�'�~�
+I&ܛ�'bN8Y�J�k��a��i�s�-�Jئr�ɩҁM�
u<&Q;ԕ���2Κ����կ� H*�I�1�t�G����0���|n���>7�&�͎�f
���V���H���ߪ9��o:�)6�ʻ�������f	�s7��j�f�Z�D��I��rb]q�V�]K0%GT��䀬�ئ�������������V�1b��+6�x
+���o�2�7�X#����[9���'eFT���:����ö�_��u0��}�g�l���(����X�V�hc�oY�$�ُA<����;�-�v��֍i!�M��H�&1י�h�$�(.#�M��C!��k����~n�}���Y֞G�|�.��MAx�g!�y�W�L�Uy�f@�:W��uN@7
��Ϲ���$�J�L��q�'������� �œt��w��ä�p��n�
����+��[�J
+endstream
+endobj
+13536 0 obj
+<<
+/Type /Page
+/Contents 13537 0 R
+/Resources 13535 0 R
+/MediaBox [0 0 595.276 841.89]
+/Parent 13476 0 R
+/Annots [ 13471 0 R 13477 0 R 13478 0 R 13479 0 R 13480 0 R 13481 0 R 13482 0 R 13483 0 R 13484 0 R 13485 0 R 13486 0 R 13487 0 R 13488 0 R 13489 0 R 13490 0 R 13491 0 R 13492 0 R 13493 0 R 13494 0 R 13495 0 R 13496 0 R 13497 0 R 13498 0 R 13499 0 R 13500 0 R 13501 0 R 13502 0 R 13503 0 R 13504 0 R 13505 0 R 13506 0 R 13507 0 R 13508 0 R 13509 0 R 13510 0 R 13511 0 R 13512 0 R 13513 0 R 13514 0 R 13515 0 R 13516 0 R 13517 0 R 13518 0 R 13519 0 R 13520 0 R 13521 0 R 13522 0 R 13523 0 R 13524 0 R 13525 0 R 13526 0 R 13527 0 R 13528 0 R 13529 0 R 13530 0 R 13531 0 R 13532 0 R 13533 0 R 13534 0 R ]
+>>
+endobj
+13471 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 758.738 127.177 768.652]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13477 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 734.827 127.177 744.742]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13478 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 710.917 127.177 720.831]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13479 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 687.007 127.177 696.921]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13480 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 663.096 127.177 673.011]
+/A << /S /GoTo /D (page.24) >>
+>>
+endobj
+13481 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 639.186 127.177 649.1]
+/A << /S /GoTo /D (page.25) >>
+>>
+endobj
+13482 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 615.276 127.177 625.19]
+/A << /S /GoTo /D (page.25) >>
+>>
+endobj
+13483 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 591.365 127.177 601.28]
+/A << /S /GoTo /D (page.25) >>
+>>
+endobj
+13484 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 567.455 127.177 577.369]
+/A << /S /GoTo /D (page.25) >>
+>>
+endobj
+13485 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 543.545 127.177 553.459]
+/A << /S /GoTo /D (page.26) >>
+>>
+endobj
+13486 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 519.634 127.177 529.549]
+/A << /S /GoTo /D (page.26) >>
+>>
+endobj
+13487 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 495.724 127.177 505.638]
+/A << /S /GoTo /D (page.26) >>
+>>
+endobj
+13488 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 471.814 127.177 481.728]
+/A << /S /GoTo /D (page.26) >>
+>>
+endobj
+13489 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [115.214 447.903 127.177 457.818]
+/A << /S /GoTo /D (page.26) >>
+>>
+endobj
+13490 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [200.232 423.325 212.195 433.907]
+/A << /S /GoTo /D (page.89) >>
+>>
+endobj
+13491 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [93.783 403.288 105.746 412.996]
+/A << /S /GoTo /D (page.27) >>
+>>
+endobj
+13492 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [139.134 391.332 151.097 401.04]
+/A << /S /GoTo /D (page.29) >>
+>>
+endobj
+13493 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [142.895 379.377 154.858 389.085]
+/A << /S /GoTo /D (page.30) >>
+>>
+endobj
+13494 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.648 367.422 147.611 377.13]
+/A << /S /GoTo /D (page.30) >>
+>>
+endobj
+13495 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [135.146 355.467 147.109 365.175]
+/A << /S /GoTo /D (page.30) >>
+>>
+endobj
+13496 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [131.658 342.844 143.621 353.426]
+/A << /S /GoTo /D (page.31) >>
+>>
+endobj
+13497 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [150.227 331.557 162.19 341.265]
+/A << /S /GoTo /D (page.31) >>
+>>
+endobj
+13498 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [114.219 319.601 126.182 329.309]
+/A << /S /GoTo /D (page.31) >>
+>>
+endobj
+13499 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [136.15 307.646 148.113 317.354]
+/A << /S /GoTo /D (page.32) >>
+>>
+endobj
+13500 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [152 295.023 163.963 305.605]
+/A << /S /GoTo /D (page.38) >>
+>>
+endobj
+13501 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [155.761 283.068 167.724 293.65]
+/A << /S /GoTo /D (page.39) >>
+>>
+endobj
+13502 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [120.191 271.781 132.153 281.489]
+/A << /S /GoTo /D (page.40) >>
+>>
+endobj
+13503 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [148.013 259.158 159.976 269.74]
+/A << /S /GoTo /D (page.39) >>
+>>
+endobj
+13504 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [122.593 247.87 134.556 257.578]
+/A << /S /GoTo /D (page.39) >>
+>>
+endobj
+13505 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [138.138 235.355 150.101 245.623]
+/A << /S /GoTo /D (page.68) >>
+>>
+endobj
+13506 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [141.9 223.4 153.863 233.668]
+/A << /S /GoTo /D (page.68) >>
+>>
+endobj
+13507 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [134.151 211.445 146.114 221.713]
+/A << /S /GoTo /D (page.68) >>
+>>
+endobj
+13508 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.431 187.427 201.394 198.009]
+/A << /S /GoTo /D (page.76) >>
+>>
+endobj
+13509 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [189.431 163.516 201.394 174.098]
+/A << /S /GoTo /D (page.74) >>
+>>
+endobj
+13510 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [196.236 151.669 213.184 162.143]
+/A << /S /GoTo /D (page.141) >>
+>>
+endobj
+13511 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.22 127.651 190.183 138.233]
+/A << /S /GoTo /D (page.34) >>
+>>
+endobj
+13512 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [159.059 104.408 171.022 114.116]
+/A << /S /GoTo /D (page.32) >>
+>>
+endobj
+13513 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [178.22 79.83 190.183 90.412]
+/A << /S /GoTo /D (page.37) >>
+>>
+endobj
+13514 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [371.875 758.738 388.823 768.652]
+/A << /S /GoTo /D (page.131) >>
+>>
+endobj
+13515 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.84 734.827 396.803 744.742]
+/A << /S /GoTo /D (page.61) >>
+>>
+endobj
+13516 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.184 700.286 433.147 710.869]
+/A << /S /GoTo /D (page.76) >>
+>>
+endobj
+13517 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 676.484 444.937 686.958]
+/A << /S /GoTo /D (page.134) >>
+>>
+endobj
+13518 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.973 652.466 421.936 663.048]
+/A << /S /GoTo /D (page.37) >>
+>>
+endobj
+13519 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [409.973 618.593 421.936 629.175]
+/A << /S /GoTo /D (page.37) >>
+>>
+endobj
+13520 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [441.618 595.35 453.581 605.265]
+/A << /S /GoTo /D (page.48) >>
+>>
+endobj
+13521 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [438.13 583.395 450.093 593.309]
+/A << /S /GoTo /D (page.51) >>
+>>
+endobj
+13522 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [434.642 570.88 446.605 581.354]
+/A << /S /GoTo /D (page.45) >>
+>>
+endobj
+13523 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [384.84 559.485 396.803 569.399]
+/A << /S /GoTo /D (page.59) >>
+>>
+endobj
+13524 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.184 546.862 433.147 557.444]
+/A << /S /GoTo /D (page.75) >>
+>>
+endobj
+13525 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [386.338 535.575 398.301 545.489]
+/A << /S /GoTo /D (page.84) >>
+>>
+endobj
+13526 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [377.865 523.059 389.827 533.534]
+/A << /S /GoTo /D (page.95) >>
+>>
+endobj
+13527 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.18 511.104 454.128 521.578]
+/A << /S /GoTo /D (page.101) >>
+>>
+endobj
+13528 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [425.246 499.041 442.194 509.623]
+/A << /S /GoTo /D (page.112) >>
+>>
+endobj
+13529 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.852 487.086 454.8 497.668]
+/A << /S /GoTo /D (page.114) >>
+>>
+endobj
+13530 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [404.328 475.131 421.276 485.713]
+/A << /S /GoTo /D (page.110) >>
+>>
+endobj
+13531 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 463.283 444.937 473.758]
+/A << /S /GoTo /D (page.142) >>
+>>
+endobj
+13532 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [421.184 439.265 433.147 449.847]
+/A << /S /GoTo /D (page.75) >>
+>>
+endobj
+13533 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [437.18 427.418 454.128 437.892]
+/A << /S /GoTo /D (page.102) >>
+>>
+endobj
+13534 0 obj
+<<
+/Type /Annot
+/Subtype /Link
+/Border[0 0 0]/H/I/C[1 0 0]
+/Rect [427.989 415.463 444.937 425.937]
+/A << /S /GoTo /D (page.142) >>
+>>
+endobj
+13538 0 obj
+<<
+/D [13536 0 R /XYZ 69.866 801.979 null]
+>>
+endobj
+13535 0 obj
+<<
+/Font << /F48 2333 0 R /F33 2286 0 R /F22 2379 0 R /F25 2380 0 R >>
+/ProcSet [ /PDF /Text ]
+>>
+endobj
+13539 0 obj
+[799.4 513.9 799.4]
+endobj
+13540 0 obj
+[761.6 489.6 761.6]
+endobj
+13542 0 obj
+[600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600]
+endobj
+13543 0 obj
+[600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600]
+endobj
+13544 0 obj
+[531.3 826.4 531.3 826.4 826.4 826.4 826.4 826.4 826.4 826.4 1062.5 531.3 531.3 826.4 826.4 826.4 826.4 826.4 826.4 826.4 826.4 826.4]
+endobj
+13545 0 obj
+[826.4 531.3 826.4]
+endobj
+13546 0 obj
+[500 500 167 333 556 222 333 333 0 333 584 0 611 500 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 191 278 278 355 556 556 889 667 222 333 333 389 584 278 333 278 278 556 556 556 556 556 556 556 556 556 556 278 278 584 584 584 556 1015 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 667 778 722 667 611 722 667 944 667 667 611 278 278 278 469 556 222 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 556 556 333 500 278 556 500 722 500 500 500]
+endobj
+13547 0 obj
+[339.3]
+endobj
+13548 0 obj
+[1138.9 1138.9 585.3 585.3 1138.9 1138.9 1138.9 892.9 1138.9 1138.9 708.3 708.3 1138.9 1138.9 1138.9 892.9 329.4 1138.9 769.8 769.8 1015.9 1015.9 0 0 646.8 646.8 769.8 585.3 831.4 831.4 892.9 892.9 708.3 917.6 753.4 620.2 889.5 616.1 818.4 688.5 978.7 646.5 782.2 871.7 791.7 1342.7 935.6 905.8 809.2 935.9 981 702.2 647.8 717.8 719.9 1135.1 818.9 764.4 823.1 769.8 769.8 769.8 769.8 769.8 708.3 708.3 523.8 523.8 523.8 523.8 585.3 585.3 462.3 462.3 339.3 585.3 585.3 708.3 585.3]
+endobj
+13549 0 obj
+[479 228 273 228 228 456 456 456 456 456 456 456 456 456 456 273 273 479 479 479 501 800 592 592 592 592 547 501 638 592 228 456 592 501 683 592 638 547 638 592 547 501 592 547 774 547 547 501 273 228 273 479 456 228 456 501 456 501 456 273 501 501 228 228 456 228 729 501 501 501 501 319 456 273 501 456 638 456 456]
+endobj
+13550 0 obj
+[600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 0 0 0 600 600 600 600 600 600 600 600 600 600 600 0 0 0 0 0 0 600 600 600 600 600 600 600 600 600 600 0 0 600 0 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600 600]
+endobj
+13551 0 obj
+[500 777.8 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 1000 500 500 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8 777.8]
+endobj
+13552 0 obj
+[777.8 500 777.8]
+endobj
+13553 0 obj
+[611 611 167 333 611 278 333 333 0 333 584 0 611 500 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 238 278 333 474 556 556 889 722 278 333 333 389 584 278 333 278 278 556 556 556 556 556 556 556 556 556 556 333 333 584 584 584 611 975 722 722 722 722 667 611 778 722 278 556 722 611 833 722 778 667 778 722 667 611 722 667 944 667 667 611 333 278 333 584 556 278 556 611 556 611 556 333 611 611 278 278 556 278 889 611 611 611 611 389 556 333 611 556 778 556 556 500]
+endobj
+13554 0 obj
+[500 500 167 333 556 222 333 333 0 333 584 0 611 500 333 278 0 0 0 0 0 0 0 0 0 0 0 0 333 191 278 278 355 556 556 889 667 222 333 333 389 584 278 333 278 278 556 556 556 556 556 556 556 556 556 556 278 278 584 584 584 556 1015 667 667 722 722 667 611 778 722 278 500 667 556 833 722 778 667 778 722 667 611 722 667 944 667 667 611 278 278 278 469 556 222 556 556 500 556 556 278 556 556 222 222 500 222 833 556 556 556 556 333 500 278 556 500 722 500 500 500 334 260 334 584 0 0 0 222 556 333 1000 556 556 333 1000 667 333 1000 0 0 0 0 0 0 333 333 350 556]
+endobj
+13555 0 obj
+<<
+/Length1 1416
+/Length2 6052
+/Length3 0
+/Length 7019      
+/Filter /FlateDecode
+>>
+stream
+xڍwT���6҄�RE:Q�CH��*�� �$$�� �I�U�*��H�* H��)*J/_PϽ���_��V�Jޙyf���ϳ�Λw���v05$��I�uu5�  $,�	89��XW��~��)��#R��PF� X�O��u���W X��K�@@!H�o -T�x�큺@-$�p*#Q�h����ߏ@n(,))~�W:P�
��C!�.�sï����P8����2NX,JJP���S��@��x��=�X'�!C{��#� n�?�	�8��Np����	AÀx�+
+C`�)�04�:�HS���!~�u~���l,��W�?����_�(醂 ��G���W��za��!� ����C< pW��uPM���O�g>
Ga1��Ō�e�۬��WF���X�?8�ﻷ���uA =>[p�����P�&������������$ą%D�0w ��$x���7
+�+�p�g��A!Q@�0?����@<`@,����?���`0���`�p����n��o�h���������
+�0{$�����_G,htO���)ߟ��TRBz}�����B�  $"�?����]�O����p@/�]�ߨ�{��C�?
+����O]���L�����/����R�4���2��;R{���+�����!npW�?<u`�2�E�ŀ�o��vua��n���B�rPD8�)������1jp/��]8���6��&�s�#`w�������+�W��`����`���:���?�PE@���B�h�7��xK��������@A�O�g�: р��
+:^�e�m�~�@@A׋&.�X
���Ʒ�&�V��	�A�H�t�sup�a�"�'�ʐ�Vڡ��P�5�[u�f1�(;kJ���dX�ڹMO��0g�Î�r
{���>?�ښ#�]������D��[��O�R�ؤ���wY��������8)}�������EW�&�Ң��^Y��C�"i��!�ɮ�xEt���On�AKі�z��eZ��	�T��}3�]�Q�Z�V�s�b�U��XTD.W��<��3��c3���N�VaӾ��<O�a�޶�����M�vq'�$�h��+5j�N)
���i?��N��+�x�1�L�k��+�����=5�9���v���pO0��ٳ��/~u��b<B	���L�^V�����sz���=��2n&d!���b,W4#�`N-,|��VnrM��s���{�>8���;��J\S�Q��h�B͌oF���-���ZhzU�2��mq߷�k�J��
Y�W�kq�����q4R
+Ȟ�l�-28�A�9�V��RW�[)a�=A�^ދ��@��=�a�GI`��&�t�0�@��H�߽.m:��(�����Pn�����T��-7E�੡p�D/]�O+�S��eI�����aݤe}J'?~�i��W���'�F�(.�6�F�U1���R"H& ��s�殰#3�N��5v�V�s�s����J,���=�.�o��b��H�\���z������я�	N*�ܲ�n��{Y6�!�����l:;��^򵖯�U`���A�%�H��v�MYZ�!���N1�vy:<�mA-�@�I߫�	Ľ�iN�F
!O�H�Ѡ��G7&����	@7���t}g
a����jS���%����'��$y��g*�=���ƺ�ݱ��K���h"�P���(�.mВ�̜����F���.Q~1���G!�TN�^D�z��;|Ш9�`�2V��p�0���;�X^���f�QͺJ,��gPջ���7Mf��o�Hۋ<�7.�����t�Aw��;3!͇�~�<��w�x��`l޳[��c'���<nҦ�
+���{/���T/��Y���1�F��9N�]7+�t�%�����.���L3Gi��w�>�i��y���M���lq 
��5��'Bgt�+���o�-��_�p|�n^N>�vj��8�c�g�آ �-ִ�&�h^ce�`��>��x�/8/�:e�4���x��;6x��د�fu$��2T���p�<���L�V�9Yߺe1�����J�IvsȂ��x�`^i�3e7��
+h����	j���g'z�H���֞*E�`��׺�6 p�{#�
+mu�d�+pai��@��&EV��	[�����[e���U�`W�盟���^��7����Q���&C,����lQ���R�
�}2��G|���PSM�J"1n���l�}@@��s��P!+(��/�s.�������{��ɚ�CC{���r��O�:&��|�;�u]��~�%�nT�����R_��[���#{&��fcZI?�2����`�X��@h�E)!������gœ���'�{1�=�^4�h����92oe����ù��a�kz��;4ve�P,�1�������̜;+�f�:��<��&�.�,=XipՄ=Xe��VA��S�@�Υf�x�3�(�H~�!M�5���f�<�2���>���;¥�ܒG�ك���r�
+ѽ+oFK���$��׹gz�����AЃAgz9�q������:q���Oz�MR+�3���a���,}��3��.�IO��OL�"�LV$2D�}�׊Xa���ʌk
+��+�JfJRoV��$��Ѽ�1��K�(j
0�(�MH���A��}!���P��W�HCC����x�.�%���*o�׻z��o�^��F�҈,��x7�sL�i�3����1�@B�,�q3�iU4�4yg-e	ui��x8[~<+�Jt^^��M�f��f4#[ΦV'@��m�W�j ���И�N�OPnHԅ�Á���S�3qzџᷙ��?�yjbC�sW>������r�����{����Sr�ר{��W������|۬3[eCb-�c{�w;�f�Z�|�`d����N���C��A��&G}sJ�>��n��k��Z	�TD�wR^��|�a>���R��|�bt�D+DF�3�8�=����hI�R�0�e;іIͷ/k��/�Fy�O��$�U�����R&:�)+5�Q�� �l��,q���G�؂U�MI|��;�� �dS��QQo3m_\���R�wߩz��g%��S�rܤ�T��˪Euk��{a�S��3drE���y��g�{�ص���ʲj!\�����a�#1,�εk���]�j$An3��&��
O����q��5#��B�藷ʋ
+Q��ݢT�^:*o��"��v���3$�D}�r��ZR�Ny4�ȫ��Ț���<y���9���X�=GVIĶ�j񌟨����޵���@ܫ��Xt9	���(G��s
+B�ȸ�R�J�{���\��9�C�b +�m  a7�7�9���^$w��{��R�)?�K�˦�����ݓ��l�nQ�
+s6��~h��<�NCv��F�6�bAT����^�=���|&Q�T�M7��9�ؾUO��r�?�HBI+j�e?�z#��zѵ�D�w�����}��ڗ��Q�+�����.�:K	R� �_p~fR��{,�l�q�^iu1q*^�c�n4�ȹ,��gݳ�/���h=�i�9|eR�=��v�9�9��)��5VCy��V�[� @eq�����Z��NT*󤂹uc�����O*�2���8?���~�2Y߷�,�,���P@�T�b�Z��	j1n<�7�
+�IJ��+�LW����S�t�����6C�/�\�uF>-}}u@]������
���&8���X����ơ���@|(�&��Ah���o�Kjt�3-���l1NWc�j�>Z�@]��*�Շda�����av[Qw���w:�BO�i75�3{�ӈѯ,��_?zs������HXlF��@�/��rx�<t����D��>*t|Dž�i�P�b;����2�jJr*���8�������U����eYvK�q��с�8��GЯs��HT�+��N�hEȫp[���g.Q-M��N�\k�׃B����̶��K
+�Q7Ӑ�
+:��T+C,�J\[�_L�&ҡ��#L+!�ȗ�v�f�D�+�~�Jj�{�E��]��p�
���,s=����pP���j�BEs�������P*��UC��6uwp�f\���c�'�~nfY��?�t�p[��_\N��i'�Q��&�"H�����L�����E�뷨9'Ku[�K�6�����>ka�
+���񽭥e�[/�=ڢ��Ϩ	b��r�gY�VEJ0R�V���B�!���]�j��t4�gwvo���7�����{��dB�gN]NW|�I�G���Cy���o{���J�sRG��Z�l�4���K>F���l2��|���J��4�r3��Y�|춄���O�k�w0Ĭ������ߟ�����m~�]����JlA���j$VDbRt)?Ww|ܔv�Y��HIV�c���M�L�����>'4��� rvX������Q�n�{��3�j��9A��x��0�^i���J�`cŋ�2�	�g��K��V��Y3!w�og�9����}����DQ��美-�{�5N�@�겹�e��ա�*�T^h�`�'��]m�����k��,c����a��g�䕩��	���M&��.Dq�7����o�B�}[��百��^�͍l��x�zܩ������"PI�dJ���ƺ���gfo��rד��m�3^9��Z�t�HQ?��<�ơ��{�5�2�qK��$�I���_a��+|S����zR*����t�seW�����ʑ���i���b�c�z�[=��Hh�����h���%��ʏ������*�dg�q#�)�tY��e�BV�m�z0�l��$P
���Q8���uL��5��Զw����e�g��U�V��33�j�v"�іB���&P­���<)u"��%��C�(R�%�H��v#�xQ�+,GWU�]]��|;�҆�ш��!���
+���z?��k���M��n��`Z��IF�J�z�g�ЫBi(s;K;e5��#��zm��I2�1�ښKX�#��"�r*�M֬����;	�#���w4�k^Y
+m�
+,�r'���s�֞�=S���w��.������y�qj�]cAt�i{Ŗb��FKo~�ɲk)�+n���|NT���'�mY?��*�z��!b� ��Ƣ�������c_-
+��]
KbfR:�;I�&�*2<)[V��ߒ_~O(�4������#���!ØcMSw�;� C�^DP�շ���v���S	!I<�*퐄K?�����QrVn�%�R.C8����Lb��qT�FhWh5G����[�%����(�n@��t���a�'i�v���)�`u�$F�@����c��l<���V�Ԓ��)�����^Յ��$QSW?٬v˞'R��V��K��*�
2<��X����#�e��„�el��1}�0g��%	����+*$/c�Y,�z�$M�]v3+���`9O���ִ]�,�C ���+~�lc�-�>E�Uo�W_�?�=$%
!lOA
+��bG�(�(�w���y��4�m
dv���� �K5�.�ES��1�)����]�P�+�ކ�2�l�^���Y��?Շ��*�5}�A��w+��y��?�L'�Ku2R����]:C�
+VQ�q�Ռ�T�~�?�/6�d��m�ɿ�\�Dnw��X�G��y];p�
+�R�E��*���j��!9;���a�2O��+ͣ��D����.�`1�aE�/%T��8x�֘�:�ο���0�Y�)T|��L��~�@�Rt�|dۆl#/�`���	��aq��Fz�\�_K�_�g��~��u�Pԑ���9��n��^��|:����6lU־�Ș6{���G����Ǫ1m��tN�Q?�!E��
+g^�ؗQ�>L<���{�������N��<�v���Ҕ����G��0��b�B
+
+[�07Z�56ӷ
e�."����������C�FƼ�G	mu:�o�����]\�Y����T/�Y�6q�vMK��	cb���0�aƥ�N���S�:�\Rf�"�Z��K���t��#��/g^U8~o��HOJ�I>�_���E�d&�s<��v�#'S�膀�5�H��K]��<i��	��z�=E�
+�X�uI/�1r2�i�hU�h\Hd����a��!o;�F��9��W.��q�����|�
wjY�j��}�akp7�`���g�����?/�$�2$�X�?�ӝ�@�������ʿ5T�-���p�~�q����aj�AtF�*���/-h���ݵIc��nt'�Uj���T��1�_l����`(�X�z}�fӖ��M�����!��ɰo��4RP��sS�S��+�����Y���T����"�n�H�DQ�p�^��0,e�z%���޲�I=�gymO�{,6������,��(�+���"@�!ʚ����{\c�c
+��=�������AA&�?�|>�v��X�HI��'���j�g�ҟѐ�:�G'2E�0}�1t���;�h#o
�~峊�ƻ5�_��+w:�<��*��
+k?_��.P���6��0�F�P�f�k����q��+��:v8&R;#�X�R*��+��
���]��'Qו� e�\o�uF��<.���lrN�[D/����6� X�K��a�Q��_]�Ȓp�q@@�u��U�����k��#�$�Մ`�X����cKptzy錔���	AIB�ζt36� �|�E�[����ϝ>�v�圱�5GD-�?\T�u��
+Z$��"��qr���,�8jL�����ŅK;J�2p�rݷ����\s~�����a~�Ѳ$:�cNLJ����j��ux�L>��	͋��y���->��j��Łyn����c>�yR��X�PHi�d�{��G�%�ź����Q�xz �qKʽ����w���ǟ�;V>|�F�����z`G���a������\��x����m����I6.�r�����v��	�kz�7ٌ��(I����(�^
+endstream
+endobj
+13556 0 obj
+<<
+/Type /FontDescriptor
+/FontName /SYFPBV+CMMI10
+/Flags 4
+/FontBBox [-32 -250 1048 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 72
+/XHeight 431
+/CharSet (/greater/less)
+/FontFile 13555 0 R
+>>
+endobj
+13557 0 obj
+<<
+/Length1 1416
+/Length2 6052
+/Length3 0
+/Length 7019      
+/Filter /FlateDecode
+>>
+stream
+xڍWT�[��(HQz	M�z�^�w�H��@:HGP�C�]�&H��ޤ#R����w�{k���V��̞93��}�=C>;�-DC����J���@!���0���1����O����@B�0���PB@@(�O�����0���3�(��IťB����)�2�j��h�a$1���upDa����	��%%�y�\ (h�P�̊`�3��BP��(�)�B�J	xzz�\��p��,/��r@���p52@��3?1����0�ۣ<A��p��!0$&�fA�0�յ����o��o�/�����������}U
+����.� �7����:C���Z�(//������pL>�u�b��ZT� ̄�C�PW�	u��Q�f�U`vJp�$��O���1��-��p���0߿,{(���j;wWc������q��s�������b����v�Z����+�rcf��u���1c@�����/�������E�`�����]����1珀z,1��>�y��0�s�������t�����?AEE���O���������A��!�w�:�����/f�����	8�(���b:pu!�ο�n)(*�|��|����������w�����+���?� ������(���1��
5��֮6�����:
+����Ci>����o?�
+����AQ`�ߴ��7��3у#�WW&KP�_1����0����!#9ԯ���!Q��nw�>!Q1���ycc�|���A�~� ���0)�����{8���ń�Wwf0��>A���UW��vG 0���	����_‡@� `��18X:ԩ6��G��'���N�S!��kBT���ïq��S����o���N�:�n?���|��_z�|�cV]s`�}1v��s��1���F�\�$E&�"D7��3�"9;�nC��~wk�&�=��*V�k�i�.�Тb�|��`�j��3Z=��������22Y'�US��8γ�l���o��-�gA�˻��(r�>e��3y���E�i��j�JT�ڹ,4�}Jy	M;4��l�N���ě47[��V��'¢�!�ٟY�8<����U5lk�?B}<�7߿�|�c�5g��cy�~���
+�ϜR*��|�&9�1�ܷܞ`���Mj�d������0)c��d�4{ǫ�.��%�ֺ�	ж�g˺:����db�ey��R�e⯑�		�	��1~�
r�1�DY�	���?V6���<Pd7�W�,���/����/ݾV�3�J~�6�5m��#U����H!Bľj%��)�``���&{Z��=�'"*DZ��;g���ˡ�w��nߑݿ�?U�L#�`4�[���59OTD�b�j��MJV�>���rr{ȴ�w�������p���%G^�6���+s3�T�f4:��ZZov���}�({0�5��}��ړ�PR�	8V�i�9D8Uu��p+��"������z�t����D�L��ő�X��	�g2_]^�ʥ�nU��|,�|1M#1�ʠE�=1�����zK$?�7��C75�<J6�{�10*�'��b�X>Q�^�ʵAWa|�>L~�m«��	iT��U��v#& |Y�.QּKLC�&vJK�����U���
+w�%D��K�>�^�1G���P��j�����ŊI���\��[�R�O�V�`,L��6����~�������aG���c�2C�ٌ���[���!~�z]1c��)�G��7��.�����:�tB��eI,-w�����9���k]Rp�E���D��Є���ܶѸv�(5��7g��s���'B��B���&�l]�yq$28��C�So�
�U��2ɣ��;eL��6fB��I�65P�	��>�P��^��p��j���⩈�jK�R#󒃸ŵE�쳶�Ė;Sp�Y��2��{�:R]��v���ߊ �����I���ЙM*���4@䩶H�e����8�qWe[
�����gF-k�Hp~���x��b
+�,^Z�WR���f~�C�'R������e������Zz��)��NY���L${�G��ɖ�����G{��v)*xp��dȨ����33�~�$�G;n1�馇�p�
+s������J�o7������!��]6��x�F9�qd���0�.N8��9���'x�,a¤�G�G�u�D��Y,	�����	�
�=/y�lw:����e
X���h���8T��Q���nW��3����`ݹۥBx���xJj�o��E#����Iw���D]�¥���E�
Yh�
w�Fe�i_�G0��+2��n<om�߽������Wk��R{H}��ŇR�//6��O�Nm�w q~c�f��Ѹ�:��Q���{8�i�ѹ�c!/�+��BC0��'��GҶm���o���%�xY̡x�,�9c��uںc!w�T7�ibt&6�m�D�v���:%���`mxi�׋��[+Ǐ�(ZN�煮��.M��l�q4���|�Ń��$�ˎ-�
�{������eo����<�Zi���_�3ڏwLw��\�o�
63r̆>ҁ�="���U�Z;��ͨ��>y-;|��sS��m�,v�n�˜�����z�-�0�k!�7�����\x����Z����{Jd&/$�\���$���}�Y��L��X��ܳsq[�g�͛,�B[>���1���t�/&��R�NO�iH��z�&�вMk��|F���� ��c
��?\o<a����m��l0�)��:����;�7A�j��(��DdghJʩD/��<3���c܉�«��v"%�A7����'�`��Hr�9㖔��1y*4Ej	���W�C����HD�	��9���e�7�Ԓ.�4�jO<����>�V���������}���X��k4�	��=��q>x�츭���a�V��2N9[	#k��3
�0w+�[ԒB��5Ud6��E�=KP���yS�+�$�A�^�;/�j��d������|ς���&}�sj�J�����sz�#x���n�ʎ��X��
+���o����X�6sU
+N:Oy�E_����
!�?�z|�ŧm׉8]}A�ơhd�ژ�`�r�2�7���'����Bn\�l�/D��m��#ʱ��Ղl�X���]�K�a������
+�VyeCw�>�χ{Xn[�"�v�����kZ"�j,m���V��m��_�2�a�Y�ї���mX 1Q����)�ʪ��Q��R1�������Z/E�0YE��??g�~/T_o��û��5�g���zi�H���\�@4{�}$%\,��F+{�s�-�N�ڔ��r�z�v����j�ܯ����$fT �]|͔@_�����-�&�!q�{��|G���^"��'<����Pr f����H��s�Z�$?a�3N
�ՠ="c"�w���Z�@BZnu�ի2��ܭ@����I������p��$�hЋ���V����=�����SDT�@���6�QB�WqN=O���Y�B���$:�	W�+i�*�AW�M�~�50_a�p�>h���I����jo��vT|���\IAu��o�t�{�\U���^ϳ�js9��k��k?pj}�!K�%��%�7���H�
{=�D�����1�k*wk��C¢<�otT7��~�|W��k�D�پ�BA�QäL���Xm�4�\�ޏ�OE�+�N.�x��>N�m�Z������vG K�}N�ܺhl�����=��ox^��3���>��*�I%�vv"BI��!��a	ո�o7�*��3S��Ҽ�6�*G^8
�u4��2���Z���f��;���>��,sr��#��G/�`�F&i��["ǭ��U�/��pqkr ��v�F�
m#�t�sn��<�Y����;��K���kl��{��y�d��I���Ek"��mF��,)�$פ�J�;�w�����G���k;�5RRJg�w��z����g�����l��ɕ��"����J_~N��#	�V�wR�5x�.���7�_d�~*��k������S�ύx���#`�r�X}���+P�K��X�wi}b���ә���С�r���)��))�>g��m�������
��RF����Xʨi��3��
VV/�p�� ������$dVjOM,�I`�³c�D��M�{�u�tp�\q^�����N}>��ͭ`l?��9���״��jy���xv4���p5�����
+�@��<�'���)=t�=xVH�o�j2��T��`�ΠnFM�l��X!ao/U��;M�.[��P�/ʘ�O=��2��E����g�^�T��Q�0b�
C�D��֑9��e�E��Ѣ�'�J>���V���.T���ֹٙ���q�tj+�iV��'nY��Az������X��'��/:8�W�����Zo�b�*�4�?��d���@�x�.�k��s�(�4��?Yϙ��4��b>��{���
���Ĥ��֨^*n
+2q��_Jfݮ�<�)�t7+�Mk �B�
��djw|��i���\�XX�K���,�BX��5��)��1�v���Tr��БW��4�|�p6LL��9(�2n�����*��!��X�Ko�"߲ؖ�������w���^͎������Z[�/D2Fd����]�}�ы�b���c���zj�t3�T��}^h)f�%��cO�6���Eo�wK��!/��,�So�9�\�s:�����7�Tl�
+Vd�`�zC
+��g��c�H�s����RN�w�t��9���ސB�`[IW��e�pB.����.&���+2�Řor�g��R�3]xVDX��:3�����D�PF����+G�YQ�UL�	����4+��@m3B�B��PYB�lx���{IGY�!YT�Y,	�Æxʩ�Qӛ�poTI�2���V�\U��W-�)����DX�
�����dbUzúbw]=�h�x�C�����	=y�����cdg��7F,]G���[Y���	ͺ��>ᝅ�R���o��u%��2xO�6'M�Ɵl�qT�k��+h�ʈ��w=v��}}�`�~%ז{�Erjܶ'���}��t�<:k�g����O�4���jbP��o�layX� W��H��y6�x�pB���h�}���#O�N��;6aSb�=���$���2��j*�ϟ��w�]�oy<����z3�8�SS^�Y=~��G`0�����I��	�ͣa���uS|h�aTՁ�p���=Yo���.*�hV�D`��`�[X��R8+�j����|L�"��C7ĉZ)��,�/�t
�"W��*K���
�q/]E�b��;f	ec�o=�'����>^��gz�T����G�'�#����i9��pg�
+ɻ��.aA*4��®ɉ�w�}Z����K$Ǻ���̩�����dR%�
+ۗ� ��dj`��/�v]"���'ittj���oc�״^{�FESs ]հ?7�-Dy&P�kd-�7���t�{��)d&M��Z��!pўL��Tƀ�
�tQ�$�O�?Y�$�[?���?
+O�q��JY�\x����i�p�.cׯ�֙_X�k�m�$�<���krGgvq8�vCWtA蒞uMqȳ)SKŻ90�Vy��Ih��F�r%�W�K��]�^;.����\�֧V���vm��v��4�*+���y�2�e�*`����O@r��hQ�$�˕��,��K��D�5�� ���uE<�����|��L�V���^D��o:�;\�k�JLvOպ���Ӛ\���T��Θp���W:��U�cEIw5؏�>(ڣ�̎�cn|6f�÷rR��z=�T[]'��V�r�n��Ǭ	=[,�������~�_�KŒ[Ϭ3���h/L�Lſf�'���p���vhA$z�e���=a���[�����uƗ��r.�f��k3�/;֊�{:?����&���Q�le���*�b���������/�5&6��ޓO�DF�֦Ś�a|�m_�u��G8�J��C��tt�e�PX?,�F8ٖ���|���[v�VBp'�6�{c�X_|�JW/>N��,�g��X��Dr��S���%	�~��Ɋg��u��f/o���Н��b�>��l�W�������'�7@�6=�������eO�l�#��^�	����m	�7>|����ߋ<��Z�O���t#�Vϟ�z��|�0쟣�e8�惍sE�5�%.%���'M��D�,P�ybY[<�H?6�)��G�Q��b���+8r�=�?�Ȏ'o���fl.��D�[�D�T�|H襑�T���ݼj�Ẹ�s�l4ۻ�ϗ���N�C��U��+�̞��:�$��hg�f�P3�p}����\t��!tȝ����K�s�
�q����U��-cm~&q�_.�z�W|��s>��|]B��K������e��kB����S��(���L5m���oDڕ$#19����q��ZAҽ��Y%b��Ӑ�C�%�V����g3���.B�0�ۮn�����t(œ|�������Ħ�$�?ި��D8[f|��kk��Q����6��Sm�J0�)�:�=�&6�y��c�Z9����l�5�k'���P��O�ܽB"�r8��=����&�|"�RTf���2�q>
�܅��U��S�j/���<���>{+S�Ҧ�Zܐ�j��xi�@��x������ʩZI$�^��C�S�D������s�6���J?W�����6�s��\�ѯ�kg$,M�3�n�Xq|�yȜ>^�;ϲ��>��:[�PhAU�>Ϋv�w���8g�S%��K��s*~�ؐ�9 �}FX]�͒�+����Z�ܸP�-�q�ٖ�@˾��)�L�Z��_@s�E؀=Ρ;��|V��׬��j}]���Q%	�WqF�o��!�?�wr6�w#����R��i�Y
+�W�eՆY��r��2���ͽ:���a����
+L�{��hDzu����Y�ŋM���V���8
+endstream
+endobj
+13558 0 obj
+<<
+/Type /FontDescriptor
+/FontName /ZGGNQH+CMMI12
+/Flags 4
+/FontBBox [-31 -250 1026 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 65
+/XHeight 431
+/CharSet (/greater/less)
+/FontFile 13557 0 R
+>>
+endobj
+13559 0 obj
+<<
+/Length1 1397
+/Length2 5932
+/Length3 0
+/Length 6894      
+/Filter /FlateDecode
+>>
+stream
+xڍtT���.)�"]2��1Cw�t��00�14� ݂"HwJH�4"�����H�����{׺w�Z�|{�g�w�w?�d��瑳E�����$P��T�@� ?h�G9���	�F0w8!���
+�0
+�S���8M$��������`q����t(B���M^�� �* ]}���(�1�z�C9�`11����9�;
+A�4!(��D(�����a(��`�t@�\������y!.�Hw{in�7��Ѓy�ܽ`��_� .�?���p�?~}�����p(���D��������mW�X����n�`^�����U����B�.��/a��;�����(7�����8{ ��/�b���P��@����wEy�z����������
+H�A�?E�;��v_�?�uB ��
;8�������|���'LU�/�"�����DED�07���������+�w�ˍ� ���
+�C�����/���	��߁Z`0�El`�p����0�?6z��p��=0�����74�l�g�����HW�@ߘ�������#}��<`�����"��Vс��v�O�*�	���t���u��������g1-$��0��HnA���7�����������ݐ�����0��������}�Ф�D���D����Pc��j�l�.�UEA�B�Cأ���	���=��>0[8
+���2�����G�t��_�t�_1���N����B��P���ˆ����>�P��/��	 ��_��і���-��7�|�$
+�@��C��Z������v@"��,'��POwwt���n�_�o��`>0(��*�X�rZ%G�ͳ6*���vj��3�g���U��ZN��ʜS/Q��+[:�kɻ���2}�Z�P�+x�à�͞�&q��s2��'�q#F�q���B�^��{�el�{���l5�3�ެdE�"ja-ZmUE�tbF;+z�&�~�5�c*�����_cͣR�^2�K��$yW�[��_ ��	V�
+Y�g	G�(I��)
+�U-�]fzm���o�T^��l�#�(q-��x'(�r�e=n��D����L�ϡu��Į�ֺ��׾�V/�3�Ra�jI�ؗ}�`'�P�DW��SJ0\���?G�ŏ_ޞf�3�g,��$Xn�����!^�c�5a�}nV�8��>�s��Y~t����k[J��@N�(�K��E�@�'�
+Cаa�H�\M͙�<�[VqdM|bb:�Yz
w���T��Z��.�Z,W2쥽��|l��!k����'Y��3��Q���ٝ�y�~c��h���[q}d��f�t���LQ^�X헟c��lρ]y��wƊ����a��2 �=��C�0�
+/~`�L��*��>OC�G�
+@1)E��2|��H�[���D�AG/O��c���bWT�TJ;����r�`6~�V���`dF1�]��� �il��BW5Y��"�,��NJ,k
�-+1OZ������|�K��{��-�V������7Cb��ؗ6�~L����*�EY��%�aź^�;��J����{R�;��!*�����:	)1B�t��ƜC�`�~t@���"�����EU�7˼[�N���ks3+�0�TTjO��ݏ��3����G�n�}ڄԫ�jٯ����-7�tJ�GŨ��_�a.2�}�;����`�bz9�
qZk-�\$J>p�Y}��0>x�/%��>9Nb(����m��������9׷�2�^̉���嚑�`\�d�HH.j��M�C���"2	�ō����n�j�9�r&t[6�.�'��_�0š�b$j�f�uȄUj4��\>2���²u��Q0+��|el��k��΄j]F�^�y���[ĸ�&�m�`:y�Ҝi6�|��Qx�]g:2���N���F����Ux��=Re�crug!jY�`6�즈ؾ:���5�$�ɴ�y��`�xv��m;�Z�m�|�Z����'��vn��ӇH��e |Z����d_xK8��e߾?�����i��Krf���/���>/HE�~�z٣{���i#�?4�1m+�Vם�F����SS~��aWe��J�»X?s'ى
++��l�$��Y�(��H���(�-?Zc|�5���Y�YLu5�˿��?��o'��ɩ���Ru����6Va3x�g�q�H?�6�{�E"S��/[~���y�j_P�;��eY%���\[=���KM%8�.���3L�Sr��#�l���zֻ�`/2l2 \H���#765$?��0rdZ8�+�@�_>R���hb�ȭx���dy�ψ����{4ǹ���ތ֭�,J�o��*W\�@�����w'FY�D1�9Ɯ�8�bT���u*E�0�=vF��5�|����<񁗤X���E%K��~zq��C��e%�{�پ�X�'�&
+�Q|,�	�NT�w�Ĕ�F{��rkK!_"ڃD
+��&�]��ds�K#P7w�&��J�}�$|�M�6�ʜ�`�o��?d�ڦ��Y-J$r�~�0�D�@!Lf�'��y��ܦ������
+��1{4j�:�)گ���Y﷌m�n���|>c�R�zHˑ-j�bټm��g��$�nUW���a�ӛ:3Ͻ�s"�M�!AV�٧K@���t��\�ÞpA�p�MK��ˇ�H
<��}!�P}�nH���Tf��-��{�ͤ{ē��:�8�h��FX��G$��RB������-�R�u��P,�KCCJ�־0:ަ��y9�fE����P�G�
+d��}"�hSgL=o"�w�UA:d�0xUU<��BB�� ��� 5�_�'�h�+�=)M,�<O����L{}g��!�*�z���z��҉S�R�F�+�"w%�	m��k'n����'�n�y[)4�Rk%�O��>��0��O�O�ϭe��k�
+�U��
�U}�������y�,@�a�ɯ�Ok]��L��֒���dD�)���s�*���)��icTY��7�!���ǭ�~���B���c��GJ>4Ha9fO����K�Qs�j͚Q q���V���|�}Z`��J��A������~��2�(i ʱ9�R�Yy�!�z4���1�.fu�hg���Mz̹k�;��@����l�d��)Ys+=ɴO_������c��0�dn��3���ѹ�p�csGc^Ly��{�;���?���
+L���8j?p�����R
�VsF�,�'%�j3�yfh91 M�Ց��@�6�j�V]J?�!.���^I3f���F7��(�•U�L�m�D�����('A��ғp�d�`(�\~rPm7˷���^r���X�������~�m̓သb��3>w���K����d��6b���f(�k��#N���_�ю�27�l�{��\��b��*��Ύl,/i���Ts�4���̴�뉏
+�^UyR5o~ҥ���UHh�0����J�]��U�j@K�<�Dm�
6tD�-����b�z�	HYs�g�b7�˙��M� �NL��ir��b�\ȌH��*�t$����ghxu-�ϗ��b�`K���r�:�0����d�1[mV ����5N���$��*�tj��qצߤ�����gD��5X喳�;NT��r�ˋ�d���3?h��n�>+o��G��KB��U�-�K�~�m���$P���,��������WE,'j�`�~ygF�*dJ'��:�����Y���g]�z�.xYz������c���d�W���7���5�ߺ�S���J�I�7}&����p����<��c=��!�	O]Q�^�ܬ�{%��I��4�S�|��m*}����c���AB��k.��)-���A`M���3�:'�@>g���6nc�5���2(y�கCǢC5�A��ajD{��3��
+��΀�%�Չ
Ժ�V��s7a���4�$�:8#pRKV!�?c�'�~9�i!��T��J�~a�z��|��-k�uϬ7q�'b��_o��2�(�}O���o���
�Y(d����Lgҍ[ڌ�R��q%Y�4�}X�d(�	\�	�Ȏ���tN�S-�d�77i�]�"�m~�qL�Y�����(ʠ�Y��}�
+�)�� ћ�2d5���׫;촶��vkR��%
+h�ܠ��IXc��U�a�X��-���B�HQ��[/W�@b0+:	ُ|9�OX"O�4��f��Ջ����u����C��U߀�A%�7'�����զ����]�фQ/�-�k~�m˜y��v��?��0��i�V�q���o���A��_���n�j?�-��M�$|�^������)k���o�j��Wh�e�˧�@�R����S�0o���OY���F=����]�'�/��2����N΁�zK���|�2�z��
k�\��W��5�V=Uw+z�
��&��FP,���S�
+�����ׁ�}pC��L"�(��j�r�d×[i��l��E�~��(����Gx��<\pV�[�pT�L��u�mZ��I�����ɥs��U_���b��$\7�����͞����VTy�kTFrbA�=>T(�fpr���!�ws?�`�"\�8t��sذ��E��B�Fs�	,�[�>9H�䆰_Z�Y��2�[����ȷ^�M��4c�Z[8>���=+���f�xƳ�N�<i��W|{'�Za�C�T�K}]�n��q㬩�Z��q�b�uT�6P��/�(u��quמ���[K���FB�~']J�����ݧ
�v��t��z��?S��X%KT����r��A��։NJB��U��tT��$����%�um�s�{�;LR����\��W�-gHx�?���Τ^����x<j�M��iټ@�?���a�㋢t��'^A��ѷ�R4.���j~�s�n�ǎK�t�����Ea���Hx����b_s��o:x�\����^t�
���?�m=�.�]F��@=�rgM���$7�(�V�i�T&��d_v!�����]`F�N�.�'��$��sn���K5b�.ObOƓ�#��a&\S��t��&��y-5�ά�+�'e�p�m�ji����9��4*vl<L��s@aVy*��\���5��5b��?ps������8����|�ƥp�e�Ersםt0�����9��������#]�7����~M}oP�^YQ��㒺d?���
+5�y����Z���9\�ɹ��2�g���ʐ��?s�5yh��Gx��M*�Ȝ֋�'dp~�6!��* K}�N�^T�:,��>׫+;�k�o)�|?�#�:'j{
��ۼ�i$�5筩��'sS���B�6f�\��1L��~D��FkP�r�m���>U�T��4�):D����Cun+I6��ul>��T����[C�ۣ��k +�g���2sL��M�ao[�$dc�����fֳ�S��l�ٵ�om�X�'��4@N�P)�n޵����!�$��I�W"������;t�3��JW`�F�s���ۜ�LT��g�iܫ��Qd½_�u���H
+�t~����-�#�#���� b��*tL�`�\/.M�|������R?�F��k��p�P��=�I�~�HH�g[�<�a�L	�`������r���K�U����w�ذ�
+eg�w�|�=ƕ\��[��W>0/���H$��bƹ�||�Sgߵ܆G%�*6��p���L4$r��9���a��X� bmA���h�"����a�f#�9�����I�y?�Hh��JBċ��LY���k'���%:���O�����_����Ļ2�%C��:��8�)$��5����[�>u��܂�̜�-:���KV��+��������H��������7I�Wo���e�+����C�׹���_2ӯ7�#���
+��XG��%:TM�)��9�LV�X�*Z��i3�c�==�/@Z�\|�M���픻���M��ex��Xo{�\��*ZPet?�}������ĕa�P�Ku&�	!E��#xj�'�;c��2��de�	�����ז&�w�2����x�6�8{=��ȹ�L@����9��m��qc��&nnt�6�OKy��A�4��6�d9����e�#R�����R��,��X���܃�;��'���r��o�[F��>��A��h���J��}�4�C_ss����L�����)�^Ac2����S�X��c�d̙[�xb��O4[M�;��&���O�J��A��Ef�oIG�?���hU.~J�9��*~��YHx�_[7tB�}��O�e.�;C�Y�2u�o&�w?����ܥ ��n�~O�޽u]�h���l���j�$���b�/Bׇ�a�ZAG���0{G��a����ib�Y+��Ko�'̬��(
+�kRi�)��z�[���ʄ�Qˎ�y{,�`�FsM��\-Е�5��޻m..�|J���j��㹬�T��g{�#��T���=�)ʗҴX�/� ��i{3����~38n��fΪcS�'S���~:u�[�ֺ������B|N�R\���Xt��4Xe�1��N��Wh�5^NK�����������2�v�_X?�5�V���� �U�JHs����e�i1��“/��H���g��`��M4�L[~���VMT��	���O����;���#Q�����Df���Sʎ�/��v�8�
+@������ʢG�6����v	�\�3�[ٕ7�/Jf%}P2�OsHo�~NS�p���Ro�4ۏ��e&_)W�Ғ�������a�!�A��<�.E�����2�Rbon}����X�4�W�\����d��N��u����v�#�Voͳ��v�������aX�D�t;1Ӑo�d��5��9�-�X���}����o���?��\-
+endstream
+endobj
+13560 0 obj
+<<
+/Type /FontDescriptor
+/FontName /VQCTSW+CMMI7
+/Flags 4
+/FontBBox [-1 -250 1171 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 81
+/XHeight 431
+/CharSet (/arrowhookright)
+/FontFile 13559 0 R
+>>
+endobj
+13561 0 obj
+<<
+/Length1 1408
+/Length2 6052
+/Length3 0
+/Length 7020      
+/Filter /FlateDecode
+>>
+stream
+xڍtT���6�H(RJ�?:g(���r��`��FB@)�TT�����yǸ����}k}ߚ�~s����g�s��1���ۣla*($���������0X�$fc3�c��nb6c��BJ�/�������,N��=�D��J@�J��� ,�/ �CP�z��-~@�����Qn�pG'v�-N;.�".~��w: �
+��A���s��hE�(;8����RN�������7?�͏�p�����'@��yx��_�PW؟�����C'8������z�����!��O�=��n�i:n0����/��l�?����f�*G�N��١\ݠH_8�p�#`���&?��@����P�͇zA��-�s(�"�@��m�wà��pį~����2�^��
+Cb�Ŀ�S�{����+��f]�(o��_���w�5�������	SS������s�a���]!1!���|�~�7�u��B~���������@��G쏆z����',���iC �=����H��TǺal��{�}�0�{������^�($��?���+`��i����g��P>�?��0�'( ��]���.��
�rՐ(����.���ղ�_p�U��b�(,ma��Xn	�a?��o��N��Q�W�����!O�w��w��C]�߿�,k=1Xh��:@�7��G�Z0{���G�0P�䑎X6�A�����p�
+�f���9�����/�!�H�.
+
���`�����af�}@�Xb�	A�X�a~_�/���?�PFڡ�	OPD�zx@}��W��D�V��0�����(6��8�<�]��  ����6��������nv��v~��ʿ�ߚ��|`v��(;�����*yzo��R�[Ǧ�|��	1�#6��f�h��L�CT����܏s>O��/�ܩ�>代��x�6i�����c�#�	�78�&i
+L�8��qd-D���l���{��*S��٨��RU��I� n�}Q�ֶ�pYd��#w�51�k��t�L
���Gޕd�]�ݳ�팭q��^a�۬Qre�n%a�J�ق�繥^������TZ���4�݊)o�h,�A����oА�/��V�
+I?iK�c�v�����S�iz;�;B}4�?߻���2���
+pz^��'o���Μ��$6A��N��m�~�V�.��Q���)a��I띉j����g�f(��H�G��B.�ۚ��`�0����-c 4v�c��5z������WZ	v�I�	y��h��2�J��䠎c/�n��Aߔ��c���o�(w�+�YH.N?�6�X�0��+�r�����)>2$�DF{2���tǏPv|S��Fr���O�UՇB��3��47��H�$tw���2��txb�_>N�
�e��h 0��яSr/�8;(�s���������4�j|)���Ղ���0�d���C��wk��d|R
��~�t10]^�-����%{t�A�9��xm-[F	 ��\7*����}9s{_���pM@/�A���u
+A��)�Jqj��?��\�}(-9���>P��vN�9�2F�,�u�;�v����o�DL�>w�?G<gj҇G���������"����3]���3[�\W�1�׽Y��ڸ,��f�]8
e��D���7+�g�����ԕ��o7��B�s�_?/g�$��!c���m�]
V��%��L�r�}��݈NR]r�5P�ƽ��S����k�+�9.���q
+��{EH��ˋEaA��guᵇ���s&~������	�W��F����ȯ���u��X��M�v���"�#���Kqg�0$r9�<)A�� J�������
g��4�j	�[4��Ѐh��\�g�?���P�(�2��~ڕ\h��彈|�^�`�'"�q-�E�nZh�f����;c����|I�3�
+�8v%B F7�tYx�t�(��� ��n��Ĭ�I�E�k2
�v#6ܙ�e�
"r6�
+��-�1�G��Y�|]o�pU�* ���D�ZT�kg#2�Z��7�L�A���s���R�aw��RG�J͂�m����ߎC$�����>�2}&{F"{DȂ�a�&&<
+�YNO�#���h��:t���,�ͩ�w�.+d��=h>s��|Ww�H�v5
+׹1w��847J�V�5G;�-�1�h���J��u�$��V�#���UY���+�þfW9�Rg��f&�������h�b�'�t�t�J�xJ+QD,mY�|�t0Za�E�OJ�1]��M;W��w/��m�	��CyP(�7�Q�Vg��9!�'`ܙ�͍��U��>�*�2�7�s�{mh�d�'>�ى\���U?�P2��J�d'�<M�$Һ�7�b�s��M�z�0���y�v.*��S)!�f���[��r�o[��鮀E�E�Wk�_���NS�h��"�`���$�.��˭��i�-0'˦g�WZf;
+��和a^���L��0����:�Ql�#�0��1�o!�"����g�?��?���pD�T�G�:>���-�f�BM��=<��M������1z_�NM@�ՠg��!��~HBu�t�g��p�6�?�U��Ϊ(iA󲎈z�����U�Kyd��=�|�Y�\�f�@6��#r�.m�ϗZvD�"�C�/*oL���W0��p�?>	��:�7#ϥR&�)���c�Z���3�J�cIUvҤ��xu),�*�;^l��(k�%o�H_��Bn`���xт��0��B������a��;$V+����������!{gS�f���Z�riY&�+>�	˦v̛�T�2yd�t�#��&��"���G��B1SM���>���c�t����K�4�]�8���d��O�I�n���kܻ�,��k>��nť�'e3���E���5]�����+d�1�`��58�<,�`�m.m�B:��������Rv�*s��)��؄�ф������&���n�F������d^�Ѹ�]5[���"�M
+�C��7���;�,��`n�^�k8՚3�KjD���iR���;��*D4��"��)fwv]�	�F�u�#o*�G2|�\u,ݥ��ōS��1�r�$x;��Q�9�ͤҦţ�5�[�̂p͵�.Z	��ڤ7�7:�������G���o�62�27
" `�V�:��zQNr�7
�ve-�I���e��D_�9N�����D1����s��6�T�L쾅1�^��Xo�w�"����n�O�Ҭ@^���ho�$�΄�|d-���q�U��(��s�0B߅��'�=)��r��3�C�x*��bւ5�q�5��z~�%"g�讌�3�3%�r1S���yU�U�������C7[��6X޷?br�CW�N�`������<��[I"����D�Pk��Ҽ)��\�%(����I��y�{�v�uT�� ф���T����@a��ڝ6���c�����4L&��$9M��ng/�T��#_S�]��,�o��߯��8b:�D?�+u�P�F���d��ﲬ���,�`.�b%8�h)�Ѯ���$(j��q���i��jY��B�?�󈆚bb�X��W�Sll8�6*nꥺ��xo��ѳ��3�����<_,j"K/��%$�p:�du�����:"��Bߣ鼡7�F�|���Q{=�f
3Nq�=M��T�Н��Svw÷����$V4�x�3]��U� ڍ;�;�.����P<���f_�77*�S��W�4����_�lj
��?޶�������%I��ߒ���J��[z׮$4�!52���y1�Ç�I��g�0���{Ɍ�|'�0�_W�]*�88Jpf�x��m/[�����WC���c1sGN�\~:>��W�H=n��w��}�I���0�4�P.;59Po�g�k���q����g�/��H��T��f��j.���x�Ka�+�i �7+�h��O9^�흐~�>����gҍ��zT�ߣ�'�
m\��`֫f`Ul���"�X|�a�`�d�a�R�#����������R	�7K4�W;z�vo]1�|dT�TaK}�#��z(��^�r��0N\ѓ�-H;�Cw��*�����b�[rt�R�Z��S���8uG��|�wԼ�=�Hl�����g4����צ�����y��\n��V�-�$�����+���|�Oe�Fw^��A�� �j�vM��:�\�^�Q�ʍ�������>���]Yv�5�e�_��)Ԣ�b4�/�^��Ϯ}6��Zs싃+�6+�t�cT���
U�^�#M����ɨ^���WSW���j�01��H*[��,��(��n��Sʓ���e��F_!��7ϐOc������f�d�N��9��lͻ>�V�^��R)0#Ew��x�����gH��p�]cK�30�C�C�K�#���<�Kߡ�SHV����Zt6��~�`c"j_}������kZ:=��a�'���44�!�[ݯ�	�ϛg6
�M�@m\-�>���T��/
SZ
���E��x(������58m@�yI���O�j��h��9���X:��f�Xh
+ݡ�+)��?������亵O���N������w@��柖yv.��~�W�����I� $��%�-�) �n�РZP��?3�"�I��G�z��!�w���c�܊Lާ���|bݙ^�u��Zg����~�e���/ͯڤF\�J��j���˫�R�K����������
d�����x����k����v�0�UJ��p�@
=�t�g�"�Z͞0Oܵ�[�!��n��_�n��"�^Χ�<��{ϲ�S%.(���n��
�m���Ҩjhz���gjXOh=�,��I�oN\��@���T�5
+~z7l��%Y_���j�p�#����%��@����O�jR{d��/�9��
+�A<�<˾w�d��ClJ�!�b��3$�rn/����v�ξ�qb!�A2ud�Uy���7��z�X.G}΁a����C���qƚ+��[�Ց�ѽ��2.����F�5s�|�w�7U�ż+�APS�o�]�39�����=rBY��&�����	C�#��m6��%��,��¡1S<�r>�Dv�����@?��
+���ݭ:�*�Գ��[����(���J�J�����mz<�������,|���=d���^hh���u��O�Y4�Z\��}����
��	���ᢺ5��!Ҽ#2������Wkr��{��h��CeQ�zQU�{��՞G���QL���8)�-�Pu��/�q�:���r\pP�<
��fGB��"�7*��kc�,�vF.��5c��O騜ˀD�u�䯰�N�g��?��P�>i��K�O���dŎ�Ro�k�<�Z�&�Z���:��;�d�ô���?��*bc���1O�\�:����}P|���#����]"�G����츳�G�}���~�)����TGe1�s1��e�,�8���>�1ޗ̢�6���G��\��Ku��lj��LJ�Zܩb���~v�'	�Ñ�\���7���E�vx���G.�ܡ�J#��!ʂ�ir]gT�/
�cs�9
wئN�t�l���_�c��
"����_���e&�w��r�69�l<F��h�u8�RS�� ���ә�q�b�b\�6RQr��Cߔ���_��3άt&��8�X������Dg���/���:��3��R�R�gF���j��яp��US�
+�U@��Ĉ8�����j�c��K������?J��G�So8{-��s=����Q�ss��P\#�uX�8���qߓ<\ n%��)c3Uc��em�?������c��F�����ʣ�f���a��������u�n!C��7~\F�ߓ����"KrA�<�dm��s0��B�O{j�l�4'rWq�!�*��_�/��n���8�Pl�mAC�A�SD��/���5KrZn
+���CO@��9�F@ҝ�t��$�?t�Z�vO���}�Y�^ns�Ʈ/���@}����4Vﱟjڼ�9I[��3I���O�r(:S �yJ�� U�x�3��E�,ti��gYӯ�]�kF/w��H���)]���ӓ�L
��L�b�gYw�l���[�-���T��9݋��r��{�;�5��D�k�j-�!o����HIłz9�[���,�ވ�'������e�T:�ƀaY9��$('�-?�� �3}����[�iܤA�]�EP;e��ә��6o*G��
+���f�.%�.���t��{\��m�L��d��97�Шr�HՈ6�b�ȝ�qGm��i^oN���C��u*����a����o���}p"p�e6mu��wb��>�fYG[e�S�ms%-	�%y�9{?�ˣ� )"��4ٖ2�KF��@+�a��˜��/\�d���[L���1��T/a�s�ذC��V[���dK�D	�^������jL �Z���]���XS��ԅ��ȗ�T�B�f���V�%�i���u��AI��̺��AD~���ҫk�
+�Y����vζ_�;�fBY2n(���f
+&�wVlt��ChyG�1�F��υ�ћ��!�!�ON�z/f�w��;�b
�}4���kƩE�uk]d:Et��|>^��nJk�%�)�U1�)|����h�e1Ճr�W��Ɏ��h�)ߦͩ�h�s�}
+H6���p�&ڹY�����v�g�;�̟.V��̵��؇t���I�7�P��pFĢ�d鿅�����P6&�L�gN���L�&��FIܠ��n�d��Cߑ�+���k�M�:�R�:�½�x�!7:e޳�y�'W�ܚ��e4��>��n���/βq��I�\�O��0����7��g���Z���d�CW�T�9B�I���	����\c̉g�����~��I‘�Ȕx㥀s�"�Z������DpU���#�l
+Y�nͤi�o<�mI���2ϒl4�奶/~�t�VX�z�
+Wݖ�X�Y�2ߘ >':�p�+���Y�tq�2�:�QM^5�1W���l��
+endstream
+endobj
+13562 0 obj
+<<
+/Type /FontDescriptor
+/FontName /ZRLUIR+CMMI8
+/Flags 4
+/FontBBox [-24 -250 1110 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 78
+/XHeight 431
+/CharSet (/greater/less)
+/FontFile 13561 0 R
+>>
+endobj
+13563 0 obj
+<<
+/Length1 1408
+/Length2 6052
+/Length3 0
+/Length 7021      
+/Filter /FlateDecode
+>>
+stream
+xڍt4��ڮ%A�!a-�轗(Q��Qf�-���G�	�wA�.�$Ѣ��h�|#�9���{׺w�Z������{?��d���� �a�H(����$� �0?$D��i��8����F0�D��W�
+��0E��D��ݜ������`A10�$��D��w�
@���D���
+H/�����_K�7� (!!��; �C��@���9�v�B���H(���G	nI{�, ����qF�#Qv�<|�8������a6�ˁ�g؟���9�p�\i��`����h\����6�it\`�?����� �/��r�/���!P(�����#���p'@GY���@6��'4�q��� ָ�ߝC��rz�n��㡡(�͏�;]�(pYw�J��3�A�_��G���c��s������aG��^a��"`��������� ��`v0@$.&,.��`�P{���^.��N�K7����`������Ƚ�w��r��z�o�?-rAA�
�X�����T��0�?6��QpO��=A������^6H����߯�����#U�?��'/��x�$�@!Q@$&
+�-|�YF���?�j[$.�O��s�W����W<��F�hp���� Q��������/���X��
)�99�vs���n�3���o���n���8 �;��j�`6p7����a 8%�!�pl
+���D��p�2�f��@��p�nx�5'8��D�/\�_>������#��S��5^�0���ه������}���x��g��q
+��y��6@����R���}�H��5��]�b�c�9�` ���e��?v���P�v~��ʿ�ߚ��<aP�1$�A�Cep�a��pyP�x+��X8��ӥ��r!V?=mR�Py�SP��C����a���Ool��j/�}�m�U����c��#q�,�c�uxُ�Y�oQ]x��¯�����u�sR�ܭ����E��,�Ҩ��Z�����"a���So�k�,��x7s�9*h)��E�v
+��d�y�Gٵ����i��[m������04JzYE��M��:�|뾞B�m�r]vݦ�h�'�R{���n�vϵ3����t#WS%�iJvd_��@L�����Y:O���l�2�~��ȣg�}!����X�I9���D�&Z4�-�W�ЮgWwPq����Y���n;}s�>\=��	�k���e�~�"�?���)�]�$��#a	�֕�N�g]lK2RpC	Ogw�x�`��x�	��
:�LJ[Z�ԔĮ��ok�@B�>]�g�e�$�`�>F�2�&]p�T?�Vj�i��V�6(��Q�����Ǡ9G��#�a?�ex� 6�i?�|���F��:&�c �5�!aR�K�V�����$��p
+6�z[��pՙE"�W��ț�5����<�Zyu����y���ؗe4�
e��s�{uO�bR%��=_b�"�k��
+B5�X�^��3�ɮvlіxQ�=z�M)#˩eZ���N�<�o!�H9Y�׻��v�V�L�dD7eX�ljd+uEKf��f���,�ӂ���mh7�?
$��bl#���y+��e�p��;Bլ�^۟���,5j���)6&wu�����H��Fa!��W�[�3�T1�Z��Lο�Yu�~��ݷ�����g� ;��g}���6���x��C��i�������U��!;��_��%�(e9�W3X��~��@P�aN�μ��\ԥ}9�m3G_Q�$���T��3���n�����Y�A�4
+}���'�C��f��"��9�����u�L�vq�![W�&Rk�{
��]C4��H��(^a6�����<J&�vOiI�:K;��S�{f
Y����.����n�%#���ޔ��[�=J����}���n�!���ڳ�z�H�fb1�EMr4����
+���'�tw}'"�bc���
+MV����>/��5�Yw�#�jc��І��%��6Ǽ���.K����3�M�mD/a�!o$�"b�u2�wF�˾���6�R�e5����L�9�ګm�ZV֌p=�8�Uk�B�\����N
+b�!7vz���ŭ��5q%QIBb�G��<+}7�޵Y�Fn�����0�E5�D���[���b�9��w5$-���S�+���NM��d+F�V?Dwؠ�?�|�v[������n ?ʑ~�F��ٌC�����n>͠�qp� f�����+(�t1�
_��F�Їq���C�Ǣ(~�����rF�'�����k궙�#};q�nV�M���~�Y�l7Y7��|���'�%`�F�yM�/�h�@�r��~ �U������,�b�`˕X�����<g�LtR�k��qoכh|����
���,��Է����^�1�*��MĪHՅ_C�2��	��%��o�����L�L6�6��+�6�m�rƈs�B���4��LL�֐iz�E��)���Y>����M*$xa�n�d˿l�r�a.8]�~d5����K����oE�k+ƺ�N%1i/�su�G~!�7�y�8 ��r�V�a]E��	�aޙkZ;�
+�����k�c��C�1
g
+�
+�^��{g�����';~j�^ $}��4�]�?h�QB>>۶&ݖ����W�	q��U��/���	��Ch��7$��w\3�jeh�&������-�.��m9�!4cgA1��
+_��C�ܵ	�n0�-���'͊*�c'�C4�>	�Fұm�N�r�lf+.���A�&�g����;�}��;�׌�1����l��!+M�l���m�[VY����ƞ>���L	���;"���@��}��'��V>�%�ѳf�\�?�W�P+Z�rkᥲ}�P�ߜ��*��Կ9 3���Re�p��0�'"�+�f�|u�ƞ�v-�,Oύ��G��8����zv�S�d���B���\�	Ib��/GE��/
+�Tu�1K{���Me��䓇Ⱦ�!$�I���T%�So�0r��k��x�Ǖ�䣻�����H�����铀H$�z��E���=Y̗��`^Kގ�љW��
����R��\V���
+�k߅*š,m��k��H�<ۮ&g���e�"g��,ݲ1V:��:��j%f�O��Gy����z�����H6P�J�]�4����D8� ����<���F�|%�|�Hw�"�w��VY���B
�4}񃋧�~��>�����YidnP��Jf9���b+�~�0�%|�^;��XX�d	S,��j	PJ�A�v�[�����4��$=�/O*�V⼉r�N@"Ĭ��h���06��r 0��b9"��z�쌡%�jF��o�6���Ӿ�_��5�ʁ����.#G5'�b�6Z�E[{tX&�'5,[��D_6Ks���ʴe�JU���4��⫯�B�C6ڱ�"Z�xK{1s�A��%���с���%����K�P��(��1�j�/�������u��UM{��Y�
8J�&5sت�48��5���E��	�"	��{��/���Ɣk(=K�dB����Mo]�U�!>$�5��0����4�+������\m,�u�]tQ�@6�@?YQ0�$�&iH�����g��M�W��[�P��Ƒ���C�վd'�Zs��֦E��6v*� ���~��9�T�ڶ��le���.V^s��pJ̦��VT�U
�tH\��lgcIXx&���H�2�̏�t�m3���fC*�^����;��ivj�8C��r��t�� �&�vǯ��\�6[�
u�i��㹞cd���V�T��Kuh�����%����k	,��I���G�����\����=�y}�ai	��;���}�s�xzᣅ�A%+g��u�]��^�l���L0�#�r�1����B�CPz��^��6bƹ�֔V����p�,�8��U@��|�s�x�m�2?5�X1W�L�%�x��:���}��K|en6j�C�yOԟ�����Ǟ|&���S��M&s�Q
Т�epjQ���^��(�p�����'A��C*0:��U͒�N�L���'+_>1���P�M�R��AJ�����M%��:�zg����,�H�9G���3z�tZ����bc��\a9�Â�"��M�'6T�̯aŁ���۠�5�Ć�M��)�m����6��ȼ��<{N���0c��,+����|�ɃhI�#��Tݪ���~ ���v�+�ԟ�����޷�Q�ЌN�ڷw������j9O{e=�of)��D��{�÷�n�|9��W�ȅ3z���;C�L����"�-���J9�-�]�fx-������Z+�
h�HF����B6�$>
lw����ن�i\Cw�"_��)?Q8v����[�@Ī��΅�Ǜ��N�8^����@t�1�nB�ͼdl�Lm�UO�䭷�?�To����2��)	�P�m�oe|>�82+�Ȃ��3�����6Ƶ��}�HO,���ؒqW[L�$���#b.R����)�a}ǘ��e�*��O.[)w��;?\e�%7��2���6<Ӥ>��jx���P��-��‹"��';s6�Y���1;o��U���m�;�w	ٯ&�\.W����kw\QK����=8��X��q8�͖`�g�W��!Z����%òU���g���CF0!�2����%�`;���u�ycEd��
�Y	�}�J{S��'���BN;�Z��:�8P�Fj�pG�����Ω���Ia����JG����צTwRK&�_1=0Į}$=̺�{��G��,��|Ǣ�E�����0��A)�FC�Wm��W��z�B�o��ȕ�qU�#��хW�v)U��6�)��W�+�4�
���G��_�UȞkIj�H ���9|E��m�=Kk��R�ӹ������IT|Gy"c�d��N4���$	�C5������l|�WE���N^Ǐ��T|���'p�������@��������?SP3q�ML���͕���uӨ����t�_�4�C����
+����t��r@�����t�X�0X%��A�i)��Gzi~�"�:��㭋M(]7�6�Bbљlj�91IAw"N��K����w?��h���JC\
Ҷ�w����'v�Q(�Ԫ�PI�z㋦˳�q��-7���G����	��!۩���s��#��%=r�dΗ�G��_ԅ�
4kfv�ʑ!����o��8O�2��:����/QgR�����LY�u�iJ����?Y�6J�).��̚~�t�B�]��E	�Z{�*�Fl��D�7��i�h���%1���3Э@~���6��~����`�$T� '��z)w��9@��ʓg��(����p+������7r&9}�fck(�ׇ�5��d'�S-�Lŗk7���MN�R�_�V��U�Roi��^}h��2�����B$���'�U�މ�/������%���tРp��(o`F�C���6RO�Xȑ>��^���V<��%����F�������_o3�A�B�B�e�y�Ed�1�|�����"f��w�֋�9,m���Has'��^ ����]����rv��%[������2����h�i7q�������ZK��<��↲�E<��4$K���-�w��
+U��ys{�O�$z]e�ۭ��J]�A��{2�@o�8�&���i���E�D7���jT�C�x�=*�U����G �>�.�4�uF��`���"����ӓ�\�dK-�A��ƪK�ɹ�~�ɳP�y|�i�2p��фJ�u����
3���_%�K@�,�q;�_���9{�BI�9�H��"s��аBL�n҃/�`�1O|o:Y�a���.$�L�d�[���t�,�	OI�/�s�=�>&��
+hN�7+�b���!����2�SLk΅^4vL%�nll�sw)h��S*�#g�@O�����g���-���m��N���E��O|XDO�&��
+�����r�$���G���ͲKP��޻;4��l� ���r��cj��%�t����V1K�<�����"�swl�]\@ړ(�ǠA��������>�O���$���͍l>����_�*�Jn����<kye����[^�$����j������1��&����_�Y��o���="\S��No�j�������O���V)oTo��Y� �Kh!8�M�s�,c�|i�4����X�]ܩ��k�m�;�����|ceG���\3��1x���it�����}�;�Ck��S�|�L�wC�#KE�ׯySk�>/y8��R�A�����*�Dh���ϓ�B�_��
+�F��:+A*UOڊ#ԧc;��-���k<�r�����,R�i�7O�6���=@'Dk�{�Q�r�>�j[��xv���&��A�T+�E��F�.�҇At��;�� ��� ��P�I���7�}�7�'t}3����:{;
u<��];��ݛ��x�os�}.e�f=0������{�M��I�GG>d�K��|A�s*����ΕlJT�)�Y�(��FP����e2T^�������<����,J'�j��1|�ؐ�]�%8��!�֊o7�’�P}-P���E>^h8��|'�L���x�@W�˧d��3n.PNN2NT���_�<�f֞�V�;�X�Z��9J�z�d?�v�-����V�`�ۇ5S)���|��2����հ���}�D�̼���0;�s~��fj1���p�zOm/���LV������sF��]C4ia*��$��٫�H�������$?Y�~�)��/���#���oY����46*���#U�h�h<����p����7#=籃��p&f�Ur}�$:�]�H��(�]��O1VRI2g�]��ú��M�)���&�
@�M&)xwV�h�����Ӽ�Y�sܷ�Jc~(�\�c������4BL�>�aR+g��|/:s�.�k#�a%1s鏘���4����
+endstream
+endobj
+13564 0 obj
+<<
+/Type /FontDescriptor
+/FontName /YJCLWH+CMMI9
+/Flags 4
+/FontBBox [-29 -250 1075 750]
+/Ascent 694
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 74
+/XHeight 431
+/CharSet (/greater/less)
+/FontFile 13563 0 R
+>>
+endobj
+13565 0 obj
+<<
+/Length1 1406
+/Length2 6165
+/Length3 0
+/Length 7131      
+/Filter /FlateDecode
+>>
+stream
+xڍxTT��6�"�t
H�������0��0��� ��%� �HK��R�! ��|���9�=�����Yk�~����y�kϬ�΢oį�����"�(~!�@I��B�E�@avvc(
+��N�n
+�@Bp��@(y@@(�M�Bup��' $���@���@��@�u���4p��]	���urF���}�s�$%��~�� P0���!n�``��C!(���z��B�K	
+z{{�ܐ'Yn>�7�0� !^���� 7ȟ����P�_#�#���
0(G�C<���:�HC���������9�!����+�;#��Ap_(�	��A�z��(�w���t<����р߭���
+�z�?�!�PwR�	���Q�W�6���nn8
+I�?e���w_�?��
+Gx���^9B����p�t4�CyB4��`�&�ۜ (�(PRLLT�y����0�u��v�6�g�wG��c@����?��<<!������@H�����'(�����f��_k��{@}�V@4����_��Y�怀�|�
�}Ă:J��
+f�F��SQ�����K�BBBb�qqQ@�?�胠���X
�# �W��}��e�?��#n�?s�"�̅���M�@Q }�?��w���忲��D��T=a��~���������A���B�@�����f����q�z���WB�A�f4��}����P�*��E���b�_v�_z�A�}��	���ˇ��A����Ak�uU�`��/�	��@ _�Y�W��!�* >���#P��z�@�#ƒ�����AH��P�+��9ۅ��P�ހ<~��Q���V�ov�;�{�[��L�4��K���︬S�����]Y�I��Eq,<�w���V�y�h�PC3�T�"rz>����r��aOn�r�z
+Ce`]�p��i���A�4)�4f��(ـ���
+ۊ3�l�*B�Wd�����.䖥��
PzNʒA��W����|b�¶��xH�@�a��i�a2y���p��G��w�*!k���7��OEN���j�j")h��i�䏦�R&�j�Bbp(��+U�'�Җ�Er,cى/��-lO�lr�U
+���x�ٳ!:/�߻|�`��c�M���%%ƙ��)�"{���H�Q�����	�����FgQV~a����9�q����)�K���d!a�t��Ч�b�0&�QG�wW�t��X�,.������>�V�3��϶[�t��F#�)gB��;���w�_i���%3�QC�k- �m��g���ۻԤ-�%�XMEH
+�����02uo[HE(ϒS�V0�xW-6�L&�E&]"�����-e��D���;��pl��=���m�
+�,���t95Q����{IWۊ3!�����?M�l)�?,p����u���\�!���=�n�|���r0�!���~_'g���z��s�c
+�5�!��XUs�h���A��A�v�Y�G�c��7B!���!�6�M�G�?*)*�I8#$E�kt�9$��	�M����J����B���Ύ�09�wTE{VlOZb������1|�h�g��_`���J�����I�\O썯�����ޖ��#z�P�V�h��+e��-dE�scE��*�����­wjZ+���B�>3�w�w9�;<i�D����t�
�U�NJ�Zg1�~p��g˜Uo�i�a:�`Rͷ�RZ3�#R��������g�r�C��:N����07^���<�Ѭ�56A�՟�+�"7H�B�µ*��gX4�Ľ�}�c��!�O[Ԭ�tV�ؗ�!Oy�{�(��2��;&�r�ֿ~5�l��ðһN%|����gP)�f
+�5k�
,�L��~)���
3E4<}�Ֆ��"�ې�,��[/3�A�/|p����!kշ��l�i�/C����\egZ�Yy[��!��\�NWr�x{Gؖ�ƥ�
feC��R6E��ư��+�B$��GS�pȾш��F����D�8�.��pܢ���@p߫'qҪ���"S�6�^��^�zXd*��e}�������Y�M�t����VS�y��Ž��e��!��HR�uSDm�E�c�7$�"t��Qa�z��D�@���3���������=�8=u�񏚲!Sv�p�`��?+kM1}tw>�����|��#�ҩ��Z��Ћ���`&��z8��#�0�Ϸ������P����7����}�G�<Y����6��X���;����&�g"�Cm�^q�m��X�I��7^![9��{���l��Y�7��AD���ՇKS
�T!�F��҉��W�6F1
+�'Yb�2d�ﳌ��k��';X#�/*(�q��������f3x�0dC�o]W�A����덳���+�t+B1��ّ�*w������T��զ�6&�ºA��g�rs|��'��BXj�3�X�^�W�m���X�d��K������vO�E���EG�tI�e�v����"��+�/YU�z���4����: Յ�@(wJ��0ܺ�c�����+{h��c�7�v}ƸX�h���6��W�R7�o��;T�-n�8pV�mv��6�����I�Zꦏ[�@M�6QkyE�_�M,1��l)<z�4����Y���^�M���is>w�W�G��������%9�(lu�������䦸���g���S�(���b�����\aa���fM�Tl+6d�6���[1<�z77i#��N
+�T���woLj� ف��!f��Wܧ5�l��	/�ͣHM|��L~��8����?M�	����V���ނ`�9#�j1�J����Ը�{�Ū&HX�Ot�W�o�$T�@��:.�7`��k��t��J�Zy5L<Tˑ��߲G���5V������:�R�n�����#Z?�
�K~3�}���1ʷ���|[��7��Y}o9UZ��Ənx�J�آ����Ӊ�u�O�_Za�� 't�#�cx�A ����]ޮ�h�.Յ�������S}G�l@�ş!�U}�r�nr���-�����Y�_�����&S���OWi��9)��&�&-�n˾%�Ӿi��$؏zܖ<��S�`�9x*7�19���Rkr�uN��R�&p�w���^�n���>������%�H�E�>?q�q���`ʢs¿/$xIW ǣ"z�CԗbDB���R�,�O,��~N,S�<�m�8.�o�u����� N$��
�>ƻ���P�
+��F�M���j��<>{ssu�Ft� �f��/�Zj��^a����!�n����@�2S�W�<,�af����Eƅ��BZE�UUc�.������@?�J���̏b^%�*�v���gi4_�.�����4|��]��g��X��+fS���64�ݽV����k�r�ב�ެ�\~��l�Q2���~�\�kז�PG����6�#�x<e�d
+(�E��џ�u�{�B�S_��n��V/�{�fN�%��1�wܷ��w�;������kO�k����(C˯�J����>���|��l�= #��7Q��=�i���G�!�W327q���3��z�}���l�/eL	���<��N�
+�|u|=2.U¢dJá�9_�S�2j��.2�	��������2P���m����Bg:�nb��g��y7��C�(D�|]�ZFȍ���L�Hٚ�N�"���c�cI��6�$�'�r���<o�Z[Q���C����y�Y�9�
+�U䫝�^N��0��^��߄�U�4u(�Bߑ����S�y������g�eV�{��>v4����>��Pc�)�/ٝ,l��3������d��xV��>;9T���Ǒ��3�hg�����7n��D���ғl?"pK�|�.�������e�Y޸�C���O����nXgL�Է/�$޺R�%�<����$��햔w�a�tK��a�/I[\4����u.I����>�Xd,���B�qq��8�yl��9���$k4W���L?��b��;�#��]��M�7?(|��鶏|�e�"��bۅYf����g�n�Z��*N�,1�@��k�Fr�����f��ܒ�A���eĭN{8c��#j{.Y�%	��']���"����K������^�De��K��`�N�$�=�g�*)�#%}O�C�hW���(MW���P��~�l��l���j)����-��kIە��2�OFO��?ug��>K5���m�ZN)�~z����q�.�i	l۟s
+d)��=
+��x7EnZ	�~���qC�N֭��c�T�{�Ͽp�P]?26�?A=���s=ė�v����t<k�=H_]+���ǵ^k��ο�����À)Wȁ\�i=s�R�⭞�xr��rd��~礧�o��;�K��t�Br�v�E�ܤ�"�tĻss�<:��}tY;%��J�W3q�=�;i��\��ёvG�#����5΋5��m���5��?sm��Ɋ���Z��4���i#hj'z4���\;r���)��Ѭm�l�6���O�Bv�M�]��?��ϫ�(4y�^��ɥ>k��Dd$oUnjED�BXŕ~�u����n�vrœ�!���O��ٽ�z(m7G��Ya
+_]��ųUuF{�Ԧ�v�!��!C��lZb>�gl��o3ԕ�NL���O�|�����_fW�i�T��=_:/T�Z�wnx��hՂ�1b���lL�<�x{���ٌ����[v�ѿ�*B�׫��
o㒄�zXL��+��X:Exj�����6�x��v�i�7��ՙ]�[H���9��&eF+}�̋9)�4�|M'\�9�vL�9E������\�qq4@��+$�>ֹ��Ƌ��i�؟w�SD_�{�d}ej#y�C앰��u��<�a�͗��W���],3h�`��r��P$��j~�ZN�ߝN�3I���f�i����(=�׫s������nͰv�UV1�:��.��-��p -��lմ�^����A�B�zu��e��JL�@���`��h�(�q���hEo5Yɫ��W��
&������[�#��x�qJ�WjNk&����cl�QO�8���c��T��X���KTX��㵹��B�*[_}�,�9ȱ��0�3���[L��v#�{�Ps|�Ъ�z*�����g����[�B5�į��I�#��繤!��r����Y�������+��{+�H(��r����s��sV�A��;��OEo�O<�#sSc�O9���%$���ڷ����A*ݼr�â��0�3�V}�)���m
�-)�^T�b����x��EX�ͪ�S���l���wג��N�Q�Zΰ����T�$��L�^.辗�F8��G.��F�fݣ���1��4Ow���U�?�����r����>�sk����3��4�}!��ā΋��f$�E��Ofo�;��NK�J�~����f��E�Dr���5��)U16/nb`I�0�LZ�� Q�"U�[7����0Ox;۫�A�ݛ[=\�O��̙l�W�B�%)
�K6u ��r�=Cû3uM��H��7��cK폻o_��V��
+?�����&�G1�V�YM��G�j��Г/f�I�]�!B�6-z�E�=�k�_��;�1U���L�jl
+�I�:fV��N]�7������n�
+]*#K�X�?�&�
[Q�j�:`&X�S6p/"D�])W~��c�SOy��W�3p��E����?P�"[߈Z�?p.��j)6E��Ʒ<�l�ofI�H�5�I����bD�|ヷ�f^V)�v�'�����g;��e�Z��e�ٜ����$��Qe�KڝU��#xA �U
y0�4��{[�ۗ=;��2��L���r
1j��k%,A�<��xUF�޲�0��4��}Vt��B��}�SW)c�j�r�c��
�T��Ȁfi;l�B����j�����G��XV��&t.�+U�ᾱ�(/�9)O�d*OK_ۻ/�XS+���n��EZ/�j}>q�y�����T"�V�b�ã�r��r���v,5����
z�'��m�ɆDAī��К^��L-C��-/B���-��G�K���;Ϲe���;�2dž
�~�:'���Paߎk B�?I��L��8zC�{r햯�灛V�����_)��K��3��*ڋW�X8|ێq�+�����;b�����}��;���53���p$��E���`c<u_�s��i4�sY����[������6������g�6�?�Vt�J^�6�n��a]������I��gj��=TY��ݍq�(w�!|%�+��x�L$=�7�2�����r��-�n8t������F�ɓ S�"z�ۿT�,�<�ÿ[�Z�5�Ӗ}��K���:#y���9 ���ϋ�t9x�1�����Cݻ���[W�T*�x|�S�2j�]�M��b�:�%���a��7��$�fm�����N'������&�n9u�UYp\�|X\��H�ߕ�'O���j<�|s�˧ 
+�XQ�M̕���Z%�!uy�^�5��%�nƛ�d��f�>�n������n=�<�r������r�S^�˹�k[޻�E0����b5ӎwg�L�� \����#�M�B�F��+Y�����'��0l�C��?�t���4���7�g�w�K#rZ�o;)��E+h���J3U26�[r.�W���
��8�JfzuW�3��.bv���=�]��AW������7�	�1�������5N��>���c]��J�[��u� �1.�v�>�*��N�zay=��BO�{���z��}!�9�…�ʺ� ���A����כ*������Z2;8]����bܹ�&�"vR^?����s�/�Ó~�@��ϩ8���f-����9;�;s���ng%�5�S�z&��[X�4�N9����S{l���;̄�r�g���8�$�
+�����;&���I�6�R�x53pߗ�.N"z�q{��]�������	dI�Y���
�IV?loykb ��v��*�7���I	?��S(E�U�3���<�l�䰖�6%(�n�\��^ӽ��D���b��͙�1
.	��;`:GQ�ABV+�*�#�R�`I�b���P}�� S	��X)ɩr�^;����n/�?����
+endstream
+endobj
+13566 0 obj
+<<
+/Type /FontDescriptor
+/FontName /MCBXAW+CMSY10
+/Flags 4
+/FontBBox [-29 -960 1116 775]
+/Ascent 750
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 40
+/XHeight 431
+/CharSet (/asteriskmath/similar)
+/FontFile 13565 0 R
+>>
+endobj
+13567 0 obj
+<<
+/Length1 1399
+/Length2 6072
+/Length3 0
+/Length 7039      
+/Filter /FlateDecode
+>>
+stream
+xڍtT���.�(����04Hw�t81���HIH�H�4"�
��%݂��1�9�߹w�{׬���>�����}��cc��瑵AXC�p��O ��o"������'bc3����a"6C(�
����/�<
+F�10
+��D�j�N����$,��������@��0�&/@
����#\��0;{z��8 ����������Yg(��`�=��#��G@`P��?JpHأP.�@���'/�ٍ����|����zP7(�j�50@��3/�����Gآ<�H(�
8� P�:�nEЛ�U5��.P����C�߳�xA�.�7�W!�w2A8����0���h+i�P`��/"��
��{�aN`k4�w�`���.����xn$����s�5"�W�)+�m���P8ʍ�W
+0$�>vo���u�#<��0����!l�]���0Ww���_
+"�fE��Ą�EPW��b�U����;��'��uA��l�C@�a�P����
+@!ݡ���;����AP�k�N���hj�g��|$�`Ƈ������7��lp'����/�T�X�D��������!���< !�����G?DD���,���m��?��p[@�O��c�W��������B�Up�G��|B|���-��)�7������7�����;��;����0'��h�Qhh"�6��7��Ǵ�P���GUQ`�d�vh1�y���07%��F��������/�9��P��׷����_1�� ���Z��CP�}���"����3~!a��{���/$��
i���d���@�S����$ѯk���YO'�-�W�7
+���`������7��]!�H$�}�Łn�_��V�B���/�ȣ0�����*YO��#x�˭OLz��P�^��k�g*O��=�)�3����U��������yGv�B�J
+C�gU�'��[���Ao7&��t�� Q���3��F�?�E:6*��Z�6L�v�΀��d,��8�����eԠ�9Y<�,��@���V,�L�9���{�,>cp~�?��'M���zW�py%��K�PRub�Z����w�W)	�芜#���k�@�����t|΀F�!YXfR���X]S��0?{��Oo�l�#���)�`,p�����]2�غ�z�T�����Ѡ�	kN�~�ᝡ�N����C�[Zڗ�K	.M��Q���B
+�3��5$~�����������QPܑ��td��)S�hg3xZ�@��q�(����ٲ�ե��q�P��+n���Ku����܃!KĜ�Z�����X�*�%�9�kK�ܷ�J�/5�@��G���RQ"��{r֭z�Xվ__)b��Su�։��R���=�3D)�K�߯���Mf~n*q�i�q]g~H���RT?2S@�]�|M�i���CK�m2���D�\��(�l>��t)�n:�����*������o
+��w���@V�����9�X�]}��;��ޑ*9�!��x��%��Uâ�ۜ*�秮��t�v��G���';�êyY�"�4�����R�@)�%'2q�[W�,U5��}sX1d�!9ݔ3��J�4t3���,�յ^���X�1���v���E����kH �,�H��뚫�}mq5�����nȩ�����VA�f��CC3�M�H߂�-4Uc*n������naY���o��PD���_�~�|g*��#a�Q~-d����j�v�YV{.����Iǜ���0/���ܝ��T��نe�Q8��=��k���������G�`rV�˖��8
+�4������!��D%a�8��ҟ�e {zópa�ϙ�t�>>�����T_�.Y�L.���h���a���8��#����@�Gmg��Hs�Ԩ��'=�{,}E�p�`$	�7�4LKM)^y�*Ҡ(��3{�v]�W���uW�ߚ����K.H�U�����VMIs�i��x�2N�ϝ�2���!�U�ڂy�}[��;�&4~�%B��~���'��#��*BT@SXB֝�ir7��E���vG~����;�#֘�ޞG/7.>�IBdP�m�Gߋ��_QHDc�a%�zⅥ�*L�v|��9K9hr�|����B!��D:驕[�Bo�"�ܸq8	�F��{5ۊ�g��C�P� �@�YC��/��9���f�g�"W�3Mq
+x\"��nyyMR��Uq���A�ٴ�?+�~:���}u�p���zg� |��mx�e�XLX��s�v�3;�~�Z+و�'� ��h��^���{�7K���8�c��i���j�_]��?.7�
+�7�R�آ�NG�˥�&Z�^;Y@'�W��O��zf�߯�J�����Wǃ�g���9YM��z#��G�f����yj,C�f ��͝���]�y�0�%T�;���ST��q%��?_������v;��@��z�氱p��0y�ʉ�������
t��>��:JO�DǴTQ5v\6��I���3�����ZM杹[[�b�MI�Y���&6_��obL���P�����#\s�
��W~��`d��X�Sh�و�������Y����`�g|�WF饯y\�<d�Pp�������w6��q|�,M�;r3��>Z�����a���b��V~�D\z���Z,��>(�N?"�x�#y�ό2j�>4�]NP�c�����U[��2&�x@���_��Hs{�!��ۺ0l����qkU��+��ԡ�nb���������JaJ5F���n
+4hx���4.��n����C*�����~0:�"�����"��T(�Ѣ̭"��nBۀ������o�g�9���g����N4�mh��3�D�q�����	^K�?./p�bn�~L[�!FК&9�)�&���%���*^cca���L
O�͛v�ܲ	����ų������:��we����.<+���5�Zc�
+�rIYW�+�Gr_z���H��t�6�϶	;RZ�x;&l�0~R�ӛm��\S���j�ns�Ⱥ�����Y�	�4����cL�f�g8��׺�d�/y;a��M�Kh��72'�w�����w]�
+ͱ�We�u}�uDf�
+U��˕�_�I�=ɿ0C�ppŊ��������L}b�c:��p���;���9i����)y%������ N�~QZ>��ӻ�1�<�]ӞmR�O�=艺�r!�GG�������b2�D��q�����*;bγ�"�/p���;��p�uJM������;�3L�H��t��mKi�L,5ѧ�����F�m���i7�kEc�{�ں]��SDU�(��d(�
+��J�6��|R}��`T���<�R��l~���)M��O�|?������"j��)�s�B�Uз����Y��H������1�B�Q�Cӛ�j&ip�Bli�g�B���u��8* ��x�>/c.�>⎍<��T��K�T����rÅ[orI����~�)I�TI�:�?�Zi�=�-���E�}ͤ)��������7�����B��x9d������l.��=V8z�OLذ괄V"�w'�v[�mS��"�ft.�*�����qBC��7A݅�g�4��o�K�T�$�t.A(�ϴa)�Dd�����T#45�Db���[��sL���~����[��<7�ry���qJ>}��L톱z��dSÎqIkD�Jsۜ��9��pŎy�["ɿ[z������J���]��:���=�+�1E�#��X��E��줭�E�_������b�L\�j�g��_�<�[��u8��d�5빌��!����1��u	x�R������<��~#@xLW�i{'ɘ��[����x��څ�eA��đ�:���oBbT0�=b�xxZ�~�ro�D�SV��~�����������5Ie���&W��i����3�A��c�5?�05�0��"�Q�)�v�,j���F����~+�Q`�mʲ@�y���*�E.9NU�z� ��3������_<N&B����F����1��B�{����?�]����t�V�&;��Z�2)��>�W�9����p-���_8��Ý`�plŕ�vmـЛ���0l�f��'�9���cs$Ԭ]�w	��q�1��c���Գ!�Q����,닶߻�Gk����}K�J��۠�פ�Z�O����!;N������+
���L9��}ߎ��X*/�ӱ61��e��c1����&�C#ɀ�Bu�Rm�GO�KG��Ž��a���l״�4������������GF?��e�ב���C�$�=���4�
+�몋�|�)��?����f�����m��;�����Xգ7{�X���l��3��I����+8cp*����-�{T�N䧟��Ԥ���d�R���AY��H%�H0G����ė)C��J��W��j���.�1ҨOQdk��/޴�݉����aU&�p��Ó�zF��W;����^���W�����rh,�b��F�	l�d������d�����R9.?s��F�r�$��bG���YA3�H��i��s��䓠ޱd	CN��f�(
��ظGT F��
+Iq^2�3v�8j�-��'xh�Ht\k�O޳��̜4>VY�w~tH��Ԋ��N� �mCU���+�x�螦<��ij�m\C^dR1�ծR�'I0_�����~�]��d����s~�E��e{l��'-��K��U�*�n��pHa��)��;��S�8�+o���`��?+�'�o��O�lqs�?��V��'�>ȣ�[jH��Gy@�ৣNz{�A���"5�+�$�xc�+�	,�w�IP�)؍s=�34lY�z��F�LÊ:�T��yy:�6;��k��g�Zy�ı��[ȃl�[.��/m�Z��:=�5�?-=��Cp���r�
,�_� وl�O���bš����;AA>t����1ON�/�;5mu�����5إ
+Cp�c��B-1�k��������3�v
�U�c,c��;�I�D�=S#Cv�$�/J�b�u����
�&k�&��wq��Gf�s�dҮ���4���F#7m��H\�S�i��ķ��ZY��d�l���\��W��ګR��lw��g��R[cA_S����<G߄y���d{��f4�s�����^�˪a�ڧ��j���+z7����O4�����(�j4qz��n�w����uN�<�GN��Y
.FƮ��1g�hW�!"�m�<�p���sO��Nr��w�|�m^���b�A`}�����(�u�O.�V��J�u���ЁE��Y�7�yV6w��<����_�z��RQ�o�MS&���-�G�_\|�dB%���.�N��Ym΁�j+���ʉ?��ӆ���4V����V��v�I�W����2v��'.Č����nuW��;h�h	�]�bV+)��洤��^��Ds����.�4�s\��;%]fr*4�Շ��!���Y������e�,�a���7�@�g���!3�������M�$����&@1O�K�H�Gn�;l�k!�f���^��U0s`W���F	M��A_"���w�M����a������tsz���l��.[�1&+-)���={�?���%������5����A��.k��c|K'��𚑁�$�Yΰ,�Cl�!���erL��՞�hURn�;�tV»��i+2�B*��~��~����;о�V�a��w�	}(q������=��;`���T��-�z�v��x�ǻ���O��w9�Z���SNͱ��̻��OC�qZ���2���j����b�r��?��
+hOɮʽs��]ws�G9z:��:N�[%B��y(nt#�ʔt��>�af=�O=�サvKn5`��)��r��S-�Ij�38cE�����[`�4����&���0B��S �Ɋ�H,sA���'jU�&��ZR����"5�����gy�}#����&9����7���P�.b��u�u'GZ�d��!,w��gh�쫅SMo��q�h��`&5յĨ��r�x��A�Q��P��e�+��!7=�������FnulڍB�,t�YO�p�P��鶈��0���|=�֯`#o<�ET�Գ��3�p�`�`?2��6��MGM��l6�1�K��,��Rz>��9Y+�c@*��7���DF���m�6���,�
+!�]͉�'SezX[�G8{[����(�#	f"�K@T�(�w���-o�aY��+����2��w^����&KЩ8rP�-*�-�:7~G��l�NT]��j���%xq�Sl��K�«�i���fG-����g��C~�H����k)'
#�"F-ל��q��'����o\�'�t����J��3����ݞ�n�K�]�@��S�G��=�:�)#�#�P�Ǣ]���9��29������>�� !�UO;Ե?u")��s�\̜cV��A�t3����O���V�i�r:[Y�F���z�Hmx��zB<�:���u�������/�hO��])��=��\:��z���(�l�K���JN���R���;ߐ���GA<;��ůlg҉�m*é�c��:B��3�Uf�H�]��Q���=�G�S�c�+%Sc���Y����|�=o��e��n�^Y /��-
_Q��:
�݊�&�������}yPqFk�{�j�y�3�w�l�(�hAU*6t�������K�-����a��y)N'���Ӗ���{����ݯ�%V��LS"H���϶ci���~L�^�����K��T%�bP|x1Ǭ�~�A��"F��$�e�L���!�����{�"��G����d]�{n0�J7�HM�8J�-C�9��!Am��ik�����y&.�$냻���*�LjcS�dO�^Ү�yLT<�0�IF����׊[%�}<d����";M @�AM��w1�L:��{�5
+endstream
+endobj
+13568 0 obj
+<<
+/Type /FontDescriptor
+/FontName /ZCXKYG+CMSY7
+/Flags 4
+/FontBBox [-15 -951 1251 782]
+/Ascent 750
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 49
+/XHeight 431
+/CharSet (/arrowleft/backslash)
+/FontFile 13567 0 R
+>>
+endobj
+13569 0 obj
+<<
+/Length1 1398
+/Length2 6188
+/Length3 0
+/Length 7147      
+/Filter /FlateDecode
+>>
+stream
+xڍuT�o�6-N���
�Sii����`
ҍ�H�(�����t�tH� 
+"����<������9���>}��;nv#SaU��6
+���
L�d� ��$��6C`]�a���A�����A
�`q���3@!��.@1	������<����B�5 ��@��B�1�nu������#������Tu��Ph��:�]q��)
+��c}���O��u������bDPh%~!��4�c�hO8�k`��+��d"�n��#�7E�c� h8� �p$၄��@\q���>��
�����A��n�b"b�N�7�W"�w0
+E��A�>������zc��$�#����C<!�����!�۪�@n���a�h�#�A��Q�W�-k"a�(WW8���O��Cq��#�g��H�����������&j�D�{�u4��� �08(������݁po����f>n��F�_0n��?7��7<�a����0O8�����o�?O�11 ��H���`���3n�h�7�qO�����-�^0���?��+�n�m�j"�g����P�@?a	PXNJ
+(&&+����3��
�bu��(�ܟnq����=���8����u�c-���ۀ�@Pܗ��7�����+�������m��f�����qE���u�����
+'��Z�����Cx���U�	A�#����H����Fx�aF,��e��濤�@Pįw.
+�/N_Pg�����o'���DBQ�_:��B�h�����8n�~b8A��޿�A��� n���=
+
��V	�(���q�m���7..	� pwA���Q�F�������u��t8��L��
+aN���+U����
�|���h�%��z��%Sk�]�>��f��tq��?����M[v�|��3,�fעڶpn��^���bt�I�^��zl�BqL�}b9y.�.�R�\pьY��[�_R��2a��4��Z�s}�������F��=�ṫ/b�Gj�q'>�����ss���]i�yz�e4����9�I=t��u�0x<jR���)�/\#x�	!]3`���5,�!�ʣ�����n��0����t�a��^�^u�k܈ʅ&��m��Ւ|S4K���I�7�-H�[0?V�Q� %�eT�8P����dҤ���R�,��W�)>+��W���ӻꀄ��&"V��.�,�"�����d*�t�ũj��亏�ȝ}��WT����n��P����1�����>��Y6��x"��)$�i�M�؍��b
�~F����Ҷ���&����mn��{�9e���ہ9O�o�_K��-�e�ú�?/E�2���F€z����@��#��ž�}+ַ��Bg�많�_�Q��\�X�.|Z3D�Q��ЮJ]�ɧF�}�������Ân�(��kX�v�� ���Nwpi`q�c�x����(A�����w������>��c�>Zc���V�)�޼O�hY8Ι����9Y�K �\�.{l#_�"w-Fu	�$��."2ݒx���~��,�d��C\��n%�)�Ckb�!�8�}���T>���z~��V�=L�M��`hj�����j�d5�n���ք �,�xi- }���Ǥ�.	[��j���6�jӣ�L�h��(g�!J�I�/��T�2��"�![j�Mt�QC�3D��g�_��(cx�h���r��9pUV�6�9q��NI�	f��yռ�d$�l��O�
�Q�g$u�V��	�>06
+�`s8��s�~$��Kg��l�"�A�ӂ-P��u`<H�}�IG���,����Hq��u"s�?��4Jf��������9H!�0�N��7"O^��R���BW,���C�t?RU)z�� ���0D`��7ov��b�0����'~OuJ��>̥.�y�^���j%̠�D�|�CO)сv6Wq�����/����H��Y��<��_��>5��gW��a�6�����Tt���Н˺y�-�O:[XTS����vP��@A["��E�|o�B�&��a�����
r+�+�>
��Z@)wn��ك�?j_�	�	䇴km�;	�Z���2��@s��ƭ�[������$����Vk�l�����i��)x���g�xE�fR�M:�|�\�_���Gd��mT���S�I2��.��i�~4=v��O�9�q��1JЎ��t��&�{.^�\`�o[��ͨ*��Y��i�o�n}z���pqQ ��72�[��&�i����m�~�|
mz�(�l�3�a����	��2�x�PPc`��ۏŁ��(��Ç���W�,���=�w5�O	�vd�	-���a�p�i�"0�ꝑ�.� ~(c�?1ѕ���}D2�Gd�!.=�|�T��S��x+�>�Gš�T�q����l��kȰT���`xXF��KU��c��>�/�XZ�H39f�(�~�͓��u��z�K�eh��h��)����?��jL���^M�VY�<����-��ո��5cr�d	y�C�M�s��S4+���\SzP��W{�C�����Y�sS�k��Y�^X'	��X{(��5�mb/�����N�������-�a�d��u��fv�������u���P@�H��T��C��
+�onVF�Pe�s���S���Ԫ�@��5ů�N�dپ1Y�i�M��O����'���d�,�����^��+ZS$�f�N&�gkG0�S�t��i�r�z�l�����ҡ;�+)�y���&2Cͺ�A�o��%֚�(�%�Yy���4���cK�*�[�����`�m��w�BB�����EX(c�Rh��6,�)5j�o�HI�ӈ�Gܥ�9f�톸�
��\5�Y/��n���u�d���}ڄ��fɞ����M�t��T��Q�n���
i
+�Ƨ�X��evs�ȵ�6J���Y(�8B�I���U|X��c���ճ�^�N��X��j�f�k�Sת0B���2�>�F�4�G����Ʃ���Xc�/)r�c���aL�2'P�@�c�}R�F��Ie�����,��zwGXQEn�S1���P߬?�K2����B�ݼ}P7�T,�T��B�Ђ=�Ԭ�}�%�3���KJ���(�7�}�ů���
���5�K����%�[�~ї��B�`��<�����E4'e5/��lvE	+	�R������S{�׆A�47y譲L���,�˫ؙr~���nR�G<�v�Yt�K��C�i��1��g[�"�6�n�܎ D	c#vh��M�3��]�3|�Ү�z���]���r�vE@�p�P1|�gvYi�&4��,����ci#����A:��\Yƌ�Öm蚖V�c�ꚰ���M3�%��S�u�+�7�%�J�Q�`�z�Ŷ�n��*��M�h.İRI&}�h��)�Vx�ue[{Pz�ܡ����ik���F��@��3*�ER���غ&<����[ƨ���bX��i�޸E��R[���*ύ@�	A%f�W�Rʊd/��#K����5�d�N�	�f�x������rb�i�R�/�Z{�(�v�h�u�8���X�c�ON�@Dw�ɷ@���P�vKRf�!B�в��h�,�!F]d,C��������f���s��ϑ�N���x�x�nH��H��E��v(��:�QE����e����&vy�?��~�^���Im�{��(�5���AV��#��ƹ<?���I�|�g�d��|Ŏ�l��#O�7/fڥd�+���w
+.�h�X��r�*�K�#�g����n敿�ߒ�8�򮳜ێ��[���Z)Aٕli=K�(iϒmU��e�ɑT�W����5L&�}�F�*��?�3�J���g�'(��s�|��������c����/ug��5�6��=�n�=CN�8��F����3�e{(����������|����	�%�=ˋ��|��S]]%�7�����ăQ)
��=C��r�
������2����=<_aR�Jh0Gl���3Vw�ۊ������5҆�k�Uo�%=�� b��;�|��Q0uLj���H�5��̟ó���lcp�3�����
+��+i���+���'���Qkh|��R~�^X�ܓ��a�����\8��Y{�j�����g��.4��.�,��D��1S���n׏��%~�IT�>R�6��\���I��G��z�W�HX~y-�
a>mȐ�;�a�Gω8��Rc��0��S�g�3�|���l���7b�mz�g��>��JT�#���#t��5uzj!�����*j�uѽ�o�_([_�9T�J�Ƚ�(��A��b}���[W?�p����p�|Y��ח�r�g�M����}��-+��ʅ𚤐���D	N��0��9�e�0�&��)D��1�ɧ��-}œn[�?��tKh��+���g��?%��?�
+K��)��٧ƭ�9�r>Nnp��K)6��D��f�>���t�s�^D�QR�7���wh�^�7���	ѳ��E`��&	Y�tB����Ƈ֗A�A"���Wm��Ԥ'�e�o�r��&%M
���JZ�����(� ѝ�-���������y�}Dìp����p���b|�֒��4&���c)ij�^~�z�0m�j 4&��2u�K�*�C
+=��;Ħ�!�5(����J�Zh)�B@���_�M"@~W{K�Ӻ��Q�
+%8�*|=;�ܯ���B�h1"q��@u)կ�|}�2����ݞ{3��śsfZ�u����^S͑~|t+��wST9!Y�T�n�>?~*�ޱLl���pw���y'W�Yq�%�z��̹�Oɽ'�f���I9M�+���Y�)�,��I9F�P�k_y@i��S�Ș���3l�\d�5j�Q�\�q{W��I�9e*G�a��8Q)�j�V�e�ׅ<�����Ͳ�@a�W2���3�:=Hv'�ː[j5�q(�er�dCPW^�|��(!V��Y��[�$A%���p�ǘ��=.}<��E�
۶���#��ۏG�[�jMrV���=�k�C�1<��u�K
+�>��l�Z��"x���
+S�z�^1>���@|^}��]}�V6��p;��Am���=�1y�v\��7�9�6����L�ǡ���А�-���#��P�+��;�h�R[l{Hԣ�&��>�N�9�?�tv~HWʞ,�A�6�t�/��Dw��t�ς���d�������H[@�1�����"���$'��Yv�ޱ����FN��3���=߀�
+b���J��)���A+x'��.���B"�.��&����"(Q3٠��H�gp%_0�͓�鋲�f�/��~�=|!��X�{��-R	��ZM�^����=:Y�t���i�����Ϯ"`�LQ��2G�'����!�P��{ha`)NL�����`��"�R��Z�n@��4�V�8�AclN�����n�ܔ��
+p'
C*�
W+3�����$�׀��=}��
+�1�q��1��%t�?����SY���9���/sG�#+�EmO����1u���䀌�\C�O^��u�43�<*J�Ո�U�	�K{�6TՆ�n�`�l+�C�7z�7'��ϓ��͗T��D�~a�;���%�{c�g��Muwȼ���@��W���wڍ���[z��[鏅N�'���ɤ��
�����[���d<�Ħ��^+V�u��c]�5%��Z��ce$Ba�-zμ�{�_�<w�I��O�m�k���*s4r3U���+�T!�x�DŽ��!>��,o�.x0��vJš7Eu2�鰒=K����Sd���Jh|$��3�������/�;a�u ۆ_ix/*��;tܓ^*���l?�%z��4P�UA#n@�������P�*�u���FQ^�FT���R�']nz`���滎~�����$�<I%A��%Mׇ��d<���F��[��1�^�dAFs[kW�6����e\S	��ā�y�z�-ajd�0} g��>G	^��gN��(�ȶZ�v<y4z��MYZ��@]���ӛ���fR? ��۪�i�[�v^���%�=���Ws�`N�	��Y�5�+W�
�����,w��~���y��὏�<��j6��o���ٌf���	м����%=iy8�6�����m�o�&�Te��0�Wy:o�"H��{�N������zL�?��ֶz�蓾�8��ȕ�V{rӞ�`���/r�����SovU��-.�eu��`,M���0�����)(9��
+�|z����
�)�L���z��TT��b���>���%��>�A�E�nP�p �'�'d�'a�G��o�
ب2Rx��N$UT�	��:�凕E��U��iQ�{{�yg���
	+g�7�-�v���VV��k����e�-ښ�3gu��r���K�{K���ۀۃ�4�\��J�]�2��G㫻�-9�+�����R2��W���
+�W(>˓��_:YSn���^�Oٸa���(i�#F��_j�U�[^J���沌,ݎ8v�Z�L�1ue�?�>5�k�Ĉ�V��e���^ߎ���g����U�K�t��e�X����Y�����
+f�rO-A���wڔڄk�:�N�9�P����6��Xh��دϤ	����+d�,
+�J���/��M��0��Z�S�E�$����q�Œrt?'�q?����%6��o��/��n�w3�ʒ��2e[�}�sC�K�#	2��h�c�@��t^;�|�J���}W�S����2�&.tjk̀Vj�TYC����;}kW��=j������i����SC,x ˅*��7D|�� W%�fzI&���1�~��_�A�߇�S�F��r���+�ض�.��DW9	^�ޱ��r��岣�(0%��f�Jn�A_0Z�M�j/X�>3"fŰDٗ�V]��>^c��
+X�1�h����\�}*�Co�g��}�ɺ(�Z�biE��,Wk��6(XTv���i#j�b�����S!|��Wl_���6}~��vp~��?��]}ު�GɌj�$R��aӓG6�M%r�'�֒���P ҙ<-��5�;t�"�PL��&g-����a
+endstream
+endobj
+13570 0 obj
+<<
+/Type /FontDescriptor
+/FontName /COHSAR+CMSY8
+/Flags 4
+/FontBBox [-30 -955 1185 779]
+/Ascent 750
+/CapHeight 683
+/Descent -194
+/ItalicAngle -14
+/StemV 46
+/XHeight 431
+/CharSet (/asteriskmath/similar)
+/FontFile 13569 0 R
+>>
+endobj
+13571 0 obj
+<<
+/Length1 1606
+/Length2 5499
+/Length3 0
+/Length 6306      
+/Filter /FlateDecode
+>>
+stream
+xڭWgT�[�� �#�K�Dz�R��H�!	!�"U�UD�R%��T齋J�M��t�蝙;�~�k���Z�.�����>g�p��
+�: ��ZHFX\DL0���{� ��jH��sJ�����P0�Dh�1P9���h@!�� .++�ԑ(4���X�
+
+�������3�;�sB�<�O(�r�"08����)
+`���#�oY�j|چf�6E�ထ�=�a(��8"���� �_����T�0���B`�cPo�+$��hW��;���Nh0��	����/8�#�7!��p��p`FHw�;
Ca�\U#
�?xb���_��a�0�t�e: !�Z����0�`�ޘ_�졀���j��Ph�o�0�ӟ��4�	�v�C��q08�_���O�ߺ�Pp�ߧ������q��E@�������(�G$ .�����Ϙ'�{@|�v�G�D�}��#H������;�E�>������y�7q��ѿ]���>�Z�7������0H@�����\�+�����h����ŀqcPE8���	sׂyC�`�3���f��o�p���0���1��bb��q�A ~
]����W�8y~�5��U����k�;��:�
+G�} �e��PSCz~�R�����M��Mqঌx���F�O���Aü������7��ߟֽ��h" H�_[b�#p��/ǯ0�����������{šPo(41��ȇ��e�c^3du�k�mm'�GV���
�"��E�˖ڝ���Tʝ��|��:[�X�n���6=�n�p��R����������oX��m}ҟ#��!f���olb[pz�u�^}e�'�gn-��<��6������u��
�䵟��=]�M;D-��3�I����)_ٟ`|����s�cO�%���?��� <�.��z�+���K�
�ިwe���� ��D]��C?�^��zW������1�s���f������=ç�4陒M[lK|��B쒮�z�ST�����eO���3�4ϋY/X����O��5�T�;��Ͼ��l�15���^R�����y��}b�n����L3Ny�_@U*?2�5K	d�~�$\n��l۞�L��y��Y�U9hB6xS_������ �G����S��Y�n1̨��b(8��z��}|�E5��:�B��wO;��c�1�Xэ|?<᎔��z��Jy&9��sb8O17��0���������S�|dNaT�$�M���1mWTn�<�O�BY��u���8>���e9��{�*�r��������)�?�ҋ
+w~��J�&��	-���eNT��Fh
+��G�Mp�?��x�IV��/��y�"Q��G�h���GWx�%I�ZV΃����Nc�]���*�9�:���X9Qn������L�}T�՝[c	mv�����D���!��i=f1V���y���a�%O|=�G+Ǜ�S@�UД�ހEj&�uĽ���d�x�P�g^�r�b.�����[�}"�
?��:&z��\A�;"��띦�Ǜ�"
�xؚ�����X%�~\���5��v�gb�=�މ��u���/0��􃇓o��w�i-`����૚M܊`+�uhG-k���\�k��Ƿ���V6�y��g�5n���:$�<��.��d]{C�~B�kX�UK����mT�Go�z�������'u%���gR�:�nvD�߮����>pj�?�+ފ��>��vy��+�@�z�/؇��b�2!�}
��b���|E�K"�5,��8ψ�܌jT������B�來G7�uS+�m�h����r��!W�O�Ys��
+�K�5t��Οv���k{i���$2훞���P�@nu�)G$3OQg��hF���9d&E�U_ɵ�17�9���^
+|z��.[>P[�_b��1Jq-{�du6��6hJ��&��܅���C�������WX�V*IUY����1y��Hg�++�-ɂϭB�OSױ?�~��(i���GSJ�*��:�q������K;�o��3{K�G��)�Z�ؚ�%��S��b2mT��{
+
�f]B�����3�.#��Mfʔ%[J֪J�ݭ��aw���WU�v����J%�便jl��bJ����l
+�sqo��S��SM�8�{�HyS���n��}
��E�/��u�B��yɣ* �����ř���~RYqQN�AE�噈]�҃�gF~����|z�K��J����ν��G�}��fG��b^����ש+�OUW�o���/�zVA@� �UgN~���禤M�7�*��'�
 ��������"=y?����T������W�����sn*w�K/#��#�e
+̴;��=%O�W?Ș�B!�Õ���(1��Ӛ����ځ2E�g�-ӱ4�q%	8�gWm�d��Y�2�H��!v�������M��|�C�.�;}B߮�(������O$���X�ߍ��\UZu��<�a�M��6�GW��ˑ�]Aߐ��Q��gol�:�w`.@�F�i���sW�Ж�jck�A;��$�
+ݸ]#q?�O^��k8�l���|˻�z�����Z�̝8f=�mm12;��u��W#�HE7
�F1����[9o�yH|�!�~�f*�%�3r�ǁ��� �C~�Mڅ
+w8��v�`��vN'W�%.|D$5_���y���x���Ȧ�D�ηN��:'�Zr��a����>��f9��)��թg������Z������\
�F���i;�=���Bu.�w�z�O�K9]��'��iru�Ҧ���o��>�ZU%ѫur����ڎ�l�Pܗ�&RoV����Qb����iZ���/��^iS��i_lC�ޝEz���̪�%��=Bg�L�o�y�FH����V�.���;����#�*�nW~A�<�l�!�jd�N~_�kU��k' @uʹ7�K��Rs���ؔ�8�-�z����-N���k(p~�|H��ݮ4��ǒ���n+v�`��>t�_m��չ�s9�XC�����k��W�o����ov.34�&�K	A�t�r��-�`�u#uK�<
����ac������\㒐��H�����@�Č�|���g�<���Kۦ��D5tх��`G�
d���?�3���>�a�>?i�?D��-����dM���HV/�u�"�i�co��������D�ޗR��
+Q3���$��U��b^'V��ՠ.֭]]�k����K��*�YhP:�o���]�Q@���������=�wza5�py���Z���t�J�*����Z�3�����v<
t����(iz��]�����M��o\�������W���
+��/�3	H���]���U�>0�6���݃�x�cs�~�'X�ɚ8����^E!���j���L�ab�|^�_P
<:�����\�ĐeSz�p/��՘�%8f�M���{��O/MݛKfy��r���6��<���GG�{f�Uw�|��\�+�k�Ù_Yrj��ZҾo.��L�����ՙ�e	f���k,�-�]6a�7��~2��Y<X?:�U�Q�as����.�~N&��
����Od֓9��*V���ݫ�/TȰA�����Z�yG���S>D���v�CӥU�jQ�7� �������p��E�Y���8��e�9l�`d �Hd@�3V��7��A�g���&o�TW�_
+K��>�0�Y�5�촰4��~��%oae��m"8d�*O�xy�q�=�V8�!*:3j�:�u�F#���w���#��`AjM��B8�f���xgh���є��/��ݖ�D/��I��z#�s
+�U�6�9y1�)�ʱ�4�
FVȲ���s�Uf���Kɯ�dx�X^�S��B�^�*��_�y��c�>���1j�q��G���y���7K�ROZh�H�8�JdUy�2�(���+,���}��7W���,��� �����3=g�-�p2H�
FG�t]>.�0�ܭ9�I�G��Nh��z��Mh��E׫5�;!rt]��O�$�U��z��9�dԃ9�uN~����݃������Ҳt�	c|��N�դ6J�r�& '��rrV�$e$yިXh</
+i)0�����ٓ��S���^���rТu�@�����̘�uM��Ѷ�tr������U����|%)YҮ3W�J��
++d����<.oː:�������맭��FƧ�25�Y.�"����y���n*�z�����i��;Y��s��lj������CM���"���p~}}����9�B�n˳*��E�gє|�}�	s#��3��N�(="�)/Q(y;@�Y�y�\�F����g9G���ޏ���������*�Ls�;���?�]e�M�6Sw2|)��f�p���g��Wt7�:��J*��Pw�|^����1��67R�S0Un�-�z��}?�}�@���X�n(��G�]S
��#ך���O�xų�ʕ7}����Gw1Rx`����-iy�K�������p:�[�c��3���@~#���/�7�#8�v]�ؐW@�}1�1/�ԕxp�ǯ#��( Bc�O'����r�ޝ6��F��U�VI�õ�H�\�a��''#~��3�|+�wy�a�_���%���5I
+�Vf,2y��#���B�%˯��޽{��M������6z��G|&�v���XЪo�6&�Z��/o����ߤ���|^s'VxƨZ4�̡Sn��a?2I�!a�i���-�ơjJ�6�jkP��Q���%{�̆c��V�]ckf7������ޱ6�����bwW��o�Fdʮ3�!�2 ��Pz�uWU;%�dX��7���nFD>X`��u^���"��;��6##ó�?��V���|��NM�v��d��4�6KQ]T�	}\�͟2
+ �0�FB��B��� �l[rgӢ��G�k�"�wR��;�
�j��v�,{-������k����^�ʱ+g]�k�Z껟��ֿ�������:Ѽ}}̴n���'{N/J��=+��K�Vf
[$j�<q�~��b�d��Ze���L� ��<12�t��NY�⑔�E֓��%�x`��z�
i�H�a�(w��]�MI��`]`E��~q�(��d:����Ø�β���9u	�{�H��M���7Z0��f����Ȗ�0}��:��֪�ՅY%�y�n(/|-YFU>NA�X�����i,;���V�]�.D��B��+n�)U�GmFN#u|-�Ƴgg�b�ӓ�R����Ə�����:�"~}M%D���ЋIϱ�^#�7�k<K��d��<��>(`'����a|��1�=�T��(�&2Ov�u`�9�A�zF줨NKg;m�*\6<pe��T"SF�]���/��b]~z|��-�~�yy��d�����t�����jʝY�1�e,�ANx�"��$�POn�b9��;E�8K^|��y���n�d�NH>�$vc�P�>95k�����j
��X�y2
+C��E�k�OiK�{�;�5ݒ��c�m�u��^�6����Hu�wbO��5|i��I���rnc���ˣ2���b��9��x�dG�ua!��eCI\k�E�~��o=��w�l�HQ�֙���f��Ņ2��Z�'GtM�rJ�[m�3���Y��g*�R�TI�_LQ��ށ�f��
b�'F;�YƘ��	i\��p���m[xh����K��C���	�Ԛ��|���v�T�Hs��-��…�$�ׯ1
++�w/m�
����:�'���za��gm��ǃ�a7=����?��P�;"�|Fs���6/���\h����8P.g�^��������Rԃ�(�T���\\4i��{�S�Ƭ�"Ӂt!d�JI�
gL~�Mg >�a��}�E�<�ꪊ4~a>�J�3Cy�2U�t(�H�ҋQ�f��p[�D�m���h���'��j�9v�)��2(�L�F�O��2^o{�kr�3��?,;���S?�P���W�%<��O��K�>�1��<{��E$�H!�CiF�)�W�]�!���S.���	y�\�ƭ��4�:mRW�6�A&�*Z�n�畾�]r�z������}��ЅTn��%����d��J;:�������՟3�S����h3��*mm>�������C_��5��Hx�8��ⱷK�L��P9�$dd����rn�ȥ��Go�I���e&�fЋ�).-2��RVY�v��
+7Ax��F
+�9�!��i��r��,�q����ăZ�����#��D�d�Gv�Z/���|�qrN6f�?]�"�o����x<�2���񏸣�)���_��o,>{!Mq*�
+4��T���D
+endstream
+endobj
+13572 0 obj
+<<
+/Type /FontDescriptor
+/FontName /PZIAYD+NimbusMonL-Bold
+/Flags 4
+/FontBBox [-43 -278 681 871]
+/Ascent 623
+/CapHeight 552
+/Descent -126
+/ItalicAngle 0
+/StemV 101
+/XHeight 439
+/CharSet (/bracketleft/bracketright/one/slash/three/two)
+/FontFile 13571 0 R
+>>
+endobj
+13573 0 obj
+<<
+/Length1 1612
+/Length2 18989
+/Length3 0
+/Length 19823     
+/Filter /FlateDecode
+>>
+stream
+xڬ�ePd]�%�;4�
��x7и�����;4����N������;w��}��̛qvf�+s��qN������!P��������5�6tr����fP�:��((�� s[a��4�����nnn
+��������@���FCGG�_�B��n��������@���hekg
����?ި@f@��� $'�!!+��U�m�V�y'C+s#�����H0�u�X��`dkcl�Oi����G;����m@W#��?.z��������3��`�``���-��������&���s��a���L���h�`n��*/,�<Af�r;��ulM�F�9�Sҿ��0� sG��
+�'�!`l�hge��7�_0;�i89�ۘ�z������
+����/�?���:�K�vvVn���7�r09�LXX��4��mjn���ϠHؘ�X���n�d��>g�ÿ
��gfh��00���rM�dmAS���Tf��'������E����w���C���<�whQ'++Y����
c��s�X8���
�ͭ��7�{��?H��H��6C���� ̌��a4w5w˛����&V;��]���`en����0�03�7�������?�g�������+ҿԙ4�DU55�����o��_�A�nv���Rdl����AA[W���������7!���&ۿ0,���1�9��������o����_+��#bcdk�Ϭ(�l�����4��6rrp���'�o����wЁ@W�����@���TP5N�ะVo7�`�]Q�r~�o�m�OJ�w��[Uc�$�G�������$��p7�UW�"�MO.�:e'ݾ?�nr�Z����&�&�������n��d�7��G_2�\_L�;o���h�v�z0�꼓S�����������k�=��hx��8މ'$	 7}��:��gN���
+�同�	�^� �K��(��P��F\����~P�R6�HA�/�h�do=��@������f���Sg��>�ɔ�cm?�ϵx�5�mצA�{��N�Y�Ͼ��VRq#�3��H�L���*8C�߾���%�7�������\�,��b5
��]�14sLR1O_�����倞�����ڈ�� ֞��">���&���PjJ�eJ�g{[�OO���`@�
��,�I���[�� �J���N6��!�ᅌ>.l�F�
+d%��)w5T�Ӟ�0(o���V�d�#A���\l"��|N��"~M@_������~�v��no�ʞp2�9oN�i��W�R�c�Q���*f~Y���I��w�-��1rO
+�Ss١^7�����sq����w�"�~�A]9G8���l��\~����˜�]O�E����ݾw��l_��l�n1n��[�C}��2f��Q��wXߥ�pğP�n+P�?u؊Ծ֔~zI8��R��g'<����:��=��Í�D+c��u�G����Z���Д7s/�9�{I_�ȱ����cy����P�l���m�^�E���KcbR�����,%�G��d��r� �{e���L��
+ᤪƤN���uwA\՚��g-���X�
+��a]����VY��WYEQ&N�C*ރ-�����(nU�צ-��I���,��ib�c�nV��(�s��L��ގ(T% .���C�F�b��aԭ���*B�#��lh����|M�}��x��<�'c�=��Jj�;�8Ah�,��K�g�f��H���߲�Un�<q���Ü�;�B�-}�^��:6$��򡠬U��ds�s����R^;�ŀ�3���?q:(�\z��:����*�����]��܅g�
=��Qc?)�:}d0�k��'�C�g��˿�B�i�f���T��mG6��o�b�>����z��;�V��d��Cr�G(��t73�VYK{�Z�PK����w���?+�e����LO�
?�-�����O"���-B�%(���+
��ȴ��+�
+���G���G����`�f�L{WN�4?��9~��7�
+V��>^q<��
+��^�d�¸���pW�5 �
�L� D�c?�b��z6��$N�6!;P��/�_߀F���SgM��W$LA+���Y�~�m1�Q�3>uJ��<bj�dd�Jy]Yԣ���ˢ���޲>V:8�TJ���F��`�q�I�ܝ/��{��l)����W�'����K8��:	|�q�����Y&���n#�&}�FB
+e!�z����A\����͘D4}%��
+^S�_ՐZS}ATz�"K�1iO����V������{*�l���^+����	`5k.�o.�`I�<�U���"�uup��ʳ�-��]�4�q��d>�p���5L׾
�/k���,��y��O'�
+�MuF�bo�95��~A��&�G��p�(a�E0�Nm���T�
S�4T���4)&��%4�J @��n�Q斌�|X\�)5D��6�[��qF˄7�:[!�T[�H���<��H���J�Ƿ��F��=(��5=bIZ�Je��g'Q�3��6y�B$J����z)�W(6��K�S��n���(/<���DbF������K��m$�+t�5q�h���R�3=����&9�s���~凪js�T:����ƷFgA�Ҷiay\~���m�.�ꪫiO�}���-/P��k�BSvr8=/�n�C���9��P>u�	��]Jj
+�^ۼ�/�B&���E�Pg��滂6�~
+.��!D�J�Z�ς�,-O�ߘm��
J�-��a�r�)n3�[��u{�N��������<V���	��5����7��?��	��
+d�e����,r��h�h��<u����j!����Do���01���J:6M	���z0p�W`�V�:S�+i�	��5��.z�)!������_�/�ѐ�l������FP?��@n�Ub�0)b�n]WI|��6���o����w��RG��pO�99R������NE!cp�̶ؐwz!�~�Y����DŽY�Ȉ;������/1�������D 
�be�K�f��å�3��&����qI�U�)h��'竻B�C������'��Cf���'�kY#/}j�d�f�*��ixD�=�;^�)�&Lfs5-彉}
+�4�bx�ژ4-W��5��@������*`ESg��_fE٬��Wz�+ԃ"M����*L���&y8�����sې��j٨}�ҿ��2K]��=bv8?]���7��П�1Q���p��[���������{����<�ޏ#�v"����dR;�%���$;�G^��|���O����t�H���ꉵu�&<���,{����s+��~��VO��G�e;���z!��MO�uW��4�B±�n�*Rя�A+���'*������V��?ZT���E�G+�ݮKQQ�
;O�$ls��d��@��JC&�-�
+�����0op�*vw�	�]�wF���oӬo���<����S�J��GL,QSpe�2�����R�b���wBRur*3l"�Cs�e��]%����үt��iG�T����M70pD����Ҧ�E�����,%���B���Up�����S������hX���Ϩ��|��Em�"&TJ��z~�&����#d�8�i�a�Cx�H��X�?���u��d(}Շ*K}ݬ�K�+ӝ�x_�!7EG\�pW<2��]�{ni}	;7�c#ϏH́�:��۴kM�X��BD'מ�
ؠ�
+	+N�cE���k�T���0�}��e`���y7�D����>���
�u���>|�'��Of�����l��7|�.o�8���-U�?}��;ci�B!�t+�,�v?B����'̎��XM�0&)�S��J��6n�?�������-�X��鞧=�"�+���~2E�^��+���&0�9�e���L����v�.C�ퟄ�H�GM�~��{��3�
�%[�V��ɒgz@���Z-?�rL�/�JPF�#���='�h��P�-i�=�N�܊`�8�[���(`�y��~�Rc��;�#�&��T��Z����I���Z�ґ�j��8޼��plK��[M�7���X1�^2Z��f2�vB���?��6���o��
+%i���%5L?U���ŭȾ�ݗ<Z��2K��+d�����K5k��#I�@aLu�9!Uh��G�F�����L���mY�`Dί���!$���c���z�#QUd�oD����d6�"a	�e���hw�Pt���N
+�K�9����gW��VPT�3B��-�����v@I����%�5a�|����=�WY���n�DQXD�)?q J�P��
E��^ )_PxP�Oi�O�-:�����.ӿ^�`�x���ͫ�*�<ʮ�^_MP��X����=��b�r-����7���8!$Q1/y�"�)ų��;�:nb�J����&q6.L��a1oS��#&��:�7��1�C�,/�"NYJ�,'�'��Q}4�ED"wn�aF
&4�h���3M���YZ�B�)u��5��+���F��ҩ:��.��}���L^p�`�Dypu�5V�x٪ك�n�5ʶ��&���s,�ɚ
�_n�o΀��N���s?�Ǎc���Sa9�)�Ҵ�%�x�M��譟:�ߗ `�n��Hp����g��%����g����0}�3+�p��U��r�~�Y[��	�������oI/��?#5y��"�o��C����6���v(r����P�&֒F���8�����Q���e7�	c��{EA׋[I��+�׶�#�Yi��E���S*�;�K�m�Q��s���'��X���H�Y�$ؙ��İ�ij��\���9%�L̟D��|���f{5(}�8���ӕ.�mH_�<֖|h�����{�������6�NQ2�"䎫{��Ϻm�r�P��<.�9=_����V��K��ѫ�@ԦI#UK�oÕn�:?�2��A��#�3y�<y�q�ǚWM�.����
+[��3��}���b�M�8&%yIkL�7���m-e�Z�U �gBVh�Y(�w�,�L�-39+�&w
��˴�oN옙)Mq�G��z�>2�S�NT�p��b�!?�"[*�������}ݣz��zg�����U�e�6�][W�V�LJNI3CH�����~�W��1���b�\������U������M�^b�t����1Xl.�nq�}���	��el�ڗ��6�������s�!��2��#�$
+J��X|N��LG�wl<�"]�w�"5lw9�^�6b�Ʊ$�S�S
��.E���y������x*��
��,�#a��E8�֣S��h[��Ar��j�|L_��&��6j��^�%��:O,{J���?�W��	/�G�,H�a�D����'�`���4�q3�Ǡ�8�[��x�� Q&-���Og��K}v|O�]�n��v*hy��`��R��Ρq�Q�/&����̈�f�G��剠"��fl?��dJd��RtIIZv�Nb���9~�#�6GD�G廊�ӊ������S��XMh����_,��GS��ח�g�<7�����V�,����k�"cH�ۤ�1���V�h�A���R�N5�r-x������Udo:)!Ԗ�X��t.u�*�i��������)pH��k��+�MY68�M�;��
C,�?f�Y�\1�n�����d�#�]D��j7��/��vt��D}c�GF!x�b?-�#A��͋sx���,_6Qp�D:vk�kG����e�C��ki^>�����Ǵq�Ŵ��3>v�ho5��ҹ1�(��A[����[��e�#Ǻ�f��2%�]�w�M~��.���?k����]6V�����6��9��ra�?v��Cl�� \�6�D��0u�k�$���Ƞ$���.�qT�JR~��:��e�a��n>ӧ�SB7�hNJ7Q=����i�������R�ʹK�z�G�!!��e1��mi��r��R���;�S>c����N�$���PM�ـ����QH���1���+��A�VPIȯJXKD
+v�p��մ��-�o�i���X��ˏ�N1�0�t�t�#T��٨������&&Rd9dez�:���Ҩ�%�Y�6�"/8��=��4V�yN�"�󛳆ECr�%��3w,]3�g#u��E�o���p~�`O�-�r�k��_�B�k2��.]�]�vyWc`Ԯp?I]�S)�FV��!Ɛ͝k�Px��վ�r����J�\�_FJ���%䬕i���.��"D�j����6r�Ƚ�Gt�5�$zW��O,1���˓U?�V��%�:�XM��u���P�.\����&�-�����m4�u�d����@��k@֜�9�c#���l��u���G.v��ӱ���<xfT�nZ��n�́�~�-��M�wy��x��W�fl�=l�ˆ����I��9�0G����*Յ����[ˇ�����L�K��#�U�	��&�K-��e��vh�2�����1x�����[���N�[�l]�0�6�����oK[4u�����a�t.턹H�+�pxkQ����j��_�x�&��//X|�7�+=�1�'yd�݌��s���|�~��۸��o�KUdr�s'���$�WY1��H5#Xܬ�?e�C����E�QX.�oe���
+��5ģ��t(3l�"(r����a�s���6Lv�^wӣ�.	���~|�X����B��VO�c�n�V�w�TO��ymzf��?���m���2+���Ջ�Y��{"D�U~�I$��ւ3]��(g]2J�ĤH@M.0-w�863,�wMpl�!Z6����@�'Җ(0�˚c��d�)��
+�
�� >_d��A*%�1�Q
+Tܻx��&!E,��Tժ�\8����)
����ۀ��}��6�:�W��9ѻge�@^)�3+����c<$$c_����<NX��*{�ڐ��Ջ!����K�h�d5pDq�ޱ߃/��tz������yMR}�4�r2�|�ѷ� M+�5U!f�� ��^\n��vv�J�WAB����.�fޅ�;~� �L�;9�A��cq��4����
�n������P-ɨ�7�N��<���Ϭ�sM$=	:MM7�՘9���t�[�L�Ba>�:3��T}�%[�g�4\��dcT��W`��c����XƷe}>cDkO�N����Ÿ ٧����UQ:,� HTUu�����f�=�x�rB�5	��u��b��ZC}wƓ�g���h=��L��f�܆e��\.zd�Z�5B���x=�au(i��	�^����j����
7�����1M�a�Ιf�Q��N�J�
��+�uڎQ
+���n�����$h7]��r�׾x�I⡄��F��p*ye�`�h;Omc8�u;��s��!FWM/��3rYr���Ȧ���l�*n�����vB&fwH<6�a`�}A^�[���#�O�y�
y�q�
�o]+�����7��{^���N�H�G;Ӯt�|'g��`�3�������1\Z��A�1CL�-(��{|�Ț���\|�����J��#Vq}���nNmh���}���u��<t1ۮ	wf�����V;Ơ4�'ylH�㛱��ěG��"8������g�D�E|������Z*c�=�>�DThg�����I��?��q�R�O2��-�A@��݉�r�i�2/�)ۉ�Ql����B�ٽ&�@��n 4mP�y~�@����0�qbD��O�����qVhx��P{����7�iLRJ��/��b?�����������+�;��B��֟�S��)$ˑ��&9�۰�B'�7_$%��Խ����7S��S]�$����opZϔl��j��^�?��z`Y����|��_�+���0+�HI�C���T_�];�¥_����ͳnċn	�yA��ΡB����)깜)��P]^�5�����`m�Dz��b�c|+H|ckUgSrߢh�%�=�@����
�kS2���p�)��܇�����v壌�
+`=�$��l5
+�ZO�gTQ{<�d���%t���ҽ��M�_�a�Ry�E�0μg����J��/.z�����Y1
+Z�f]�{U�MC�υХ�fGC��W��Y���|k�����7�Z��Ų{#�C�»F��b����r�6e���Oy�z�o��%�\G�P�i2<��>�a�]�!�l�Ra����yN�g�Ae�n����K�����8�}��a�C��e8[J1}�M�XYZ<�*6I���R7�~V���]�냱|����+�z^pf-8R�-�p�y��e4N�E4{�")�"�xg�[v^x���?`>Cn�r��&J�sL��N=�c����ڭ���p��4GM��0����y�h���>:��G���CX&����H=ے�`�����j��r\�����6�+�
g
����#U���3��ᢔJS�9�j�0��1�p��a������H9xd1+�G�����k?y�?�a
�$��{���|lY`M헒0R���l���7B�
��	��#���B�#�����׬i��]��:zK�1$~�~Ԙ�7C6՟C��]��T����Ç�&�zيW�c����`2��/*k�t��f��R�D��vX*��w,}L��p��q�!�� D>˨��R���?菷�;p�;�ҾI�������K�^E�UQ���繫��CC4����ru�����la��B�*4R�1��S����.Da����T�7�Y���ZA���@[�I����~�W,X��>C�5�;~p�j�R�2��Jr��+ܮ_�BS� ���a!�|,O�C��$f�K��z&bEы�C�Eyo �2�����
+����g�}��]��t��6�Ugn%F�`�(!cB��WEҼ&rS���v6�f��4Ì=o�]�����YcPa���h���I�+G�g��Y�@�]~�{Jڸ�hwu�G�x|O�`����=�C��V�����8ɮ�A�W4屳@���5gR�iJ+hlM��3([�A'R,��V�~��5�~&N���{W�āq���3Af��2Ci[-NRѡFL}Er��<�	?�GЛ!�����m�O2��ߺa�F'��O�p�v���M�G5`���1uk~�\|#��g��R� '�Q}�%Ҿ�}fD����������0j�s�]I���xz9�[�rd
+�a��~�����2�]1�r��U���5�Z�r�'�ϲ�ؠ'�]�VV���&�e6��.�	8��W\`�jk���}�k)��Y668��
+�~��+I�aF���w��aE�������B�NTyL��	�\�D��3��гn?@��vb�X:���4�,>�БZ}J���4DmX�Ȫ�I��<с�`z����?g��_*v��ּcbx�y�N9[V)Ԍ��u��K,�Q���LL�N[S�
+���t��L��g�+�I�3ic����u�V�W_�B0���cs^���8����"` <hom,��ˢ�?B��O���A��,�u�>M�Yۜ>�P���%vh��(S=��tD�f�U���=�thR�bb��N�>�~�`ϓ����Ð�#�k�3*?��R��\�a����6?�p=����q!+�E���z��ʹ�R��5�.�)��?�wfetaK0u�qɧ+Q?5���((�u-\��s�!�&�ܱ���~ \��4���?2�B�ł�wx�>Q�ߐ)���7�Dl-�����9׻$#�P)�Mz�_e��S�Ĭi�˵����}�q
+/7���9�6^|���� m�%�o�K�� ?�ud99B�4��o�=�~��U��e���]֚������Ԉ�Mу�A
+[�;�cd��fNϡ���#~�2q�vz�G�ũΕ�X�\;zK+q�ޢ�ߢc�z|Z~UP[g��-`����ډ���Pd>�<q�*q�u��Ň���8���j�A�����&�H�p�U�!SF>���I��?� �\�����;m�i�V2J��|�_�=�
Y
ѳ�A+��ڃ;�Ž�H�fl�k���ov8?uǽ��`+;�"<��6�R�������w��LJ �B�.��7*��4��'T2���:�0=�
�#��<��e1�`%��(�[���G"8���g�OL�[����/��`�0h�����?��3������'ą��l�ҁf��nNƋ�C#(/�\o'�,��:�H���v'ѡ7*9D:�� ��< GB>�=,sD�E�F1i�>�IIGU|�Ԁ c��A��e��w`X�ag���
+m��_1�j%mc�5�L2׉%nI��s��k�L�����t�!>�[ SU�g�H��:�t�8Q��
+1�l�hng(2]1�A.���o,�h��>3�7CKm�m�h�@��wS����3W�u��u��7q��l	�z�Ђu)�/����z�;/m�0s�%����0����%R)(�4�f> $��${��{'��l�I��N	�GKP]�w#��/oI��E��J��s�0��	{zDR�	�᱑H�a%˙`��i�!�}�1T�5%\�Ĝ��E��5�V����}�e�w4aղK+��*��\,�Ek[��أ�y��)"��GY��d��*���DpQ�;���d3i��BZɎ�H^�Ʊ7)S�?6�h(:͓�$����A棛0�uqڙ�gI����*��(]�.���p����KҷƬS��b�IQ
+|�`D>����r�0#���E�
8�LO�Dz�V�\��ϫ3W��jjSf�������s�i>z�k.T�7���r���e5�F�_���3�i�����2K�����I�d�x��2	��B(܊�}a��w�Cxn��D/Ѻ���H �x�
+��;��;)��έ��`tU�ІoTS��FX��߀XQ�V�d0�/�>�`�m�3�p(�<=<��h��&�
+U(�yb�5S��t���K�I������˺�5�x�
��"�c��F�3�:���{�gFk�].����5|���豝��g8h����q��`S��Gԭ������cʿ�"��R�{��f�}_��#ň&��l��؅�H�u&�������Vk�i�.����A�I�ztM����qAċ�1d\P�_�����t�jCKw����˩^Nר� �\X�y]�����z��AO��������"��ul����xYםK2�E�Ɛ�Q�w���\V+�Г{���ul�b�):��T�s�"���W�F�^Nє̞��G�Y^@SC.��x��P�\ ;܆��8YA��_n�[V�d��&�>�����(sL@�X�T�v����{��9b�Es5�rOc*do�.58��R��C�e�a���b
+��a�ו'�5e�>�G�m���BN��v��~���鵜W$��jO�Y�;�>����ʉ~�,��)�w��J�ׁ
r�3x�F{8��#d�`c=���GsZ��i����t���BJMQ���ւ�N��֩��.�E�e����|y��ͯ�&�;u�+�:~���%`
�:[��I0ru���r2�F2�hƏ�rs2�?��
��:��XZCB�+z��6ЌX�
�w̞���筯�o�ߐp��T��m�l�8n��Ǥ����Ws[VT���k.���ɛD�WS��	��ē�+�{9[���i�g[�x"y4CBkK7��m**�l�i/�{�z��#�FK�Y�������>�W�cj�>���:T$���d�\Q�D3N!n��:�yߴ��z܅7�G/*�O���|���h�ͳ����#aPD >�=�k'X�T�s�1����Y�!;~x)��	�qv�P���/���݌3�Xd�a��u�h����C5c�0]5|��(=[��&��9�Ɛ��� �x����A���.9�%�Z�܋=�\ow��#q����Ɏr�
�!�i���gM���~��-�[3����l�9|����y̎G�T�S��\`�����fʞ&1K�k.���;�!s9����9u��~�v��ے9�g�=ǑYk�z����<(2�1�ωk���H��R\g�L�xI	�w�`j��v�M�`j��+I1�L踾��J��t��@	~�K�����>��R�/����;��/e�iT���,U�!Ti'#λ��u�8��������4�e)�c���
g��S��m��Db�Ӽ���8�r��������hu��wڗ}�T}=W�o"\��v��,�e��J
.�����z�����[p%汿�����������J��	�B�ɟ-��/�̜/�����4�d��'U6��ꕦ��I�����ԤH}�໊c�n����s�|l=}\��	��l,YP�࣡�:;�%��3%Ņ�&z,us��\�Tl��N{���,�Rw�Ie�_�۝����E����0��D��[]k�'�7��SY�5r3��KԊ4B�g8�ֆJ�E/��H�L6~S
+AzV�yt%X�7����e����Y:��S�!�DP)mY�ک��jA
+�w���'����%<	�L�3�Ǝ��O�z:NO&t���!9g���D���y�(�8T�S�T�?`��PZ~�ę*��]yM
��>��!��_!����n)h��ǝ��¾�!��i���^�;H��[
��N�/�6;h���Q9��W$ҏ9�\����*�^�;
+�j3Ϥ���+�%)TV��fE�+K9~�6��R�J-�ͯ7%d�.�����)��c���)�ӠP�Я�ۄ��pXɧ4��*P2N읦�?���,�^O\��!A`�&�@�"���|Fj���ubO_�����좝^Lv�O��ԡ]�ђ�#�9/�ed�i�BUD�˨h�F��H��Pb1�@�i#j�ӚT�l����jU}�%�ZL�81�������Kd��`J�ic��h	�s���Q�j��zd�5��/�k��h��2��y��e��Kk�Wo�v�",�5H��sױ݁�8�/��Eڟ��%�<'��B~�
�%�qZ�
+r�(`f^�$x��b
%+xu�X*P��J�{QU��أ�!���:�U
@�Zݷ)�^w���A",�^9���H��(j�O�*��Kr0��UQ�͊$q��[5˙������G��e]���	u#!�T1���q��z3�H$S!t��+˩�2��m��~�j���>|����!"az���K�b��D)7���~�J��M�q�pV/8�q�����dZ�Mj6�Gx����
+`,�G�y{�� a�i��B�_�41I��J~�?�h[��0�2U���$�wςjQͩ
�b�.f��?�X"Ln��KE)��w��ʃA�-:��=k�,�U��/I�Q���#�u5W��_;.�d��Z�f�{�+S|Fc���^>���h�)�zU�Q��k��Z˚����y'Mf�~=ͤL��;��X��α���b�a�k����(��B_"����I'M����TDV��(q��8����9U��>ǚ��0�&Vڑ��-_���1wS��Q���*�����8|���:�f�M��	-��aP��;��d�����O�$��Š�7�WO� 8=4�ς��,�*�=��>�x)J�0A8�]�[\��E���A �i�8S��պf���v�M���g�z��?�펜_�dU�@���į��]�Eא�뫧T�U����W����a���;|�?��
�����LQ^@��{���9��͘�'����M��`���3�U���pil͕�e�������.���uM̾��j���o��H�$���
%�)�A2�"u?j$�u���^�dF����p�b9rHq��y	S���0��;�r
+�e��e�r���@�:a��z����kq��ձ������*I��[��/���I��6�ה�s����o�
�xɄWV㭔`�����Ef"I����y��9����v�u�������Y ��c����B���1��8�ڲ{͠/�G	5B�ڌqw%C�)����bK�Qa�b ��{�Q��E�J�uI�ځt�|�/�9x���WGԩ�v���b��#f�v��+�'p#��/�ͥٝ���ޒڡr�x�ō�̸v�1�w��� ��'}���d�24��8X��*���[;g�EX͈���]1�_��Z�%aj�G[�5dt�Q6u?E�%[���3m(��*:&tm�H���tZ4�
+�!�'���n�-x��]��X�ɉH>V)�{۳�2v��k&[a�E��
+lF7BZ�iW^+|[bZB;MBX��+����G�1�_���w����y��V�'��+�r2�-’\U��O�Yz˒�5ޒ�1��c�e�,)�����X��;� �
+����� /\����5����Z��8T���	��2Y��O�t
.�j���&���X���n��ni*�*���[�9�	�D�+I�P�)�|��'��T�iy��e8�E��
+~����`]�ȱ����}_��Gf���QY0�rQ��P
7��V�P�)Q�Lwr�>�f-�w5=1t����R��|�Ѡ�*5�<�M�u@\�?���^�I0�w_�;��ʘ��&R�	ˏB�?�l���&��/33���6!EW+LTd����
>\�����$��5t͙9��(���n���4�Ȁ��v:V����sh}����+|���q�ju⒇�
��g����#P�p�}o^
� ��e�a��	�3R��aX�v��I@wI&�Z}���R��ϤA$��e�HA���|_ih��{4�	.~�I���o3(=q?����+Ml�v����M�����wN�Y��Ì_xui=L�Ր�YMnrwR��O{I�&��m7j�n��p=k��X/�"nzw8�9fl8GF�*�}K�㏍��F�f���ߧ�x|#+_���?�0ӕ��>Q�*J��UZ�zP�H���-���f�o[-'���y~[L�1������"�2}��-�2�U��sU+�á�d7ɸq��ew���+�����-�&���8՟��G�TsSA��G����VϼR��6�􄋛����aW��V��W'��[?�1p�����ws��z2?��,���m[A!�n�猼(G7�e���Z�f�n22\���@�|Ѷ�!%�}{���'�a�&c��U7�w4x ����\��R��2��,r��tĐyd������Q_��gb<���LΠV���d�룓��J�6Kn頞�F��m��]��|���ۮ�ô.���o�[s�?��4'�L��'��E����H��'��)w���{�)��m|���ݨrR
+�-?/�:*�FJ�"N+zP2%+�!*
�̟��f�?�TY+uw����hɏd�_p7��$�ҏ����4-I�xR�f�j)�0s�U(�eRI�d������;�u'�+�m���auW=�l�	rS��{$�t[�F�Xݑx�E�\���\tem^�Jǜ��F��>��6w����@t������l�ulZ]`Q���3?lք��)7�Pw@Q/jƮЌ@��\��u�-�WX�ڈ����t���N������ڟ��:Y�E�9�`y�X'�@�|\����/�w��g��H!��d��w
+�,[]M(n��V��=/ǝ�A���.��=�D�R�5��$��y~q,Jx�`!���%Q�o�s�#��������5��i���$�ȡ�HJG�2���)+k��ʻn�
+�8���/S��lqj�'��Х^�U5	mω���)�8$_�d
95���p�Լ�{n��
�
+��G��#��E2��&|�x�怊�j~�ላsOU�׶��i���@�w�Q��)z��>�׻�ViW���4�<_y���2|��A�F^�x�ʅ�Z>f��,B7�d\Mj���*�і��
l_[�����O�9���"�!��`���w���W�������M��u�;&Y#��o��!ףp8C�v1��_C����c���T�����1�=����~/�<?�*��DI�����t|7E�>�b�K(:�%��H=��k�}�����ӳ���cڍ�ێ�N2<̮}���ͦ�����M̐��-�@��ȵxOc��(ƈ^ЪЭ�=�̈́r����⁘)4;�YD���<h_/*6��cW�Q���3{��i�Zo8F8��K.���WB"N�d�����$��]望	��s�z���wf��?OBSFt�]�__G� �{�G9���$
+�F�Eo�|�5���Š;?]�E��R���Y\�����C�~W��.[�(
+���ٱv
+h��ed  /��4�q���
���h|Í�a��mJ'Vsȣ��i$d����O���	C�Q�j$Pjr
+�w
�)�>�Gt�T�(u�1��K�[�Ze�_�m��`�;�H8�J���u�A4fU�+�e6"�[�"ϟ��_K���zX��<	�W��\�Z�U��
+��+<����U�˶y������+�]�-5��M��K+Ѳ�0��K��X�rͅ�#e.@0�{��C�G�)F�F�-
��8U
��'�iE/�Թ#e&��'�Fl�+���'a������X��������5�r�bn
+}NZ�k��H�)xq��)�eA�eX������P#Z)_�Ժ�v�#��e�3~�Wٻ���:.좃�������	������Q��kA�oFR��յm2��&�R�YV�{CJ���-���3�����BF���3����V	�b��A��`Ȋ�ɚ �i�Z��2Of�׶|`}�Op���'�h部�hԡ�xz`�s^�q��w*e����QF�@lT2��6���T/�&x��̼���f�_�/�.sNI��p��DԈ���D�'�P�a��B�ː����,��!�O��s_`��m��/g���r-�#�5O�|����[dIJĊ�	����*���?ui�?nё��/��l&�Յz�Ĭr*3�gc��W�ج���~H�V�>9�u�:�ݹ##y� �#�\O�M�~��YF�����W�#�LAe��+�����ߦ	���R�Nk�_���{�HR�����JI�q>�߹?���ײ���"�Bk����a'ܑ,
c���g66K�P-�8N�^����-%��{�"4���C�����*�•er����B�ڄ��2��	l����ݨ>�bm�&:%?(�<v=���/�����cE�6�UI�bZ���k+ނ�B��v�)��3��AQ�G��n��70�W�ی /�����XQkgJL���(Ɉ%���"ܒ*T��P��|a
+�$i��+>��5pE˸G}"R��Or|����uf1BQ���(���d5E�y%�み��%��:�h�I�P�ԡ��jaW�<�(ֵ�	5&g�Ї�t���R�m���g�;�����yߝyϑ��?SH`�7����7>�͹�k^�6mX���9aa�	���V����O�剕@��C�c;����*Ur{��y���|sQ��i*
�ցMAt�JJ[�"w%���cޱ�w'��Y��MC��T��H
+�9��}�B�]p~jGR8��Dd�p���ڎ;�$R�	7$hV4;�<e����/D~�󢗆�تw��KRe]�,�a�ukE�"����xTs`[n�|�����so�ē��I�Ũ�rF�4^���|�l#ɩfm�n�%���Y��nq���
��T~����1��z� �����/��ʝ"���_��]U��X_�s�t�>-Oΰ�i�������//f:�>��Zoӎ���"���x1g��7���ZڵM�Zd3�_5_�1�<� �d����SN���ҝ���$��4f��&?n�C��5�D|��?w�o�&A˃z����|�:HH��3���V�	��cD��4]�d���
�.�X	a�uD�ȴR$={�%�O��A7�)���y���T�@ԴҺ���CuTY�֔=c�c�8��Qsi��,)�s�]��cR<抰��0Ϯ��8'K�p��1��QB��`��|���l}�`#
+�~ Y"�K�,��d#��a��3�ʉ� :���gr�>�&J�?{\4h�>��vֺ(��b�u5��T�K	�t��\�":y�������$P�CG)f^�PMu�}`Z����ϥ��?�����*��a���=��s��wOU
+ݎ��BWm0���N8�m�z$�Y*O���H��q�aa��y����mr
�8�&�ڋ�+��Yg�A"���TO��8������Y� b�ȳ}�������^E��U�1g�G��$���"�q�r���JC�>��	���8�?�P'E�f}�k��5>�اj`ޅ��Y�-ӾF7iH�wr�G+�^t����_����ŷ� wڂ�`��=XL�;`��������\w���U��
A��
+*h�Cufߕ��z62J6꼠�Y9R��V�Bw�6?̕�:�kW_�ݨ"L�swN>s�[�.��w�,`�ŗ�yn]���h�sT���=(x�l�����\�����V�ϝV�m��6x�=�
+ZQ$����R(�X��H�Ǽl�B=�H�8{��;��ۀ��FG���3����]�7���9Zr�!�v�MC��/�#@����/��l�B��vE���WQZR�?��(�h��Z��Q�}�Fiy�L�IX�AE:E�����IS��k��t�t�c-��?	d�r�h��z�nt�k���垨��pA�b��O�[T֖C]D�K��Y,�j�3"A����HksB�!D��0%�����L}p��)��k��F��@��Rs7a>Pj���R�(H��� ���t������� �ֿ�����?*hL������kTo���V���4����%5���2���j��@[
+-�N#��u��G��# w��^��.$�2�{"��ѠM��?�Rk���d��;���u�p3���9)�TLMi��r�Cʹ�&e�V���?G^E�c���3qL�銃��T�� �Fim�N���
zV�A;����+YN���E(+ﳝ��f�iD~�������uk���$l$-����B~0��v�����<�*so
�xD3K6���p^J,F�>hY�k��{��9兏$�<��>L��u��p>�e*�b������Ќ�#����
+
+Yx�h;��6r��rA�i ۑ��ax�V��6pY5���3�ʆq��.���4���JI�(�o����2���Q��ldr���P-#q|�Y���G[��0[-%��k��Z�Rw�ٖ���`�Av�q�ol�%Ln�?"u�?J�����9Jnz����f�5��%TE��U���6��5y�A�7�#�T�z��X��CnXh�V'��{.�{!���(v.q���,<mM5M*ĉ��d��q�6K��6��?zs�ɛ���b��d����g�J8�$P#b0v(�0��+�k���]g����sa#o^�\�K'a�ˣ�nBP��*�a�x���I&!�D���z)9����>M<�F���Ao�i�#E�Vz���m^��^E�^s<�3���ֆ$�5��ϕp���񂡤�+2�)_�"�vQG��6SX���)�
+��+٤Q��z�����̕0`��YL�l��9��k��U������ZuN�)��䇔!�f~'V~�M���������iO�/"�� T�j�!�w�����Ġd��u�~����&� ś�G:i��?c
+endstream
+endobj
+13574 0 obj
+<<
+/Type /FontDescriptor
+/FontName /YWFVZY+NimbusMonL-Regu
+/Flags 4
+/FontBBox [-12 -237 650 811]
+/Ascent 625
+/CapHeight 557
+/Descent -147
+/ItalicAngle 0
+/StemV 41
+/XHeight 426
+/CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/a/ampersand/asciitilde/asterisk/b/backslash/bar/braceleft/braceright/bracketleft/bracketright/c/colon/comma/d/e/eight/equal/exclam/f/five/four/g/greater/guillemotleft/guillemotright/h/hyphen/i/j/k/l/less/m/n/nine/numbersign/o/one/p/parenleft/parenright/period/plus/q/question/quotedbl/quoteright/r/s/semicolon/seven/six/slash/t/three/two/u/underscore/v/w/x/y/z/zero)
+/FontFile 13573 0 R
+>>
+endobj
+13575 0 obj
+<<
+/Length1 1630
+/Length2 10521
+/Length3 0
+/Length 11368     
+/Filter /FlateDecode
+>>
+stream
+xڭweT\�5�=�K����[�
ҁF���݂��kp��Np'�Cp��x�;w��ͯ��ѽ�S�j��:�Z��J���9�(Cٸ�9�� [S'GX�Mh�fj�|�tt�@(�1���@s����
�B�HC��@�P����.�,��L����F:�,����g�
����R��?����%�dH��RP}`|��
xLl��N����Af@�#�	������`���j͑��K�`p���^À�f@�� V��������9,L���@!�������^�_ d��y��}�^��!�PG3��U]F�uB-M��v���ȗWOs���_-���Ҽ�P���B��e
+���lL�^s���9��.����W�������
���������O���������h��^�Y���Ž��������F��kY�_ �.��͝���9��_;��Z��9l�0~A�P�@_S�g*��߉� �����'�����w���K��}���Z���F���u�q��^o@��=cc���뮱w�a&� ��&��u��(�?��V���El�*7;�?� G9�+�\5�|1�y���vm�9���j��X_�89�
Ӳ�Y����l�����w�r��d�X���oO��M�j����FWb����x�� ��6~.�7��@@� �����d����_g��������x����_'����A��ڜP������/�����U���צ�y�{�@W���<�L$�*%=ZM�=0*����7dW\�U��[	��I	����OU{���s���/��E�ݡ.��$�i.�
Sw�*}��ˮ?�Q1F�n��٬�:�?���樆�Q�D��6�;&_�<_<�[;Lo���h��X�08�������n���;/�wHY��Q�DL�Q%@�>;\י=#<:�l�h`�ñ%4Gx
A)�>�K6x�K���5ZѥNi�d�AK?dp��R��50���s^�Q��[4	P�3��G�D�4Qʑ*9N.I��dɡ
��цHNES}���C�aw�<��B�l,��s�����M�k��zB%����� ^a�?��=��(�~�
HWH��i�-��߰*턳�\�����4��q�;��ʧG&�l�4w�(���e	�Y�\��������[n2���ͮށ�х��iu5A�i���;�5�S����wu��%·V3��5�Z����zr
��@��O�߻>S�3��jL����Ef��kp��c���>:}C	�'���b�C�'�g����M.��T�ާ��{bm4�Ub�:����L�>���v?��:�8��[a�Ɲ[���:�0)%��[z9s`�?,�=�O���8
+��V^�<;��f�Mi�2�4�œ`���fQ�|����U�ff+g�W�5C]l|O�4�����`�����c�5�C=Nw������R�ɀ�v�#	l5`�_p��y۴Lӊя��dI��BW���J��`.z�$��$F�n ��*�;�!���y��Z�3����"4�-�Ed;+��l�j5�o���2�Q��u}����9�u'�f%f�F���'�J�CGh��j����Bj�b�y�"���@��>�_3|Ő�/���ѯ��ڈ��]2t�NJt��d�c1c�ö&<~�_&��Q�:2��(z{�Xp"P���5]А7��0FG�O=EďS�Wl�DGN�"Խj:����/�~�(Uw,uuT'��d�����0B/�����qKB�M���{.��Vg�$�Cq����d��m��<�Jdp���i�kK�ZJS1�����UO�5�Z�o�^�M�S�M�=�+A��ș#V��SWT?�M8Q8W�}!�c���M����7�?��"����ϊv��<�,�R]��V<l��KX�{DYk� C��1#�Kg��e�/�i0ޗ����V��N蹘��R��Us}P2T"�8Ƹ��ʙmp��e�ͣI��GV�T:]�P�O�r�����&H�+�.��D�_�b�o�@-|��d�!��E�����%��U6�����L⎾U��W�j�6��:i��)H��c+!��d�cW�j�z�J�f�`r�÷9e=z����񼰏<*s��6�����?�	Y��Š�M�kם���h�����H��|Yt������8��C���f��O3j���I+�$疇�a��ke���'*S���&c� K*�����Q�[�01j9h��<&�X�t},n7X��-Q�+�a@b�Mp$�	�ݿĂe)9�wr��H���?G�#q4YU�\r�U5x����^�3S{W<�e�Z��Q�vXg�o��`����w$隳��z�I���gIb]��ㆣ'��%�)��-�	?�.�([�;�����`V�NӼ�!�ٝ;�_t�c;�?L&�`g��3p-��@�b&�%�𼮧��r�eʣ`�^�v_%��q��qW�-U��V�*�zbK�Ц<��0
2�3�BN����S9nP[O*ĝ�Wִ�_��u/��^Uj�������h/} ��B���X}�ņ���Gq�맦�p�^��}��M�+k�W�6YS!ڏhx��
+�?�o���&Üpw�D��fw��4nޢ�\M*���!j<c�7����K�J�ڨz`��i�Z4V��@B�`��!�`dVc�4�@nl,�6�����]��������=ի}��D4�*4�?�LU�|����
+�����iV�zb��g|�Jd"]7y0=~���?Xsl�\��ɟ�e⠨S�k�׉6FE��a�����ԔVa8�?�'ݹ�Q76r�I������q�(�=	%�	�I��tBr���,X�7֫��a6�h�m��z�W��)Į>�IqoV;��<7���X��J��G����;`j��8�[�5�m���i�w���0���>���6�N<\�96��3t9��]j����i�-9�oj��7ߗm���A0$E��w�F�Ƅj(��G�50H�@���g��Ml.S&#�H����`Ɂ1��x���|�y�dI�w�sx�4Om���l���=�+ۧք�>6)��<M�(@ՙ��+d��C�6�a��ooi}ٷp)�/Џe�2.T�`���kS��V	��<�A��5k�)�S8[{^NsI
+v+����?��Ti��
��\���gR;ݐ/���x�+������kT�hc�Xi��w��U��^Hv��j��n����-1�<[Tk�A��8gEd��艱�>+��L
+=�q�����C�Ԭ�=F�'E�X%&vw��bz�ڢv�{"xS�1�s�m�_�Dto��?��ǝ9uh���)�Ͻ�V�$zʭ�����+�6�Ɓ�Q-
+��+�%-&Y��"�34ϝ�֊@J��.�]����E�r]>j��'�[�s1bAW�έ񠌳�_г��ƉZ�=M�Ӿ�u���?��+�����7J�>��?�>����jB�b��U-{�0�I�ʞV�ۓ\��Ml����3<�ю�"�i�:ӃX^�G093
�I�S"���穪C�E3��|d�}��/F��x�Ss:�{3@�e����f�?5=�]�o:��DU^rZ'�j+�:��|���褷sMM-B]VQ�J>me+-�t��4G�TNiuEy<v��/�p;7��9b����N]�kd��(e�*��5)�c����V-E.�����l0d	��Kj1'���KV��釃�Ӯz��m\��EQ�d\�l����9�򝒻��Ƽ9ל+�Ux����fv.��*�;l��Н��Ժ����m�k����|��x?{�ySW���@a�fŠ��n�Ʌ���'[��U_�
�.c��Ew�����AW\�o�Qc����m�~�G	�����D�<�R�O=�=omPݱI� �Iq*��ԧ��+�ο&Ѭ����#\R] A4}$��g#>��
+Au�W!ж��*Vz��޽���\6�:����ɨe�Z��@q��}u�D�Pq�x�u��:ֆ��-��ŝ?�A�&�o!���┓��<�,|��4?���<����Yq���3R�����\v������
��=�g�u�/��p��s	`{������F?.�b+�i����N��J�b�g�˻���{�B����o�Q���Z��wׁ��fI�*���PS�$:��7c��Z�|Rݿ�2���+�Z�oҬ��skE���4��v	�v���<����FAҒ��[���)����>���_;���֮J�gd����!d�?>��'7l�2qoz��z�^����
+��Yj0�VZd�XeZN4�:����Ć\��*h�'�3�t9�_�WM*?	3U�ۍ�2;�Q(�r�?�]
+�2�|J���vH�a�E”��͗�?��H�;uF���V�cD�^=K/�bEWR�{A����V*����
~�_q�7U����"U�U�o��q���Y�h�tڅ�NՏ�0�!/��$f��%���
+?5�OG��
+T��
+����F�Ց8
�ih���K��TwC�Nw��Hc�wD���Ϊ=�j�^���B�}c�
���g��U|�;��vH���U���h�ܖ�aC�}Ԏ4Lկ똁��8��2'�.�v�/�:�����Ĵ/T����L�`�\���{:����Ut���O?���8&�FW��$��'�ѱu��iǧMa�i�ɛ��-��4ڷ'Yq2����������s?1ǣ�{P�~��k�rI��4[,�e2h�O��H�mF�bp7r�d~�|�aQC|=t�s�n��I�(MXw�t�+\]��ppc�u���5TK���<�) @KDc��i�A.�-��C�glD0���fV�l��›f�����3�ܼ��?��.𨆤o�
f6���"��݈b���*�C6a�E��j�3At’Zc�Ó܄��e5XtV[7H��4�KL��>�/҇b�7��|J*�D^�'�7�`�;�G�yy�D����3���Xߖ�%��ި>�5:z�ihN�~���'7�/{�A;���$Y�G��� �D�l�~V�r�Œ�@�Ɔ���_�
+g��Urʯ�G��k�NUG��f+V�b|9*娑����K}�^�#o����c_�Y��O�Е��������f7'��������;�)��նG��Jte^u��
BVЈ���y����;�ĸ�Zf�bI
�RJ7s�mخ�(
+A:#Al��o�V����Z�r,iK��.B
+h~��$����p��z����d���Q��\DU�K
#�K���#a8!�xeUV6�!�2��J_�'��$.>h�~��a;��Cr��k"�_��.,&;<"��-m$��A�R�j��(�8�J�z<���+�I�(eE3m`'ǧ˚���K?A��lD����qq�-�}57P66�L\�#�o�M�!���C�h1is_1�(�t3�*��h8���N���ab�yٔ��8�j�_�d�zp�	��s%�,�MLX�*��庒�L0�r���K�Ja���z��R�;I�'��z���U�M�)��@�A1�)��٠���]��j��5}9���Z�o�
6��	u-�"�Í�Ï��k2��h���W̪�᳴	s�-�'~�B�O$R�ƤWî���n�ޥ�7�Hָ��-��?[��Y��jU�e]c�Ok��tN�v��&�a~�I�V�t��4�+�4a�ƫ-��f0E�ܒwB���mn���c����*�˷V�%'�G~gH��T���E��~�4�/к?7P(W;h5P"�X�S�](��0����#c4V�O `h�Āpׂϕ/�JC�}7C�D��<ٸa�����;�.��["�"����
��!Ӝ���[q��]��Є��z�Gh'�8�IG���*k
+��߶��D5N6�X����V��Z�4|�a��⚨?$���hg����P�Եg�1~�)f����ƚUh�
�q��n}OZ��%�
VIвk�E���[���ͫg��q�
��M��t��i�eB�^.��g�����i��,�rd�=����,�_�0���Pzw*ӲO�C+��c#*;u?V$���N��x�w2v��t��5�����Q1J�y4���U�h=��%�\��^����F��]3F�"f��E�qY����/(���l��Q4o�Q0)o]w���Ue؈k�3]�NR�c1�]��,sD����y�v�0�
+�r7�3�⍦ʗ3w�9����y;���W���p�<���VE�#�	3p �d��)�����w��p��]���f�5�>��J�7���N�/[߻�o��,Q;엿Up�u
+��y<�;�r܃�]��qU�t��O�j,�t���F+)3kRڐ
+�6�,J���
+>/�)Yщ�JtJK�6dDWr�:[����:/wxn���ES�Xs_,�~���_�wg=A#V�;,fQ���S��D��Q%�(f7.{����_�|�!]*
+hNZ�{�Eyto�ES�`��+Kp���&<�o�j`4�38z�����_�]���{��f�ʙ�Bi�`/�>anS^k�����gF�l�A�EM*XU�0)8�-���Uע�ޓ
++����Yb����ͩzg�ʓf�F�������7���
+�KP����O&��#��=dy��}$/�O6Y_�ц��p�"!�|{0��M=����}���r�q��^�K����|%I(e!��L�N�ID�t���I�ab��#�i�F�
C�zl��fg�#8�!�p�ڎ٣�Y�S-e��`���N7Ԇ�ObC�AU�^D�pڰ�;��q�Tp��ɑ^+&�GQ�^ǽ��������Al*�G�2�����f�}�s�!�/w>�nK<h�_S�����"�R��Y�1��1��z�P�ۻ�gp�K����s&��2;w �L�	>�
+��TV��kN,�q�'ۥ��h����M�X��_XN}!a�ͅfoŰ�$ �I�w9o!yM��lIO�-���bw�fİd%F6�OB�*^��؟i�O�\�X_vн-�s�:e�	���G1/���C&UCr��"�$EF�rUaʜp��2�u����`%�+��y���Pװ�B�Fٞ�e���L�XY���Ĥ�m~�S��ـ�{�Yc��v[^@o���[�v)�4I3��ant�/���}��㊼�"��n,��b�~3��<�`�ka�8�\��J�3I��I�J��<`7w����Ϧ䢹c2e��;.���l�[Y��'���FO�Ϫ�!%�7$���B,�ht�d�XT��Q�b��9_�g�+�ŕM��>,�}��ə4���OG~�s.���b�<Ɋ0���BFȼ-���Qq����":�<L���O�Z�4��s�^���Uh��]݀ۑ�k�V�K���Ҕ7���x�y/J��
����.9��!x��W�p�Cψ�����ճ[4����)��}yn��ʁ�#UV��lL�ۘ�C����������G_y��pԶ�0�M8)M����ʪ�ڂFOR�%�H�����wD��;��gF����c��B�qX��'4�c]fb��#�B��N�Z��l�v�
��ts6�6;���
+L�S���ǰ}j�|b�6���"��h`>m>ߔ\�=�Q�Va<�C419���ŝt�[�t(-�PH�ܹ�N�
+�?(�OY�y!8J>׳�HΗ��/����N�\<���I\��w��z�ͼq�k=6c����Z�S֍���-\o����D4r�Ӽ��/�����Xr��UC�*Wz4�1>L����N����OK�2^��M�J�!ȩw�d-ov%�����zS	��ڢx=
�-g�?TA���L�`,9´U�t���-����ɛ����Bs�hy�7���3�}pS��LY��Ԥ�dᤂ�T��Ɨ�jiȐw��ƀ�����XgԳW�V��&���%N�|TW�!���s�����9	;�Y�d�xE͋�]YMaގ�Q�wrCZ�7K��2����T�Lm-��g�z�0!�,Qh6.'�J)bΚ���\�x̊��n�^%�>����\pqC���*5�����_	_��[�;s���b��/���F�t��v�nx������^����.5K">��~�7�~Ȅ|P�����~Xf�+;*Ċ-�:�P�#]]��{�`�+�d�:{�ѕ�n��`�f�ڇ�-��~X7�!����
+���(�������EC��V6�X�O��p]�SxLrK��r�9�^N���^�NS��?�X�E��"f��a��9C1�ְ�A��o��s�#�+2Å9�=�.��>h�B~s�@V��!�j��´��o�b"��Ӧ��ȶ�~M�8*�����a�+�ׅ��ea�6�~o�{k�zܦ`\��:���v��\�D#��"x��FW-Y�*}��%���nP)��z���
���."m-Z�$̆,M��ą�i�R��V:2d?d��}P�7����u�.��I��:�y�r�9ME�u%Qt4�f�O(�̊��9�/6ھ��rR��8�U����8O/���&�(�I�T���t�}05L�l#�Z-Ƽ	009�e~z��e�.dk�E�GlLQ���.�QD�(P�7��n1�=w8"��	Ec����'�U0&
ŋ���=˛�����N쮹�8^�l|�Ƞ�{���|��-��|����$~���`��Q�+z26kt���KnC�����<�@SD�$����_7����w�}��[<�AH����|P�E�'��r�n$����
+#R���D�?�)�{�%��]WC%$!c
+�LH
�bF������8�G�;l�(�V�)�N<�Ϊ��D��EJ��amHld)�fn|��%P�}�]�jH�?vs����I�����j�q+��z��fM(9��Z9��f�`>�r�?�=�-|ژA-��K)��Ќ&�����o�6��f�K`��z���d�F��9
+���;��r6
+[㣉'��B��ȫ]]
+�����
3�&V�p'��q�G2�Y�S���N��A��4��<�,P�%b@?_Z�+sk����]W��e��͢�)��'uu+hq6�zU�E�6#k��2zDެ7r}3�7�e"�� ��R���O����Xn|Q�`�^���[p5IG�ܷ�$�1������b��c����fR� ��,#�OP5Vb�!��^�v�,�O`-�άz�k1��A|��s@��\���}hpX��)��Ƨ�	P��t�]K�~���{����
��Ǚ���ͱ(!6n��f�mYbyB���չ�}�j�M���e�'�d��[�ƒ5�k��f]����|���]��h�'~<�~��d���y_U'��dZ�Q���mA�Kwœ�E���l5&��C�X�,���O�,7�>�t�^>ּ<u<8�2 >q9b����΅�{F��w�!.��L
+I��a|u�N�����̽�O҄�~�m$x�Q�!&f�����
+)�?�4�Czn��^
+<�p��um9���)�V�$��&3��].j�:��L͟n�k���2���vIŚJŠ5�Cw3��
!�q䏥�@�N1�|*D�p%7�Qn�e������5�'ך�Up��f�Y�بJ?���]���bd�%��a�n�E�����8֒�#Ԓ�gT+G����.�^��]b]7��"�c���C�}�N�SO�z
�i{6�ψշ:8�3�Ї����a�E�N�eC�V%ኸE�D�\��T*O���j�tV%���(�q�؃/���?r��.O�����"R���{j�#-b`�
VY��Ξ�-��Oy3TE9��R��M�͏��]j�A�-	Ҵ<�~�_4=�U�ꊷ�M-�mMV��}��[ds��X����(�x����*����E6�i�ҋv�ܻHf:�5=�������M�4\rk�B�|?�$�#�C��cّ����r�׺�6v�H�F��c�i4 ���]wux���d[��A�G�g�-���R�	O���N7�A/�b�x�/g��޻�%BW�=)XT��|W��+��#6tJ�ƪ�&�F���l�������c%�A5���"����9�@��b3�?�8_�<յ�;cБ�@�����"[�G��P�:�����2��uW!�����6%MݗgM�KE�Y��w
+��[j5ߩ�MzT���b�@7"���"sRq#���x���\FމyI}s^Cm�VV�^S�^��!��i4�֟ڦ��b��`k������V-�f���ֹ����ѐ
+�6o��sh��,2��l��lճɕ]Z��z[Ce=5>g�6�{Y2��_��՘8��8k��ʹM믚z]6�ɾ��U���(䷧���F�FAQ�0Έ�>yJҕ�%��/�u���d,�\�v���""�!�����n�.��5M��|T�M�5��S��3JPG�F���i���j�F�b`�jѯ
+ڑ�Ů�2�>8}镩�̜_U< �2py����3��㵏Je�İ",fA�*��zB	ni�����h?�.�`Ao>��^)�p*_��-�6~��{�G�a�������r'��
Q���[����lbKڑ�$l~K�6h�j�`�6͎�� =�Iů�C��n���\��<�h��Y��w�5_��j�ӎ�����H������Ҭ�˲��{\��qfƲ��f{��z@���d��T{�J9v4z�-�iS1�2��i�v@R1��3��)�ˏ@�����~$[�r%�,q����#����|��>�bn�B=�2��<�|+��I;.�;-�{�d|3�����aG��[V=2�����.����ě�ɸ��V���VS�JO��~�(��,��;����=�TD��8=�U�
U��#����W��i{��N�aI�x_\�z������Ԙ����T�xX�˙X�Q����&���N;j�.&��(|Ds��`��`]�8L�2t��V>�ʙ���M����U��+0k�����ӛ �IA��x�P뼐�X,K����Ƃ�@~���Y�X���vNd�i~.ѿ9�e(�wBl��sL�3M=6�[Hi ��jȍ�|�+�ndO	�XM	|��E�V)_�O�6<�c�.Wk���Xw�h���ۓ�a8�lğ�K01�������@�>�t��{˗�֧i�0�E�����,�%P�*X7K�B��۽�&�����k�?Ά�jGe4n8�������)z�ɽ{P��0V�*���um�(����-T�-�k�����^y8?����(	?�U�u���Ɉ�5s��M�s�l����$_94?��b!+�V�C
+��e~dl�3�h����,��
+endstream
+endobj
+13576 0 obj
+<<
+/Type /FontDescriptor
+/FontName /FRYEFT+NimbusMonL-ReguObli
+/Flags 4
+/FontBBox [-61 -237 774 811]
+/Ascent 625
+/CapHeight 557
+/Descent -147
+/ItalicAngle -12
+/StemV 43
+/XHeight 426
+/CharSet (/E/I/L/M/N/O/R/S/T/U/a/b/c/colon/comma/d/e/equal/f/four/g/h/i/j/l/m/n/o/one/p/parenleft/parenright/q/quotedbl/r/s/t/two/u/underscore/v/w/x/y/zero)
+/FontFile 13575 0 R
+>>
+endobj
+13577 0 obj
+<<
+/Length1 1608
+/Length2 12443
+/Length3 0
+/Length 13278     
+/Filter /FlateDecode
+>>
+stream
+xڭweT]ے5Np�Opww�����p��Cpwww����]�C�������ݯ���W����ث�֬Y5k��7�g%US�1Pd������P��5v���1��lL�FD
+
+1G���%�N��	����ā&�VV�"@d��hin��VSѠ���������z�w�-�����/.@��-�����Q8Y�f�6@�����)����@
+ht4�(9�X���,M�v` 
�����`�3���40�;�`��M,߷�L�����@G[K0��`	�;�9���	��3�q6������7!{G�{����L	v�8Z�;޳*�K�������_����n���=�d��WI��a޽NF�v`����\�@��%�����=�;�����4���v��d@p�9�����w�w쿺��:��z#{{��w����/�N`��#"�{N����v�L
�;3���vSg������n�_3C�N��dg�0�!2)���S��w*3��D�7H�o��"��M������y�WhIg#����x�a��9�_w��kdki��?D�k���'�/NF�m�3�����FK����T����`fd�ޣ��jv�@GK;໖������/���&�v5���o���_����7o&EM�/�_���6�;J�]u��������y��-���<X���l�\�
�������7�?��FN��n�����Y�.�?����F��d�ל�:ٙ����r�8;:�+��i/�?�9�4A\^���Z�f�9�������v�@ٗ�-���u���n�T>�16L򾶸�ٿ�����ƶ��J��~#����������?�~	JڱF������6'���qe��g8��66��w4�d.�������&)�c��� >�S&��R��
t]����e� P��x'}Ntr7t��7yqe���J��l�;��PC��M�[�@���L/U�m#��NJ���>���$Q��sƏ�������WUQ���B��Rc�v���w�B
�F��
pR��Qw�a�V�S��^Q��o��ى�V��ild�H�.�j��RHxϭ��y������ =�i!$4�,#`�[7�q��idY�[io��'M��a�o��	NMD�}��J����R�Cs�p����ڲ�A�y�_s~1.γ��[����,���S�GSX@w����)�#'�,̑�Q�C�I(�ڟS��c�˒ν�^��xqI
+��(-��" D�K<��W��P��7�gI�����;Ps�gW�P�f�L�a�&����E���U-�a���d���}
K�W�p����l[�N�-㝜"&YN��J�F�wc�Q�Ÿ�ɵe|�e0:�k
w�H�h��^��oL��V�Ǒ�r�3�+�ZB=í�,�2I�fO
+7���B�/�<&�>T����iu�^a
hꆰ�•���K9ۛ��<o�#ic���,%�q�{����Z��:l�;�n�Se_x���P��$F	f�XJ��|bp!��YB��z�X��	�;ag+w�+BӶ�sP���E���yG�nv���O��s��&�L��>�=��U8
����c8%nb�Ʒ-�����b]�����t���b�'5�F�r�)`yڕr���7~_�
�w�Qy�9��qZ�Ү��(t�q��:�*�bOE�$��oM`����鞮��������~bXk>��뭩u�Θ�%^��r�A��q��S����)J�Ƚ�%��v8����`��Y�@��N�U�L����|��X�m1��c%�|��tG/:v�Y�^{F2Avo�(Z�F���$Q�<3QH�2��fϸG@B
+��	�6M��ݫ5%�*��0�Z Oz�e�H|&rդ����tO��PY�A=H
�1�ɽ�����
+���!:��e��n�d�S?Yr�x9����t3�(��f��!��5�޷y�"��s�в4�	L�gW�2�|�|P��8T���t���ΕZ��@U����W~�
+���q�B��#h�8P`�v�0�6v�և�6�'D��G>�������4S��=T�.ƾm���%B�D6�9&D�e�J�����0A���{E��]��Y���S��p/	኏P�T��1���(7���;����W���}X�1[���|aa$v�4��t*�	��û��@�ҟ��P�X��f�:���=���,��ߤD{�%�!R��,�D���*�;c4D�\�>�ǂQ��?w��c�o��7�
�u-4C&��;5lK����|���s/���%s%����/�Q����J�.v.d�.Џb���"���G�U�+��:5��Öo�� $nj�Itv~Vc3%� �G��H��(˽�'=v���Qh1�}�x0_��!�Į���>���/Q��ߞ.J�>�z���{Qz>�K�a���#�����01ˤK�g��;��WT=�?��:a��
+�T�m����4o��]���H�E��Fi�c�a)�d��h��)3��Q�~C}��*���Y��+KN:�X�T�@��>t��8s��`���sλR^�mc2 ��<@��8ѠVEh'���?��;�Nk{��XH\�\1ˈ,��!�Aos�2;?�4��
��xo�bD���F�vu�*C]x��ز�B��Yj	C2$Y������p���q'������CFb�H
+;�JW��rҏ�oN�agp�/h(�txJ0�2ٹ�S�Qe����N��s����,����E� ���k���f�'O�֓l�%�U�Z�v�
�Ձ	*�Na�c=м�l=�؁!g������P`;?�\���j��Ǫ،F^�s=_B����[�CU��o���:"k?EE��敪���9��G�bĵ+ ���QZ�����(J��2�{�p(w���2r̳���Ok� Dq�`�G�Ҳ�z� �����(rF��̔'�Oب���1�W�Q���[�C{K��E�:��ⴻClQ{�� ~��v�^�ч����
	�����˙�� ���z���X��VJL�����	Z�	,���G�t�s����J;ޗ߳8�y�r{���n��p>o�'5a��8��� �OeQ�?�U�}G�T���I���K\v�Qe�Ŝ�OH�/3�1NA��0������\�l���٦�(!��G���:t��p�$(��;�u|]�&0��4��-���yM�-��u4c�<.����pi�>=��8�s�K�����bAiMZ���+W��8��Fp�&�P0`�ry�1;���JA���)}�
+y��:�j���J���ڷuC�H��|h�\]{D�U쐘j�;Z	��0�؀���ヲd��8F��>|�0���S;}g5D3�S[��@���&�K�
l�B�Ecܘ�ס��L��>�/��z�������j&*�o��@̱�A�ZZ\�b�ú^��(҂Z)�]9�b]R�&{@~��	<���?��sw'+���wB�;����-l�h,����=(_��E\��&
+�0�Eqs�� ��2�?%5���n{�F*�i��f��&��z�\��qq��:'C��]��F��,�D!_V4m�SQ��(60�|�4�Ҥ;�ac/
o'��Q���8�c/V������Нk����Ui�(ct�_�����vEH�X�PL���=��^�"/���F�1� �:����W9�]\��P)9l?.�ޭ�4
-����`�)ǻ:�
+��q**;�M/*�(T@I�`��������ӿ�����-�"S�k�s9�ب�p���؝S��t�$z��&��3]��O�z�P��O��E����w�7���f�\ g�J�.���Mr��n�FU�V�eGZ�I�Z�-C2����(�0:���skR��a�{I>:}���K�Z�/_��L�̨
�SWqt��!�	�cW��B+�=Iaz�����<C.�ZЧ�����&�kgf���y��W�)��pA���"/Β��A|@%@
�^�F��Twպ�q��bMCΪ
����V<�E��
+�f=�=�`�N���i�?V�
U�b��:��������'���X*5����-�=���+��Ճ�O�*��u,Z�M
9[)
+�F(��/=���N�o-�<ztB�4S�?�1p��^O_UԠ7(�{"q���q�<`dۦ\;(6�嚝�p�}��$ ��Yt���+�پX�fN|-�Ƙc�f
+񖺒������A���L��Dp2�$%���+bz(6<�*��d�i"���T���p²h�D/@�y�h0�W�pK����y�2w��1����P-H��kaQ)Y)|+��$��u�]�
a>@�"��A]��������Od����-},�qX��S�˧��K�њ�a/a3�1(��V��_�����d�ƨ;����#}k"_���ğ�z �6����2���D��nc�u�
+~���^+����s���s�j򒚦f��N:v���u���-��f"��x���&�_��V�S��þʑ�|�)n'ħ�\�׽nӢ/^��,��L|�
+z������<Cί����{�?�徫����2��꽂��j>�JA=:�ru�!�!;�PP�g��O����u���px�֫����V��� �ӥ�7.���(3ۉ$�[����j��c�Fu(�(z��t�xu�����Bѱ����O����CF���,� �+3aL{WL�约<$�����&w�Y���y�B�u	�>.���Ւ
+]�y�$
<�CC���1��F��eQ�wW��nfi���݃�4��7�V:����)=LJ4� "�k�'��r1*t��>��|��P�gl�n\��xا��>�4�ta^�gcT(��H�c��'��xR�s�؜��1>�,Кx��C�AE���C�s��:R$�@[[����!/J�*�iN[�ŗW�X�Rw�q+7G�̸��r��e��j�Wr&狎���s��~��@Q&K����f�[�%̾T�8=W�
+x��!�[{ͻ���m���xe�K~F�� �P.j�(d���2ɣf��:�&ܤAo��E<�~d@���oh<����Z<�}sH������i!
������+4R�&B��#��]�8h�����2�}>6����JY����U�S���/�B������U��%��2�Hk��!"���$��=%X���4¥BSL�U�ť/�v���gZ>��z,g"h�Z�A>[�2
+�pmD�5X�����t�r�	��>�V��4���������Eڋ��8��Ge����q�
+�-G������B��i�+)�:�n��H1yQ��õ%}�D��$l�aD4�6�r����C������ &�pSw%*T�N^x�CICbۺ�|Jb�l�1d�Zf,Y��I$	�����Nh8�{U���U�����1
+JJ��?�Np2�g+�����k:<>���BCm��s�X
Y��FZ�I��;�bm����p42��\z�	�g��%�rQ��Ed�����\�麬�����ol�0):$,j��f��H'ވY�w�:o3�g�э�ĵ���x� �P&C���ղ�*��υ��͆�����0K=:�7��5�@�ʭ�t>��s(둜R��v�ȍ��
+3�FW��8���N+I�ˆ�hݾf�ش
+h7Ӵc<�Ԟ�iʻ�݊�35y���Y�n �4S�E��!^*���y#���Q�fi�5���K<�F��h�6Ce�C�Z��ϡ�)3�y�W{��L�3/x�}_���0<��>�B_�8��21��)s���?���	�I8�����#9`6uhvm�r�DE/���I�����Z�Pa�	u�*�)��~7����N}�'���!h���k� ��e5���|E>6��o����:����l%��;�;=������7"�s��T<�N�+|o���dLy�Vij@:]|����7�I�7��]L��k0j�<����b^�R�q���]���4�����X����Ds_�]U0z
X)��I��F��؝���3m�.��[�K�k?8�#�+U![��n/����G$�"B����eYh���V��/E�e�j1۵<�q`�df����ƪ��
i,��$�m3Q��և���'*��7��^���^?��[��/D����~'��y����ha_�^��}���1�U��ʙ���I�=����D`��'��~0��h��yOk��/��|���{�Y�򠲱e��N��R�"��>�����5�U����/����gU�]�=rJ�d�yh`���swD�ᗩ���e�Jf��W8v�V����%��L	�9����7�'J}c:�q3Q̕.!Y7Қ��Ï8_�qx�}6�Ap�x��]�\�kG�V��:>Vp��W��}�Hx�S%M���1"f�ZN���[�_��
+�"�SYY��50I��*��	�E�g�� 1X#�i�J�JP��T���n�<5Z|���+`Hf�g�V*��]2�'��	[A��;�$A�j����?��K<�\Ds�^�L�Zaǃӥ� o�6�~��ڪ���q�&��bʃ�#I����>-�;��I��.�$�������~�~�Uk֖HC]sK�y�<ZqG��"��#�<k�Rz@��myJU-~��S�諭�y�E���>o6��F���@�s�G�a�9�$���/�%��c	��Fr����B�f���I��	
x�Kw ���?�A���Ey�;9<(��<�{]�s�ʶ_U�G�iv�q�3{����c����A�c����i�d�D����η�ʱc�+t�=Ļ�N��$�l,|�_?<=��1O=K�s��%�D>���R�)G��}=�3��j��Ȉ���u�5��������a|�E-���|-	{�Z�H
G�7΅_�|�?�P�yq��Y��7kb���w����6���?B�7)�Zeፉ�zc���\�?-�%M�!oM{���&��#`9HXѷ��i:Sy5ME`��W�j��K���OP2z��e�l�F�#�H5��O�Bˆ$����G��'�� )i���b�x�ڵ
+�y��d��7)����v~�lz�{�~F�H��b�Ve�Q�#@��q���K�G��>�k9	c���6�1��vެr�ۆ��:��K>����Z��k�tn��C9�oÿ��_��-��}��P���>���<�_��I�~�/�_9�2��� (�4	�QR76#��V��V~c�O��C"��I����������f��SC��t
�~�;�y|��ۏ�C�i��8a_c��3j���Ǖ���f�U�)�(�1�G_~��&{?�2.�zJ�F�+V��dp��mm
+L��gG���WW{#��z���[=r7�tC�T����ZW���ַc�,X=&���e�Eb��s�x�q%r�����,�Mp�F��/s�F�}3���]wE���&\.��i\���#�
+���V��"J���y������|�z�a�n��TT|y2X:CY3|��<��,�6�he[�g�7�7@���s��3���[ś+�F�c��d���k�)�k<��a5�`�wVE���I��r]��_.G���%��||�$*�D`��>��~����12?�,��sG!����Gl,���6uMQ����-к�H��`W�<Z���w�20��/2�:���%/I��`�
_CM��t$N=����B��)sآ"`J�tpo�7�'���
{ߴ\�����F���bk�"#)b������M�=9�r��/S)\>�le�!2�6_y{��|C�y4l���3�E���bӅ%G�,�S����+�@o�pQШF�ˑ�G�bn
+��f��Ҭr�r�pf�x����=ˆ��	�j{ؾl�Ky�H|Y&�q�_�����Z8���_z��E�L�z�\$�w']F��A~(2���5j%K���*F�%���Bc+�x%���̡����|t'����s���pmy��&��F��#좉;⍳�vk����w������zb/Ir��B���]>�|�?�Ex�=)s�[Wo�]!���~�z�y�v�=��Cbo�����*8d9.4y_�(�F���u�36e�X��Ձ|6�e��'%ՕYé"h��{�{{/���n�^oSAY8pUufEIJ�0�lp�{���\}��8�I�������G�V�k��A1�7K�������Q�xX$M�n�QF�-c�Ϧ��Hb0�J��b���mm������3�j:$/���3�21�ЬbvM��A�������ȇ+��kb[��ز��M7T�����~�$z1�+U1��xg�AMڥR��d����]+���D�D�NoA:�����
��jˈ�����5�H����kݐp2ծ�!��k	|BT����^���)�e�-ʾ�<1“�"�9ؔݫ�O��jT*�OL&�w����,~/��bNT��B�� G�p�}�DW���.���~���1�㒲&��LՃ;/� 2�q����P�c|��c֞�UEK�1���%�{<ϵ��.�y�̣OrIƊ��ێCɧ�@�����[�/1(m������fT��)��]���l��k)�J3��4�\�Wq���C��ɇ��4fD".et�Ӳ(�˳�z�>�0�Z�/qf��{�uyx5�8��vԡ8��J	�T�*��ܚ����sgG�R
+&$C��|P��J�喫�������EW��۾S߶�U���Xx������]S �h8|������1�(M�-��6ӻ)$s�g������&�Sc]�����yxG0�w�U�}h��	^��^{O
+q�7��n?]���K�՞���7��\��*�ҍh���%s��<�oTE�R@�@�8m�?�T�<jA���c��z)}�0��CR�@*�
A���9Of���5�3Ŋ+�����������u�95��1��3ߔ��[��/Ddgܹr�*s:��!m��&斳�1�[�p�t2�|�ܢ%�Bʎ
����d���9ʼnV��ic3m��	,�.���[�Fa;~X�'�"@�S�`k~�_���}ާ�~��e�r[�X�p�\��9Jڋ[�C��_��vq{��__!�Ear@H�X�쿊'F�t�<̽�������g����ժ��P�&߿r!��%�W������h��@5� %~���^�w�
�^)����ib��	F�$N�-ѹ��shD?�wļ�Ei��j��� �֐��X'�̟���F��+�|�$T*ֳ#�)͉s�Xi�S�'#���eY�^��>$�d���3���Q6l��ēTCs/�e������=�v��,u���L(�xЇ�� Ri��@��Z��g�'�HL�����s(ml�P@�J�ޘF��3�<-�������e��
*m��'��g�~�CR_����(�A���s@�bsB��8����c~0�'�_e"iu�����I}P}�w`H\�4�я�h��x�q0vkFw����B���G(ݣ!��l-�����bX`ӈI��s��[R���B=[�����*Ra���mr+�}�
�;�隟M�h�ic�
;�	^��t�	�%N�o��2�V���Jjas/C�Rk����X���E���G#�|ܭ8y8�]���"�{�m�]0ڗ�o"Ou�o����D���U��ml}R�0[L��jFR=����;*po���f<�s�~4�K�D��K~�-�s��������.�W�
P�����W�Y�w!
����,X6������X��m-m��*��~�g_�.�A��D���[t��^��R�y�j)$�^Ɏ��1�R���r="d%l�J5&/�€m�8�,{ K��P�i�妶(	8u��ڋIX�Nz�6ox
��r�Hd
�9�%����u"a�M����b���nd�(���P�����\��E�>��^���R����[���+�f��<@�#
��-��,^�M��t	�:U'��6���{��#gv�$��
�4����&�')�Չ\,ć��Vݜ��8�ʂlCu��1Ag!g��׭a����;���{�]�sq;;��_˹“d��<�Qg��<��ը�P�;lbmVX�a�kT4ԏ�osda
�5��Pw��Շ�)�	f`��Q�/R?�b^,?��__���\��^��H_���~\�ߐ̅>M�Ca�� L�i-o{�{�2�-�"�Z�;-"���`H|me ��%^���G(Gt�ٓK�f�8JP��䍙�w�����N�#}�������ܴ3j��9��6�[mM+��dFx�cϲ�����D�Q#�ƙ��Ӛ���鬪`�_��=��&
+f������r��Re������"�u����|�X�����÷ʞ{{�t�6O����M�,8�8����~��
+���O��^PL�-�:D~r]��ت���'������M]���Y���-��u�U~I�܁3L����{�X ��b1���v�j��` n���֜����l�W��./���9�<(R�� �G��<ͻϛw�w�ar$�*���.�Q/���&KL
+=Z��^o���,+���2��<W�BU��/^E���`|]juV�b0�H��c�&.�qx�Zk��1j�wA+:����}�\[�o_ʤy$���)�m6���8��d[sCuI�b:G�N^l�4
��y	+!�('�\s�!9;�r��n��f�ceܩ,���;{كH�4/��Wak����I�S.//������&�gZ\����$}����,����SZRܮ-�z��ǁ�Zp�ә����n�?�W�X�鴞~k�����V��Ԃ}��E@#��T��rQ���$�=�a��jd����F����5��$
0}9{
+}=A��?�~1ɠ���������K�p�@qA`���lj�Row����P���
+V%>'|W���Ue�J�
+	��$ljy�0��<���S
�i6��:�ʍ��Oq���C=4�&ZU���ڟ�Җ-\�Tʋ�n�M�IE�?�O ��`?KVX
�i^|s�|��_���D��R�iB�[�T7j���]�՟Z|ʕx���� ��5������F���bmR��)Jh-֗���r��A1�
{s�;�u��}Tk��+ml\F���A���e���ǓA����X���J��\z��S�4
+J��n�~���z����B����7q�s�b���8w��>��P����r��`$
+�떸���6�n��z$�`�5F�ԅ�,ʽ/�X�9Z�#?���#�@V�_��v�/��쾥x s)��\�L�7��vnF�R��Ҳ�n���fcO��a�V
�F���%Dy����շ����M\of���Ѥe��RD��i��!*!�ft���-���2�d+l/�H�T�=�OW�����bl�-M��7�;�ql���C���F3{⳻�����"��Td񱸻sMR������d�X�}.��0w�٫QS���5�BsL�B�ֳ�!�����&6��N�j
�k�U����]�KG����?�oW��d1�Ap�d5"}+����������r'MzɃ�:��s$�{^}���MGY��#�ų�(;W�.C�CXTԴtVTV���?4��)M{+�ǟ���W���SQL6��=�NH���'��J ��]�'O��\���5����̝Q7TΖi0���qq����c�[Q�'RKB��R�R�7�[��x�y��^r����e�ޕ��ʴ	��oDm�i��S�Ϸ�4C��h�i�f}9��T���8�S������eG��>H	�|3�ѩad�����r,����%�s��/�$U] =o�s��e���;Y����H�"��O`v8��q�?5�a��Xu�d���)��}j�Xw��������;����π���`���3���
+�l���G��L����`i�����
+Qix�D���Zj��q�5%HN'��<5�z�S7�Ճt;�eO{ER�u1���jݷ=Դ��H��,�������M��
���\��1�#���TI;=�)f��6q��۲�(������R
+�xm�FX�̟�ð��O?r������{rt"@�E�����%99,(���e��ng���s�l��U����3�'O"�i���P��ȡ���/x�TQ�������$�?b5֜_��(��~��M�^�"怯݄i�K�k~�Ǜ��0ß%�8�
��a���߈GԶl�O����M�Κ)և�F�?��$V,��ʔ+��#h����#2�o�X^����.Z[gH���$�Ӽ��m)aY��+d�|j�<{@M��z�EvO�|�h�E������֊E�#��u����t���d��Ͻ�cҌi.9!�I$�OV��n,-���*�)j�gW1mM�����Ҕ��!Q#$%^��I� �rC��ju�2��O��#܌o�I)�I��OS��	���+/����b�s���_��� �̂�s��ȯ[ƭ7��]���"*����Ҥ�,�ۯ@)�����M]9#�*���K�|SC����|-���mY���$�g�R����+�r�
+��Do�B�c�����??�4��gFy/�"����s����Z��i���.UHϯZ�~��]�
+A�G�yM�m���bL��FW���p���&�W����DfT�����b�C���KmȀ�C.��D.��]E�1����)���M��l8c%�>��Z�XMV�,����-��vɯ�����?�3���tiBhMwWӯ0�$EC�0$���p53�d�We��GbeZ�
�� v&m5���R�m[��6�j-�����)!P�8:��}�T-���&���PDj&%'o?����u9���[�@N�5���ͼK�q��]:�ߋ���:ξ�du�r���������~�L�``,�i~�gDS(K�]�l����ǘ�:ȴ�I��S����--)ڢx��ï'�6�z��Z�Ӥ�����__Ny^�^S�̝���$��2��R��S̆\��d3�V|s�XvTcW~�R����O�����wͯ�$m�eǏ��	���S�]���F�I��m���a����0�C��ɡ��l�7Ӛ�k�kc�Il>C*�ԹXJ�>.,�ؠ漍Z�do`�n�D{��Jmv,���f��[h�O�<|��Y������T�X�5������L��%���O8�ʪ���R��ɱq����~�ܺZ�����|I
+endstream
+endobj
+13578 0 obj
+<<
+/Type /FontDescriptor
+/FontName /OXXIMI+NimbusSanL-Bold
+/Flags 4
+/FontBBox [-173 -307 1003 949]
+/Ascent 722
+/CapHeight 722
+/Descent -217
+/ItalicAngle 0
+/StemV 141
+/XHeight 532
+/CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/a/ampersand/b/bracketleft/bracketright/c/colon/comma/d/e/eight/equal/f/fi/five/four/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/plus/q/r/s/seven/six/slash/t/three/two/u/underscore/v/w/x/y/z/zero)
+/FontFile 13577 0 R
+>>
+endobj
+13579 0 obj
+<<
+/Length1 1625
+/Length2 10002
+/Length3 0
+/Length 10840     
+/Filter /FlateDecode
+>>
+stream
+xڭweP�[�5,�4�n���5x��4�<�[pw�Cpw
�	��{g杺���yt�s��g���쪦"SQg5w0J9�C�ؘY��J ;Sgu{&1[sq{s�+��LE%�@@�& @h�����l����T�qG0��
+��TӦc``������?�כ� K{���+����hy��__T+ �d�+���*Ih��4�@{ ����bj2(�̀��@:��`��`��%�Oj�̯\�����#��z
�nt�1�`;����7�����C^k�q����l]��x�[8�%����a�����88C��� G�5�����:!V&�?��A�0���������OJa�4�(�d����!b�� gG[��دd�`�_2\�A���R��-M��@g�W�W�?��W����������_����/
 �3�ւ���5��5�%���ϰ��[8��X����8�'�
+�U �?3C�*������`�@fQr���������k�����[��k�?{�����=��Z���V���u��^2��-�P���3�?��`�������OGm��Z�������D���)�̬A�R w��
+bf�0�}��_v�W%`[�=������L�
+dfc���\C��E�寍�K7���������[��Ty����㫸��E����x���^Ll��&V��׵�����?�����_gE��͛�����������Hڛ9��u��������l������������x �h��8�`�l�����������d��q,��(��t��K
��-7~��\7����1{���-G��ז�#x��އ��+c����a'�Ű5�H;��lFaN��Uk�爪�a�#<�X+���?�k�?6��;_����6�:(̪��#��_�4���}o����c���M�|��!���Z��7����W��[����*�n��VK�p�QY�A6�D�t_����&I|y�X��t!�X�����t)��"��r�4��i�wl��#R�A_�����ǐ�B��i��=�,KOV2`p��1�s�Ӂg'��FxK�j~��,I�ʪ�
+��$VK�(��6��,�6���E�;�b\�w���oӴ�6K_��(mK�$�F�J;|��V����򻲸nْs�%��mz�+�M��3������J>��jf)�@�B�ηo@�G�p�v��mc��XNe�	�9��p�
+���s�͋��G�0�oL�h�=ݗx����KR}[���ܨ9�Ƨ��x���kM�zrż���{2.���o�;%S�����g�u���찝0�:���&4���魙l�K��,:<�6ߗZ╭k�[TR���&�B��p҉�=�p�m�ct^�
+Aɣ}V'�`;�+��V?U����V�bn#��Y�5p;P0̡�T�fzaj��YS\���Rptmx����^�������a�*�7c��������|�K$�y]���Y��x���C'�`b������:>��	�jj��xʔ)���)F�>�H&���iky3��q4���x�4G�|�iD<�K�K�A�D�j��A�[˛L�>��v��GF~o_C؆D;K>ߨ ����΄)dX�~��r#��{`��,vA�7fC���I�ni�f���e(N�MW�0=������>��Z#� �)�_�����@�r߰~b>�	��[+�CI����8&��[�,hn����onݸ^�^��AzC�o��Fch22p(�#��
QR���\N��yz��F/|�]g��{e =\���ܻ�F���B��K�?|vR^15�ϽRSﬖ��7�+�_]��>¹�6P��2s�XE~$�d�@p#X��NI�I���м٢8�K�K�!5�=����eHL�Ho���z=��a)
+|<@D]�0���E�5�{������d~8
+t��,q�6�Ľ>C<j\��0q��,u�uW�!�r���S�؄�ዸ�ڜ�je�h6�&0e$���l����Vg�?'����=� Mڴ�G`ܫN�0f�i��:f2�@*|g�G�ǥ���8��TG	��=��GQ�Q�IZ�,7���.\N��j���x�A��N�
9��dX���?Wn+�̡�
+�Q�~p�/4ieUV�.�.����h�8�	����y��Z>Xy�h�ۦo�
+��q�92T��W����.���b�~����a(�}z���=���;��]V3J+��#�т�ܓ����|E�!��Hd����Q��b�z+@DE����	,C��pb�s��d[ݗ���ľ�m)�<UyJmݻ�����
+�IA����`ňIl��Vr�~gYX�)�W��%��X��M��O}P8�i�sq�:�����m��Z�]*�Y^P�'��ϥ�����a�0��Nb�2䚾�_v(W��?���R<��]C���]��+��{�V��R]���l&C�<�%H�1M�QNV��#7q�/Q�9�ٵܕK�5�z�e����y���V��?�Wk*��a}V�ς�tJ�m�O��y���7'�W����LjWe	�>�$k�������xCcg2��
����t�aPe�R��SQ��I@ܻυG���m��3	�+)������	t�������:b�o�u����iQ`��ײ�%�(L=7�z�
m�U$᥅����tm4n����
ˣ�����:1�,o��i��[�ڭ�gɇ�t����7!��5��h�Y|��"vT]*;�
+�5Ʀ���|<�yB���[P�$�B͖-.UkOǻ����u�y��q���S���]���@XI�l���3*��7R�ܨ�	t��p�70}�w�p�Պ�e�R�q��U���B�h��
�|�07�d!�~6�����I7	5|ֹUT�joߚ�i��Nwp����N˂��n�"�_^�OU�s��xV|c��}��g���|�K6n��>�N�3�������6?��_�����1��r�2eh��n����퇩Z�O�FPAF�gIw��{Ե	��H)�������u=�q)+7�~�>Ѓ@^$���k!9:�R�%ծR̝@�Ig;�9���]Յ�Z�pU���4;P$��X(���{Tsk�d��������T:������/&g��Ƙ;�n̘0hY���j4d9��s�<�9}^����K�	g�w��.�Vs*3EA)�Y�b5�n���)��'V)�$�Z��4^h�Fm��Y�k�x�i��/��Qj+sZ��FR�������C�T|�c�A�Z��R�V52�������)��S��9+�p>DQ���>��c��4�������Y�F�~�6��QI���^�{N�t�Rɻ~�I���N�6P���#�W��Rc�	����Z�AQQy;�,,�v��w�"�}����O}��x;!�n�Q}��;�+��a[Tj��t��%�e8ux��{�.�T�X{��W��
+�48��N����V;�:�DU��`@j6�4��R�N4�[���f�*7s��R�b���卷�� �Ì5��^��$E�[�-/xG�O�RikI'�ߥ���X����M�uF��`�-/B={hh-��C:D����DX�����YCP4&l��Z�l����6���+۷�Mh�o����v��	���z�pש�K�&|e�{L��Ω?�K'�������O�����Z=����^�������;w�SX�a}`�>F�/s?��e�	����j$/���������3{�t4�Zס�d�x
�&��	�}�sMt���XAwڄ����g)2��CbNlV�-�o(;D�Q�����>V"M��������
1%�����2s^�������K�i�����p���N�����<�J3�Ž�5���?��yw}}��,C�aw��ئr����1[ǔ�+57���'urb������H�ܮWC��C?̴��BP����0�s��l~2A��nm�ƽPh+z��&������xΣ�ΉHl��mfF�r7��=..[�b���ȍ��͠f��+fc��99�ܘ歨ey~IK�0�Lb���]����.@���-��y���3��2=��:��DFjNU�/����N^һŊ�����t֙�q��G	�V<���l�%${R��$N���mؚ��u�f�b����6��c�>~�#w%��?AHu�ۀ�,}�����a(I,�c��~Ջ����뀈�;D��BB��D`����
+�<�`����+L�D��u
.��ը��7�Vl���z���@A�wW�k�%i��ܪg	4�0�oibM�I�w�C�7U��3ⵀ�����E}��Y���rTx��0�m���YL��%@ݺ����IIǥ���}��_�>��݄�����zj�Nz�`
+���횧۵�D-D:B�����gVC�������~�,�I:����s�DC�i���o�Z�Z~�,*��h��$�&t���D�[��,�i���(��ہ��b�>�����,�7}h����]]��r�!��p�����xG;@��*�
)y��6�4��K)ٝ�ݍ�!m$�z�4[Pe
f�&�dC}T`��tR��q��;�o��t�8'Y=�/�Z�[��Kg�Z�I��u^��ɺ�*̉�����:b0�9r�{Z��ДL��\�8�w"��Yq7bI晍�4���/�=��_$O侯�Q]�@��Ѥ����fXI�Ro(u��U?��x�E���r@������!�4�~��1�]HφrGؠ!]7L}�,����p��-G���׈�SZ�����Ӑ�9���g-�#H[$o�̈]R��n����V�9���D)���G�h]3\7:�3�����g�z%o6��qR>G��+�ь��X'=�m/kv�&(�a3ֻ!��	������]�6�gɊnL���?�v��	e�_�vv��+�t&����v���5B�!WC����2�:��Iq���7��`���͉�QS�1��-������/���~��K��DQa֗���7�.�$��W�^�.++���!�D��V*�ߝ���%"}s&�Ћ�Fb�[N�b4ǎ�bu]��sc}DZ����|�>#��-��G&��"�n�`��B�3��>��W1�/�U�T2�Q���>��A�Xg�D�Hb�1�GY�Jh]��/P���i�3��O����������6��]n� �b9���S;sn?�
1���B#�	��B��gӉ�Cv�̫���@ק��X`��#�lJh�+�/A�a�q:V"��ݘ��PDF:����E5�F;�5r��c'a��_��������o�"D��:��W݉�JG��ϒg��g��F�Ϊ�K
+�)h_<�"6�ʑ�M3�a0�ͩ ��ɟ�z����H�5��q���PI6�����[����uC&�<��ދ�$m�o��Z�!g ��זuT����
+Al�������|����?�}<	�g�o�7��L�90�N��v��+�ȸ�ы���y����C��0Zw-�}��̓�B��Fȇܘ���]���}f9&�����#²4��]��.��$ߓ)z�`��Y�t~�z�_|:�;���<#&�ӧ:L�M觻�桟�J@���$P/��c�O[%+;�7`��;�pSù���
 ^��
כK
�XR )|?�JKE}�\bv�4�D�s�j)�+1}eZ�/�a�4��͍��O�t�I��oq%+f&�k�mK7$u����ҊnA�=�!?�\�
8Τ܄��n.�k_~����4��F?P�ƒ���Rى�DL�hB��iѭR�C��Ml��C�,��WTD�L���{���<vsчO_��k�L��Q���IA�$YAz	�ۗkr�b�2��[Ջ��	l���d{�ȝ�d��Y�5��8O���a���)
+����ɗ����1��r�0��U��SN�F��{gt�E�]�.��I~�E�ПS�ڤ��@Yk�c_���D�'Ml�׿��<��e�D�6�`(�L^���<��粈~�8+��Օ%B�~��8�w���M�ؿ�[]���{��0;�j��<�<��O��HR"*�ъ�i"��/Wf;%O�XP��<�:�Y�ȉ�T�!���^o�}��G�ZN���hB>�3�=�W����LFf��-�/,E"͉��]��l��C��M���9��dR�혾������X:Ȓ�����6whL�s���.|upRhY�_6h�t�dg1J)�t�)��Z��Pl���xI�_��[=9�����ݸ�bC�>�"N�16S����}4� �
+]���4�A$-���:L]^=e�g��6�Um�ݧ���QG%�ВQ�oHg�����D9ކ�7o�J�^�,$fU��`�ˁ #a�].4�܄�.�	N1�����W�s\e�iH��O�>�!#xC�^�������ϟ��Ż%Sk����R��ߪ�:��������ν�7$-���T�H��ۻo�����r����A[l���E*Ku�t�j�B~���۱�������M��Rb,=����&�jz�~�q{i�#K��������0�cC�>o
��\�~���jp+����$d�
�>���wd��|��OȕH��t�o|nV���,����\�Eg�'�e�|��Z7En��'�d ��LbS��FH��Ȃ�fI2W,��%�^�J�V���n�kB},}2��#:�kұ��S�H��*��6�?G��M�,_*�8�T-	���:�I���=��_�v6J�������hQEY'�*�:ռ�Q��
����v$βPE&��!�0e�7[��+v����}�1�P� ɞˆ=�W��T{�0�ʾ���
+���w���9����#�\/}$3xS��y&�p[
՜�ۻ�������<��p��1i���%մ���TOl���|r�#K�~�����)��mBa��D#�&��١Z�o�l����0�\B%��fD��vV�>J^~iz���f22r2X��P��ۋ.8Xh�藾�**��*
+�����j�|���Y����$�3�g\��w������<g[WS5o�zRS�IJu�������������*�&Y^�k��z��QH��<Bx�e�jG[<�F"���,ضr�⹣�F��=�Ķ�͏=.zڟ
+#�-eBK��w��!_������M���k�&u��a`t�,�kw�بq��ٹ���w|���g�[�Ӕ�5)�R�9��Tr���T0��e��U}hg=rE�7ͭ��ȥ�x�2�H���������I�ՌI��G� f!����[��m�e�O�vf��G������;"ѽ��?�{Š[���m�v`��4��0���Gx�k�,F�֖� ?��*�D\1=�gD)�ޠ����kUp������v�Rx��9�����Л
+ _�L�F�"�hp�c������B<g�%��W6��\;�w�[v��G���eZ����Huu/m9G��}ld��ZVO��dwA�������4�Ьfvs<��/]�qc��q<�Q���cy�>k8
M\�O�U����,�vy���%FT�]&�������>@��X SțL�"�3g�S�u.�?;n�Gx��)�	բ��Ѷ��Js&�˖�"3�K�Ը��xv/O�a��(۷�hL�gM?�C�tE�U�W�$�M�1�-'G$#&�n�����#1(�7�>�1�
+��r%]j��ِJ�D����Q
+���*��8H;����4�dq I_�А�����t4N#���(D�&�Hʼ�C�RK�-��!S�D29��jV	�~q�ҥ�EW0ܐ���� �`�U�{�������=Q{�Т���s�x��6��mI���)d	�x+��������j��x����N��r��U��%Ù�#�%��Bvf�:���q��l]o��>�l�;�B�g=k�i꧐�C%L�Z��5�)��&���E��aw��<J��a�7V}���G3�ߕh��A���~�P+�QV�Iu�e��-��5Vc���k��WF�O�R���g�;����#��S�hσ�a=�3�1����O_&Ƨ&/t0��aQ����3Run-������$-�~�U=~����}���"WE��Ջ5�\,�Tr�!\��)��P�Nᨆ�eU.э�nn�^[�/c�x��e�C�R~PG��i������r�큠Knz�I�D���L�r���@��$�dY�]�B�zG~��U
��r����B�ܑ��u�r4�Ky�x���5�ƜK�pI����$��i�al
+����>�^��T��^bvZ L�j?\�W�í�÷E_k�z�k�	����E�G�%%�bi�^5�b%�k��~_��E�tA�7���{�#��,��)+K�A���Bn�a��SE���3s{i59L��y���A�Z��B�P;�Tz�&p�W�Lq��:egqJ���λߕ;np��Ɇ��+����	2�I6�'N��!6:����c<�X~�`v��$�P!��0ӪX>��Lt��{�ܚ��K�Q������N�x�]���U�]DK%
;���p�{�m��\~�4��<���M_ȫ��
}Rpa�ns$=Y�'0s�N<���)�Q����SI����7�VW7��}7֞xХ��
ʪ:����{��hS�8�(�P�Π����D�r0��}��v���ǡ��Q������SHJ��F�V��5���������N���𓢭��Գ�A�Tf��o^3P��Q5��n_LOO��L]���6��/��uq@xYLͣ+��n�]��rEK�H+�7�dExQ���D7A<�k�z9���rnbn(2��{��+�Quf�
\H�ȹ"?���
+ �d~�#�L�9���V��WH¼�;zn��cʛ@0=�L5tUA4m�Z��۶H�dJ"���A�Z`s���0͛���u��8ss�����P3�d�bٳ���!�e-#a~�؛j:^{%\�����("C���Űg�h�?��G7~��Q�lί�ü��;�{����sg6qҫ#��q��kC��;c,ɞ�D`�|�>NK�1L��v�:��Ar�ى~h�}f~,�p�u�=6	�K[,� s*�z�ܮ�':��xNHS5�R /�Di�P�ˑ�$�iA�5�*ݩ~b}Ƴ7�4��Ĺ�k����r~O�����d?S0'4�E(��d��۸�MS"��M����h�\��Y�UC夠�<1���P&����^�y�`/�w
E`%��5I���I���6GW��Gp�<��
8J�����1����#ʗ-;��-=1M"s?ϣ�Y��N,Em}_�_X��Z{�$�����Z�i�4�7�pښu�{���K�H(�u(���0dnc᠕Ww���gC	˙9N?�͝3���O�����#�T�5j���Ic岗z�j,�,9<Ԧ7��Hs�o*�x�}�v��q����i0X���b76�\F��:���Y8�ʜ
_�ҵ��0�5���
+\��jNZ�F�X4��A���Eݏj����]��~�t�Pu�<��}�/�L����fw9��6�\"i3��S{�
bm����h�.â��O��ZZ;J�r���o��g~���:4�)q�\0d�s$2��S�yka�Ŗ��)��#�^zj"U�p��pL$���ќ59���V#���wB}�-J�zm|nԦ��{O=�;^����V�z4,��a'A8$�y/��
+_��
+�ۂf۹�)�(����}�.��:2���U�G�C�"h�z�o����V�_#yv���޳�vF���0�����u6��i��_�R��l�x:z�cj���<��e��a�d�?ʪ~k��7}RYIs^��t}�S�pJ�~0<��G[";|�5O���˒�ɈM�����D�������F����Z�82�ߕ�@�#!̖<��Dp�%T�s�0���
輴RlN5�%nF��To66�4H�t�T蝡x�=�%��a~����2�r�2)7��2,�N!�ǘ�;ܶiv�OU��T�fb�vRR�IK��wt6jx<B|6����NvuF
�}4rz�P�o�M!g�7�S����p�c�*�����G0 ��Y�V�o.:R���Hf�y�
��r*6锡IKF.6u�#,_�]�9����'rC+�%�]e��s�m���'�����F{�+E␯�1͛s�bv#,	
+n�¶��+lD��A��
++M_!7��'7+^mbZ���#�Bs����P.�i����Jp���"�'�$iIݩ[�\��r����`�;T!�m���e¨���f�S�B���HŽ�?��L,5��.p�9F?]�zȨ�1/�yEAKWE&��F�X0�\��a�h�?=a�I�����L���N攬5qi�\��y��&-�N�U�’��b�$p��)�7��t��0��{��rQn~�3h��=R�f�;.����_e����kf`LM.���e�w�fZM���pzX�U�o<-�)�y��q^�Nf�x�c�6�Q����I-��/�J�g�c�ۯs�\�P=�l�տ�'������};��6<:������Fv
���
��7��-���'y��g��uG�C�:�,��Y�ʇg���e���9���bt�ו�n�vO�>�'{i�B���1��t|F��m7���oy�×�h��)�S������)ž4��v����pNc�6�����B=-g��̹�vY��r05�%�}D�?qX��&�}�]$�,�n��dR�$������/
+endstream
+endobj
+13580 0 obj
+<<
+/Type /FontDescriptor
+/FontName /CPOHGR+NimbusSanL-BoldCond
+/Flags 4
+/FontBBox [-139 -307 822 975]
+/Ascent 722
+/CapHeight 722
+/Descent -217
+/ItalicAngle 0
+/StemV 114
+/XHeight 532
+/CharSet (/C/D/E/F/H/I/L/N/O/P/R/S/T/V/a/b/c/colon/comma/d/e/eight/equal/five/four/g/h/hyphen/i/l/m/n/nine/o/one/p/plus/r/s/seven/six/t/three/two/u/x/y)
+/FontFile 13579 0 R
+>>
+endobj
+13581 0 obj
+<<
+/Length1 1144
+/Length2 10874
+/Length3 0
+/Length 11645     
+/Filter /FlateDecode
+>>
+stream
+x�useX]K�-��;ww��nA6�F6,�kp�������5�\��9��������cU�1kL�QTd*�L���@)�3+?@�����nR`RZ���\&�TT�.v������@k����^���h�`g�����s��Y�r�3�����lm��	P�����A(	3W{ �E�����h�;�:�����?��wV����������VSM���������@����,܀v�e�#!
��m�W��������_�h�\\�YX-L�0f�3��B��PI�����_`Ŀf&a�4�Ӕ�������/��d�wK殎,� k'W����
�!�����X�Y�X�@'�����_)5<��l�& s/GG����cm��C���.ή@�����;D66�����h�����Z�c�h��l�������`������υ�;��<��db�H��I��0�g���s�#����	`b����?�|\���bb�+b��aY��������?�w:���@��a���SI�������IX�X���Ϗ�5����W�g)W;�����G�?��
+��z�3q��p{k;����j������������(���_c�KY��X��Y����5A��8�����7`b�b�N��������o
+2���� 3sk�%@���L����E��:;������?��
+���W��lj���E	ݙ�'9��5��]I9�� w��z��lK9���&eI��Y	U�C+BC��JF���u0�c`c@Ʉ�1�}R�G�B�����G�-
+/%�X�cP撬�^�JH|C=�ۗ�Q���I���,����"�s�����WU~���N	V���$��ƙ'9=�Ƴ̊����b(\��!҈.�W���%<��]��V�"��݌?"rioXƑ~o���#��%|#�@F�Û��R�X1C L_��A�]f}>5�r'���,�Υ�sU�������<�>�Ա�`qci4��������h��1k8v�&��)��;Qc@�J��P��&��x�-�nܓ��-��i�'Z���3��oge\V<�I6����ѵ5,�J�}����k7��BA�&��w�%%�b}��u�j��b$�G���x�+ۡ��e/��}p/"�^��ҵ����������ȓZq�9���&�� �{;k�Z�	��yxt�Z�������Ǘp�Ͱ_���
K�_nT4r�DAU���J�^_n�2�D�ذ~�@?B�s���!�tl�;7�j��r��Ŧ��J�J�Z45�o[��u�B������� �"z�{��xb�Rn;a�{<�1�z�Y�����4�o-���,Q#�N1�Y*QQc�=��ѫBE	lr�닧߼���!E�����O��v���Y�T-�a2���^�.b�5��5�"��Ż3��rea׵�lB{xֻ{�]�ۨ^ڵ4	F2g�6��VZ��j��񟳑q�G�k!{o;g���Ū�.�x��J�|J!�v5���/F�٣+����mv�����ۭ��.@�!���j��/��
ҭA2�Ǣ0�Y����<�XQ�%�O��Zu9_�"@�c�A=���sv����J���x��rk2�8aN�i�H�?SY<bQ������e"�c$����tU~��"���U����m6��bqܟ�����|�F���B��@~�c\dH�=Z���$8�R_���)c3����/^ʶ����L�sH������x&��2�'�1����RN*��IJY��Jxv����{���Ľ�+&�?}�1��Al��Z�Ͱ�h;�Y���^,�_�(��]>��d�F2Uz8��s6�:�2%Z4m��¬��\�+{�R���(;�ۛ�y���ȡ�����#9�3�s����~o�:Bx��W9'X7�N���	���Q:n��%�ݼ$��@_ÙP@,��yĻ�_1�sh��
R�
+	-�BR��ҳȓJ����t>��֤��������6v\�/���<�a�tU�;�`��#R7�	#�%a���s)��tJ�;��'qŠ:a�T�{1�J�/U�c�5��-��_E�p��O37a���72<���.�D��I@�~�&��5&��Bz��I��bTP��\�_
+���]6x�o2�,k��>c�{4B��py�=�ȹA@J����-y��*����W_"�q�I���p_�C���?H[�~
+ܰ���6g��!5�f�l�_"�G	�I˩OKMO��
+���v��k``v�J�cMRQD�ut�"�����i��΃M;;c���N��%B���>u��$[ �t#@#Ӌ��C&b:�p7gie�(�d����Z���{<�L��g�vʩ9�֐�S)�^�tF�.�v�m�q�{�%��jy&���,x�O�SX�M��i���1A&���@DM�\�f�Z���P7$ott���o��ݗ��N�����#H��z}������aF�m���w���a���������=���
ji��#���ؖou�֬�~��~^��:5�I�)Öڠw�f<:6z�����[��R��#���
+z��;��ǜf\m?fkyw{%��\l�$1�+y��Ke&��D�y�60-$����ZHԲ�Y�u�.?�ݮ������A��OMY2�}�+�9|���&Ĕ�b�@�s2կ��=�<��3�]�rq"��;���H	�i>)��w{����1�V�ؕo�6�����H0�����ؙY�>ecp�����f��������L���VzPH�Ү��*��ب'�c;���s*
�h�Q�:�&��j_�e����$O��=Q9�B1���{-qV3]���)l��uJĺ�r�T۾*!����=X.w`�|��("�����`�,��(��t����
+�I�1	�7!���~�O�O�U0��_gGŝ�(�-��P�
g&m
+h�Q��}�-2��.S��rM�
��݈:��mh(�-Ϭ$���b��y�/E�.�>ʕ��<�o�g�"wpˈD�Wa�\��fD�_����O׵�h:���@�K����˟�1,��-�o��J�����"i��K���ǖK�<�����D��G�Ax��_A��g
+:�P02�;_a_x�Ņt)�h�J���e\%�$�K4�C�]D5G��d�ȭ&%%5֚��s�R�}���1��c��_����U73���N�/e�V)}����@uD�kL�<5*B����i�A��j��U�	hi�泒���3�DW��/E9S3)J# ��A$��r�OɨGUn
+�B���{��r�)7���_?'�]8�
�e�S&�i�En��|��r���
+P!�1�0lN�e3��[�0�Z���EP]Q�s���K)Q���5y_��L~�2n՞+���ys*����ެ�]�vtA��;�,kz9E��l��'�aGR�F�q7����Ɏ����z��;7��7yQ�IH��v�s�.�)G𼸾gnˣ�Lu�Q�EQ����{9�{3�mti���T���X	9�Nv�K�	"!O%����*�p$t���^��{a.�߶��[i1>�W*ms6p?jH�H�$rާm�>^�����#��x�^n� $�����ݔ�/6�4����+`ʼn$�����lB�����!@�+f���%��.�`_��{����";��?i�'��(�o'�9Ԡ{^oK�l��Kz�Y��h6�����W!,:��(���U%M�5˂(�g��Pi��S��<��+�A�fE�q}n$S6a��kCn2ڒ����N����"��~�!$�Jh�>���B��u��Q@�]�m*.3�f����T���-��+H����N� �\�
+�q8m�†p!?���eBN����
D+��f�F(RK�ȗ$)g�;�۾�3oچ%~�Bs��r7Y({do�Ǎy����ӻ�Ie�����ޢl%f8�$P�/�
7���<b
����#��%�=y�����n&9Xt#)�,I�J{�����*d��\;h0!˦2`��)~�7��Z\
E�����$r�^��Gn2���!�]��3�~��_^(�	�zd�dˑ�3��!]�lQa[W�R
+{�ܱ���%�;\�H�;Q�7� ALP�t?�&3���� �>6��Ǥp5����j�:䖙�(�ĥ��lծ=%{L~z�%��x�N�,�tv�kS��7L,�`��e�=��� D
�҄�XP.H'\'�\*��:!�l�<[+�v�Ïdߺ���%���5�*�7��|M�����sg6=�������-�q۽ew��cJ�"��;����Vf��JZ�p�1���e�Rt�������kM���3�����T6�l���b��Ī�t
��n���q��=�"QaGK��?�pw����P���BɃk_�c?ӯ��1���2W�b�����L�=UI�{����s��l�~&��Bl���m�(��Rnp��߇i& C�����)�It�S֯�z-J�Ҝ�>\��<MȵeP��T�᲋1Oɇ8t�3R(�\��!����̰~S�pZȞ���3�@	ϒYg��%�8�#�/��V��KSM�C�`�k�f�uj�ֹ����'�ГA9�za���#ӻ������^9w�����G�ۀ�U���rI��nP����7bƏE������Uƍ��D-t�L�h3�y�f��`����?�Ⱥ���C5R���3a��7I?�Ni�]��ǣ��c�Fas�*?:ci�?�4"��r�2���*�'�P�w����nC\�L����p��y���^����:?T�V#��s��|�׭����e����9��m����oZ��J�e��ی�-�"UvmM�$��Wdc�wY���������4<�ڃ_�D0TG3݄m3O^�Bن
+6]�&���G�dRY��~�Q~��>s�����"ݜ��^�8t��ZH�J�<�"[�ӆ�&��/^�7�q��-����Q�
�mQȽ����g�Z%�ʙ!?
+���=|e��&I�'B^���E�9P
+%GDu�ī}�5�v�c�F�\V�/G@�~�D�~|�7��K�s$n`�s�\~��ވ��.I�%���O}ҷB���Y�CEG	1�&�=G��_�S�]����%��5p��܇��ɓx�]��M��$������5�\��ԃ��U�iJQ��E7��GnX��g�+m�,�����i������]��/�\Yv39�̀��Z�!W���Ѐ�D��%��~&�Ũvזz��DK��돐&r������V��b>q�`;��$ri �����!����P"!���w>������S!����M��y�k��o�	_ޓ��êw̶l-i�m�v ���S�"Tq��\����v�i�e�1Y��2y�ܬ��N�7$.8rw��Ϟ�ؖ�Ӑ�Ȟ6QMst@��A	�';�a[�蚱�j��x����%�&z~*�w��oAR�԰����\��N)ك�4�-򙉹�և�q1O����Lt���m
+�pk���������D���H�H����8/���y|���oK�)c��}��<�7�z��}��(y�����AN�8�|W�������DʜC���6��i�j�ހ]X�"��	��:�<e��q��1��~�
+�*
�P|�V����.�d�o��g�\��\�+��oSG��fJ;�d\�aQ�Y�k��C4B���W���T^!_�Zl�9���μ�۰�c��(NeMǸ[27~oӾ,iG�VB�l�y�cQ-���{l�� ee���� 8M�AYHז�
�=!o_2������v�a��+,`۳�Cb�s�}}���A�}�t���"��k�-3�+��`�t~�&����_],h���HLwR-f��R;��p���ڏ���5B,CO�y�l�-ſ|�s����^����6>�ޥ�\9��ɯX3.�x�foz�a�ӂ��'U,Y��\w	��恿�F�ͳ�h��<"�:��d�|3#_,b\r^��ZV�k:cK��5�*Ǚ���_g
+����爤�^#�����섲��#R��v���ȏ/�Bw����;�zA��{���Uʛ\��K���qE�B�E���͈�	�B��V7!�L^[�C?(v{��F�S)��:�E2QQ�,�$�J�(��H�"�LjL/2����3~��%W��Y�\K���;f
�Ul��'��=�p��X�.�"�hy��G$k„�_x@)º0G,1�΋�̳��)��A�^�]"��=ه偶Q��~d�˘��F�ҵ���z��fgdz����@no��Z�P��t�4Qܖd
+�x���NΎe��†x��,�G�ώ\���%Ù��@���}J�
+m5e�9��S��	ұى�V���^f_w��*��e����ƻh9=���M�}=y��������UU��3��0���wC�����a��';��q�G⌾�+5�HaP�R.�d��SvS0�HkU�S�{2#aZ�S�Z��i�0d�6�xMc-ь��R��jY\��(:��#i�^=��0�}��~k�HS,٤]Xb��J(Qqә٫����o�BH҆N7�I�"�V7��ԉ�S+~b�OM�t�4�B�X�����g(\y߬�;���'S/j���zY$5O6�o��c�YK?�q�%��,3�q!nK�Ƚ�^�6ɋgZ����Slm�2B)s!�9j|f�C�0T��g��5���RX�_�NXaE4JЂ*��N���P����g�(,������@�;��Wiɒ��-�1e�c����H!F���D8�<���m~5��w鉓�ɧ�v��r��k��N~�*=�hz�\~��8�N�g���C�5�u��˫U�:"�U+��^"����~��`���PG{v��s�i�&�x����$�~��߱X����N�� �����g���`S9Ԉ'���-^�X������� ��$U���Y�c����(ĈNF����Q6�N�	1̭Y^��
S�� +��7�&�nK�-���>78��͝��u����Z�6H�i}�,�v	(�4)�*s�<,���ݷ
�SY��h�h~S��Ԡ^K�K���VCz�Ր��n�������u;+�
��ف��h������h��7ʵ6}��]�N3���p��.���w>_^F.���A���"D��/��읕�>�~�,Ҩ��ri��\�A|��s����VJ4׶���a�LT����ۉ�|ֱ��~�ru�8%�z�J<d�|��òWU�x�Jns�$���3埲ђ���Q����x{�n\4���nĔ��v��_h�������f�Xv�AϞ�R$i4��-Y�P���
+���V�u�Y��Z�T��d^o|��sE�Z�ҟ���V�X�t�Ϫ�}]Ζ<��q����E��7�<����3j6��l�*�e�kC�=
��3wf����k8���y)-��׎�"����R�I%�>�`���"�u8wdݔ3L��T?7A�o���<��mb����hl�ϫǥS.Hk
mM5����O"�q�o�Rӹw�p���(�7�`�~��L�W��A��
+���f{'>��E$_�'��]i�\}��dO
+H<v^S9���
����{�VbM���A�KѴ�d��{�����0�+��l�=2���KX2��x��{�K6��]Cnv�k���0���G�} �a�ETR���b��Y��R���
�EP��l��N�k0]5�Yj%W�h�����v=O=�,���i�y�(5����qX�ٻ��:!Â�IN"��w!!߭��V����������wEP�A�N�=k�{&�B�v�zц�<��&pۋ�?@��k2k�
+?fX9����
�#{�7\ft�`���x�E�x�M��=���uo�@'l�� �!�R,,�yC��6$m�//�.�Kt�5I���
+�؅	�~��Ȏ��\^粯�=
(�+�����µ�	϶kGw?`���"v�4�p�t�}��Dqij�YC^����*`�tlE�̴��t�*~A�99N.������0�j�H^39������XJ����>�7����%Q>�n�l�"�T5����*�'R\w�����/�,Ž����vm�%,�-���z7�A��DUD��X`�3����6���k~�v�c��� ��x�~��nP�w^��`�]z��!�7�3�����	Dax���>��95J��:d���Ѹ�\v��a�"�>�I]작�
�9QR�N�z}�W���$�*`���Ryyg�͡&W���L�2ȟ�w%%�q���)V}���1}uO�n�.��T
�޿sW���z�
U��=�y�Y���X˕
+��[s)Ux�l��'��'+tQF�7����te����o!	�<����:�O�۠��L\i�2�NqP�s�fl[Z/XU����@��{�!d~Bv�U�m��tf�f�EN���}�D_�|�p{a�C�XF�����kEv����}\zO�l�'
+��6"�)�j�����Г/8�����3BP���n����~}M��'�Y��"���(r2��Rg꺀��b�[8�X�
+"z!��_���"���X�-s�U=����159�L��ˉ�1��~�hw��5�=�u�UOY�~׊N����:��s�hB���mM2VSά��Ϥ�e�s�2�f�(b�D_'��
+Eoov7��n�B.��(@��Y�z��?zԻ
+&��ga��{!M.܍��
+M9,�FΎ��2��f�Qyc����&��\���F:t&����j�֙tKwJ���_�]�g?ȯpw/�>�ݲ� J��(�H�HqU�#�a]�Ϊ�S%�8'�<�k_�Z��,��L
+-��l�u��q5���=D��ǿ"���޷QY���̈�Y�C�tڝ��tޠ��/f�������]q�:�,�}�o_���p(�4��T����w��ۓh��PljU�ޝ÷�y�+�z�׏��ܧ��P7J��N<�,�D4p�8�ĉ7��:Ǣ|�Z�:uln^'�r���6GNa;ļ��&��P���mF�������n�r���F�=�^�ZV�q�x#�����.GEC�G�u^h
��`�͜;�XK�/mp_����hl�xT�:OI��'�Y��M�pq�R��γ7��z�Ee�v�j�v6�z(&���R���'�
v�?�'���9�V�wU�ܢ
+��Ɂ�������M���wҁ��%��%O�sSt?��6���o
�aR�G�WtCn���ŖZԡ04�:��T2'pn�u�H��qn�ԏ��s��|C���[��5S"ƨ:��D,ℭ�N鷢X:V�?lǭgxlZ5�U%^���[�#C����x�N���o�|�,[��Z�^5c�
v�O
+���ᷮ[}`�R',N=Nɘ���	ۢy�"	qV2S�����[��A��ˌ�����OT�^D�顀��$����ic�ݵ����O��0=��(ՎeH!Al�����b�p����;�=o�	�FDt�U^�7�[�=��/���ǫ7�?��F����x�#�zx�I�P-f�\�
��f����<���.��~���5�g.���t4܇���PȏQX�4aC맙��ĜW��\[��h�0��
+wQgcH��qG�>E����[$�RԀ`y�
+��>�����u�>Df$���t6/�����j�>:�GP��NA$׬�p�!�r���̶��O��ֹ$��KQBld���>��g����;�p������'���.��vP�X������S�U� �T�����c#���
��QIe؉DP�*��Mi�.�-[��Q�)Ǖ6z�fu��sY�y��h�^���+�]���딈��O��)���E��!=�B�C�+���-�����0G*5�P�h����b�G�z�����(�I-v{�C������Gƃe�o��H���0"�D�D��{��`�%�0�A�{�D���#&te$EB����o]�i#��-��c�,���7�=�^]�Dd�I�%=Zx(Y{~�ݹ�"�5��U���v佂v@dE5������f*��ߓ��<d\P�H����PB]�~B/T*X&+6�F-�ln
��
�tF�[R�̮��2�&�d�ߎ���x����ܐW�0��=l"t�rG�Q�U:z�-�s�B��[��76���e��u̻w�X�)'���]Ou���r����I�}��Q'�(���{m,b4o�uC�r��E��Ӹ�΂�7��l�+�`��]ʊ�y�x��v�ݵ��1�r����c�kL�(��D�9�a{iFk�^�<.�L�r.���Ո�`�
���.�m��K=_�Aή�,]t�Oӹ4޹PB�b�/�vD7�G�Ėc�׻0>�A�cȮڭVn�p��:C�(�L@��r�Eg���i��P�V�/a̙x3uUo7&
��Q5�ݩ$'C����c~ݔ#!���-}5:�{��\�#��IԹ]�{�doe硓n�A��,�.���횝�]��%-i�X;?��"�U���ރ�w�Τƻ�O�V`��t��S��l�ty^��mF�}
��@��[�|*Ej��K�>r��kg/���0&�Z>	��d��x�Px�C��vz
ʗ�#��v;�r��-D��
%��eߊhV����˒�+?[($�E����s�-Rq������˼��)6��@��Ha�p4�U�jυI70K�u�|����i��ta/T�����^aȆ`�n�\f�~���k���>6SN��KM�U�Έl����sM3~y}�v�ә��?6���Ly�M/
�vtN�7���/���������#��)��I�����`F��`�b�Hۇ(�?Ub�;��L�ט%A�S���zz�V6�1"�ye������t�-�_��N�j�Pw;�J�h��RŌ����I��|`��!�g9btи��V4+���w��l?J�}�) ��s���� JN���;���]v_F�������B�$������g"�T�7<�R�G�=vJJ�au����ӭ��/�g�8ͅ�v(ܗ:�ٷ�[���aL}ME��n����Y��}��O����|7O�7���Įy�8�P�ݰ���<%	�(�#�L�-���\D���)_P���)}AU,��<�%��+w�fT�&��RE��݂U!v#�{�����9+v�T`��"��"��!�o�,��FF�uj�8�FaD��fߔv}R�l�W���D#�+�u\�X7D#\���x�\vr(����Z��K�Gm�O{�T���.)]߻���J �L;�2�W}4Ũ2�W�6���ѻ���B�?`j*�ô����̞���Ql�Ƹ�9K�*��X�6�Fk�ž��@�ꃁ��N��*��
�[P'z��k1�A&��k��au?�"pj���ծ��j�JjQ�
+\�0� 
��JS��g���kĽ�(��	$|��R¾ݜ`�����o��{���
�����$��^�N*m0㥠b]: �`�z}q%�,d�W�ts��b��Ԫ��_�޻��?�����5O�V�o#z�m��7��������pŢ��D�3�
<��ϯΚv�4���=_�%K�q�`�-���P^��}\��!:���3�
+endstream
+endobj
+13582 0 obj
+<<
+/Type /FontDescriptor
+/FontName /GABDYH+NimbusSanL-Regu
+/Flags 4
+/FontBBox [-174 -285 1001 953]
+/Ascent 712
+/CapHeight 712
+/Descent -213
+/ItalicAngle 0
+/StemV 85
+/XHeight 523
+/CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/a/ampersand/b/backslash/braceleft/braceright/bracketleft/bracketright/bullet/c/colon/comma/d/e/eight/endash/equal/exclam/f/fi/five/fl/four/g/h/hyphen/i/j/k/l/m/n/nine/numbersign/o/one/p/parenleft/parenright/period/plus/q/question/quotedbl/quotesingle/r/s/seven/six/slash/t/three/two/u/underscore/v/w/x/y/z/zero)
+/FontFile 13581 0 R
+>>
+endobj
+13583 0 obj
+<<
+/Length1 1177
+/Length2 9657
+/Length3 0
+/Length 10436     
+/Filter /FlateDecode
+>>
+stream
+x�m�eTۺ5���Ӹ�www�qh����Kp	,�w�����x�g�s�wϷG����||�5F
��&���(r�p���T�,<�5͝�X4�6�`sG�;�c�DC�ev���;)�4ہ�����6Z��es7�';��]����7�����߆ 7���������))���������h�����<�,�����
+�93@���fgc�kk�2011�����X���H��l���O�#��l�!d��@��­��U�6�����6��v`cs�6�c��֬�@0�{���V� ���#�5?);7��{c>l�4Cg����?R�v�V�j��ÅM����(/�?��0 ��������t��-m��J������l�l���rX�;������/$?wsO ��������w������,�6�G���0��イ9���`�����`���ߕ���Z��}�c�b��ɫ��*0�S��k)!z������������'?�GU3�������,�l
��]����݀'���]������#���v�@��c��������?
+����(���!��������<�{w���߯�_3����y�;�9�����������o�����6�@��ߠ����7�J�li��J�Ƶ���u�j w��.��qZ�v��@w�w)��:[�WRigK����
@�.Fs7����-=�������z������D �h�������m�'�bٛ���վ{� �F�u���
+իB�PF����Cj��ژ�H�!�24dx�t,���D+<v�\�	k�������%{QbAZ�oI�A�s��;}�	,�pn �����*1YE�wD��~���3U9��u���N)v���4d����G:䦓{��Xf���<�s�H�b�2>�Ή.�'�E�N�n���|��k�q�׭�98��D�u4��`%'�eK��������K,��f��^���e��TJ�[;�-�c�K �k��!�ZC��e�$1t�	��W���jU�FV^�z�+uG~x�
SzW�Ւ|�.le��m�	���+���(�R4)�X(��!�U��y�L;B�(�j����Í������S�X�Ǡ�hT6�x�\_:l]i�}41������<��݈>_cs~<`���ծn0C8$�������K�!���W�PR�o�3�h?��@2;#��2 �7�"^�^�^o�MUTr��T��?6k�1�c��?�ިE����C��Z*�5��R��T*���[��_B���xI�
+/�,N,F�Ta�o��Cf�id���$�[���=�D��G)�N�2
l�[?�DŽ1���O�>�'���`�I}�ߖ{�q�eE
+����7��8,��{;��%����g,.��*�	Vm+L�Z?b��mH��9����f������Yy�&ޝ.EX���c�
�(@}��z���Dz����� ���S�WU����P��U�\9a��
;~�+ք874ZsVV��$uT4(d<G.��|�Ӵ4����1�]���tˋ��hib�_�}�5/状����j2_Ū5�3�݅�)��q@>
c��pR��}Ùʹ�N����uM�(ꞡ4R���w�K��N�,��S�Mj9��F'��;��<�eGF�r�{IG5��Q
��o��30�
+p;-'��F<��4R~��3uR����S϶F�-vR8�1�ly�F�o�Pm�ui=m�]��C�#ub�	�:�Ti��@]�Ƨ��@�#N���|*R����i��� �M0*m�%��
+�������M��fX7zp�'�j�	��Д��^dY��Ns7��[|�Ȩa5�r���Z�w
+�u��aG�]�F�*g��2��yρ�^��UX\T�lqW�I�v�x��rE�#?$�=�x8|����W�z��V75r�8(���6G�Y�x�9���W��ܟj9��B��-�1��X���.��⃇���B��l�8�����]�����>��n�%	↭{^׫�nA�HQ�I�"�(��^[��w����_�Cm}��]�
�E<WP
+�۫��1M4��Oۼ�\��1��fO�h�䫑U
�����s��|3Ϙ՝z���SȒ��Z+�}(�	�*�����y	qY%O��X��O��ix��?\4(����H)c����܄(��0�j�4��	 kќlqb݄��s؍-/�8S
+���k�q?�$E��Q�7�}�P����oRm|R���eoަn�I��n�E���)�=�B4�ݬ#~��?�0��V�>+`��Y�ȫ���^4S�l�,0�*A �� #N9�q� ��ĕ�+��2�`~}��KFz��Y��w�z�p2�-��6<am	��'�=�vc�[�G\X�8\U���{�N�.f?n]�m�)�ל�f{'���ߑ�Sv��K8͋Ё>F[:t�!�޷׏zW��?U'�ؼl����KAu�i�S�C�
+�*#a�p<�Vo�n��X�H�]���h�'���n)� /_
+�_��xy��F�	�}��o'�_C���oh�h�_��"���yN[q11bFOȾ]��
+�4*B����q�9ht?�#~׆Eb���i>���SS��E�ԝ��'�@���NQ��q�5��ۭw�C����y�	�(Q�&��kvkO�cT�ȸ u�w�E�w�9��Q׌���m?��i0a��N>n4�W�lW��b@YGb����-,�x����:�[%T���:��
J¿�P��X��	E0Z)�,C\)��Hr+���j�F���m�#��$�o�� �i���qa
+��CR/9�H�!U��ϒ�� �q�^o>j��^��b��)t��Vh��T��~�#��>4K�mXgd����%�Cg�*J�K�Nֆ�J��p����?�Qf�1�[
+�
+�rfo���W�RB�O�j�D��m�1!j����D�k辰0�9:����Ѡ�iq��94�,"�U��wx�w(#�t���}�d
+L�F�R���q<z%��@�7�/y��f��b�8q����r�q�q	��V��S������	O�u�-15�p��t����rR��T���k�������'��>�s�Ay]&�dN���C����s��Sy
g�˷d9O�?���g����P�w~���TR����Tԅ@Xu�a��dq������Z�	��s8o�(u�y*�%y=X��&���l��joT����s�H2���uv�/^����O�z$����cH��ZUX��
+�OS�b�L�����n}l���Q�z�;�/Z������lh�M�
�Q=�C����#�|���7���TD)/D/��jZ�C�T۵xE�E.:J�8z�8�z��r�����̍�߁�����3����V_��I�N�y��n:
���S];��Q�N�-a��|Wb�)v���va�v�����Rw�II:���<�VSש�w�	������M��ED����٪k���K��X���|с�����s7X�/-�7⦂�ߌ�*��ӳYZE�����>A=e�I�����Qܱvx���+lC�6��e��3���l�܍�^6�����c��`�d�: �~�;\��模��1��Ck�����ң@n}60�p�4§=��J����$���@�Ƥ�ob���%����W�a�&�M1_� ��]��fd��T�e	<e%Ů"^2�V�\��RT�v��h����)��+Gb\�Un��G�n��f�"�L���(�)��.��	-�ă&w
+̠�.#2��	}#9o�3/�L	 �f7ȿkҟe|8��'[vJ)u !�C���)	��z�!S�X[�j?�@���^��Ϭ�j�Ӳ v^p�K��H�d�#�Yo���Ƚ_���wF>�#�̏sI���4��E�7�.�s	����L�'ښ�z~��NI�^�S:);Ҍ����>��X�]���ɪ���F�+��!hȪ�����{Z-Jy���X%fU�K�Er�-��k�xk�T�9�a��Ǡ�U�N���ia�S�������+���e���[��c�D�0�B�+�f|����b���p�!fL��z=�
+�=��
+�:�@Gf�3�=�s�.&@��l)¡�Aɂ�f����N��ʧ^�
�8>�D���8��,@C�lN*Oз�m�&Cͭ�dp3B��c&�Q+F
���2�F�S����.�\���"8��|�p}�2�U��JM9g����=������z~���\J4|\6�X�S�)�2��Δ���L��m��53�6q���F��ձ^��
+o��]��S�v^���NK.�/�ݚ$��c���qUw�ȕ�-��lk�k:��ןgx�$L��QG䣪}>�d}�\SXk1��J�ck�Qq�z�!�uhR����wx��B��^�Si�{���Zj��K��/�̻	�q(ߗ,f�raFO�U����d��TB!Ƞ??+,���5H:�;B�v�c���B����(�3�Put�E^��<�]�@I�E��M�����*29nL�ƂV�����a������_\^��#�'�_1g�מ-�	j��i3aK�Y�̯�皡^�}���j�M�"H�a��e��	G�qiwu�G���a#O4��&�R#����-���FS̈́r�����Kq�Z*_.毅��a�Y��x�N{ި�i!�A-�<�_b1��aߐ��4H&N�c	,�ۆ��F^2�dD��F����g%mZxJ�{Qm�rj�>'7g`C
g{�![O������|z��R�]$�����	�)�1��9k����t�X/�R���Ɠ��@��.iQ���-�P���P��48:��Y����^�!@�<[y�`-��U�q�1���On��+>��Q4I�>�˧�4�t���(AM�� j�8S�)|���ˆp��W��	����|-�IB��:g�&�.H��n|W�*]�"��G�H�s�ͣ�a8��&V0�ƕ��Yx%Q�l���bz���:����O;kT�L/R��m�D���p�#�daDŽ�F�t��G�ٟ�� �}�O�gG��%�C�S�n����1���p
I�u�Ջ�"��V��p2�]/������Ȝ����P���1�>eY�V;D�� '^�D�5[�	�[�$�̾��b��
+`���yrJ���4@�wgh֬�<�)h|7 �m$`�?���$��F�WM�p+0�ؒ/�
p
+�Ҭ��ɡ����OE2��h��B��z>��~����2e2}�U,���`��t����9���J�^����&F�
+]+� r���+��2"#�
+J#�e,�(&�F(�W�UȘ9��Pq����0p7����`���p���Ի��x�*���Uj����
+V�%��T-=
d��(�٠�dF�|�ܷ�ŔG���/��y�c�ɪ�r}=�r��8
~ٌ6pRz^І�|���It�]��vS�m=��G�d��?t���:��E\�mq�����͟M)&����O�����-�(
+��f�+�5��|�3ĚFg�kY>�_��^� ���`���?�iaU�g
��~�ܨ�*"��W������r�.0���i�+�,�\G��b�Y�����q4YRWI|�~��x���Bi�_���1�+�KhU�)X+z�o|,>���%W�Y�Y�秚k_�f{�H�)zm��xs�(�й�P>"��y�������gn��~�f��T�F���ٝ�U0�bC��G��=U3<�k��'�@)]Ҩ�$n�&�^����=�}�s���-K�e†5sT{��E�1���?���85Lp��!h�7{���^Ewp�."6`��u�_������/�7��.[�]��I�7�
�3�o<�J]������%E@}V�0�:�s?���klȓu��g�0"o5Hiw'd�Ѝ��Eʖ�3�R�vsu�><i�ۤ�t�/á4�ݭT~Y׈hGV����F�jA��A�J_4�a��B�����2����FgoW�nي!-��u��6;J�
�e�X.v�e]�K=�4�{V�c���_P���"i�����@$���o�co�@
X�N�^���۴dYeA+߯Yy��`�і)��x8����˩��~�y��@My��
+�&y����&�竽=I�b~iw���t�8X%��?eT�ة=�W����f�%�L�m���F���a�I�6,%���&�M_�s��Buy�k�`�~u��EY���۱2��.Dh�n4����F�.�*ʵ|l�������!
ʬ��ĕ�0�<�kܴ�I�w*��iA0�
+�������'�P���tM���XI���H�«E����_`O�暯�-�h����d�薝�/_�|>�~����c�z�s������֞��I���|g�Yw��r���nuƹ`I�ҡh��
+,D��\z�Sy]K-'�U�����7~ĵ��q�RӬ(]s��ZP�>OTjb���4�v���:�ё�Rj��@�Me�x͇�Dq*��Ac�i���6��7����<%����폅D�����l�"o�H"fٰw2Lg;��]yt���(O�~����Y�n��`�Z'.~b��<��_[a�tF��LuOu���-}�ZXہP���Z�?A���FN�;���M�/��O֦�FǸ���\f��խ�9�V�88���@>S�J��b$|���T�=-z�}�)U6�s�1�Ei:�vR�]9����A�Cu"y�ޡt:7V�쭔Y���d2-����mB����	x�܏GcJ��뾬iO*�qn"��;����l�7������;�s�D��o�W��O�d}<#Oӂ>�$A`
+���A��7�N�wp�
�B8�(R~�:�q�hMJ}iA��[�<՗W�}��W��6�CW`�G�Q̾�6*�qC�Nn��v�����:���E#�����h�H�U��8�V�`��^eS�&���F��M�%��Z�zcٜ�Q)�u�����PD�k�G*�۴�YRe�`hB�h��]©1�o���G�)c�������=��\��-8��f��2W�
+ m��I��|�0;_Bo��M���Ìyb���c�'y`��>��B<����c��U���å�V9����G�U�8|&�"]\A`�ΌSg�1>i�V7��))�P�����^���,%˒�j�Aa���i�����_�6��f�R_��O�Y��+cl�?9��%ܑ�-ztc\���=}�B8V7���Ő�;�|�;QFa�+	�lS�Y',Q�k"��X\Z�|e${�F��-���Vz<|��Ng��4��Pi϶�Jj���;���p��Fc�8:�~k�wė��э�}06�Xs?
+�1Io][��{�T+��r'��L��]��6�)$�;���]�Y��\W�w�]|C�]���=��&V'�mR��y�u
+˕�qB�Ή��Dl<	&n|���~}�.��G���j2"��~��fb�$�ޡ1$���c���|�s��P��� ��N��E@Y�-��,d��rD��x-�R�� �S<>��n�A�$��\N�����0���Zb!�
+6�4��~p���!�x�$����*V���6<���ዡ�98�Xg�l�w�E�Q�Z�T�M�������j*q5������������EXq�c>JA�ra�|ۮ�;FICa�dOW��6�������.�N��������ؤ�	�8����Ǖ(!�S�����9��� !�v4#�N�Ѕ��Oߔ�7*lz
+����&�,sž�0~��h��Q��'"���B���G�cU��4COsOC���9����P�
+A���hl$�>i�J�I+��)ɽ^�\������c��D�N��ͦ"�_�Ҍ��#�s�$V�߾j"��E����/���fc#�<����C���2��r��h�֒!�~0�?C�U��<o�^�\Z~���pȼ���O��b��/�z����Ro��*�FF�%�9%G�G���:��1>�:�]$�6騝��XP|����I�T�H�)Q[b�(�n����ٳg����tW`�d�ә�\kW,N`M�-3٫n)����1@����U��_���Lūg�^�g��Mt�������Qp��3�ђ���?p,j���}k1�(�(c������9�s�����)Um��,�IN�,��b��8���ie�)}�a�'��e��^�R_+�m�/Dz��Kšw�k��K�u����P���x��x����.(Ҡ��C���Q�۳}Df�1�S���Uԇ�'�R��̣Ɵ�B	�a�s���a�l��(gހ����z�!m*�����<>�+��$�F��A�x�������\�����Y~YR�DA�p�"�z?k�q����V������V�7\�i��GEm��sn�X���n��,�:�X B7�M�K�����#�(����Wk��id�ypu�1���v	b�@��o�N����zo>a
+��Ǐ�3�(���B;	a�X��P���\�i���!�*�a�j�~�0�J=�xR�9��8�d�����Ra��ܷ�*Og��qA���N�[�����PkQ�X�<5,>17��LP�Y�_//��j��/^�LZ%�@a��a�|sP�:D�WFlTA�0VM [�xN�Bo4q)�&��{ވ3��/�Cҥ"	!̧�̹t��d~�/�S5��ޣe���`��5A��0K�@{@�'�.�K��1sr���\0��W���%YWWe���%J��b�&c�=�c1
yMu�ёipx��̙�1�"�܍ⳁ�_Ǭk��gƤ�o��������ӯ�����z�[��e����U������2��<=Hn��=ĭ3��h��a������S3��_�ٝ��2HQz�jM�����&B�����4�T#�<���Z�s��l��Љ��ͯ~i�����W
+�RT-<�3��[��-
+ �jB���{z��я�<���H��.���N��+`!J���?���X�B>)U"��}�v���rf�`Bg��x���'�_�5+G`I�F�]�*?u�~��-'�zB澾�����K:����\�ZG����a{xs}�17f����6�C�����v���u����ɳ����F���V���8�����l�[�a��n�"�XN��`Z�6���R��Z3���W+��X�O����Bz	�w�9�f;[J�	i��+���6����٩:qc�q���Z��-c��n�S$�w8�b�|i��$�,;�3�v�m,�@geZ��V�0��$S�{{+,6Rx�`�;����#DQ�����jg�W����bZ�ա$Oq�Xja��_����}e�RUyF����r��u��mq�:�^J�h�� �"�Hm��nm�E�vYg@}xi[�:�,��Y�,V����
,�$^1�>�=�-o{AHŸ�=:��D�ϑkt�q8��4S-��H���ZNU�k^�����l�Yď
+P��&�A�d�l�$,
��'����ֶ!��������������JIQ�$ocT�r�}X#ɯ%����q��9�ΎCӊI5��[��6��N��m�Cb �)83\�u��V��B̂�0#_��i�p4�/�9V��L�Z�����t��vN��X�����Z.��'a3�����_'��S��F�ך�{E"�NX ��Խ�L02�x����'�����,Sw����cU�\�W����9�-?M�E�����8�b��\�U�&�V�:�-g.��qA���<��g�zki����e�������>��%�����0�|J��[�2vI�:{�ݱ���p5ǂ�.��=����2���'����B�y��t��dLU���?���]t�
��-h*|�Y'��0�
+�Xܮ
k`��X����Պ�"h�5嬠���eIa���O�3��w�v�`̆��m��T��Ku|{��Yo��閼mc��ޙ�vvт����~�ޥ��oNK)�=�c�T�<V�Zv��&\ވ政*�T�a����9��o8M�C}���I��m9��4��)0Rgo�~n.=v��z>�T��6km'�^�v^ɑ]������fI%��a$>ʳ8�0u�WY�S�uzzdHt�,m��"�`v[��Ib�j�h�VK�҉�$Z�~Q
+�>8
-}bl^���B^�'2J��j�Q/��j�%F����}�;���$�������v�����C�k�ʼn�5{"��6��^��(���
+�x������}���sǼ�vD��k��7l�@�^����Ы:� e3�Ŭ���hNG8ams�/��wA,�?h/�"K����E�!��m!���<�`i��y�pϤ뢬:F������4�7�<�
E�Ԥ��Y�b�v���ҭA�G�=u�m�V�
+��q;P��<�ݟ���6�)�
+endstream
+endobj
+13584 0 obj
+<<
+/Type /FontDescriptor
+/FontName /IQAWOJ+NimbusSanL-ReguItal
+/Flags 4
+/FontBBox [-178 -284 1108 953]
+/Ascent 712
+/CapHeight 712
+/Descent -213
+/ItalicAngle -12
+/StemV 88
+/XHeight 523
+/CharSet (/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/a/b/bracketleft/bracketright/c/colon/d/e/equal/f/fi/five/fl/g/h/hyphen/i/j/k/l/m/n/nine/o/one/p/parenleft/parenright/period/q/question/r/s/six/slash/t/three/two/u/underscore/v/w/x/y/z)
+/FontFile 13583 0 R
+>>
+endobj
+13541 0 obj
+<<
+/Type /Encoding
+/Differences [2/fi/fl 31/quotesingle 33/exclam/quotedbl/numbersign 38/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question 65/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash/bracketright 95/underscore 97/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/asciitilde 149/bullet/endash 171/guillemotleft 187/guillemotright]
+>>
+endobj
+13585 0 obj
+<<
+/Length 696       
+/Filter /FlateDecode
+>>
+stream
+x�mTMo�0��Wx���$�
+!�	�8l[�j�WHL7IP�����V=M��̼�s��u;�U����ٛ=w����������]yil;<[[�j<=?�׾+�v`��&ߴ���ț�<^*;�~&�Q���>������MS>�_��P��{=��s�@�d�����k��x�;`�VY�`�s4�Ja�Qܡn������.�Uu9\��Y6�>���<�ٴ�.Z.�������4>Dӗ��}�~�������r:-d0�V��W����k,��8���y�Lһ�ʮ��Ӯ�����ђ�[�*�m��Lr��?���q����5F8@���=��@��)&���	�8������Rx u�D�\j2�H������V���0CzL]��b�ct�I	�g$`htы0��\F��0���s����jd<�I��6����zg������W�qȐ��+��#�����k��

.�b�s��r��������b�m�X���K�7ǵH�7G�����nb�>&j�ؐ��u�������1�V�������ljOu$՟qW�S/%1{\�xB!���K(hH��TЖ枃�J�ρϯv����=k��2��U�Kς_:~�$�������/���~�E�+7��ˢ/	�l���(/}��	-+ZXuko��ԝ�E?Z�����K�q��
+endstream
+endobj
+2379 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /SYFPBV+CMMI10
+/FontDescriptor 13556 0 R
+/FirstChar 60
+/LastChar 62
+/Widths 13552 0 R
+/ToUnicode 13585 0 R
+>>
+endobj
+13586 0 obj
+<<
+/Length 696       
+/Filter /FlateDecode
+>>
+stream
+x�mTMo�0��Wx���$�
+!�	�8l[�j�WHL7IP�����V=M��̼�s��u;�U����ٛ=w����������]yil;<[[�j<=?�׾+�v`��&ߴ���ț�<^*;�~&�Q���>������MS9�_��P��{=��s�@�d�����k��x�;`�VY�`�s4�Ja�Qܡn������.�Uu9\��Y6�>���<�ٴ�.Z.�������4>Dӗ��}�~�������r:-d0�V��W����k,��8���y�Lһ�ʮ��Ӯ�����ђ�[�*�m��Lr��?���q����5F8@���=��@��)&���	�8������Rx u�D�\j2�H������V���0CzL]��b�ct�I	�g$`htы0��\F��0���s����jd<�I��6����zg������W�qȐ��+��#�����k��

.�b�s��r��������b�m�X���K�7ǵH�7G�����nb�>&j�ؐ��u�������1�V�������ljOu$՟qW�S/%1{\�xB!���K(hH��TЖ枃�J�ρϯv����=k��2��U�Kς_:~�$�������/���~�E�+7��ˢ/	�l���(/}��	-+ZXuko��ԝ�E?Z�����K�����
+endstream
+endobj
+4116 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /ZGGNQH+CMMI12
+/FontDescriptor 13558 0 R
+/FirstChar 60
+/LastChar 62
+/Widths 13540 0 R
+/ToUnicode 13586 0 R
+>>
+endobj
+13587 0 obj
+<<
+/Length 695       
+/Filter /FlateDecode
+>>
+stream
+x�mTMo�0��Wx���$�
+!�	�8l[�j�WHL7IP�����V=M��̼�s��u;�U����ٛ=w����������]yil;<[[�j<=?�׾+�v`��&ߴ���ț�<^*;�~&�Q���>������MS����>u;�����q~:fc_0F)l�����Gι�m�u
f8Gӫ6���b��"!YU�����e�.����`�M{��M���y�?I�C4}�+������̝l/���B��j�*{p��ϻƲ�O�(�'�$����*{>�J���-9_�eQ�"�V��$�)���M���P:^9� ^`����	���br�����@
�{@(\,�RH���&�ti�
+m�+�3��ԅ� ,;F�$Б��zF�F��i�eD�(��0�A�1a8��yΠF��p��nù[�w6������p�@�)9�r��9b_ia�|�F�-����(�:��(�nQH�Y^`nA|n(��戥�K��}s\��}sԑ�oA���&vq�c⠦�
YK^��ʛ!�_�m�y_)�=^ ^{��TGR��w��1�R�Dž��'�xJ�����zImi�9�������j'pͽܳ�/-�_Z��,�����N�_:
~i��y�����Y�2q�,����������n��5�Q����N�	Y��58.]������
+endstream
+endobj
+2941 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /VQCTSW+CMMI7
+/FontDescriptor 13560 0 R
+/FirstChar 45
+/LastChar 45
+/Widths 13547 0 R
+/ToUnicode 13587 0 R
+>>
+endobj
+13588 0 obj
+<<
+/Length 695       
+/Filter /FlateDecode
+>>
+stream
+x�mTMo�0��Wx���$�
+!�	�8l[�j�WHL7IP�����V=M��̼�s��u;�U����ٛ=w����������]yil;<[[�j<=?�׾+�v`��&ߴ���ț�<^*;�~&�Q���>������MS�'�K}�v��}�����t�ƾ`�R���\w���s��*��p��Wl:*;�m�_Ű=�EB��.��=��]�����6���E�%�������‡h��W���v�E�;�^N���
+ƣՊU��
+�ٟw�eӟ�Q�?O�Iz^U�U�|ڕ�ߵ6Zr�bˢXE����I�S����:.��t�r�A�&�T��H>����4�"��P�X
+��H�BM���@5�*08W�fH���AXv�.2I�##���.z�Әˈ0�Q��a8�tc�pN��0�A����2	@݆s�>^�l>^w�o�_��j�4Rrt���sľ�� ��x��[���%QLu��Q.ݢ�T� ��܂��P��Kߗp������#}߂p��M�����AM����3�7CB�2>��*�R�{�@��8񩎤�3��
+}c�$f�O�#�z	
)��
+���spW)��9���N��{=�g-�_Z��
+~�Y�K��/��t��:�������/�~e��}Y�%៍-t����:�UEk�n�m�����Gkp\�x{)���ނ�
+endstream
+endobj
+3573 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /ZRLUIR+CMMI8
+/FontDescriptor 13562 0 R
+/FirstChar 60
+/LastChar 62
+/Widths 13545 0 R
+/ToUnicode 13588 0 R
+>>
+endobj
+13589 0 obj
+<<
+/Length 695       
+/Filter /FlateDecode
+>>
+stream
+x�mTMo�0��Wx����@���H��J��+$��|(�C����	V��&�of���������=؉z��͞�K_�I�{�EwwY[\j��֖�O�O�o���}�ͶM5<8�)N�Ҏ��I�~TM����'E]W���R����pp߫��8?3��/��?�?Wm���#����L�3���U��ʎUS�W1��i�������FϢv�����y���9��jŦo��<����!��������Q�Nv��;Y�`<Z�Yi�����y_[6�i�����Lһ𪊶��n_�~�|�h�����|٦�v&�O9Gn�|�������# PM��@��)&��	H9������Rx q�D�\jR�H������V���0CzL]��b�ct��9t��H<c�F��i�eD�(��0�A�1a8��YΠF��p��nù[�w�������p�D�)9�r��b_ii�|�A�-����(�:��(�nQH���cnA|n(��f���K��}3\��}3ԑ�oN���&vq�c⠦�
YK^�)�ʛ!�_�m�z_)�<�#�x��TGR��w��1�R�ǹ��ω#��z	
	��
+ڒ�spW	�����N��{=�g-�_Z��
+~�Y�K��/=~�$��u�Kg�/#�_f�J��/���K�?[�3�K߻uB���D���6��Y��58.]�����ۂ�
+endstream
+endobj
+6558 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /YJCLWH+CMMI9
+/FontDescriptor 13564 0 R
+/FirstChar 60
+/LastChar 62
+/Widths 13539 0 R
+/ToUnicode 13589 0 R
+>>
+endobj
+13590 0 obj
+<<
+/Length 900       
+/Filter /FlateDecode
+>>
+stream
+x�mUMo�:��W�����5?$R.�d9�M����	�eC�����k�m�C��p�;;�w�~>�|��3�E�_�?O]�5߶����w�]O�c�c]=~?�}�O�yh���9%?��۹�׬��B|Ɯ�>��)�;�v�w%g����4�3������>\	��6����
+�EJ����7��8�1��{�~���`W(-��;]���%=����x����e_,�b�+-O�;q�\�L}���U��I--=���B����K������E1�p�[���!
+Mߊyu�>�.N��5K)Wb�٬�8��i�[�_��uʕM��zQ����)V���(T����x��ޢ��jy���!������Z���2��P="�Zd�0\ÃG�R\���).�2*�Шa!�U��,����H�`+j���.��5�Nα@����VK-�x�%���3�%�A�YӀz�Κ�>kP#�����5m0W�o��þ�j�������.��Z��T$X�/�)n)�#W��o(�o�RZ�$K�p4��Z�-b�\�1�ܰJ�	�P"G�X�Q��i/8�k�^��Zq�:Zs���9�d���B��)�sL�-�7��x���J�����`�a�ɽ)f��$���1��
+dъc�CZC�<�7�3J�g�z�n��HȰ���Y�ɚ�T��a����,_��-��O�87�}��KԴܗLl�oK��+�g�J��.�GZy�V��c�48������Wt�]�:P~`���rZ�q.n�1]�
��S��/��P���u��7������U������e��:�?���������&�?���!d��&��1y����H��n5���)���y�ғB��x#�1ޞ����]�Go����׏M�?�X�
+endstream
+endobj
+2380 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /MCBXAW+CMSY10
+/FontDescriptor 13566 0 R
+/FirstChar 3
+/LastChar 24
+/Widths 13551 0 R
+/ToUnicode 13590 0 R
+>>
+endobj
+13591 0 obj
+<<
+/Length 900       
+/Filter /FlateDecode
+>>
+stream
+x�mUMo�:��W�����5?$R.�d9�M����	�eC�����k�m�C��p�;;�w�~>�|��3�E�_�?O]�5߶����w�]O�c�c]=~?�}�O�yh���9%?��۹�׬��B|Ɯ�>��)�;�v�w7{>o�a�I�>
����ѲH����8���U�/R��Ǿ��0ñ�_x�����0�Ӆ�x�Bi����E��.��͏��S�=�/�b��_i�x�މ��b�c��4����fi��|8�E��X�D_R�4���.��G�R��Qh�V̪���x�vqڎ��XJ���fUı�kM;���rͭS�lҏ֋jU,�N�2�@	�"���,���
� �
��T�[<�5�
�����������1�"�<J��
+��Lq���Qq�F
!��- f1���F��[1P�v��8pr�B�E��Zj����,���y�,
�͚�u�4�F�YӀa�5
��Ȭi��}�4��Tku=���t1��
+u�"�xIMqK1���$|C1�|���^� Y���tԲm�j�1�U"O0�9��Ģ�bL�x�9�]K�֊c�њc��̡$�l�_pL��c�oy/��5��|V
+���{
�L�M1+M&1�����U �VS����%��QR>��cv��G�@�m�g�
+�K�� ��|
+T|5f�����l��xZ�1�Y��P�^ꠦ�db�}[�ה_Q>kUbw�88����]��k����|'�%Ǿ���jց�{g䈏���r�sqk��:n8��7�xIu�����������e���������.�����Af���t�0�����!�?4���ɳ4�mF��t��������Ӕ^z���1������?z	��.�~l��P}�L
+endstream
+endobj
+2940 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /ZCXKYG+CMSY7
+/FontDescriptor 13568 0 R
+/FirstChar 32
+/LastChar 110
+/Widths 13548 0 R
+/ToUnicode 13591 0 R
+>>
+endobj
+13592 0 obj
+<<
+/Length 900       
+/Filter /FlateDecode
+>>
+stream
+x�mUMo�:��W�����5?$R.�d9�M����	�eC�����k�m�C��p�;;�w�~>�|��3�E�_�?O]�5߶����w�]O�c�c]=~?�}�O�yh���9%?��۹�׬��B|Ɯ�>��)�;�v��z�|�N�8��}No)�e�0�&h�?q:��P_��	X�}��a�c1���+��a��j�Ң���~�]�ߏ��{_��r)����4��������i_�������px�`!d�Z�>���i���]���<������U������_c��r%��ͪ�c�ךv����[�\٤�ժX*�be�-�@E�-X����@�-�꩖�x�k��M
PY��@
,��#b�E�A
�5<x�*�zK��bY!���BX�[@�b8K��
+�b��=��[p���.�m��2��YB��=�Y�5
��i@�೦5�:kP��Y�s5��i:����z����b��HE���b>rEqI��b>�,�彐A�$
+G#�e�"&��c�
�D�`%r�E�*��s����(�Ǩ�5�ث�CI��*�����=ǔ��^p�k������+
��ܛbV�LbX+���@�8�:��1��3Jp3<��|6�����^Μ����AN��V���j�R����y9�cp��ס���AM�}�Ė���)��|֪�,��+pp��70��h�8�J��+�N�K�}E��լ����k)������u�p>�o����
U��^g�{�����_e�{���]��������*�?���`��C��B�h���gi�یt��V�;�۳ѝ�)�(�Z�K�7b��A;��E�^�]|���s��Q
+endstream
+endobj
+3708 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /COHSAR+CMSY8
+/FontDescriptor 13570 0 R
+/FirstChar 3
+/LastChar 24
+/Widths 13544 0 R
+/ToUnicode 13592 0 R
+>>
+endobj
+13593 0 obj
+<<
+/Length 664       
+/Filter /FlateDecode
+>>
+stream
+x�mTMo�0��Wx���vB�+��8l[�j�WHL7RI���;o��n�Do�3�ތ?n~<�&Y��$���ŝ�K_�I�s�E77E[^N���\5���sߖ;7��|[l�z���mS�_*7F�?h����3<�����te0��~q���N�ߗ��j���s�6B�K)ɱn��=A�9�n1����q��HiQ��,��'��w����ͱ�1}�������h��W���7q{UE�ݥ��-��rG*F�>�ONL�7u]~���l+��l+w�����͛�R.�b�YF������r8��)��9>*QKr��7��P�����:MȡQ^s�$LD�6�aȑ*�s.$S5�6`�>�Ƅm��Á�#TL�5��kd���}W�Xssc��*��{��R�h/#�?��
b�E$�L�|ږ����8^y�>e�SQc�����̯b�V̯c��Na'_�O���A�J��195��k���d���3��E�H�@�8�ܰ%��~A�s*=F�����0��`�{RL�Ph33�����Y��$�Lƹ�Ǭ�o��qM�s���ȼ�	t���x������\��
\�cΜ-���e�k�sL���
+?�"�@>q�hx�׷��=�l~1���֍�>*]�!�������M�8�a
+endstream
+endobj
+3885 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /PZIAYD+NimbusMonL-Bold
+/FontDescriptor 13572 0 R
+/FirstChar 47
+/LastChar 93
+/Widths 13542 0 R
+/Encoding 13541 0 R
+/ToUnicode 13593 0 R
+>>
+endobj
+13594 0 obj
+<<
+/Length 664       
+/Filter /FlateDecode
+>>
+stream
+x�mTMo�0��Wx���NB�+��8l[��+ML7RI"��;o��n�Do�3�ތ?n~<�&yݽ�Ir/ŋ=wW�I���G77eW]N���m=��ij몝�m�-�m3�Q��/�����oM�q���'}�v�I���ֿ/	����˺sӵB�K)ɱn�;A�9�n1���vA�x��HŢn�!X��N4�$�>΃=m�c-b�B���}���h��j��M�^U�ww��wBF˥�푊Q������M]���1�ʫ��ڞ�Ceݡ}��BʥXl6�ȶ��5R^�clF�r��JՒk�
;�%9�&�}�8K��|�y�091�x�&G�Ϲ��PT#Z�%�)&!lRv�D�r䨑\#G�|��bǚ��H��U����ʸ4�'�22���|� �^D�����m�=^�s����S<cL�����Uي���_�3��;�S�}Ш2?}LN�=�8g,�����u�..Q/)87l	�_����?��?�q
Zq��б��<4��4谡Цg~�ѧ��,�I�	4�sY�^y?4h�v5��O#�ܵ�y7�S�4��&�*�s��0�P�.�9S����0׬��p���~ne8�|�p��\�ouq�n6�|kq_��^����~�����&���am
+endstream
+endobj
+2381 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /YWFVZY+NimbusMonL-Regu
+/FontDescriptor 13574 0 R
+/FirstChar 33
+/LastChar 187
+/Widths 13550 0 R
+/Encoding 13541 0 R
+/ToUnicode 13594 0 R
+>>
+endobj
+13595 0 obj
+<<
+/Length 665       
+/Filter /FlateDecode
+>>
+stream
+x�mT�n�0���C����B�*�D �rضj��^Sp�H
 ���;ol�v�R��3�ތm�~<�&yݽ�Ir+œ����������G۞m=��ģ몝=��b[n��tC�۶z;�v���ʾ6�%:�������s�v�I>7�7
+��N!.���_�
M��	u+�$b��Ew��!�y1
��v��x��HŢn�SX�:���{N��m]�X���N�D�W[״���b��ݹ��,,-����F���VL��������"��~���C���۷�6ZH���fٶ��
+)/�16�X9�C�jI�x�ļ$Bi���#�����cΓ��@�l�	MD�Ϲ��PT#ZC%�)&!lR&T�G���5�k䨑�}WL�����Ԍ]U��z@��K�~bo#�?����қHљ��<�-��+`�q��}ʂ��b�I2_́Y_%��X?N����a�~Zj���G���crj�5��9c��+ϳ��E�H�D���ܰ%��~�W��Lz����9<h�5c�C�>��ܓ2�ƛ���F��ϲ`�'I&�s�e?z�yxм�j�5�F̹k�#�n��i��M�7>T��2�0�P�-�9S��A˰֬��p���~ne8�|�p��9�����9�����[��ڴ���w=���ߣ���&���c�
+endstream
+endobj
+3709 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /FRYEFT+NimbusMonL-ReguObli
+/FontDescriptor 13576 0 R
+/FirstChar 34
+/LastChar 121
+/Widths 13543 0 R
+/Encoding 13541 0 R
+/ToUnicode 13595 0 R
+>>
+endobj
+13596 0 obj
+<<
+/Length 665       
+/Filter /FlateDecode
+>>
+stream
+x�mTMk�0��Wh���F�G*!��	�miʲ��VZCc�Y��y#9톅ļ��{3���񼛤es���^��7箰���
nn�8�l=<Z[�r\��s�;;��l�o�j���m]|�K;F�?heߪ�+<����������O"�>h�zI�-.���_�뫦~�^JI�u]f�	��`��tTs����r��*o�8������{���&X,�����dew���+mW�o������s�~X(2X.Ei�T�z}ܟ��^7uY~�l��VNMє�o������
R.�b�Y�.�֔O9�؄b��%9��v�sr(MX��a�#D���$ar b�qM�D�s!���F�K�RLD���P�0.BE�HQ#͸F���uŎ577v����}�Qȕan�O�d$�g;��A,���ə�C�R;�6��+�ѧ�x**Ę$��90�����q'��o�קf���Q%n����;�5p�X2������]$��^�q���~��+�s"F����!�C�yh�Ih�~C�M��n�O�f�1�$#h�)��r~hм�j�5��F̹k�#�n��i<��7>T���sa>�s���\8s&ws�a�Y�1�:�+���r����1�\���ut����[��Z���M�,��k4�w��6�_%aJ
+endstream
+endobj
+2333 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /OXXIMI+NimbusSanL-Bold
+/FontDescriptor 13578 0 R
+/FirstChar 2
+/LastChar 122
+/Widths 13553 0 R
+/Encoding 13541 0 R
+/ToUnicode 13596 0 R
+>>
+endobj
+13597 0 obj
+<<
+/Length 666       
+/Filter /FlateDecode
+>>
+stream
+x�mT�n�0���C����6��U�@"�m�T��&�H
 CV�߯��4�v���̼7c���IV�3�o9{2}{����?�]tuU���d��ޘ�T����=ڶܙ�]��b��Í�6�۹2c���V�n.!�a�����{�sP��(;�|��7��s�����ms��-��������4ȳ�h�X7�
��"!YU�CXѻ<� y���m�m�X��������D�[[7/��b�ѻs׽X`<Z.Ye�����~2l�������a����)���ݾ4v߼�h���-6�ed��o"��cl�b�/���#��"�#�rXh��2M!Q^Rw���m<��
+��T��(���"}���	"��#D�5��jd���}WD�����D�]��{�z@.��F?��H�C����0�&t�g>ms��
+X{��<F�<���1q��90���˘�O�)�ɧu�'f_9x��>&'�^s
�椿�<iz_n.P/�)7l	�_�%�ܡ�r�џ�8�%���<��1������6����6�T~�9a��x*�\�V��E�.fT�݈)w�{$�
�>u�B��F?����-�G-��A��.�ܠ�Ik�SL8��
+?�"������:�8���Zw��ΠS��Z7��Z��Y��}4^zX=l��Bcp
+endstream
+endobj
+2922 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /CPOHGR+NimbusSanL-BoldCond
+/FontDescriptor 13580 0 R
+/FirstChar 43
+/LastChar 121
+/Widths 13549 0 R
+/Encoding 13541 0 R
+/ToUnicode 13597 0 R
+>>
+endobj
+13598 0 obj
+<<
+/Length 665       
+/Filter /FlateDecode
+>>
+stream
+x�mTMk�0��Wh���F�G*!��	�miʲ��VZCc�Y��y#9햅ļ��{3���񸟤e��&�O�o�]�&��C]]�Mq>�z�w�t��߉Ǯ)�n��.���pC���x?�n���ڽV�gx����=i��t���O"��i��� [\l���\�WM}'ԭ����̚t��4p���X�e�ȉ�eU��oq� y���M�\��-�C���n��CW���_��Ey��}wP d�Z����z891���e���uB�����)]�
+��W-�\��v��\]~[S!��8�&+���Z�c�e�"'�2�����Ɍ�5�I��@�|���"��B2AQ�h�SlL��ء28a}��ɑ�F�q�5ҍ�nn�bfǮ��CG= W�ܢ�e$�g;��A,��:�s�����x
l=N���O��T�Ƙ$��0�����_�س/vЧ����Q%~���Zx�
p�X2������]$��^�qn��a��K���?��?�q
+
FqM�y�c0�=)
&l(����m�i�,3�|�d
&�\�c��
��]͹&�ӈ9w�{d�-�t���x������\��
\�cΜ����e�k�qL��Js?�<�@>q�hx.׷8w�l~1���V��<*m�"�������m�mDa�
+endstream
+endobj
+2286 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /GABDYH+NimbusSanL-Regu
+/FontDescriptor 13582 0 R
+/FirstChar 2
+/LastChar 150
+/Widths 13554 0 R
+/Encoding 13541 0 R
+/ToUnicode 13598 0 R
+>>
+endobj
+13599 0 obj
+<<
+/Length 666       
+/Filter /FlateDecode
+>>
+stream
+x�mT�n�0���C����6��U�@"�۪�V{M�i�@��Կ�yc�t�+%��13�������n�U���ķR<��=������]tuU������*W�o�;�з�Ν�u�-�M}���mS��+7F�?h�^��q��~M���}k�	�$���|y'�Bp�O�u��	u+�$b�Ty{��!�y1
���G�Ң��SX�<���{N�mm�X��#�N�;{����}���y�[D��]��`A�h��;P5�������K_��;'4���S���}��}�⢅�K��l��k�ީ��|cS��s<T��D��7L�"�!�,=�N"4�kΓ��@�l�	CD�Ϲ�LQ� �@E��	*��#TLD�Y�52��־+&����EbǮ��}O= W�¢�m���u|YCXz	:�3�����xl=΀W�O��T�Ƙ$����Uۊ�u��'����:�S��9xT��>&��^s
�1����<kz_���ԋs�
[�8�|�0w��c�g<���(��1�}�a�'e���
�73�>��eΘO����d��~����`x�Ռk�?��s׾G��0N��-�۰o|���e>ha>6h��
Z8s��s��e�Y�1�:@++�܊p����s�q�s����o�Z�׺q�������=��7�÷c�
+endstream
+endobj
+2949 0 obj
+<<
+/Type /Font
+/Subtype /Type1
+/BaseFont /IQAWOJ+NimbusSanL-ReguItal
+/FontDescriptor 13584 0 R
+/FirstChar 2
+/LastChar 122
+/Widths 13546 0 R
+/Encoding 13541 0 R
+/ToUnicode 13599 0 R
+>>
+endobj
+2287 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13600 0 R
+/Kids [2282 0 R 2289 0 R 2331 0 R 2377 0 R 2425 0 R 2470 0 R]
+>>
+endobj
+2517 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13600 0 R
+/Kids [2515 0 R 2561 0 R 2606 0 R 2651 0 R 2696 0 R 2741 0 R]
+>>
+endobj
+2787 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13600 0 R
+/Kids [2785 0 R 2831 0 R 2876 0 R 2908 0 R 2919 0 R 2936 0 R]
+>>
+endobj
+2972 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13600 0 R
+/Kids [2969 0 R 2974 0 R 3016 0 R 3047 0 R 3063 0 R 3070 0 R]
+>>
+endobj
+3104 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13600 0 R
+/Kids [3101 0 R 3106 0 R 3181 0 R 3215 0 R 3302 0 R 3367 0 R]
+>>
+endobj
+3416 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13600 0 R
+/Kids [3409 0 R 3450 0 R 3497 0 R 3568 0 R 3637 0 R 3654 0 R]
+>>
+endobj
+3689 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13601 0 R
+/Kids [3686 0 R 3705 0 R 3724 0 R 3752 0 R 3765 0 R 3794 0 R]
+>>
+endobj
+3809 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13601 0 R
+/Kids [3805 0 R 3811 0 R 3836 0 R 3858 0 R 3880 0 R 3911 0 R]
+>>
+endobj
+3944 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13601 0 R
+/Kids [3940 0 R 3973 0 R 3994 0 R 4015 0 R 4041 0 R 4059 0 R]
+>>
+endobj
+4084 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13601 0 R
+/Kids [4080 0 R 4113 0 R 4131 0 R 4147 0 R 4168 0 R 4190 0 R]
+>>
+endobj
+4215 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13601 0 R
+/Kids [4211 0 R 4238 0 R 4268 0 R 4292 0 R 4305 0 R 4334 0 R]
+>>
+endobj
+4365 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13601 0 R
+/Kids [4361 0 R 4419 0 R 4466 0 R 4484 0 R 4505 0 R 4523 0 R]
+>>
+endobj
+4544 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13602 0 R
+/Kids [4540 0 R 4555 0 R 4580 0 R 4611 0 R 4635 0 R 4655 0 R]
+>>
+endobj
+4686 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13602 0 R
+/Kids [4681 0 R 4698 0 R 4722 0 R 4743 0 R 4777 0 R 4792 0 R]
+>>
+endobj
+4870 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13602 0 R
+/Kids [4865 0 R 4907 0 R 4928 0 R 4952 0 R 4977 0 R 5003 0 R]
+>>
+endobj
+5040 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13602 0 R
+/Kids [5037 0 R 5075 0 R 5139 0 R 5170 0 R 5186 0 R 5205 0 R]
+>>
+endobj
+5238 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13602 0 R
+/Kids [5232 0 R 5263 0 R 5283 0 R 5312 0 R 5333 0 R 5347 0 R]
+>>
+endobj
+5366 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13602 0 R
+/Kids [5360 0 R 5389 0 R 5428 0 R 5470 0 R 5497 0 R 5526 0 R]
+>>
+endobj
+5566 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13603 0 R
+/Kids [5561 0 R 5591 0 R 5635 0 R 5687 0 R 5714 0 R 5737 0 R]
+>>
+endobj
+5772 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13603 0 R
+/Kids [5768 0 R 5797 0 R 5821 0 R 5850 0 R 5876 0 R 5903 0 R]
+>>
+endobj
+5928 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13603 0 R
+/Kids [5923 0 R 5946 0 R 5966 0 R 5988 0 R 6011 0 R 6035 0 R]
+>>
+endobj
+6079 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13603 0 R
+/Kids [6072 0 R 6104 0 R 6133 0 R 6189 0 R 6212 0 R 6242 0 R]
+>>
+endobj
+6276 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13603 0 R
+/Kids [6271 0 R 6302 0 R 6335 0 R 6365 0 R 6389 0 R 6412 0 R]
+>>
+endobj
+6439 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13603 0 R
+/Kids [6434 0 R 6455 0 R 6473 0 R 6494 0 R 6527 0 R 6554 0 R]
+>>
+endobj
+6581 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13604 0 R
+/Kids [6577 0 R 6589 0 R 6606 0 R 6652 0 R 6706 0 R 6748 0 R]
+>>
+endobj
+6769 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13604 0 R
+/Kids [6765 0 R 6783 0 R 6810 0 R 6843 0 R 6866 0 R 6889 0 R]
+>>
+endobj
+6917 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13604 0 R
+/Kids [6913 0 R 6943 0 R 6958 0 R 6965 0 R 6992 0 R 7009 0 R]
+>>
+endobj
+7144 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13604 0 R
+/Kids [7107 0 R 7186 0 R 7244 0 R 7275 0 R 7308 0 R 7355 0 R]
+>>
+endobj
+7451 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13604 0 R
+/Kids [7421 0 R 7470 0 R 7514 0 R 7593 0 R 7699 0 R 7796 0 R]
+>>
+endobj
+7917 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13604 0 R
+/Kids [7845 0 R 7938 0 R 8048 0 R 8171 0 R 8227 0 R 8308 0 R]
+>>
+endobj
+8401 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13605 0 R
+/Kids [8384 0 R 8432 0 R 8467 0 R 8535 0 R 8590 0 R 8678 0 R]
+>>
+endobj
+8771 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13605 0 R
+/Kids [8748 0 R 8842 0 R 8940 0 R 9035 0 R 9128 0 R 9225 0 R]
+>>
+endobj
+9395 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13605 0 R
+/Kids [9332 0 R 9411 0 R 9517 0 R 9623 0 R 9681 0 R 9757 0 R]
+>>
+endobj
+9868 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13605 0 R
+/Kids [9827 0 R 9898 0 R 9995 0 R 10112 0 R 10218 0 R 10317 0 R]
+>>
+endobj
+10483 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13605 0 R
+/Kids [10441 0 R 10557 0 R 10661 0 R 10697 0 R 10726 0 R 10841 0 R]
+>>
+endobj
+10956 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13605 0 R
+/Kids [10897 0 R 10993 0 R 11079 0 R 11184 0 R 11264 0 R 11357 0 R]
+>>
+endobj
+11523 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13606 0 R
+/Kids [11440 0 R 11551 0 R 11622 0 R 11724 0 R 11802 0 R 11925 0 R]
+>>
+endobj
+11993 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13606 0 R
+/Kids [11984 0 R 12076 0 R 12187 0 R 12293 0 R 12388 0 R 12433 0 R]
+>>
+endobj
+12581 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13606 0 R
+/Kids [12518 0 R 12592 0 R 12695 0 R 12751 0 R 12793 0 R 12811 0 R]
+>>
+endobj
+12877 0 obj
+<<
+/Type /Pages
+/Count 6
+/Parent 13606 0 R
+/Kids [12874 0 R 12953 0 R 13051 0 R 13124 0 R 13229 0 R 13350 0 R]
+>>
+endobj
+13476 0 obj
+<<
+/Type /Pages
+/Count 2
+/Parent 13606 0 R
+/Kids [13473 0 R 13536 0 R]
+>>
+endobj
+13600 0 obj
+<<
+/Type /Pages
+/Count 36
+/Parent 13607 0 R
+/Kids [2287 0 R 2517 0 R 2787 0 R 2972 0 R 3104 0 R 3416 0 R]
+>>
+endobj
+13601 0 obj
+<<
+/Type /Pages
+/Count 36
+/Parent 13607 0 R
+/Kids [3689 0 R 3809 0 R 3944 0 R 4084 0 R 4215 0 R 4365 0 R]
+>>
+endobj
+13602 0 obj
+<<
+/Type /Pages
+/Count 36
+/Parent 13607 0 R
+/Kids [4544 0 R 4686 0 R 4870 0 R 5040 0 R 5238 0 R 5366 0 R]
+>>
+endobj
+13603 0 obj
+<<
+/Type /Pages
+/Count 36
+/Parent 13607 0 R
+/Kids [5566 0 R 5772 0 R 5928 0 R 6079 0 R 6276 0 R 6439 0 R]
+>>
+endobj
+13604 0 obj
+<<
+/Type /Pages
+/Count 36
+/Parent 13607 0 R
+/Kids [6581 0 R 6769 0 R 6917 0 R 7144 0 R 7451 0 R 7917 0 R]
+>>
+endobj
+13605 0 obj
+<<
+/Type /Pages
+/Count 36
+/Parent 13607 0 R
+/Kids [8401 0 R 8771 0 R 9395 0 R 9868 0 R 10483 0 R 10956 0 R]
+>>
+endobj
+13606 0 obj
+<<
+/Type /Pages
+/Count 26
+/Parent 13608 0 R
+/Kids [11523 0 R 11993 0 R 12581 0 R 12877 0 R 13476 0 R]
+>>
+endobj
+13607 0 obj
+<<
+/Type /Pages
+/Count 216
+/Parent 13609 0 R
+/Kids [13600 0 R 13601 0 R 13602 0 R 13603 0 R 13604 0 R 13605 0 R]
+>>
+endobj
+13608 0 obj
+<<
+/Type /Pages
+/Count 26
+/Parent 13609 0 R
+/Kids [13606 0 R]
+>>
+endobj
+13609 0 obj
+<<
+/Type /Pages
+/Count 242
+/Kids [13607 0 R 13608 0 R]
+>>
+endobj
+13610 0 obj
+<<
+/Type /Outlines
+/First 3 0 R
+/Last 2279 0 R
+/Count 10
+>>
+endobj
+2279 0 obj
+<<
+/Title 2280 0 R
+/A 2277 0 R
+/Parent 13610 0 R
+/Prev 1731 0 R
+>>
+endobj
+2275 0 obj
+<<
+/Title 2276 0 R
+/A 2273 0 R
+/Parent 1731 0 R
+/Prev 2271 0 R
+>>
+endobj
+2271 0 obj
+<<
+/Title 2272 0 R
+/A 2269 0 R
+/Parent 1731 0 R
+/Prev 2267 0 R
+/Next 2275 0 R
+>>
+endobj
+2267 0 obj
+<<
+/Title 2268 0 R
+/A 2265 0 R
+/Parent 1731 0 R
+/Prev 2263 0 R
+/Next 2271 0 R
+>>
+endobj
+2263 0 obj
+<<
+/Title 2264 0 R
+/A 2261 0 R
+/Parent 1731 0 R
+/Prev 2259 0 R
+/Next 2267 0 R
+>>
+endobj
+2259 0 obj
+<<
+/Title 2260 0 R
+/A 2257 0 R
+/Parent 1731 0 R
+/Prev 2255 0 R
+/Next 2263 0 R
+>>
+endobj
+2255 0 obj
+<<
+/Title 2256 0 R
+/A 2253 0 R
+/Parent 1731 0 R
+/Prev 2251 0 R
+/Next 2259 0 R
+>>
+endobj
+2251 0 obj
+<<
+/Title 2252 0 R
+/A 2249 0 R
+/Parent 1731 0 R
+/Prev 2247 0 R
+/Next 2255 0 R
+>>
+endobj
+2247 0 obj
+<<
+/Title 2248 0 R
+/A 2245 0 R
+/Parent 1731 0 R
+/Prev 2243 0 R
+/Next 2251 0 R
+>>
+endobj
+2243 0 obj
+<<
+/Title 2244 0 R
+/A 2241 0 R
+/Parent 1731 0 R
+/Prev 2231 0 R
+/Next 2247 0 R
+>>
+endobj
+2239 0 obj
+<<
+/Title 2240 0 R
+/A 2237 0 R
+/Parent 2235 0 R
+>>
+endobj
+2235 0 obj
+<<
+/Title 2236 0 R
+/A 2233 0 R
+/Parent 2231 0 R
+/First 2239 0 R
+/Last 2239 0 R
+/Count -1
+>>
+endobj
+2231 0 obj
+<<
+/Title 2232 0 R
+/A 2229 0 R
+/Parent 1731 0 R
+/Prev 2227 0 R
+/Next 2243 0 R
+/First 2235 0 R
+/Last 2235 0 R
+/Count -1
+>>
+endobj
+2227 0 obj
+<<
+/Title 2228 0 R
+/A 2225 0 R
+/Parent 1731 0 R
+/Prev 2223 0 R
+/Next 2231 0 R
+>>
+endobj
+2223 0 obj
+<<
+/Title 2224 0 R
+/A 2221 0 R
+/Parent 1731 0 R
+/Prev 2219 0 R
+/Next 2227 0 R
+>>
+endobj
+2219 0 obj
+<<
+/Title 2220 0 R
+/A 2217 0 R
+/Parent 1731 0 R
+/Prev 2215 0 R
+/Next 2223 0 R
+>>
+endobj
+2215 0 obj
+<<
+/Title 2216 0 R
+/A 2213 0 R
+/Parent 1731 0 R
+/Prev 2211 0 R
+/Next 2219 0 R
+>>
+endobj
+2211 0 obj
+<<
+/Title 2212 0 R
+/A 2209 0 R
+/Parent 1731 0 R
+/Prev 2207 0 R
+/Next 2215 0 R
+>>
+endobj
+2207 0 obj
+<<
+/Title 2208 0 R
+/A 2205 0 R
+/Parent 1731 0 R
+/Prev 2203 0 R
+/Next 2211 0 R
+>>
+endobj
+2203 0 obj
+<<
+/Title 2204 0 R
+/A 2201 0 R
+/Parent 1731 0 R
+/Prev 2199 0 R
+/Next 2207 0 R
+>>
+endobj
+2199 0 obj
+<<
+/Title 2200 0 R
+/A 2197 0 R
+/Parent 1731 0 R
+/Prev 2195 0 R
+/Next 2203 0 R
+>>
+endobj
+2195 0 obj
+<<
+/Title 2196 0 R
+/A 2193 0 R
+/Parent 1731 0 R
+/Prev 2191 0 R
+/Next 2199 0 R
+>>
+endobj
+2191 0 obj
+<<
+/Title 2192 0 R
+/A 2189 0 R
+/Parent 1731 0 R
+/Prev 2187 0 R
+/Next 2195 0 R
+>>
+endobj
+2187 0 obj
+<<
+/Title 2188 0 R
+/A 2185 0 R
+/Parent 1731 0 R
+/Prev 2183 0 R
+/Next 2191 0 R
+>>
+endobj
+2183 0 obj
+<<
+/Title 2184 0 R
+/A 2181 0 R
+/Parent 1731 0 R
+/Prev 2179 0 R
+/Next 2187 0 R
+>>
+endobj
+2179 0 obj
+<<
+/Title 2180 0 R
+/A 2177 0 R
+/Parent 1731 0 R
+/Prev 2175 0 R
+/Next 2183 0 R
+>>
+endobj
+2175 0 obj
+<<
+/Title 2176 0 R
+/A 2173 0 R
+/Parent 1731 0 R
+/Prev 2171 0 R
+/Next 2179 0 R
+>>
+endobj
+2171 0 obj
+<<
+/Title 2172 0 R
+/A 2169 0 R
+/Parent 1731 0 R
+/Prev 2167 0 R
+/Next 2175 0 R
+>>
+endobj
+2167 0 obj
+<<
+/Title 2168 0 R
+/A 2165 0 R
+/Parent 1731 0 R
+/Prev 2163 0 R
+/Next 2171 0 R
+>>
+endobj
+2163 0 obj
+<<
+/Title 2164 0 R
+/A 2161 0 R
+/Parent 1731 0 R
+/Prev 2159 0 R
+/Next 2167 0 R
+>>
+endobj
+2159 0 obj
+<<
+/Title 2160 0 R
+/A 2157 0 R
+/Parent 1731 0 R
+/Prev 2155 0 R
+/Next 2163 0 R
+>>
+endobj
+2155 0 obj
+<<
+/Title 2156 0 R
+/A 2153 0 R
+/Parent 1731 0 R
+/Prev 2151 0 R
+/Next 2159 0 R
+>>
+endobj
+2151 0 obj
+<<
+/Title 2152 0 R
+/A 2149 0 R
+/Parent 1731 0 R
+/Prev 2147 0 R
+/Next 2155 0 R
+>>
+endobj
+2147 0 obj
+<<
+/Title 2148 0 R
+/A 2145 0 R
+/Parent 1731 0 R
+/Prev 2143 0 R
+/Next 2151 0 R
+>>
+endobj
+2143 0 obj
+<<
+/Title 2144 0 R
+/A 2141 0 R
+/Parent 1731 0 R
+/Prev 2139 0 R
+/Next 2147 0 R
+>>
+endobj
+2139 0 obj
+<<
+/Title 2140 0 R
+/A 2137 0 R
+/Parent 1731 0 R
+/Prev 2135 0 R
+/Next 2143 0 R
+>>
+endobj
+2135 0 obj
+<<
+/Title 2136 0 R
+/A 2133 0 R
+/Parent 1731 0 R
+/Prev 2131 0 R
+/Next 2139 0 R
+>>
+endobj
+2131 0 obj
+<<
+/Title 2132 0 R
+/A 2129 0 R
+/Parent 1731 0 R
+/Prev 2095 0 R
+/Next 2135 0 R
+>>
+endobj
+2127 0 obj
+<<
+/Title 2128 0 R
+/A 2125 0 R
+/Parent 2099 0 R
+/Prev 2123 0 R
+>>
+endobj
+2123 0 obj
+<<
+/Title 2124 0 R
+/A 2121 0 R
+/Parent 2099 0 R
+/Prev 2119 0 R
+/Next 2127 0 R
+>>
+endobj
+2119 0 obj
+<<
+/Title 2120 0 R
+/A 2117 0 R
+/Parent 2099 0 R
+/Prev 2115 0 R
+/Next 2123 0 R
+>>
+endobj
+2115 0 obj
+<<
+/Title 2116 0 R
+/A 2113 0 R
+/Parent 2099 0 R
+/Prev 2111 0 R
+/Next 2119 0 R
+>>
+endobj
+2111 0 obj
+<<
+/Title 2112 0 R
+/A 2109 0 R
+/Parent 2099 0 R
+/Prev 2107 0 R
+/Next 2115 0 R
+>>
+endobj
+2107 0 obj
+<<
+/Title 2108 0 R
+/A 2105 0 R
+/Parent 2099 0 R
+/Prev 2103 0 R
+/Next 2111 0 R
+>>
+endobj
+2103 0 obj
+<<
+/Title 2104 0 R
+/A 2101 0 R
+/Parent 2099 0 R
+/Next 2107 0 R
+>>
+endobj
+2099 0 obj
+<<
+/Title 2100 0 R
+/A 2097 0 R
+/Parent 2095 0 R
+/First 2103 0 R
+/Last 2127 0 R
+/Count -7
+>>
+endobj
+2095 0 obj
+<<
+/Title 2096 0 R
+/A 2093 0 R
+/Parent 1731 0 R
+/Prev 2091 0 R
+/Next 2131 0 R
+/First 2099 0 R
+/Last 2099 0 R
+/Count -1
+>>
+endobj
+2091 0 obj
+<<
+/Title 2092 0 R
+/A 2089 0 R
+/Parent 1731 0 R
+/Prev 2087 0 R
+/Next 2095 0 R
+>>
+endobj
+2087 0 obj
+<<
+/Title 2088 0 R
+/A 2085 0 R
+/Parent 1731 0 R
+/Prev 2083 0 R
+/Next 2091 0 R
+>>
+endobj
+2083 0 obj
+<<
+/Title 2084 0 R
+/A 2081 0 R
+/Parent 1731 0 R
+/Prev 2079 0 R
+/Next 2087 0 R
+>>
+endobj
+2079 0 obj
+<<
+/Title 2080 0 R
+/A 2077 0 R
+/Parent 1731 0 R
+/Prev 2075 0 R
+/Next 2083 0 R
+>>
+endobj
+2075 0 obj
+<<
+/Title 2076 0 R
+/A 2073 0 R
+/Parent 1731 0 R
+/Prev 2071 0 R
+/Next 2079 0 R
+>>
+endobj
+2071 0 obj
+<<
+/Title 2072 0 R
+/A 2069 0 R
+/Parent 1731 0 R
+/Prev 2067 0 R
+/Next 2075 0 R
+>>
+endobj
+2067 0 obj
+<<
+/Title 2068 0 R
+/A 2065 0 R
+/Parent 1731 0 R
+/Prev 2047 0 R
+/Next 2071 0 R
+>>
+endobj
+2063 0 obj
+<<
+/Title 2064 0 R
+/A 2061 0 R
+/Parent 2051 0 R
+/Prev 2059 0 R
+>>
+endobj
+2059 0 obj
+<<
+/Title 2060 0 R
+/A 2057 0 R
+/Parent 2051 0 R
+/Prev 2055 0 R
+/Next 2063 0 R
+>>
+endobj
+2055 0 obj
+<<
+/Title 2056 0 R
+/A 2053 0 R
+/Parent 2051 0 R
+/Next 2059 0 R
+>>
+endobj
+2051 0 obj
+<<
+/Title 2052 0 R
+/A 2049 0 R
+/Parent 2047 0 R
+/First 2055 0 R
+/Last 2063 0 R
+/Count -3
+>>
+endobj
+2047 0 obj
+<<
+/Title 2048 0 R
+/A 2045 0 R
+/Parent 1731 0 R
+/Prev 2043 0 R
+/Next 2067 0 R
+/First 2051 0 R
+/Last 2051 0 R
+/Count -1
+>>
+endobj
+2043 0 obj
+<<
+/Title 2044 0 R
+/A 2041 0 R
+/Parent 1731 0 R
+/Prev 2039 0 R
+/Next 2047 0 R
+>>
+endobj
+2039 0 obj
+<<
+/Title 2040 0 R
+/A 2037 0 R
+/Parent 1731 0 R
+/Prev 2035 0 R
+/Next 2043 0 R
+>>
+endobj
+2035 0 obj
+<<
+/Title 2036 0 R
+/A 2033 0 R
+/Parent 1731 0 R
+/Prev 2031 0 R
+/Next 2039 0 R
+>>
+endobj
+2031 0 obj
+<<
+/Title 2032 0 R
+/A 2029 0 R
+/Parent 1731 0 R
+/Prev 2027 0 R
+/Next 2035 0 R
+>>
+endobj
+2027 0 obj
+<<
+/Title 2028 0 R
+/A 2025 0 R
+/Parent 1731 0 R
+/Prev 2023 0 R
+/Next 2031 0 R
+>>
+endobj
+2023 0 obj
+<<
+/Title 2024 0 R
+/A 2021 0 R
+/Parent 1731 0 R
+/Prev 2019 0 R
+/Next 2027 0 R
+>>
+endobj
+2019 0 obj
+<<
+/Title 2020 0 R
+/A 2017 0 R
+/Parent 1731 0 R
+/Prev 2015 0 R
+/Next 2023 0 R
+>>
+endobj
+2015 0 obj
+<<
+/Title 2016 0 R
+/A 2013 0 R
+/Parent 1731 0 R
+/Prev 2011 0 R
+/Next 2019 0 R
+>>
+endobj
+2011 0 obj
+<<
+/Title 2012 0 R
+/A 2009 0 R
+/Parent 1731 0 R
+/Prev 2007 0 R
+/Next 2015 0 R
+>>
+endobj
+2007 0 obj
+<<
+/Title 2008 0 R
+/A 2005 0 R
+/Parent 1731 0 R
+/Prev 2003 0 R
+/Next 2011 0 R
+>>
+endobj
+2003 0 obj
+<<
+/Title 2004 0 R
+/A 2001 0 R
+/Parent 1731 0 R
+/Prev 1999 0 R
+/Next 2007 0 R
+>>
+endobj
+1999 0 obj
+<<
+/Title 2000 0 R
+/A 1997 0 R
+/Parent 1731 0 R
+/Prev 1995 0 R
+/Next 2003 0 R
+>>
+endobj
+1995 0 obj
+<<
+/Title 1996 0 R
+/A 1993 0 R
+/Parent 1731 0 R
+/Prev 1979 0 R
+/Next 1999 0 R
+>>
+endobj
+1991 0 obj
+<<
+/Title 1992 0 R
+/A 1989 0 R
+/Parent 1983 0 R
+/Prev 1987 0 R
+>>
+endobj
+1987 0 obj
+<<
+/Title 1988 0 R
+/A 1985 0 R
+/Parent 1983 0 R
+/Next 1991 0 R
+>>
+endobj
+1983 0 obj
+<<
+/Title 1984 0 R
+/A 1981 0 R
+/Parent 1979 0 R
+/First 1987 0 R
+/Last 1991 0 R
+/Count -2
+>>
+endobj
+1979 0 obj
+<<
+/Title 1980 0 R
+/A 1977 0 R
+/Parent 1731 0 R
+/Prev 1975 0 R
+/Next 1995 0 R
+/First 1983 0 R
+/Last 1983 0 R
+/Count -1
+>>
+endobj
+1975 0 obj
+<<
+/Title 1976 0 R
+/A 1973 0 R
+/Parent 1731 0 R
+/Prev 1971 0 R
+/Next 1979 0 R
+>>
+endobj
+1971 0 obj
+<<
+/Title 1972 0 R
+/A 1969 0 R
+/Parent 1731 0 R
+/Prev 1967 0 R
+/Next 1975 0 R
+>>
+endobj
+1967 0 obj
+<<
+/Title 1968 0 R
+/A 1965 0 R
+/Parent 1731 0 R
+/Prev 1963 0 R
+/Next 1971 0 R
+>>
+endobj
+1963 0 obj
+<<
+/Title 1964 0 R
+/A 1961 0 R
+/Parent 1731 0 R
+/Prev 1959 0 R
+/Next 1967 0 R
+>>
+endobj
+1959 0 obj
+<<
+/Title 1960 0 R
+/A 1957 0 R
+/Parent 1731 0 R
+/Prev 1955 0 R
+/Next 1963 0 R
+>>
+endobj
+1955 0 obj
+<<
+/Title 1956 0 R
+/A 1953 0 R
+/Parent 1731 0 R
+/Prev 1951 0 R
+/Next 1959 0 R
+>>
+endobj
+1951 0 obj
+<<
+/Title 1952 0 R
+/A 1949 0 R
+/Parent 1731 0 R
+/Prev 1947 0 R
+/Next 1955 0 R
+>>
+endobj
+1947 0 obj
+<<
+/Title 1948 0 R
+/A 1945 0 R
+/Parent 1731 0 R
+/Prev 1943 0 R
+/Next 1951 0 R
+>>
+endobj
+1943 0 obj
+<<
+/Title 1944 0 R
+/A 1941 0 R
+/Parent 1731 0 R
+/Prev 1939 0 R
+/Next 1947 0 R
+>>
+endobj
+1939 0 obj
+<<
+/Title 1940 0 R
+/A 1937 0 R
+/Parent 1731 0 R
+/Prev 1935 0 R
+/Next 1943 0 R
+>>
+endobj
+1935 0 obj
+<<
+/Title 1936 0 R
+/A 1933 0 R
+/Parent 1731 0 R
+/Prev 1931 0 R
+/Next 1939 0 R
+>>
+endobj
+1931 0 obj
+<<
+/Title 1932 0 R
+/A 1929 0 R
+/Parent 1731 0 R
+/Prev 1927 0 R
+/Next 1935 0 R
+>>
+endobj
+1927 0 obj
+<<
+/Title 1928 0 R
+/A 1925 0 R
+/Parent 1731 0 R
+/Prev 1923 0 R
+/Next 1931 0 R
+>>
+endobj
+1923 0 obj
+<<
+/Title 1924 0 R
+/A 1921 0 R
+/Parent 1731 0 R
+/Prev 1919 0 R
+/Next 1927 0 R
+>>
+endobj
+1919 0 obj
+<<
+/Title 1920 0 R
+/A 1917 0 R
+/Parent 1731 0 R
+/Prev 1915 0 R
+/Next 1923 0 R
+>>
+endobj
+1915 0 obj
+<<
+/Title 1916 0 R
+/A 1913 0 R
+/Parent 1731 0 R
+/Prev 1911 0 R
+/Next 1919 0 R
+>>
+endobj
+1911 0 obj
+<<
+/Title 1912 0 R
+/A 1909 0 R
+/Parent 1731 0 R
+/Prev 1907 0 R
+/Next 1915 0 R
+>>
+endobj
+1907 0 obj
+<<
+/Title 1908 0 R
+/A 1905 0 R
+/Parent 1731 0 R
+/Prev 1903 0 R
+/Next 1911 0 R
+>>
+endobj
+1903 0 obj
+<<
+/Title 1904 0 R
+/A 1901 0 R
+/Parent 1731 0 R
+/Prev 1899 0 R
+/Next 1907 0 R
+>>
+endobj
+1899 0 obj
+<<
+/Title 1900 0 R
+/A 1897 0 R
+/Parent 1731 0 R
+/Prev 1895 0 R
+/Next 1903 0 R
+>>
+endobj
+1895 0 obj
+<<
+/Title 1896 0 R
+/A 1893 0 R
+/Parent 1731 0 R
+/Prev 1883 0 R
+/Next 1899 0 R
+>>
+endobj
+1891 0 obj
+<<
+/Title 1892 0 R
+/A 1889 0 R
+/Parent 1887 0 R
+>>
+endobj
+1887 0 obj
+<<
+/Title 1888 0 R
+/A 1885 0 R
+/Parent 1883 0 R
+/First 1891 0 R
+/Last 1891 0 R
+/Count -1
+>>
+endobj
+1883 0 obj
+<<
+/Title 1884 0 R
+/A 1881 0 R
+/Parent 1731 0 R
+/Prev 1879 0 R
+/Next 1895 0 R
+/First 1887 0 R
+/Last 1887 0 R
+/Count -1
+>>
+endobj
+1879 0 obj
+<<
+/Title 1880 0 R
+/A 1877 0 R
+/Parent 1731 0 R
+/Prev 1875 0 R
+/Next 1883 0 R
+>>
+endobj
+1875 0 obj
+<<
+/Title 1876 0 R
+/A 1873 0 R
+/Parent 1731 0 R
+/Prev 1871 0 R
+/Next 1879 0 R
+>>
+endobj
+1871 0 obj
+<<
+/Title 1872 0 R
+/A 1869 0 R
+/Parent 1731 0 R
+/Prev 1867 0 R
+/Next 1875 0 R
+>>
+endobj
+1867 0 obj
+<<
+/Title 1868 0 R
+/A 1865 0 R
+/Parent 1731 0 R
+/Prev 1863 0 R
+/Next 1871 0 R
+>>
+endobj
+1863 0 obj
+<<
+/Title 1864 0 R
+/A 1861 0 R
+/Parent 1731 0 R
+/Prev 1859 0 R
+/Next 1867 0 R
+>>
+endobj
+1859 0 obj
+<<
+/Title 1860 0 R
+/A 1857 0 R
+/Parent 1731 0 R
+/Prev 1855 0 R
+/Next 1863 0 R
+>>
+endobj
+1855 0 obj
+<<
+/Title 1856 0 R
+/A 1853 0 R
+/Parent 1731 0 R
+/Prev 1851 0 R
+/Next 1859 0 R
+>>
+endobj
+1851 0 obj
+<<
+/Title 1852 0 R
+/A 1849 0 R
+/Parent 1731 0 R
+/Prev 1847 0 R
+/Next 1855 0 R
+>>
+endobj
+1847 0 obj
+<<
+/Title 1848 0 R
+/A 1845 0 R
+/Parent 1731 0 R
+/Prev 1835 0 R
+/Next 1851 0 R
+>>
+endobj
+1843 0 obj
+<<
+/Title 1844 0 R
+/A 1841 0 R
+/Parent 1839 0 R
+>>
+endobj
+1839 0 obj
+<<
+/Title 1840 0 R
+/A 1837 0 R
+/Parent 1835 0 R
+/First 1843 0 R
+/Last 1843 0 R
+/Count -1
+>>
+endobj
+1835 0 obj
+<<
+/Title 1836 0 R
+/A 1833 0 R
+/Parent 1731 0 R
+/Prev 1831 0 R
+/Next 1847 0 R
+/First 1839 0 R
+/Last 1839 0 R
+/Count -1
+>>
+endobj
+1831 0 obj
+<<
+/Title 1832 0 R
+/A 1829 0 R
+/Parent 1731 0 R
+/Prev 1819 0 R
+/Next 1835 0 R
+>>
+endobj
+1827 0 obj
+<<
+/Title 1828 0 R
+/A 1825 0 R
+/Parent 1823 0 R
+>>
+endobj
+1823 0 obj
+<<
+/Title 1824 0 R
+/A 1821 0 R
+/Parent 1819 0 R
+/First 1827 0 R
+/Last 1827 0 R
+/Count -1
+>>
+endobj
+1819 0 obj
+<<
+/Title 1820 0 R
+/A 1817 0 R
+/Parent 1731 0 R
+/Prev 1815 0 R
+/Next 1831 0 R
+/First 1823 0 R
+/Last 1823 0 R
+/Count -1
+>>
+endobj
+1815 0 obj
+<<
+/Title 1816 0 R
+/A 1813 0 R
+/Parent 1731 0 R
+/Prev 1803 0 R
+/Next 1819 0 R
+>>
+endobj
+1811 0 obj
+<<
+/Title 1812 0 R
+/A 1809 0 R
+/Parent 1807 0 R
+>>
+endobj
+1807 0 obj
+<<
+/Title 1808 0 R
+/A 1805 0 R
+/Parent 1803 0 R
+/First 1811 0 R
+/Last 1811 0 R
+/Count -1
+>>
+endobj
+1803 0 obj
+<<
+/Title 1804 0 R
+/A 1801 0 R
+/Parent 1731 0 R
+/Prev 1799 0 R
+/Next 1815 0 R
+/First 1807 0 R
+/Last 1807 0 R
+/Count -1
+>>
+endobj
+1799 0 obj
+<<
+/Title 1800 0 R
+/A 1797 0 R
+/Parent 1731 0 R
+/Prev 1787 0 R
+/Next 1803 0 R
+>>
+endobj
+1795 0 obj
+<<
+/Title 1796 0 R
+/A 1793 0 R
+/Parent 1791 0 R
+>>
+endobj
+1791 0 obj
+<<
+/Title 1792 0 R
+/A 1789 0 R
+/Parent 1787 0 R
+/First 1795 0 R
+/Last 1795 0 R
+/Count -1
+>>
+endobj
+1787 0 obj
+<<
+/Title 1788 0 R
+/A 1785 0 R
+/Parent 1731 0 R
+/Prev 1783 0 R
+/Next 1799 0 R
+/First 1791 0 R
+/Last 1791 0 R
+/Count -1
+>>
+endobj
+1783 0 obj
+<<
+/Title 1784 0 R
+/A 1781 0 R
+/Parent 1731 0 R
+/Prev 1779 0 R
+/Next 1787 0 R
+>>
+endobj
+1779 0 obj
+<<
+/Title 1780 0 R
+/A 1777 0 R
+/Parent 1731 0 R
+/Prev 1775 0 R
+/Next 1783 0 R
+>>
+endobj
+1775 0 obj
+<<
+/Title 1776 0 R
+/A 1773 0 R
+/Parent 1731 0 R
+/Prev 1771 0 R
+/Next 1779 0 R
+>>
+endobj
+1771 0 obj
+<<
+/Title 1772 0 R
+/A 1769 0 R
+/Parent 1731 0 R
+/Prev 1767 0 R
+/Next 1775 0 R
+>>
+endobj
+1767 0 obj
+<<
+/Title 1768 0 R
+/A 1765 0 R
+/Parent 1731 0 R
+/Prev 1755 0 R
+/Next 1771 0 R
+>>
+endobj
+1763 0 obj
+<<
+/Title 1764 0 R
+/A 1761 0 R
+/Parent 1759 0 R
+>>
+endobj
+1759 0 obj
+<<
+/Title 1760 0 R
+/A 1757 0 R
+/Parent 1755 0 R
+/First 1763 0 R
+/Last 1763 0 R
+/Count -1
+>>
+endobj
+1755 0 obj
+<<
+/Title 1756 0 R
+/A 1753 0 R
+/Parent 1731 0 R
+/Prev 1751 0 R
+/Next 1767 0 R
+/First 1759 0 R
+/Last 1759 0 R
+/Count -1
+>>
+endobj
+1751 0 obj
+<<
+/Title 1752 0 R
+/A 1749 0 R
+/Parent 1731 0 R
+/Prev 1739 0 R
+/Next 1755 0 R
+>>
+endobj
+1747 0 obj
+<<
+/Title 1748 0 R
+/A 1745 0 R
+/Parent 1743 0 R
+>>
+endobj
+1743 0 obj
+<<
+/Title 1744 0 R
+/A 1741 0 R
+/Parent 1739 0 R
+/First 1747 0 R
+/Last 1747 0 R
+/Count -1
+>>
+endobj
+1739 0 obj
+<<
+/Title 1740 0 R
+/A 1737 0 R
+/Parent 1731 0 R
+/Prev 1735 0 R
+/Next 1751 0 R
+/First 1743 0 R
+/Last 1743 0 R
+/Count -1
+>>
+endobj
+1735 0 obj
+<<
+/Title 1736 0 R
+/A 1733 0 R
+/Parent 1731 0 R
+/Next 1739 0 R
+>>
+endobj
+1731 0 obj
+<<
+/Title 1732 0 R
+/A 1729 0 R
+/Parent 13610 0 R
+/Prev 267 0 R
+/Next 2279 0 R
+/First 1735 0 R
+/Last 2275 0 R
+/Count -105
+>>
+endobj
+1727 0 obj
+<<
+/Title 1728 0 R
+/A 1725 0 R
+/Parent 1715 0 R
+/Prev 1723 0 R
+>>
+endobj
+1723 0 obj
+<<
+/Title 1724 0 R
+/A 1721 0 R
+/Parent 1715 0 R
+/Prev 1719 0 R
+/Next 1727 0 R
+>>
+endobj
+1719 0 obj
+<<
+/Title 1720 0 R
+/A 1717 0 R
+/Parent 1715 0 R
+/Next 1723 0 R
+>>
+endobj
+1715 0 obj
+<<
+/Title 1716 0 R
+/A 1713 0 R
+/Parent 1631 0 R
+/Prev 1651 0 R
+/First 1719 0 R
+/Last 1727 0 R
+/Count -3
+>>
+endobj
+1711 0 obj
+<<
+/Title 1712 0 R
+/A 1709 0 R
+/Parent 1651 0 R
+/Prev 1707 0 R
+>>
+endobj
+1707 0 obj
+<<
+/Title 1708 0 R
+/A 1705 0 R
+/Parent 1651 0 R
+/Prev 1703 0 R
+/Next 1711 0 R
+>>
+endobj
+1703 0 obj
+<<
+/Title 1704 0 R
+/A 1701 0 R
+/Parent 1651 0 R
+/Prev 1699 0 R
+/Next 1707 0 R
+>>
+endobj
+1699 0 obj
+<<
+/Title 1700 0 R
+/A 1697 0 R
+/Parent 1651 0 R
+/Prev 1695 0 R
+/Next 1703 0 R
+>>
+endobj
+1695 0 obj
+<<
+/Title 1696 0 R
+/A 1693 0 R
+/Parent 1651 0 R
+/Prev 1691 0 R
+/Next 1699 0 R
+>>
+endobj
+1691 0 obj
+<<
+/Title 1692 0 R
+/A 1689 0 R
+/Parent 1651 0 R
+/Prev 1687 0 R
+/Next 1695 0 R
+>>
+endobj
+1687 0 obj
+<<
+/Title 1688 0 R
+/A 1685 0 R
+/Parent 1651 0 R
+/Prev 1683 0 R
+/Next 1691 0 R
+>>
+endobj
+1683 0 obj
+<<
+/Title 1684 0 R
+/A 1681 0 R
+/Parent 1651 0 R
+/Prev 1679 0 R
+/Next 1687 0 R
+>>
+endobj
+1679 0 obj
+<<
+/Title 1680 0 R
+/A 1677 0 R
+/Parent 1651 0 R
+/Prev 1675 0 R
+/Next 1683 0 R
+>>
+endobj
+1675 0 obj
+<<
+/Title 1676 0 R
+/A 1673 0 R
+/Parent 1651 0 R
+/Prev 1671 0 R
+/Next 1679 0 R
+>>
+endobj
+1671 0 obj
+<<
+/Title 1672 0 R
+/A 1669 0 R
+/Parent 1651 0 R
+/Prev 1667 0 R
+/Next 1675 0 R
+>>
+endobj
+1667 0 obj
+<<
+/Title 1668 0 R
+/A 1665 0 R
+/Parent 1651 0 R
+/Prev 1663 0 R
+/Next 1671 0 R
+>>
+endobj
+1663 0 obj
+<<
+/Title 1664 0 R
+/A 1661 0 R
+/Parent 1651 0 R
+/Prev 1659 0 R
+/Next 1667 0 R
+>>
+endobj
+1659 0 obj
+<<
+/Title 1660 0 R
+/A 1657 0 R
+/Parent 1651 0 R
+/Prev 1655 0 R
+/Next 1663 0 R
+>>
+endobj
+1655 0 obj
+<<
+/Title 1656 0 R
+/A 1653 0 R
+/Parent 1651 0 R
+/Next 1659 0 R
+>>
+endobj
+1651 0 obj
+<<
+/Title 1652 0 R
+/A 1649 0 R
+/Parent 1631 0 R
+/Prev 1639 0 R
+/Next 1715 0 R
+/First 1655 0 R
+/Last 1711 0 R
+/Count -15
+>>
+endobj
+1647 0 obj
+<<
+/Title 1648 0 R
+/A 1645 0 R
+/Parent 1639 0 R
+/Prev 1643 0 R
+>>
+endobj
+1643 0 obj
+<<
+/Title 1644 0 R
+/A 1641 0 R
+/Parent 1639 0 R
+/Next 1647 0 R
+>>
+endobj
+1639 0 obj
+<<
+/Title 1640 0 R
+/A 1637 0 R
+/Parent 1631 0 R
+/Prev 1635 0 R
+/Next 1651 0 R
+/First 1643 0 R
+/Last 1647 0 R
+/Count -2
+>>
+endobj
+1635 0 obj
+<<
+/Title 1636 0 R
+/A 1633 0 R
+/Parent 1631 0 R
+/Next 1639 0 R
+>>
+endobj
+1631 0 obj
+<<
+/Title 1632 0 R
+/A 1629 0 R
+/Parent 267 0 R
+/Prev 1567 0 R
+/First 1635 0 R
+/Last 1715 0 R
+/Count -4
+>>
+endobj
+1627 0 obj
+<<
+/Title 1628 0 R
+/A 1625 0 R
+/Parent 1619 0 R
+/Prev 1623 0 R
+>>
+endobj
+1623 0 obj
+<<
+/Title 1624 0 R
+/A 1621 0 R
+/Parent 1619 0 R
+/Next 1627 0 R
+>>
+endobj
+1619 0 obj
+<<
+/Title 1620 0 R
+/A 1617 0 R
+/Parent 1567 0 R
+/Prev 1595 0 R
+/First 1623 0 R
+/Last 1627 0 R
+/Count -2
+>>
+endobj
+1615 0 obj
+<<
+/Title 1616 0 R
+/A 1613 0 R
+/Parent 1595 0 R
+/Prev 1611 0 R
+>>
+endobj
+1611 0 obj
+<<
+/Title 1612 0 R
+/A 1609 0 R
+/Parent 1595 0 R
+/Prev 1607 0 R
+/Next 1615 0 R
+>>
+endobj
+1607 0 obj
+<<
+/Title 1608 0 R
+/A 1605 0 R
+/Parent 1595 0 R
+/Prev 1603 0 R
+/Next 1611 0 R
+>>
+endobj
+1603 0 obj
+<<
+/Title 1604 0 R
+/A 1601 0 R
+/Parent 1595 0 R
+/Prev 1599 0 R
+/Next 1607 0 R
+>>
+endobj
+1599 0 obj
+<<
+/Title 1600 0 R
+/A 1597 0 R
+/Parent 1595 0 R
+/Next 1603 0 R
+>>
+endobj
+1595 0 obj
+<<
+/Title 1596 0 R
+/A 1593 0 R
+/Parent 1567 0 R
+/Prev 1575 0 R
+/Next 1619 0 R
+/First 1599 0 R
+/Last 1615 0 R
+/Count -5
+>>
+endobj
+1591 0 obj
+<<
+/Title 1592 0 R
+/A 1589 0 R
+/Parent 1575 0 R
+/Prev 1587 0 R
+>>
+endobj
+1587 0 obj
+<<
+/Title 1588 0 R
+/A 1585 0 R
+/Parent 1575 0 R
+/Prev 1583 0 R
+/Next 1591 0 R
+>>
+endobj
+1583 0 obj
+<<
+/Title 1584 0 R
+/A 1581 0 R
+/Parent 1575 0 R
+/Prev 1579 0 R
+/Next 1587 0 R
+>>
+endobj
+1579 0 obj
+<<
+/Title 1580 0 R
+/A 1577 0 R
+/Parent 1575 0 R
+/Next 1583 0 R
+>>
+endobj
+1575 0 obj
+<<
+/Title 1576 0 R
+/A 1573 0 R
+/Parent 1567 0 R
+/Prev 1571 0 R
+/Next 1595 0 R
+/First 1579 0 R
+/Last 1591 0 R
+/Count -4
+>>
+endobj
+1571 0 obj
+<<
+/Title 1572 0 R
+/A 1569 0 R
+/Parent 1567 0 R
+/Next 1575 0 R
+>>
+endobj
+1567 0 obj
+<<
+/Title 1568 0 R
+/A 1565 0 R
+/Parent 267 0 R
+/Prev 1531 0 R
+/Next 1631 0 R
+/First 1571 0 R
+/Last 1619 0 R
+/Count -4
+>>
+endobj
+1563 0 obj
+<<
+/Title 1564 0 R
+/A 1561 0 R
+/Parent 1551 0 R
+/Prev 1559 0 R
+>>
+endobj
+1559 0 obj
+<<
+/Title 1560 0 R
+/A 1557 0 R
+/Parent 1551 0 R
+/Prev 1555 0 R
+/Next 1563 0 R
+>>
+endobj
+1555 0 obj
+<<
+/Title 1556 0 R
+/A 1553 0 R
+/Parent 1551 0 R
+/Next 1559 0 R
+>>
+endobj
+1551 0 obj
+<<
+/Title 1552 0 R
+/A 1549 0 R
+/Parent 1531 0 R
+/Prev 1539 0 R
+/First 1555 0 R
+/Last 1563 0 R
+/Count -3
+>>
+endobj
+1547 0 obj
+<<
+/Title 1548 0 R
+/A 1545 0 R
+/Parent 1539 0 R
+/Prev 1543 0 R
+>>
+endobj
+1543 0 obj
+<<
+/Title 1544 0 R
+/A 1541 0 R
+/Parent 1539 0 R
+/Next 1547 0 R
+>>
+endobj
+1539 0 obj
+<<
+/Title 1540 0 R
+/A 1537 0 R
+/Parent 1531 0 R
+/Prev 1535 0 R
+/Next 1551 0 R
+/First 1543 0 R
+/Last 1547 0 R
+/Count -2
+>>
+endobj
+1535 0 obj
+<<
+/Title 1536 0 R
+/A 1533 0 R
+/Parent 1531 0 R
+/Next 1539 0 R
+>>
+endobj
+1531 0 obj
+<<
+/Title 1532 0 R
+/A 1529 0 R
+/Parent 267 0 R
+/Prev 1491 0 R
+/Next 1567 0 R
+/First 1535 0 R
+/Last 1551 0 R
+/Count -3
+>>
+endobj
+1527 0 obj
+<<
+/Title 1528 0 R
+/A 1525 0 R
+/Parent 1511 0 R
+/Prev 1523 0 R
+>>
+endobj
+1523 0 obj
+<<
+/Title 1524 0 R
+/A 1521 0 R
+/Parent 1511 0 R
+/Prev 1519 0 R
+/Next 1527 0 R
+>>
+endobj
+1519 0 obj
+<<
+/Title 1520 0 R
+/A 1517 0 R
+/Parent 1511 0 R
+/Prev 1515 0 R
+/Next 1523 0 R
+>>
+endobj
+1515 0 obj
+<<
+/Title 1516 0 R
+/A 1513 0 R
+/Parent 1511 0 R
+/Next 1519 0 R
+>>
+endobj
+1511 0 obj
+<<
+/Title 1512 0 R
+/A 1509 0 R
+/Parent 1491 0 R
+/Prev 1499 0 R
+/First 1515 0 R
+/Last 1527 0 R
+/Count -4
+>>
+endobj
+1507 0 obj
+<<
+/Title 1508 0 R
+/A 1505 0 R
+/Parent 1499 0 R
+/Prev 1503 0 R
+>>
+endobj
+1503 0 obj
+<<
+/Title 1504 0 R
+/A 1501 0 R
+/Parent 1499 0 R
+/Next 1507 0 R
+>>
+endobj
+1499 0 obj
+<<
+/Title 1500 0 R
+/A 1497 0 R
+/Parent 1491 0 R
+/Prev 1495 0 R
+/Next 1511 0 R
+/First 1503 0 R
+/Last 1507 0 R
+/Count -2
+>>
+endobj
+1495 0 obj
+<<
+/Title 1496 0 R
+/A 1493 0 R
+/Parent 1491 0 R
+/Next 1499 0 R
+>>
+endobj
+1491 0 obj
+<<
+/Title 1492 0 R
+/A 1489 0 R
+/Parent 267 0 R
+/Prev 1407 0 R
+/Next 1531 0 R
+/First 1495 0 R
+/Last 1511 0 R
+/Count -3
+>>
+endobj
+1487 0 obj
+<<
+/Title 1488 0 R
+/A 1485 0 R
+/Parent 1475 0 R
+/Prev 1483 0 R
+>>
+endobj
+1483 0 obj
+<<
+/Title 1484 0 R
+/A 1481 0 R
+/Parent 1475 0 R
+/Prev 1479 0 R
+/Next 1487 0 R
+>>
+endobj
+1479 0 obj
+<<
+/Title 1480 0 R
+/A 1477 0 R
+/Parent 1475 0 R
+/Next 1483 0 R
+>>
+endobj
+1475 0 obj
+<<
+/Title 1476 0 R
+/A 1473 0 R
+/Parent 1407 0 R
+/Prev 1427 0 R
+/First 1479 0 R
+/Last 1487 0 R
+/Count -3
+>>
+endobj
+1471 0 obj
+<<
+/Title 1472 0 R
+/A 1469 0 R
+/Parent 1427 0 R
+/Prev 1467 0 R
+>>
+endobj
+1467 0 obj
+<<
+/Title 1468 0 R
+/A 1465 0 R
+/Parent 1427 0 R
+/Prev 1463 0 R
+/Next 1471 0 R
+>>
+endobj
+1463 0 obj
+<<
+/Title 1464 0 R
+/A 1461 0 R
+/Parent 1427 0 R
+/Prev 1459 0 R
+/Next 1467 0 R
+>>
+endobj
+1459 0 obj
+<<
+/Title 1460 0 R
+/A 1457 0 R
+/Parent 1427 0 R
+/Prev 1455 0 R
+/Next 1463 0 R
+>>
+endobj
+1455 0 obj
+<<
+/Title 1456 0 R
+/A 1453 0 R
+/Parent 1427 0 R
+/Prev 1451 0 R
+/Next 1459 0 R
+>>
+endobj
+1451 0 obj
+<<
+/Title 1452 0 R
+/A 1449 0 R
+/Parent 1427 0 R
+/Prev 1447 0 R
+/Next 1455 0 R
+>>
+endobj
+1447 0 obj
+<<
+/Title 1448 0 R
+/A 1445 0 R
+/Parent 1427 0 R
+/Prev 1443 0 R
+/Next 1451 0 R
+>>
+endobj
+1443 0 obj
+<<
+/Title 1444 0 R
+/A 1441 0 R
+/Parent 1427 0 R
+/Prev 1439 0 R
+/Next 1447 0 R
+>>
+endobj
+1439 0 obj
+<<
+/Title 1440 0 R
+/A 1437 0 R
+/Parent 1427 0 R
+/Prev 1435 0 R
+/Next 1443 0 R
+>>
+endobj
+1435 0 obj
+<<
+/Title 1436 0 R
+/A 1433 0 R
+/Parent 1427 0 R
+/Prev 1431 0 R
+/Next 1439 0 R
+>>
+endobj
+1431 0 obj
+<<
+/Title 1432 0 R
+/A 1429 0 R
+/Parent 1427 0 R
+/Next 1435 0 R
+>>
+endobj
+1427 0 obj
+<<
+/Title 1428 0 R
+/A 1425 0 R
+/Parent 1407 0 R
+/Prev 1415 0 R
+/Next 1475 0 R
+/First 1431 0 R
+/Last 1471 0 R
+/Count -11
+>>
+endobj
+1423 0 obj
+<<
+/Title 1424 0 R
+/A 1421 0 R
+/Parent 1415 0 R
+/Prev 1419 0 R
+>>
+endobj
+1419 0 obj
+<<
+/Title 1420 0 R
+/A 1417 0 R
+/Parent 1415 0 R
+/Next 1423 0 R
+>>
+endobj
+1415 0 obj
+<<
+/Title 1416 0 R
+/A 1413 0 R
+/Parent 1407 0 R
+/Prev 1411 0 R
+/Next 1427 0 R
+/First 1419 0 R
+/Last 1423 0 R
+/Count -2
+>>
+endobj
+1411 0 obj
+<<
+/Title 1412 0 R
+/A 1409 0 R
+/Parent 1407 0 R
+/Next 1415 0 R
+>>
+endobj
+1407 0 obj
+<<
+/Title 1408 0 R
+/A 1405 0 R
+/Parent 267 0 R
+/Prev 1367 0 R
+/Next 1491 0 R
+/First 1411 0 R
+/Last 1475 0 R
+/Count -4
+>>
+endobj
+1403 0 obj
+<<
+/Title 1404 0 R
+/A 1401 0 R
+/Parent 1395 0 R
+/Prev 1399 0 R
+>>
+endobj
+1399 0 obj
+<<
+/Title 1400 0 R
+/A 1397 0 R
+/Parent 1395 0 R
+/Next 1403 0 R
+>>
+endobj
+1395 0 obj
+<<
+/Title 1396 0 R
+/A 1393 0 R
+/Parent 1367 0 R
+/Prev 1375 0 R
+/First 1399 0 R
+/Last 1403 0 R
+/Count -2
+>>
+endobj
+1391 0 obj
+<<
+/Title 1392 0 R
+/A 1389 0 R
+/Parent 1375 0 R
+/Prev 1387 0 R
+>>
+endobj
+1387 0 obj
+<<
+/Title 1388 0 R
+/A 1385 0 R
+/Parent 1375 0 R
+/Prev 1383 0 R
+/Next 1391 0 R
+>>
+endobj
+1383 0 obj
+<<
+/Title 1384 0 R
+/A 1381 0 R
+/Parent 1375 0 R
+/Prev 1379 0 R
+/Next 1387 0 R
+>>
+endobj
+1379 0 obj
+<<
+/Title 1380 0 R
+/A 1377 0 R
+/Parent 1375 0 R
+/Next 1383 0 R
+>>
+endobj
+1375 0 obj
+<<
+/Title 1376 0 R
+/A 1373 0 R
+/Parent 1367 0 R
+/Prev 1371 0 R
+/Next 1395 0 R
+/First 1379 0 R
+/Last 1391 0 R
+/Count -4
+>>
+endobj
+1371 0 obj
+<<
+/Title 1372 0 R
+/A 1369 0 R
+/Parent 1367 0 R
+/Next 1375 0 R
+>>
+endobj
+1367 0 obj
+<<
+/Title 1368 0 R
+/A 1365 0 R
+/Parent 267 0 R
+/Prev 1327 0 R
+/Next 1407 0 R
+/First 1371 0 R
+/Last 1395 0 R
+/Count -3
+>>
+endobj
+1363 0 obj
+<<
+/Title 1364 0 R
+/A 1361 0 R
+/Parent 1351 0 R
+/Prev 1359 0 R
+>>
+endobj
+1359 0 obj
+<<
+/Title 1360 0 R
+/A 1357 0 R
+/Parent 1351 0 R
+/Prev 1355 0 R
+/Next 1363 0 R
+>>
+endobj
+1355 0 obj
+<<
+/Title 1356 0 R
+/A 1353 0 R
+/Parent 1351 0 R
+/Next 1359 0 R
+>>
+endobj
+1351 0 obj
+<<
+/Title 1352 0 R
+/A 1349 0 R
+/Parent 1327 0 R
+/Prev 1335 0 R
+/First 1355 0 R
+/Last 1363 0 R
+/Count -3
+>>
+endobj
+1347 0 obj
+<<
+/Title 1348 0 R
+/A 1345 0 R
+/Parent 1335 0 R
+/Prev 1343 0 R
+>>
+endobj
+1343 0 obj
+<<
+/Title 1344 0 R
+/A 1341 0 R
+/Parent 1335 0 R
+/Prev 1339 0 R
+/Next 1347 0 R
+>>
+endobj
+1339 0 obj
+<<
+/Title 1340 0 R
+/A 1337 0 R
+/Parent 1335 0 R
+/Next 1343 0 R
+>>
+endobj
+1335 0 obj
+<<
+/Title 1336 0 R
+/A 1333 0 R
+/Parent 1327 0 R
+/Prev 1331 0 R
+/Next 1351 0 R
+/First 1339 0 R
+/Last 1347 0 R
+/Count -3
+>>
+endobj
+1331 0 obj
+<<
+/Title 1332 0 R
+/A 1329 0 R
+/Parent 1327 0 R
+/Next 1335 0 R
+>>
+endobj
+1327 0 obj
+<<
+/Title 1328 0 R
+/A 1325 0 R
+/Parent 267 0 R
+/Prev 1287 0 R
+/Next 1367 0 R
+/First 1331 0 R
+/Last 1351 0 R
+/Count -3
+>>
+endobj
+1323 0 obj
+<<
+/Title 1324 0 R
+/A 1321 0 R
+/Parent 1315 0 R
+/Prev 1319 0 R
+>>
+endobj
+1319 0 obj
+<<
+/Title 1320 0 R
+/A 1317 0 R
+/Parent 1315 0 R
+/Next 1323 0 R
+>>
+endobj
+1315 0 obj
+<<
+/Title 1316 0 R
+/A 1313 0 R
+/Parent 1287 0 R
+/Prev 1295 0 R
+/First 1319 0 R
+/Last 1323 0 R
+/Count -2
+>>
+endobj
+1311 0 obj
+<<
+/Title 1312 0 R
+/A 1309 0 R
+/Parent 1295 0 R
+/Prev 1307 0 R
+>>
+endobj
+1307 0 obj
+<<
+/Title 1308 0 R
+/A 1305 0 R
+/Parent 1295 0 R
+/Prev 1303 0 R
+/Next 1311 0 R
+>>
+endobj
+1303 0 obj
+<<
+/Title 1304 0 R
+/A 1301 0 R
+/Parent 1295 0 R
+/Prev 1299 0 R
+/Next 1307 0 R
+>>
+endobj
+1299 0 obj
+<<
+/Title 1300 0 R
+/A 1297 0 R
+/Parent 1295 0 R
+/Next 1303 0 R
+>>
+endobj
+1295 0 obj
+<<
+/Title 1296 0 R
+/A 1293 0 R
+/Parent 1287 0 R
+/Prev 1291 0 R
+/Next 1315 0 R
+/First 1299 0 R
+/Last 1311 0 R
+/Count -4
+>>
+endobj
+1291 0 obj
+<<
+/Title 1292 0 R
+/A 1289 0 R
+/Parent 1287 0 R
+/Next 1295 0 R
+>>
+endobj
+1287 0 obj
+<<
+/Title 1288 0 R
+/A 1285 0 R
+/Parent 267 0 R
+/Prev 1219 0 R
+/Next 1327 0 R
+/First 1291 0 R
+/Last 1315 0 R
+/Count -3
+>>
+endobj
+1283 0 obj
+<<
+/Title 1284 0 R
+/A 1281 0 R
+/Parent 1239 0 R
+/Prev 1279 0 R
+>>
+endobj
+1279 0 obj
+<<
+/Title 1280 0 R
+/A 1277 0 R
+/Parent 1239 0 R
+/Prev 1275 0 R
+/Next 1283 0 R
+>>
+endobj
+1275 0 obj
+<<
+/Title 1276 0 R
+/A 1273 0 R
+/Parent 1239 0 R
+/Prev 1271 0 R
+/Next 1279 0 R
+>>
+endobj
+1271 0 obj
+<<
+/Title 1272 0 R
+/A 1269 0 R
+/Parent 1239 0 R
+/Prev 1267 0 R
+/Next 1275 0 R
+>>
+endobj
+1267 0 obj
+<<
+/Title 1268 0 R
+/A 1265 0 R
+/Parent 1239 0 R
+/Prev 1263 0 R
+/Next 1271 0 R
+>>
+endobj
+1263 0 obj
+<<
+/Title 1264 0 R
+/A 1261 0 R
+/Parent 1239 0 R
+/Prev 1259 0 R
+/Next 1267 0 R
+>>
+endobj
+1259 0 obj
+<<
+/Title 1260 0 R
+/A 1257 0 R
+/Parent 1239 0 R
+/Prev 1255 0 R
+/Next 1263 0 R
+>>
+endobj
+1255 0 obj
+<<
+/Title 1256 0 R
+/A 1253 0 R
+/Parent 1239 0 R
+/Prev 1251 0 R
+/Next 1259 0 R
+>>
+endobj
+1251 0 obj
+<<
+/Title 1252 0 R
+/A 1249 0 R
+/Parent 1239 0 R
+/Prev 1247 0 R
+/Next 1255 0 R
+>>
+endobj
+1247 0 obj
+<<
+/Title 1248 0 R
+/A 1245 0 R
+/Parent 1239 0 R
+/Prev 1243 0 R
+/Next 1251 0 R
+>>
+endobj
+1243 0 obj
+<<
+/Title 1244 0 R
+/A 1241 0 R
+/Parent 1239 0 R
+/Next 1247 0 R
+>>
+endobj
+1239 0 obj
+<<
+/Title 1240 0 R
+/A 1237 0 R
+/Parent 1219 0 R
+/Prev 1227 0 R
+/First 1243 0 R
+/Last 1283 0 R
+/Count -11
+>>
+endobj
+1235 0 obj
+<<
+/Title 1236 0 R
+/A 1233 0 R
+/Parent 1227 0 R
+/Prev 1231 0 R
+>>
+endobj
+1231 0 obj
+<<
+/Title 1232 0 R
+/A 1229 0 R
+/Parent 1227 0 R
+/Next 1235 0 R
+>>
+endobj
+1227 0 obj
+<<
+/Title 1228 0 R
+/A 1225 0 R
+/Parent 1219 0 R
+/Prev 1223 0 R
+/Next 1239 0 R
+/First 1231 0 R
+/Last 1235 0 R
+/Count -2
+>>
+endobj
+1223 0 obj
+<<
+/Title 1224 0 R
+/A 1221 0 R
+/Parent 1219 0 R
+/Next 1227 0 R
+>>
+endobj
+1219 0 obj
+<<
+/Title 1220 0 R
+/A 1217 0 R
+/Parent 267 0 R
+/Prev 1151 0 R
+/Next 1287 0 R
+/First 1223 0 R
+/Last 1239 0 R
+/Count -3
+>>
+endobj
+1215 0 obj
+<<
+/Title 1216 0 R
+/A 1213 0 R
+/Parent 1211 0 R
+>>
+endobj
+1211 0 obj
+<<
+/Title 1212 0 R
+/A 1209 0 R
+/Parent 1151 0 R
+/Prev 1171 0 R
+/First 1215 0 R
+/Last 1215 0 R
+/Count -1
+>>
+endobj
+1207 0 obj
+<<
+/Title 1208 0 R
+/A 1205 0 R
+/Parent 1171 0 R
+/Prev 1203 0 R
+>>
+endobj
+1203 0 obj
+<<
+/Title 1204 0 R
+/A 1201 0 R
+/Parent 1171 0 R
+/Prev 1199 0 R
+/Next 1207 0 R
+>>
+endobj
+1199 0 obj
+<<
+/Title 1200 0 R
+/A 1197 0 R
+/Parent 1171 0 R
+/Prev 1195 0 R
+/Next 1203 0 R
+>>
+endobj
+1195 0 obj
+<<
+/Title 1196 0 R
+/A 1193 0 R
+/Parent 1171 0 R
+/Prev 1191 0 R
+/Next 1199 0 R
+>>
+endobj
+1191 0 obj
+<<
+/Title 1192 0 R
+/A 1189 0 R
+/Parent 1171 0 R
+/Prev 1187 0 R
+/Next 1195 0 R
+>>
+endobj
+1187 0 obj
+<<
+/Title 1188 0 R
+/A 1185 0 R
+/Parent 1171 0 R
+/Prev 1183 0 R
+/Next 1191 0 R
+>>
+endobj
+1183 0 obj
+<<
+/Title 1184 0 R
+/A 1181 0 R
+/Parent 1171 0 R
+/Prev 1179 0 R
+/Next 1187 0 R
+>>
+endobj
+1179 0 obj
+<<
+/Title 1180 0 R
+/A 1177 0 R
+/Parent 1171 0 R
+/Prev 1175 0 R
+/Next 1183 0 R
+>>
+endobj
+1175 0 obj
+<<
+/Title 1176 0 R
+/A 1173 0 R
+/Parent 1171 0 R
+/Next 1179 0 R
+>>
+endobj
+1171 0 obj
+<<
+/Title 1172 0 R
+/A 1169 0 R
+/Parent 1151 0 R
+/Prev 1159 0 R
+/Next 1211 0 R
+/First 1175 0 R
+/Last 1207 0 R
+/Count -9
+>>
+endobj
+1167 0 obj
+<<
+/Title 1168 0 R
+/A 1165 0 R
+/Parent 1159 0 R
+/Prev 1163 0 R
+>>
+endobj
+1163 0 obj
+<<
+/Title 1164 0 R
+/A 1161 0 R
+/Parent 1159 0 R
+/Next 1167 0 R
+>>
+endobj
+1159 0 obj
+<<
+/Title 1160 0 R
+/A 1157 0 R
+/Parent 1151 0 R
+/Prev 1155 0 R
+/Next 1171 0 R
+/First 1163 0 R
+/Last 1167 0 R
+/Count -2
+>>
+endobj
+1155 0 obj
+<<
+/Title 1156 0 R
+/A 1153 0 R
+/Parent 1151 0 R
+/Next 1159 0 R
+>>
+endobj
+1151 0 obj
+<<
+/Title 1152 0 R
+/A 1149 0 R
+/Parent 267 0 R
+/Prev 1091 0 R
+/Next 1219 0 R
+/First 1155 0 R
+/Last 1211 0 R
+/Count -4
+>>
+endobj
+1147 0 obj
+<<
+/Title 1148 0 R
+/A 1145 0 R
+/Parent 1111 0 R
+/Prev 1143 0 R
+>>
+endobj
+1143 0 obj
+<<
+/Title 1144 0 R
+/A 1141 0 R
+/Parent 1111 0 R
+/Prev 1139 0 R
+/Next 1147 0 R
+>>
+endobj
+1139 0 obj
+<<
+/Title 1140 0 R
+/A 1137 0 R
+/Parent 1111 0 R
+/Prev 1135 0 R
+/Next 1143 0 R
+>>
+endobj
+1135 0 obj
+<<
+/Title 1136 0 R
+/A 1133 0 R
+/Parent 1111 0 R
+/Prev 1131 0 R
+/Next 1139 0 R
+>>
+endobj
+1131 0 obj
+<<
+/Title 1132 0 R
+/A 1129 0 R
+/Parent 1111 0 R
+/Prev 1127 0 R
+/Next 1135 0 R
+>>
+endobj
+1127 0 obj
+<<
+/Title 1128 0 R
+/A 1125 0 R
+/Parent 1111 0 R
+/Prev 1123 0 R
+/Next 1131 0 R
+>>
+endobj
+1123 0 obj
+<<
+/Title 1124 0 R
+/A 1121 0 R
+/Parent 1111 0 R
+/Prev 1119 0 R
+/Next 1127 0 R
+>>
+endobj
+1119 0 obj
+<<
+/Title 1120 0 R
+/A 1117 0 R
+/Parent 1111 0 R
+/Prev 1115 0 R
+/Next 1123 0 R
+>>
+endobj
+1115 0 obj
+<<
+/Title 1116 0 R
+/A 1113 0 R
+/Parent 1111 0 R
+/Next 1119 0 R
+>>
+endobj
+1111 0 obj
+<<
+/Title 1112 0 R
+/A 1109 0 R
+/Parent 1091 0 R
+/Prev 1099 0 R
+/First 1115 0 R
+/Last 1147 0 R
+/Count -9
+>>
+endobj
+1107 0 obj
+<<
+/Title 1108 0 R
+/A 1105 0 R
+/Parent 1099 0 R
+/Prev 1103 0 R
+>>
+endobj
+1103 0 obj
+<<
+/Title 1104 0 R
+/A 1101 0 R
+/Parent 1099 0 R
+/Next 1107 0 R
+>>
+endobj
+1099 0 obj
+<<
+/Title 1100 0 R
+/A 1097 0 R
+/Parent 1091 0 R
+/Prev 1095 0 R
+/Next 1111 0 R
+/First 1103 0 R
+/Last 1107 0 R
+/Count -2
+>>
+endobj
+1095 0 obj
+<<
+/Title 1096 0 R
+/A 1093 0 R
+/Parent 1091 0 R
+/Next 1099 0 R
+>>
+endobj
+1091 0 obj
+<<
+/Title 1092 0 R
+/A 1089 0 R
+/Parent 267 0 R
+/Prev 1063 0 R
+/Next 1151 0 R
+/First 1095 0 R
+/Last 1111 0 R
+/Count -3
+>>
+endobj
+1087 0 obj
+<<
+/Title 1088 0 R
+/A 1085 0 R
+/Parent 1071 0 R
+/Prev 1083 0 R
+>>
+endobj
+1083 0 obj
+<<
+/Title 1084 0 R
+/A 1081 0 R
+/Parent 1071 0 R
+/Prev 1079 0 R
+/Next 1087 0 R
+>>
+endobj
+1079 0 obj
+<<
+/Title 1080 0 R
+/A 1077 0 R
+/Parent 1071 0 R
+/Prev 1075 0 R
+/Next 1083 0 R
+>>
+endobj
+1075 0 obj
+<<
+/Title 1076 0 R
+/A 1073 0 R
+/Parent 1071 0 R
+/Next 1079 0 R
+>>
+endobj
+1071 0 obj
+<<
+/Title 1072 0 R
+/A 1069 0 R
+/Parent 1063 0 R
+/Prev 1067 0 R
+/First 1075 0 R
+/Last 1087 0 R
+/Count -4
+>>
+endobj
+1067 0 obj
+<<
+/Title 1068 0 R
+/A 1065 0 R
+/Parent 1063 0 R
+/Next 1071 0 R
+>>
+endobj
+1063 0 obj
+<<
+/Title 1064 0 R
+/A 1061 0 R
+/Parent 267 0 R
+/Prev 1015 0 R
+/Next 1091 0 R
+/First 1067 0 R
+/Last 1071 0 R
+/Count -2
+>>
+endobj
+1059 0 obj
+<<
+/Title 1060 0 R
+/A 1057 0 R
+/Parent 1035 0 R
+/Prev 1055 0 R
+>>
+endobj
+1055 0 obj
+<<
+/Title 1056 0 R
+/A 1053 0 R
+/Parent 1035 0 R
+/Prev 1051 0 R
+/Next 1059 0 R
+>>
+endobj
+1051 0 obj
+<<
+/Title 1052 0 R
+/A 1049 0 R
+/Parent 1035 0 R
+/Prev 1047 0 R
+/Next 1055 0 R
+>>
+endobj
+1047 0 obj
+<<
+/Title 1048 0 R
+/A 1045 0 R
+/Parent 1035 0 R
+/Prev 1043 0 R
+/Next 1051 0 R
+>>
+endobj
+1043 0 obj
+<<
+/Title 1044 0 R
+/A 1041 0 R
+/Parent 1035 0 R
+/Prev 1039 0 R
+/Next 1047 0 R
+>>
+endobj
+1039 0 obj
+<<
+/Title 1040 0 R
+/A 1037 0 R
+/Parent 1035 0 R
+/Next 1043 0 R
+>>
+endobj
+1035 0 obj
+<<
+/Title 1036 0 R
+/A 1033 0 R
+/Parent 1015 0 R
+/Prev 1023 0 R
+/First 1039 0 R
+/Last 1059 0 R
+/Count -6
+>>
+endobj
+1031 0 obj
+<<
+/Title 1032 0 R
+/A 1029 0 R
+/Parent 1023 0 R
+/Prev 1027 0 R
+>>
+endobj
+1027 0 obj
+<<
+/Title 1028 0 R
+/A 1025 0 R
+/Parent 1023 0 R
+/Next 1031 0 R
+>>
+endobj
+1023 0 obj
+<<
+/Title 1024 0 R
+/A 1021 0 R
+/Parent 1015 0 R
+/Prev 1019 0 R
+/Next 1035 0 R
+/First 1027 0 R
+/Last 1031 0 R
+/Count -2
+>>
+endobj
+1019 0 obj
+<<
+/Title 1020 0 R
+/A 1017 0 R
+/Parent 1015 0 R
+/Next 1023 0 R
+>>
+endobj
+1015 0 obj
+<<
+/Title 1016 0 R
+/A 1013 0 R
+/Parent 267 0 R
+/Prev 947 0 R
+/Next 1063 0 R
+/First 1019 0 R
+/Last 1035 0 R
+/Count -3
+>>
+endobj
+1011 0 obj
+<<
+/Title 1012 0 R
+/A 1009 0 R
+/Parent 967 0 R
+/Prev 1007 0 R
+>>
+endobj
+1007 0 obj
+<<
+/Title 1008 0 R
+/A 1005 0 R
+/Parent 967 0 R
+/Prev 1003 0 R
+/Next 1011 0 R
+>>
+endobj
+1003 0 obj
+<<
+/Title 1004 0 R
+/A 1001 0 R
+/Parent 967 0 R
+/Prev 999 0 R
+/Next 1007 0 R
+>>
+endobj
+999 0 obj
+<<
+/Title 1000 0 R
+/A 997 0 R
+/Parent 967 0 R
+/Prev 995 0 R
+/Next 1003 0 R
+>>
+endobj
+995 0 obj
+<<
+/Title 996 0 R
+/A 993 0 R
+/Parent 967 0 R
+/Prev 991 0 R
+/Next 999 0 R
+>>
+endobj
+991 0 obj
+<<
+/Title 992 0 R
+/A 989 0 R
+/Parent 967 0 R
+/Prev 987 0 R
+/Next 995 0 R
+>>
+endobj
+987 0 obj
+<<
+/Title 988 0 R
+/A 985 0 R
+/Parent 967 0 R
+/Prev 983 0 R
+/Next 991 0 R
+>>
+endobj
+983 0 obj
+<<
+/Title 984 0 R
+/A 981 0 R
+/Parent 967 0 R
+/Prev 979 0 R
+/Next 987 0 R
+>>
+endobj
+979 0 obj
+<<
+/Title 980 0 R
+/A 977 0 R
+/Parent 967 0 R
+/Prev 975 0 R
+/Next 983 0 R
+>>
+endobj
+975 0 obj
+<<
+/Title 976 0 R
+/A 973 0 R
+/Parent 967 0 R
+/Prev 971 0 R
+/Next 979 0 R
+>>
+endobj
+971 0 obj
+<<
+/Title 972 0 R
+/A 969 0 R
+/Parent 967 0 R
+/Next 975 0 R
+>>
+endobj
+967 0 obj
+<<
+/Title 968 0 R
+/A 965 0 R
+/Parent 947 0 R
+/Prev 955 0 R
+/First 971 0 R
+/Last 1011 0 R
+/Count -11
+>>
+endobj
+963 0 obj
+<<
+/Title 964 0 R
+/A 961 0 R
+/Parent 955 0 R
+/Prev 959 0 R
+>>
+endobj
+959 0 obj
+<<
+/Title 960 0 R
+/A 957 0 R
+/Parent 955 0 R
+/Next 963 0 R
+>>
+endobj
+955 0 obj
+<<
+/Title 956 0 R
+/A 953 0 R
+/Parent 947 0 R
+/Prev 951 0 R
+/Next 967 0 R
+/First 959 0 R
+/Last 963 0 R
+/Count -2
+>>
+endobj
+951 0 obj
+<<
+/Title 952 0 R
+/A 949 0 R
+/Parent 947 0 R
+/Next 955 0 R
+>>
+endobj
+947 0 obj
+<<
+/Title 948 0 R
+/A 945 0 R
+/Parent 267 0 R
+/Prev 859 0 R
+/Next 1015 0 R
+/First 951 0 R
+/Last 967 0 R
+/Count -3
+>>
+endobj
+943 0 obj
+<<
+/Title 944 0 R
+/A 941 0 R
+/Parent 927 0 R
+/Prev 939 0 R
+>>
+endobj
+939 0 obj
+<<
+/Title 940 0 R
+/A 937 0 R
+/Parent 927 0 R
+/Prev 935 0 R
+/Next 943 0 R
+>>
+endobj
+935 0 obj
+<<
+/Title 936 0 R
+/A 933 0 R
+/Parent 927 0 R
+/Prev 931 0 R
+/Next 939 0 R
+>>
+endobj
+931 0 obj
+<<
+/Title 932 0 R
+/A 929 0 R
+/Parent 927 0 R
+/Next 935 0 R
+>>
+endobj
+927 0 obj
+<<
+/Title 928 0 R
+/A 925 0 R
+/Parent 859 0 R
+/Prev 879 0 R
+/First 931 0 R
+/Last 943 0 R
+/Count -4
+>>
+endobj
+923 0 obj
+<<
+/Title 924 0 R
+/A 921 0 R
+/Parent 879 0 R
+/Prev 919 0 R
+>>
+endobj
+919 0 obj
+<<
+/Title 920 0 R
+/A 917 0 R
+/Parent 879 0 R
+/Prev 915 0 R
+/Next 923 0 R
+>>
+endobj
+915 0 obj
+<<
+/Title 916 0 R
+/A 913 0 R
+/Parent 879 0 R
+/Prev 911 0 R
+/Next 919 0 R
+>>
+endobj
+911 0 obj
+<<
+/Title 912 0 R
+/A 909 0 R
+/Parent 879 0 R
+/Prev 907 0 R
+/Next 915 0 R
+>>
+endobj
+907 0 obj
+<<
+/Title 908 0 R
+/A 905 0 R
+/Parent 879 0 R
+/Prev 903 0 R
+/Next 911 0 R
+>>
+endobj
+903 0 obj
+<<
+/Title 904 0 R
+/A 901 0 R
+/Parent 879 0 R
+/Prev 899 0 R
+/Next 907 0 R
+>>
+endobj
+899 0 obj
+<<
+/Title 900 0 R
+/A 897 0 R
+/Parent 879 0 R
+/Prev 895 0 R
+/Next 903 0 R
+>>
+endobj
+895 0 obj
+<<
+/Title 896 0 R
+/A 893 0 R
+/Parent 879 0 R
+/Prev 891 0 R
+/Next 899 0 R
+>>
+endobj
+891 0 obj
+<<
+/Title 892 0 R
+/A 889 0 R
+/Parent 879 0 R
+/Prev 887 0 R
+/Next 895 0 R
+>>
+endobj
+887 0 obj
+<<
+/Title 888 0 R
+/A 885 0 R
+/Parent 879 0 R
+/Prev 883 0 R
+/Next 891 0 R
+>>
+endobj
+883 0 obj
+<<
+/Title 884 0 R
+/A 881 0 R
+/Parent 879 0 R
+/Next 887 0 R
+>>
+endobj
+879 0 obj
+<<
+/Title 880 0 R
+/A 877 0 R
+/Parent 859 0 R
+/Prev 867 0 R
+/Next 927 0 R
+/First 883 0 R
+/Last 923 0 R
+/Count -11
+>>
+endobj
+875 0 obj
+<<
+/Title 876 0 R
+/A 873 0 R
+/Parent 867 0 R
+/Prev 871 0 R
+>>
+endobj
+871 0 obj
+<<
+/Title 872 0 R
+/A 869 0 R
+/Parent 867 0 R
+/Next 875 0 R
+>>
+endobj
+867 0 obj
+<<
+/Title 868 0 R
+/A 865 0 R
+/Parent 859 0 R
+/Prev 863 0 R
+/Next 879 0 R
+/First 871 0 R
+/Last 875 0 R
+/Count -2
+>>
+endobj
+863 0 obj
+<<
+/Title 864 0 R
+/A 861 0 R
+/Parent 859 0 R
+/Next 867 0 R
+>>
+endobj
+859 0 obj
+<<
+/Title 860 0 R
+/A 857 0 R
+/Parent 267 0 R
+/Prev 839 0 R
+/Next 947 0 R
+/First 863 0 R
+/Last 927 0 R
+/Count -4
+>>
+endobj
+855 0 obj
+<<
+/Title 856 0 R
+/A 853 0 R
+/Parent 847 0 R
+/Prev 851 0 R
+>>
+endobj
+851 0 obj
+<<
+/Title 852 0 R
+/A 849 0 R
+/Parent 847 0 R
+/Next 855 0 R
+>>
+endobj
+847 0 obj
+<<
+/Title 848 0 R
+/A 845 0 R
+/Parent 839 0 R
+/Prev 843 0 R
+/First 851 0 R
+/Last 855 0 R
+/Count -2
+>>
+endobj
+843 0 obj
+<<
+/Title 844 0 R
+/A 841 0 R
+/Parent 839 0 R
+/Next 847 0 R
+>>
+endobj
+839 0 obj
+<<
+/Title 840 0 R
+/A 837 0 R
+/Parent 267 0 R
+/Prev 807 0 R
+/Next 859 0 R
+/First 843 0 R
+/Last 847 0 R
+/Count -2
+>>
+endobj
+835 0 obj
+<<
+/Title 836 0 R
+/A 833 0 R
+/Parent 831 0 R
+>>
+endobj
+831 0 obj
+<<
+/Title 832 0 R
+/A 829 0 R
+/Parent 807 0 R
+/Prev 815 0 R
+/First 835 0 R
+/Last 835 0 R
+/Count -1
+>>
+endobj
+827 0 obj
+<<
+/Title 828 0 R
+/A 825 0 R
+/Parent 815 0 R
+/Prev 823 0 R
+>>
+endobj
+823 0 obj
+<<
+/Title 824 0 R
+/A 821 0 R
+/Parent 815 0 R
+/Prev 819 0 R
+/Next 827 0 R
+>>
+endobj
+819 0 obj
+<<
+/Title 820 0 R
+/A 817 0 R
+/Parent 815 0 R
+/Next 823 0 R
+>>
+endobj
+815 0 obj
+<<
+/Title 816 0 R
+/A 813 0 R
+/Parent 807 0 R
+/Prev 811 0 R
+/Next 831 0 R
+/First 819 0 R
+/Last 827 0 R
+/Count -3
+>>
+endobj
+811 0 obj
+<<
+/Title 812 0 R
+/A 809 0 R
+/Parent 807 0 R
+/Next 815 0 R
+>>
+endobj
+807 0 obj
+<<
+/Title 808 0 R
+/A 805 0 R
+/Parent 267 0 R
+/Prev 751 0 R
+/Next 839 0 R
+/First 811 0 R
+/Last 831 0 R
+/Count -3
+>>
+endobj
+803 0 obj
+<<
+/Title 804 0 R
+/A 801 0 R
+/Parent 779 0 R
+/Prev 799 0 R
+>>
+endobj
+799 0 obj
+<<
+/Title 800 0 R
+/A 797 0 R
+/Parent 779 0 R
+/Prev 795 0 R
+/Next 803 0 R
+>>
+endobj
+795 0 obj
+<<
+/Title 796 0 R
+/A 793 0 R
+/Parent 779 0 R
+/Prev 791 0 R
+/Next 799 0 R
+>>
+endobj
+791 0 obj
+<<
+/Title 792 0 R
+/A 789 0 R
+/Parent 779 0 R
+/Prev 787 0 R
+/Next 795 0 R
+>>
+endobj
+787 0 obj
+<<
+/Title 788 0 R
+/A 785 0 R
+/Parent 779 0 R
+/Prev 783 0 R
+/Next 791 0 R
+>>
+endobj
+783 0 obj
+<<
+/Title 784 0 R
+/A 781 0 R
+/Parent 779 0 R
+/Next 787 0 R
+>>
+endobj
+779 0 obj
+<<
+/Title 780 0 R
+/A 777 0 R
+/Parent 751 0 R
+/Prev 759 0 R
+/First 783 0 R
+/Last 803 0 R
+/Count -6
+>>
+endobj
+775 0 obj
+<<
+/Title 776 0 R
+/A 773 0 R
+/Parent 759 0 R
+/Prev 771 0 R
+>>
+endobj
+771 0 obj
+<<
+/Title 772 0 R
+/A 769 0 R
+/Parent 759 0 R
+/Prev 767 0 R
+/Next 775 0 R
+>>
+endobj
+767 0 obj
+<<
+/Title 768 0 R
+/A 765 0 R
+/Parent 759 0 R
+/Prev 763 0 R
+/Next 771 0 R
+>>
+endobj
+763 0 obj
+<<
+/Title 764 0 R
+/A 761 0 R
+/Parent 759 0 R
+/Next 767 0 R
+>>
+endobj
+759 0 obj
+<<
+/Title 760 0 R
+/A 757 0 R
+/Parent 751 0 R
+/Prev 755 0 R
+/Next 779 0 R
+/First 763 0 R
+/Last 775 0 R
+/Count -4
+>>
+endobj
+755 0 obj
+<<
+/Title 756 0 R
+/A 753 0 R
+/Parent 751 0 R
+/Next 759 0 R
+>>
+endobj
+751 0 obj
+<<
+/Title 752 0 R
+/A 749 0 R
+/Parent 267 0 R
+/Prev 631 0 R
+/Next 807 0 R
+/First 755 0 R
+/Last 779 0 R
+/Count -3
+>>
+endobj
+747 0 obj
+<<
+/Title 748 0 R
+/A 745 0 R
+/Parent 715 0 R
+/Prev 743 0 R
+>>
+endobj
+743 0 obj
+<<
+/Title 744 0 R
+/A 741 0 R
+/Parent 715 0 R
+/Prev 739 0 R
+/Next 747 0 R
+>>
+endobj
+739 0 obj
+<<
+/Title 740 0 R
+/A 737 0 R
+/Parent 715 0 R
+/Prev 735 0 R
+/Next 743 0 R
+>>
+endobj
+735 0 obj
+<<
+/Title 736 0 R
+/A 733 0 R
+/Parent 715 0 R
+/Prev 731 0 R
+/Next 739 0 R
+>>
+endobj
+731 0 obj
+<<
+/Title 732 0 R
+/A 729 0 R
+/Parent 715 0 R
+/Prev 727 0 R
+/Next 735 0 R
+>>
+endobj
+727 0 obj
+<<
+/Title 728 0 R
+/A 725 0 R
+/Parent 715 0 R
+/Prev 723 0 R
+/Next 731 0 R
+>>
+endobj
+723 0 obj
+<<
+/Title 724 0 R
+/A 721 0 R
+/Parent 715 0 R
+/Prev 719 0 R
+/Next 727 0 R
+>>
+endobj
+719 0 obj
+<<
+/Title 720 0 R
+/A 717 0 R
+/Parent 715 0 R
+/Next 723 0 R
+>>
+endobj
+715 0 obj
+<<
+/Title 716 0 R
+/A 713 0 R
+/Parent 631 0 R
+/Prev 651 0 R
+/First 719 0 R
+/Last 747 0 R
+/Count -8
+>>
+endobj
+711 0 obj
+<<
+/Title 712 0 R
+/A 709 0 R
+/Parent 651 0 R
+/Prev 707 0 R
+>>
+endobj
+707 0 obj
+<<
+/Title 708 0 R
+/A 705 0 R
+/Parent 651 0 R
+/Prev 703 0 R
+/Next 711 0 R
+>>
+endobj
+703 0 obj
+<<
+/Title 704 0 R
+/A 701 0 R
+/Parent 651 0 R
+/Prev 699 0 R
+/Next 707 0 R
+>>
+endobj
+699 0 obj
+<<
+/Title 700 0 R
+/A 697 0 R
+/Parent 651 0 R
+/Prev 695 0 R
+/Next 703 0 R
+>>
+endobj
+695 0 obj
+<<
+/Title 696 0 R
+/A 693 0 R
+/Parent 651 0 R
+/Prev 691 0 R
+/Next 699 0 R
+>>
+endobj
+691 0 obj
+<<
+/Title 692 0 R
+/A 689 0 R
+/Parent 651 0 R
+/Prev 687 0 R
+/Next 695 0 R
+>>
+endobj
+687 0 obj
+<<
+/Title 688 0 R
+/A 685 0 R
+/Parent 651 0 R
+/Prev 683 0 R
+/Next 691 0 R
+>>
+endobj
+683 0 obj
+<<
+/Title 684 0 R
+/A 681 0 R
+/Parent 651 0 R
+/Prev 679 0 R
+/Next 687 0 R
+>>
+endobj
+679 0 obj
+<<
+/Title 680 0 R
+/A 677 0 R
+/Parent 651 0 R
+/Prev 675 0 R
+/Next 683 0 R
+>>
+endobj
+675 0 obj
+<<
+/Title 676 0 R
+/A 673 0 R
+/Parent 651 0 R
+/Prev 671 0 R
+/Next 679 0 R
+>>
+endobj
+671 0 obj
+<<
+/Title 672 0 R
+/A 669 0 R
+/Parent 651 0 R
+/Prev 667 0 R
+/Next 675 0 R
+>>
+endobj
+667 0 obj
+<<
+/Title 668 0 R
+/A 665 0 R
+/Parent 651 0 R
+/Prev 663 0 R
+/Next 671 0 R
+>>
+endobj
+663 0 obj
+<<
+/Title 664 0 R
+/A 661 0 R
+/Parent 651 0 R
+/Prev 659 0 R
+/Next 667 0 R
+>>
+endobj
+659 0 obj
+<<
+/Title 660 0 R
+/A 657 0 R
+/Parent 651 0 R
+/Prev 655 0 R
+/Next 663 0 R
+>>
+endobj
+655 0 obj
+<<
+/Title 656 0 R
+/A 653 0 R
+/Parent 651 0 R
+/Next 659 0 R
+>>
+endobj
+651 0 obj
+<<
+/Title 652 0 R
+/A 649 0 R
+/Parent 631 0 R
+/Prev 639 0 R
+/Next 715 0 R
+/First 655 0 R
+/Last 711 0 R
+/Count -15
+>>
+endobj
+647 0 obj
+<<
+/Title 648 0 R
+/A 645 0 R
+/Parent 639 0 R
+/Prev 643 0 R
+>>
+endobj
+643 0 obj
+<<
+/Title 644 0 R
+/A 641 0 R
+/Parent 639 0 R
+/Next 647 0 R
+>>
+endobj
+639 0 obj
+<<
+/Title 640 0 R
+/A 637 0 R
+/Parent 631 0 R
+/Prev 635 0 R
+/Next 651 0 R
+/First 643 0 R
+/Last 647 0 R
+/Count -2
+>>
+endobj
+635 0 obj
+<<
+/Title 636 0 R
+/A 633 0 R
+/Parent 631 0 R
+/Next 639 0 R
+>>
+endobj
+631 0 obj
+<<
+/Title 632 0 R
+/A 629 0 R
+/Parent 267 0 R
+/Prev 571 0 R
+/Next 751 0 R
+/First 635 0 R
+/Last 715 0 R
+/Count -4
+>>
+endobj
+627 0 obj
+<<
+/Title 628 0 R
+/A 625 0 R
+/Parent 595 0 R
+/Prev 623 0 R
+>>
+endobj
+623 0 obj
+<<
+/Title 624 0 R
+/A 621 0 R
+/Parent 595 0 R
+/Prev 619 0 R
+/Next 627 0 R
+>>
+endobj
+619 0 obj
+<<
+/Title 620 0 R
+/A 617 0 R
+/Parent 595 0 R
+/Prev 615 0 R
+/Next 623 0 R
+>>
+endobj
+615 0 obj
+<<
+/Title 616 0 R
+/A 613 0 R
+/Parent 595 0 R
+/Prev 611 0 R
+/Next 619 0 R
+>>
+endobj
+611 0 obj
+<<
+/Title 612 0 R
+/A 609 0 R
+/Parent 595 0 R
+/Prev 607 0 R
+/Next 615 0 R
+>>
+endobj
+607 0 obj
+<<
+/Title 608 0 R
+/A 605 0 R
+/Parent 595 0 R
+/Prev 603 0 R
+/Next 611 0 R
+>>
+endobj
+603 0 obj
+<<
+/Title 604 0 R
+/A 601 0 R
+/Parent 595 0 R
+/Prev 599 0 R
+/Next 607 0 R
+>>
+endobj
+599 0 obj
+<<
+/Title 600 0 R
+/A 597 0 R
+/Parent 595 0 R
+/Next 603 0 R
+>>
+endobj
+595 0 obj
+<<
+/Title 596 0 R
+/A 593 0 R
+/Parent 571 0 R
+/Prev 579 0 R
+/First 599 0 R
+/Last 627 0 R
+/Count -8
+>>
+endobj
+591 0 obj
+<<
+/Title 592 0 R
+/A 589 0 R
+/Parent 579 0 R
+/Prev 587 0 R
+>>
+endobj
+587 0 obj
+<<
+/Title 588 0 R
+/A 585 0 R
+/Parent 579 0 R
+/Prev 583 0 R
+/Next 591 0 R
+>>
+endobj
+583 0 obj
+<<
+/Title 584 0 R
+/A 581 0 R
+/Parent 579 0 R
+/Next 587 0 R
+>>
+endobj
+579 0 obj
+<<
+/Title 580 0 R
+/A 577 0 R
+/Parent 571 0 R
+/Prev 575 0 R
+/Next 595 0 R
+/First 583 0 R
+/Last 591 0 R
+/Count -3
+>>
+endobj
+575 0 obj
+<<
+/Title 576 0 R
+/A 573 0 R
+/Parent 571 0 R
+/Next 579 0 R
+>>
+endobj
+571 0 obj
+<<
+/Title 572 0 R
+/A 569 0 R
+/Parent 267 0 R
+/Prev 511 0 R
+/Next 631 0 R
+/First 575 0 R
+/Last 595 0 R
+/Count -3
+>>
+endobj
+567 0 obj
+<<
+/Title 568 0 R
+/A 565 0 R
+/Parent 535 0 R
+/Prev 563 0 R
+>>
+endobj
+563 0 obj
+<<
+/Title 564 0 R
+/A 561 0 R
+/Parent 535 0 R
+/Prev 559 0 R
+/Next 567 0 R
+>>
+endobj
+559 0 obj
+<<
+/Title 560 0 R
+/A 557 0 R
+/Parent 535 0 R
+/Prev 555 0 R
+/Next 563 0 R
+>>
+endobj
+555 0 obj
+<<
+/Title 556 0 R
+/A 553 0 R
+/Parent 535 0 R
+/Prev 551 0 R
+/Next 559 0 R
+>>
+endobj
+551 0 obj
+<<
+/Title 552 0 R
+/A 549 0 R
+/Parent 535 0 R
+/Prev 547 0 R
+/Next 555 0 R
+>>
+endobj
+547 0 obj
+<<
+/Title 548 0 R
+/A 545 0 R
+/Parent 535 0 R
+/Prev 543 0 R
+/Next 551 0 R
+>>
+endobj
+543 0 obj
+<<
+/Title 544 0 R
+/A 541 0 R
+/Parent 535 0 R
+/Prev 539 0 R
+/Next 547 0 R
+>>
+endobj
+539 0 obj
+<<
+/Title 540 0 R
+/A 537 0 R
+/Parent 535 0 R
+/Next 543 0 R
+>>
+endobj
+535 0 obj
+<<
+/Title 536 0 R
+/A 533 0 R
+/Parent 511 0 R
+/Prev 519 0 R
+/First 539 0 R
+/Last 567 0 R
+/Count -8
+>>
+endobj
+531 0 obj
+<<
+/Title 532 0 R
+/A 529 0 R
+/Parent 519 0 R
+/Prev 527 0 R
+>>
+endobj
+527 0 obj
+<<
+/Title 528 0 R
+/A 525 0 R
+/Parent 519 0 R
+/Prev 523 0 R
+/Next 531 0 R
+>>
+endobj
+523 0 obj
+<<
+/Title 524 0 R
+/A 521 0 R
+/Parent 519 0 R
+/Next 527 0 R
+>>
+endobj
+519 0 obj
+<<
+/Title 520 0 R
+/A 517 0 R
+/Parent 511 0 R
+/Prev 515 0 R
+/Next 535 0 R
+/First 523 0 R
+/Last 531 0 R
+/Count -3
+>>
+endobj
+515 0 obj
+<<
+/Title 516 0 R
+/A 513 0 R
+/Parent 511 0 R
+/Next 519 0 R
+>>
+endobj
+511 0 obj
+<<
+/Title 512 0 R
+/A 509 0 R
+/Parent 267 0 R
+/Prev 451 0 R
+/Next 571 0 R
+/First 515 0 R
+/Last 535 0 R
+/Count -3
+>>
+endobj
+507 0 obj
+<<
+/Title 508 0 R
+/A 505 0 R
+/Parent 475 0 R
+/Prev 503 0 R
+>>
+endobj
+503 0 obj
+<<
+/Title 504 0 R
+/A 501 0 R
+/Parent 475 0 R
+/Prev 499 0 R
+/Next 507 0 R
+>>
+endobj
+499 0 obj
+<<
+/Title 500 0 R
+/A 497 0 R
+/Parent 475 0 R
+/Prev 495 0 R
+/Next 503 0 R
+>>
+endobj
+495 0 obj
+<<
+/Title 496 0 R
+/A 493 0 R
+/Parent 475 0 R
+/Prev 491 0 R
+/Next 499 0 R
+>>
+endobj
+491 0 obj
+<<
+/Title 492 0 R
+/A 489 0 R
+/Parent 475 0 R
+/Prev 487 0 R
+/Next 495 0 R
+>>
+endobj
+487 0 obj
+<<
+/Title 488 0 R
+/A 485 0 R
+/Parent 475 0 R
+/Prev 483 0 R
+/Next 491 0 R
+>>
+endobj
+483 0 obj
+<<
+/Title 484 0 R
+/A 481 0 R
+/Parent 475 0 R
+/Prev 479 0 R
+/Next 487 0 R
+>>
+endobj
+479 0 obj
+<<
+/Title 480 0 R
+/A 477 0 R
+/Parent 475 0 R
+/Next 483 0 R
+>>
+endobj
+475 0 obj
+<<
+/Title 476 0 R
+/A 473 0 R
+/Parent 451 0 R
+/Prev 459 0 R
+/First 479 0 R
+/Last 507 0 R
+/Count -8
+>>
+endobj
+471 0 obj
+<<
+/Title 472 0 R
+/A 469 0 R
+/Parent 459 0 R
+/Prev 467 0 R
+>>
+endobj
+467 0 obj
+<<
+/Title 468 0 R
+/A 465 0 R
+/Parent 459 0 R
+/Prev 463 0 R
+/Next 471 0 R
+>>
+endobj
+463 0 obj
+<<
+/Title 464 0 R
+/A 461 0 R
+/Parent 459 0 R
+/Next 467 0 R
+>>
+endobj
+459 0 obj
+<<
+/Title 460 0 R
+/A 457 0 R
+/Parent 451 0 R
+/Prev 455 0 R
+/Next 475 0 R
+/First 463 0 R
+/Last 471 0 R
+/Count -3
+>>
+endobj
+455 0 obj
+<<
+/Title 456 0 R
+/A 453 0 R
+/Parent 451 0 R
+/Next 459 0 R
+>>
+endobj
+451 0 obj
+<<
+/Title 452 0 R
+/A 449 0 R
+/Parent 267 0 R
+/Prev 411 0 R
+/Next 511 0 R
+/First 455 0 R
+/Last 475 0 R
+/Count -3
+>>
+endobj
+447 0 obj
+<<
+/Title 448 0 R
+/A 445 0 R
+/Parent 443 0 R
+>>
+endobj
+443 0 obj
+<<
+/Title 444 0 R
+/A 441 0 R
+/Parent 411 0 R
+/Prev 427 0 R
+/First 447 0 R
+/Last 447 0 R
+/Count -1
+>>
+endobj
+439 0 obj
+<<
+/Title 440 0 R
+/A 437 0 R
+/Parent 427 0 R
+/Prev 435 0 R
+>>
+endobj
+435 0 obj
+<<
+/Title 436 0 R
+/A 433 0 R
+/Parent 427 0 R
+/Prev 431 0 R
+/Next 439 0 R
+>>
+endobj
+431 0 obj
+<<
+/Title 432 0 R
+/A 429 0 R
+/Parent 427 0 R
+/Next 435 0 R
+>>
+endobj
+427 0 obj
+<<
+/Title 428 0 R
+/A 425 0 R
+/Parent 411 0 R
+/Prev 419 0 R
+/Next 443 0 R
+/First 431 0 R
+/Last 439 0 R
+/Count -3
+>>
+endobj
+423 0 obj
+<<
+/Title 424 0 R
+/A 421 0 R
+/Parent 419 0 R
+>>
+endobj
+419 0 obj
+<<
+/Title 420 0 R
+/A 417 0 R
+/Parent 411 0 R
+/Prev 415 0 R
+/Next 427 0 R
+/First 423 0 R
+/Last 423 0 R
+/Count -1
+>>
+endobj
+415 0 obj
+<<
+/Title 416 0 R
+/A 413 0 R
+/Parent 411 0 R
+/Next 419 0 R
+>>
+endobj
+411 0 obj
+<<
+/Title 412 0 R
+/A 409 0 R
+/Parent 267 0 R
+/Prev 319 0 R
+/Next 451 0 R
+/First 415 0 R
+/Last 443 0 R
+/Count -4
+>>
+endobj
+407 0 obj
+<<
+/Title 408 0 R
+/A 405 0 R
+/Parent 351 0 R
+/Prev 403 0 R
+>>
+endobj
+403 0 obj
+<<
+/Title 404 0 R
+/A 401 0 R
+/Parent 351 0 R
+/Prev 399 0 R
+/Next 407 0 R
+>>
+endobj
+399 0 obj
+<<
+/Title 400 0 R
+/A 397 0 R
+/Parent 351 0 R
+/Prev 395 0 R
+/Next 403 0 R
+>>
+endobj
+395 0 obj
+<<
+/Title 396 0 R
+/A 393 0 R
+/Parent 351 0 R
+/Prev 391 0 R
+/Next 399 0 R
+>>
+endobj
+391 0 obj
+<<
+/Title 392 0 R
+/A 389 0 R
+/Parent 351 0 R
+/Prev 387 0 R
+/Next 395 0 R
+>>
+endobj
+387 0 obj
+<<
+/Title 388 0 R
+/A 385 0 R
+/Parent 351 0 R
+/Prev 383 0 R
+/Next 391 0 R
+>>
+endobj
+383 0 obj
+<<
+/Title 384 0 R
+/A 381 0 R
+/Parent 351 0 R
+/Prev 379 0 R
+/Next 387 0 R
+>>
+endobj
+379 0 obj
+<<
+/Title 380 0 R
+/A 377 0 R
+/Parent 351 0 R
+/Prev 375 0 R
+/Next 383 0 R
+>>
+endobj
+375 0 obj
+<<
+/Title 376 0 R
+/A 373 0 R
+/Parent 351 0 R
+/Prev 371 0 R
+/Next 379 0 R
+>>
+endobj
+371 0 obj
+<<
+/Title 372 0 R
+/A 369 0 R
+/Parent 351 0 R
+/Prev 367 0 R
+/Next 375 0 R
+>>
+endobj
+367 0 obj
+<<
+/Title 368 0 R
+/A 365 0 R
+/Parent 351 0 R
+/Prev 363 0 R
+/Next 371 0 R
+>>
+endobj
+363 0 obj
+<<
+/Title 364 0 R
+/A 361 0 R
+/Parent 351 0 R
+/Prev 359 0 R
+/Next 367 0 R
+>>
+endobj
+359 0 obj
+<<
+/Title 360 0 R
+/A 357 0 R
+/Parent 351 0 R
+/Prev 355 0 R
+/Next 363 0 R
+>>
+endobj
+355 0 obj
+<<
+/Title 356 0 R
+/A 353 0 R
+/Parent 351 0 R
+/Next 359 0 R
+>>
+endobj
+351 0 obj
+<<
+/Title 352 0 R
+/A 349 0 R
+/Parent 319 0 R
+/Prev 343 0 R
+/First 355 0 R
+/Last 407 0 R
+/Count -14
+>>
+endobj
+347 0 obj
+<<
+/Title 348 0 R
+/A 345 0 R
+/Parent 343 0 R
+>>
+endobj
+343 0 obj
+<<
+/Title 344 0 R
+/A 341 0 R
+/Parent 319 0 R
+/Prev 327 0 R
+/Next 351 0 R
+/First 347 0 R
+/Last 347 0 R
+/Count -1
+>>
+endobj
+339 0 obj
+<<
+/Title 340 0 R
+/A 337 0 R
+/Parent 327 0 R
+/Prev 335 0 R
+>>
+endobj
+335 0 obj
+<<
+/Title 336 0 R
+/A 333 0 R
+/Parent 327 0 R
+/Prev 331 0 R
+/Next 339 0 R
+>>
+endobj
+331 0 obj
+<<
+/Title 332 0 R
+/A 329 0 R
+/Parent 327 0 R
+/Next 335 0 R
+>>
+endobj
+327 0 obj
+<<
+/Title 328 0 R
+/A 325 0 R
+/Parent 319 0 R
+/Prev 323 0 R
+/Next 343 0 R
+/First 331 0 R
+/Last 339 0 R
+/Count -3
+>>
+endobj
+323 0 obj
+<<
+/Title 324 0 R
+/A 321 0 R
+/Parent 319 0 R
+/Next 327 0 R
+>>
+endobj
+319 0 obj
+<<
+/Title 320 0 R
+/A 317 0 R
+/Parent 267 0 R
+/Prev 271 0 R
+/Next 411 0 R
+/First 323 0 R
+/Last 351 0 R
+/Count -4
+>>
+endobj
+315 0 obj
+<<
+/Title 316 0 R
+/A 313 0 R
+/Parent 291 0 R
+/Prev 311 0 R
+>>
+endobj
+311 0 obj
+<<
+/Title 312 0 R
+/A 309 0 R
+/Parent 291 0 R
+/Prev 307 0 R
+/Next 315 0 R
+>>
+endobj
+307 0 obj
+<<
+/Title 308 0 R
+/A 305 0 R
+/Parent 291 0 R
+/Prev 303 0 R
+/Next 311 0 R
+>>
+endobj
+303 0 obj
+<<
+/Title 304 0 R
+/A 301 0 R
+/Parent 291 0 R
+/Prev 299 0 R
+/Next 307 0 R
+>>
+endobj
+299 0 obj
+<<
+/Title 300 0 R
+/A 297 0 R
+/Parent 291 0 R
+/Prev 295 0 R
+/Next 303 0 R
+>>
+endobj
+295 0 obj
+<<
+/Title 296 0 R
+/A 293 0 R
+/Parent 291 0 R
+/Next 299 0 R
+>>
+endobj
+291 0 obj
+<<
+/Title 292 0 R
+/A 289 0 R
+/Parent 271 0 R
+/Prev 279 0 R
+/First 295 0 R
+/Last 315 0 R
+/Count -6
+>>
+endobj
+287 0 obj
+<<
+/Title 288 0 R
+/A 285 0 R
+/Parent 279 0 R
+/Prev 283 0 R
+>>
+endobj
+283 0 obj
+<<
+/Title 284 0 R
+/A 281 0 R
+/Parent 279 0 R
+/Next 287 0 R
+>>
+endobj
+279 0 obj
+<<
+/Title 280 0 R
+/A 277 0 R
+/Parent 271 0 R
+/Prev 275 0 R
+/Next 291 0 R
+/First 283 0 R
+/Last 287 0 R
+/Count -2
+>>
+endobj
+275 0 obj
+<<
+/Title 276 0 R
+/A 273 0 R
+/Parent 271 0 R
+/Next 279 0 R
+>>
+endobj
+271 0 obj
+<<
+/Title 272 0 R
+/A 269 0 R
+/Parent 267 0 R
+/Next 319 0 R
+/First 275 0 R
+/Last 291 0 R
+/Count -3
+>>
+endobj
+267 0 obj
+<<
+/Title 268 0 R
+/A 265 0 R
+/Parent 13610 0 R
+/Prev 67 0 R
+/Next 1731 0 R
+/First 271 0 R
+/Last 1631 0 R
+/Count -25
+>>
+endobj
+263 0 obj
+<<
+/Title 264 0 R
+/A 261 0 R
+/Parent 67 0 R
+/Prev 111 0 R
+>>
+endobj
+259 0 obj
+<<
+/Title 260 0 R
+/A 257 0 R
+/Parent 151 0 R
+/Prev 255 0 R
+>>
+endobj
+255 0 obj
+<<
+/Title 256 0 R
+/A 253 0 R
+/Parent 151 0 R
+/Prev 251 0 R
+/Next 259 0 R
+>>
+endobj
+251 0 obj
+<<
+/Title 252 0 R
+/A 249 0 R
+/Parent 151 0 R
+/Prev 247 0 R
+/Next 255 0 R
+>>
+endobj
+247 0 obj
+<<
+/Title 248 0 R
+/A 245 0 R
+/Parent 151 0 R
+/Prev 243 0 R
+/Next 251 0 R
+>>
+endobj
+243 0 obj
+<<
+/Title 244 0 R
+/A 241 0 R
+/Parent 151 0 R
+/Prev 239 0 R
+/Next 247 0 R
+>>
+endobj
+239 0 obj
+<<
+/Title 240 0 R
+/A 237 0 R
+/Parent 151 0 R
+/Prev 235 0 R
+/Next 243 0 R
+>>
+endobj
+235 0 obj
+<<
+/Title 236 0 R
+/A 233 0 R
+/Parent 151 0 R
+/Prev 231 0 R
+/Next 239 0 R
+>>
+endobj
+231 0 obj
+<<
+/Title 232 0 R
+/A 229 0 R
+/Parent 151 0 R
+/Prev 227 0 R
+/Next 235 0 R
+>>
+endobj
+227 0 obj
+<<
+/Title 228 0 R
+/A 225 0 R
+/Parent 151 0 R
+/Prev 223 0 R
+/Next 231 0 R
+>>
+endobj
+223 0 obj
+<<
+/Title 224 0 R
+/A 221 0 R
+/Parent 151 0 R
+/Prev 219 0 R
+/Next 227 0 R
+>>
+endobj
+219 0 obj
+<<
+/Title 220 0 R
+/A 217 0 R
+/Parent 151 0 R
+/Prev 215 0 R
+/Next 223 0 R
+>>
+endobj
+215 0 obj
+<<
+/Title 216 0 R
+/A 213 0 R
+/Parent 151 0 R
+/Prev 211 0 R
+/Next 219 0 R
+>>
+endobj
+211 0 obj
+<<
+/Title 212 0 R
+/A 209 0 R
+/Parent 151 0 R
+/Prev 207 0 R
+/Next 215 0 R
+>>
+endobj
+207 0 obj
+<<
+/Title 208 0 R
+/A 205 0 R
+/Parent 151 0 R
+/Prev 203 0 R
+/Next 211 0 R
+>>
+endobj
+203 0 obj
+<<
+/Title 204 0 R
+/A 201 0 R
+/Parent 151 0 R
+/Prev 199 0 R
+/Next 207 0 R
+>>
+endobj
+199 0 obj
+<<
+/Title 200 0 R
+/A 197 0 R
+/Parent 151 0 R
+/Prev 195 0 R
+/Next 203 0 R
+>>
+endobj
+195 0 obj
+<<
+/Title 196 0 R
+/A 193 0 R
+/Parent 151 0 R
+/Prev 191 0 R
+/Next 199 0 R
+>>
+endobj
+191 0 obj
+<<
+/Title 192 0 R
+/A 189 0 R
+/Parent 151 0 R
+/Prev 187 0 R
+/Next 195 0 R
+>>
+endobj
+187 0 obj
+<<
+/Title 188 0 R
+/A 185 0 R
+/Parent 151 0 R
+/Prev 183 0 R
+/Next 191 0 R
+>>
+endobj
+183 0 obj
+<<
+/Title 184 0 R
+/A 181 0 R
+/Parent 151 0 R
+/Prev 179 0 R
+/Next 187 0 R
+>>
+endobj
+179 0 obj
+<<
+/Title 180 0 R
+/A 177 0 R
+/Parent 151 0 R
+/Prev 175 0 R
+/Next 183 0 R
+>>
+endobj
+175 0 obj
+<<
+/Title 176 0 R
+/A 173 0 R
+/Parent 151 0 R
+/Prev 171 0 R
+/Next 179 0 R
+>>
+endobj
+171 0 obj
+<<
+/Title 172 0 R
+/A 169 0 R
+/Parent 151 0 R
+/Prev 167 0 R
+/Next 175 0 R
+>>
+endobj
+167 0 obj
+<<
+/Title 168 0 R
+/A 165 0 R
+/Parent 151 0 R
+/Prev 163 0 R
+/Next 171 0 R
+>>
+endobj
+163 0 obj
+<<
+/Title 164 0 R
+/A 161 0 R
+/Parent 151 0 R
+/Prev 159 0 R
+/Next 167 0 R
+>>
+endobj
+159 0 obj
+<<
+/Title 160 0 R
+/A 157 0 R
+/Parent 151 0 R
+/Prev 155 0 R
+/Next 163 0 R
+>>
+endobj
+155 0 obj
+<<
+/Title 156 0 R
+/A 153 0 R
+/Parent 151 0 R
+/Next 159 0 R
+>>
+endobj
+151 0 obj
+<<
+/Title 152 0 R
+/A 149 0 R
+/Parent 111 0 R
+/Prev 119 0 R
+/First 155 0 R
+/Last 259 0 R
+/Count -27
+>>
+endobj
+147 0 obj
+<<
+/Title 148 0 R
+/A 145 0 R
+/Parent 119 0 R
+/Prev 143 0 R
+>>
+endobj
+143 0 obj
+<<
+/Title 144 0 R
+/A 141 0 R
+/Parent 119 0 R
+/Prev 139 0 R
+/Next 147 0 R
+>>
+endobj
+139 0 obj
+<<
+/Title 140 0 R
+/A 137 0 R
+/Parent 119 0 R
+/Prev 135 0 R
+/Next 143 0 R
+>>
+endobj
+135 0 obj
+<<
+/Title 136 0 R
+/A 133 0 R
+/Parent 119 0 R
+/Prev 131 0 R
+/Next 139 0 R
+>>
+endobj
+131 0 obj
+<<
+/Title 132 0 R
+/A 129 0 R
+/Parent 119 0 R
+/Prev 127 0 R
+/Next 135 0 R
+>>
+endobj
+127 0 obj
+<<
+/Title 128 0 R
+/A 125 0 R
+/Parent 119 0 R
+/Prev 123 0 R
+/Next 131 0 R
+>>
+endobj
+123 0 obj
+<<
+/Title 124 0 R
+/A 121 0 R
+/Parent 119 0 R
+/Next 127 0 R
+>>
+endobj
+119 0 obj
+<<
+/Title 120 0 R
+/A 117 0 R
+/Parent 111 0 R
+/Prev 115 0 R
+/Next 151 0 R
+/First 123 0 R
+/Last 147 0 R
+/Count -7
+>>
+endobj
+115 0 obj
+<<
+/Title 116 0 R
+/A 113 0 R
+/Parent 111 0 R
+/Next 119 0 R
+>>
+endobj
+111 0 obj
+<<
+/Title 112 0 R
+/A 109 0 R
+/Parent 67 0 R
+/Prev 107 0 R
+/Next 263 0 R
+/First 115 0 R
+/Last 151 0 R
+/Count -3
+>>
+endobj
+107 0 obj
+<<
+/Title 108 0 R
+/A 105 0 R
+/Parent 67 0 R
+/Prev 103 0 R
+/Next 111 0 R
+>>
+endobj
+103 0 obj
+<<
+/Title 104 0 R
+/A 101 0 R
+/Parent 67 0 R
+/Prev 99 0 R
+/Next 107 0 R
+>>
+endobj
+99 0 obj
+<<
+/Title 100 0 R
+/A 97 0 R
+/Parent 67 0 R
+/Prev 71 0 R
+/Next 103 0 R
+>>
+endobj
+95 0 obj
+<<
+/Title 96 0 R
+/A 93 0 R
+/Parent 75 0 R
+/Prev 91 0 R
+>>
+endobj
+91 0 obj
+<<
+/Title 92 0 R
+/A 89 0 R
+/Parent 75 0 R
+/Prev 87 0 R
+/Next 95 0 R
+>>
+endobj
+87 0 obj
+<<
+/Title 88 0 R
+/A 85 0 R
+/Parent 75 0 R
+/Prev 83 0 R
+/Next 91 0 R
+>>
+endobj
+83 0 obj
+<<
+/Title 84 0 R
+/A 81 0 R
+/Parent 75 0 R
+/Prev 79 0 R
+/Next 87 0 R
+>>
+endobj
+79 0 obj
+<<
+/Title 80 0 R
+/A 77 0 R
+/Parent 75 0 R
+/Next 83 0 R
+>>
+endobj
+75 0 obj
+<<
+/Title 76 0 R
+/A 73 0 R
+/Parent 71 0 R
+/First 79 0 R
+/Last 95 0 R
+/Count -5
+>>
+endobj
+71 0 obj
+<<
+/Title 72 0 R
+/A 69 0 R
+/Parent 67 0 R
+/Next 99 0 R
+/First 75 0 R
+/Last 75 0 R
+/Count -1
+>>
+endobj
+67 0 obj
+<<
+/Title 68 0 R
+/A 65 0 R
+/Parent 13610 0 R
+/Prev 59 0 R
+/Next 267 0 R
+/First 71 0 R
+/Last 263 0 R
+/Count -6
+>>
+endobj
+63 0 obj
+<<
+/Title 64 0 R
+/A 61 0 R
+/Parent 59 0 R
+>>
+endobj
+59 0 obj
+<<
+/Title 60 0 R
+/A 57 0 R
+/Parent 13610 0 R
+/Prev 51 0 R
+/Next 67 0 R
+/First 63 0 R
+/Last 63 0 R
+/Count -1
+>>
+endobj
+55 0 obj
+<<
+/Title 56 0 R
+/A 53 0 R
+/Parent 51 0 R
+>>
+endobj
+51 0 obj
+<<
+/Title 52 0 R
+/A 49 0 R
+/Parent 13610 0 R
+/Prev 43 0 R
+/Next 59 0 R
+/First 55 0 R
+/Last 55 0 R
+/Count -1
+>>
+endobj
+47 0 obj
+<<
+/Title 48 0 R
+/A 45 0 R
+/Parent 43 0 R
+>>
+endobj
+43 0 obj
+<<
+/Title 44 0 R
+/A 41 0 R
+/Parent 13610 0 R
+/Prev 35 0 R
+/Next 51 0 R
+/First 47 0 R
+/Last 47 0 R
+/Count -1
+>>
+endobj
+39 0 obj
+<<
+/Title 40 0 R
+/A 37 0 R
+/Parent 35 0 R
+>>
+endobj
+35 0 obj
+<<
+/Title 36 0 R
+/A 33 0 R
+/Parent 13610 0 R
+/Prev 31 0 R
+/Next 43 0 R
+/First 39 0 R
+/Last 39 0 R
+/Count -1
+>>
+endobj
+31 0 obj
+<<
+/Title 32 0 R
+/A 29 0 R
+/Parent 13610 0 R
+/Prev 3 0 R
+/Next 35 0 R
+>>
+endobj
+27 0 obj
+<<
+/Title 28 0 R
+/A 25 0 R
+/Parent 3 0 R
+/Prev 23 0 R
+>>
+endobj
+23 0 obj
+<<
+/Title 24 0 R
+/A 21 0 R
+/Parent 3 0 R
+/Prev 7 0 R
+/Next 27 0 R
+>>
+endobj
+19 0 obj
+<<
+/Title 20 0 R
+/A 17 0 R
+/Parent 7 0 R
+/Prev 15 0 R
+>>
+endobj
+15 0 obj
+<<
+/Title 16 0 R
+/A 13 0 R
+/Parent 7 0 R
+/Prev 11 0 R
+/Next 19 0 R
+>>
+endobj
+11 0 obj
+<<
+/Title 12 0 R
+/A 9 0 R
+/Parent 7 0 R
+/Next 15 0 R
+>>
+endobj
+7 0 obj
+<<
+/Title 8 0 R
+/A 5 0 R
+/Parent 3 0 R
+/Next 23 0 R
+/First 11 0 R
+/Last 19 0 R
+/Count -3
+>>
+endobj
+3 0 obj
+<<
+/Title 4 0 R
+/A 1 0 R
+/Parent 13610 0 R
+/Next 31 0 R
+/First 7 0 R
+/Last 27 0 R
+/Count -3
+>>
+endobj
+13611 0 obj
+<<
+/Names [(Doc-Start) 2285 0 R (Item.1) 2939 0 R (Item.10) 2952 0 R (Item.11) 2953 0 R (Item.12) 2954 0 R (Item.13) 2955 0 R]
+/Limits [(Doc-Start) (Item.13)]
+>>
+endobj
+13612 0 obj
+<<
+/Names [(Item.14) 2957 0 R (Item.15) 2958 0 R (Item.16) 2959 0 R (Item.17) 2960 0 R (Item.18) 2961 0 R (Item.19) 2962 0 R]
+/Limits [(Item.14) (Item.19)]
+>>
+endobj
+13613 0 obj
+<<
+/Names [(Item.2) 2943 0 R (Item.20) 2963 0 R (Item.3) 2944 0 R (Item.4) 2945 0 R (Item.5) 2946 0 R (Item.6) 2947 0 R]
+/Limits [(Item.2) (Item.6)]
+>>
+endobj
+13614 0 obj
+<<
+/Names [(Item.7) 2948 0 R (Item.8) 2950 0 R (Item.9) 2951 0 R (_broadcast_8cpp) 3379 0 R (_broadcast_8cpp_source) 3864 0 R (_broadcast_8cpp_source_l00001) 12538 0 R]
+/Limits [(Item.7) (_broadcast_8cpp_source_l00001)]
+>>
+endobj
+13615 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00002) 12539 0 R (_broadcast_8cpp_source_l00003) 12540 0 R (_broadcast_8cpp_source_l00004) 12541 0 R (_broadcast_8cpp_source_l00005) 3863 0 R (_broadcast_8cpp_source_l00006) 12542 0 R (_broadcast_8cpp_source_l00007) 12543 0 R]
+/Limits [(_broadcast_8cpp_source_l00002) (_broadcast_8cpp_source_l00007)]
+>>
+endobj
+13616 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00008) 12544 0 R (_broadcast_8cpp_source_l00009) 12545 0 R (_broadcast_8cpp_source_l00010) 12546 0 R (_broadcast_8cpp_source_l00011) 12547 0 R (_broadcast_8cpp_source_l00012) 12548 0 R (_broadcast_8cpp_source_l00013) 12549 0 R]
+/Limits [(_broadcast_8cpp_source_l00008) (_broadcast_8cpp_source_l00013)]
+>>
+endobj
+13617 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00014) 12550 0 R (_broadcast_8cpp_source_l00015) 12551 0 R (_broadcast_8cpp_source_l00016) 12552 0 R (_broadcast_8cpp_source_l00017) 12553 0 R (_broadcast_8cpp_source_l00018) 12554 0 R (_broadcast_8cpp_source_l00019) 12555 0 R]
+/Limits [(_broadcast_8cpp_source_l00014) (_broadcast_8cpp_source_l00019)]
+>>
+endobj
+13618 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00020) 12556 0 R (_broadcast_8cpp_source_l00021) 12557 0 R (_broadcast_8cpp_source_l00022) 12558 0 R (_broadcast_8cpp_source_l00023) 3865 0 R (_broadcast_8cpp_source_l00024) 12559 0 R (_broadcast_8cpp_source_l00025) 12560 0 R]
+/Limits [(_broadcast_8cpp_source_l00020) (_broadcast_8cpp_source_l00025)]
+>>
+endobj
+13619 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00026) 12561 0 R (_broadcast_8cpp_source_l00027) 12562 0 R (_broadcast_8cpp_source_l00028) 12563 0 R (_broadcast_8cpp_source_l00029) 12564 0 R (_broadcast_8cpp_source_l00030) 12565 0 R (_broadcast_8cpp_source_l00031) 12566 0 R]
+/Limits [(_broadcast_8cpp_source_l00026) (_broadcast_8cpp_source_l00031)]
+>>
+endobj
+13620 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00032) 12567 0 R (_broadcast_8cpp_source_l00033) 12568 0 R (_broadcast_8cpp_source_l00034) 12569 0 R (_broadcast_8cpp_source_l00035) 12570 0 R (_broadcast_8cpp_source_l00036) 12571 0 R (_broadcast_8cpp_source_l00037) 12572 0 R]
+/Limits [(_broadcast_8cpp_source_l00032) (_broadcast_8cpp_source_l00037)]
+>>
+endobj
+13621 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00038) 12573 0 R (_broadcast_8cpp_source_l00039) 12574 0 R (_broadcast_8cpp_source_l00040) 3866 0 R (_broadcast_8cpp_source_l00041) 12575 0 R (_broadcast_8cpp_source_l00042) 12576 0 R (_broadcast_8cpp_source_l00043) 12577 0 R]
+/Limits [(_broadcast_8cpp_source_l00038) (_broadcast_8cpp_source_l00043)]
+>>
+endobj
+13622 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00044) 12578 0 R (_broadcast_8cpp_source_l00045) 12579 0 R (_broadcast_8cpp_source_l00046) 12580 0 R (_broadcast_8cpp_source_l00047) 12595 0 R (_broadcast_8cpp_source_l00048) 12596 0 R (_broadcast_8cpp_source_l00049) 12597 0 R]
+/Limits [(_broadcast_8cpp_source_l00044) (_broadcast_8cpp_source_l00049)]
+>>
+endobj
+13623 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00050) 12598 0 R (_broadcast_8cpp_source_l00051) 12599 0 R (_broadcast_8cpp_source_l00052) 12600 0 R (_broadcast_8cpp_source_l00053) 12601 0 R (_broadcast_8cpp_source_l00054) 12602 0 R (_broadcast_8cpp_source_l00055) 12603 0 R]
+/Limits [(_broadcast_8cpp_source_l00050) (_broadcast_8cpp_source_l00055)]
+>>
+endobj
+13624 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00056) 12604 0 R (_broadcast_8cpp_source_l00057) 12605 0 R (_broadcast_8cpp_source_l00058) 12606 0 R (_broadcast_8cpp_source_l00059) 12607 0 R (_broadcast_8cpp_source_l00060) 12608 0 R (_broadcast_8cpp_source_l00061) 12609 0 R]
+/Limits [(_broadcast_8cpp_source_l00056) (_broadcast_8cpp_source_l00061)]
+>>
+endobj
+13625 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00062) 12610 0 R (_broadcast_8cpp_source_l00063) 3888 0 R (_broadcast_8cpp_source_l00064) 12611 0 R (_broadcast_8cpp_source_l00065) 12612 0 R (_broadcast_8cpp_source_l00066) 12613 0 R (_broadcast_8cpp_source_l00067) 12614 0 R]
+/Limits [(_broadcast_8cpp_source_l00062) (_broadcast_8cpp_source_l00067)]
+>>
+endobj
+13626 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00068) 12615 0 R (_broadcast_8cpp_source_l00069) 12616 0 R (_broadcast_8cpp_source_l00070) 12617 0 R (_broadcast_8cpp_source_l00071) 12618 0 R (_broadcast_8cpp_source_l00072) 12619 0 R (_broadcast_8cpp_source_l00073) 12620 0 R]
+/Limits [(_broadcast_8cpp_source_l00068) (_broadcast_8cpp_source_l00073)]
+>>
+endobj
+13627 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00074) 12621 0 R (_broadcast_8cpp_source_l00075) 12622 0 R (_broadcast_8cpp_source_l00076) 12623 0 R (_broadcast_8cpp_source_l00077) 12624 0 R (_broadcast_8cpp_source_l00078) 12625 0 R (_broadcast_8cpp_source_l00079) 12626 0 R]
+/Limits [(_broadcast_8cpp_source_l00074) (_broadcast_8cpp_source_l00079)]
+>>
+endobj
+13628 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00080) 12627 0 R (_broadcast_8cpp_source_l00081) 12628 0 R (_broadcast_8cpp_source_l00082) 12629 0 R (_broadcast_8cpp_source_l00083) 12630 0 R (_broadcast_8cpp_source_l00084) 12631 0 R (_broadcast_8cpp_source_l00085) 12632 0 R]
+/Limits [(_broadcast_8cpp_source_l00080) (_broadcast_8cpp_source_l00085)]
+>>
+endobj
+13629 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00086) 12633 0 R (_broadcast_8cpp_source_l00087) 12634 0 R (_broadcast_8cpp_source_l00088) 12635 0 R (_broadcast_8cpp_source_l00089) 12636 0 R (_broadcast_8cpp_source_l00090) 12637 0 R (_broadcast_8cpp_source_l00091) 12638 0 R]
+/Limits [(_broadcast_8cpp_source_l00086) (_broadcast_8cpp_source_l00091)]
+>>
+endobj
+13630 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00092) 12639 0 R (_broadcast_8cpp_source_l00093) 12640 0 R (_broadcast_8cpp_source_l00094) 12641 0 R (_broadcast_8cpp_source_l00095) 12642 0 R (_broadcast_8cpp_source_l00096) 12643 0 R (_broadcast_8cpp_source_l00097) 12644 0 R]
+/Limits [(_broadcast_8cpp_source_l00092) (_broadcast_8cpp_source_l00097)]
+>>
+endobj
+13631 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00098) 12645 0 R (_broadcast_8cpp_source_l00099) 12646 0 R (_broadcast_8cpp_source_l00100) 12647 0 R (_broadcast_8cpp_source_l00101) 12648 0 R (_broadcast_8cpp_source_l00102) 12649 0 R (_broadcast_8cpp_source_l00103) 12650 0 R]
+/Limits [(_broadcast_8cpp_source_l00098) (_broadcast_8cpp_source_l00103)]
+>>
+endobj
+13632 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00104) 12651 0 R (_broadcast_8cpp_source_l00105) 12652 0 R (_broadcast_8cpp_source_l00106) 12653 0 R (_broadcast_8cpp_source_l00107) 12654 0 R (_broadcast_8cpp_source_l00108) 12655 0 R (_broadcast_8cpp_source_l00109) 3889 0 R]
+/Limits [(_broadcast_8cpp_source_l00104) (_broadcast_8cpp_source_l00109)]
+>>
+endobj
+13633 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00110) 12656 0 R (_broadcast_8cpp_source_l00111) 12657 0 R (_broadcast_8cpp_source_l00112) 12658 0 R (_broadcast_8cpp_source_l00113) 12659 0 R (_broadcast_8cpp_source_l00114) 3916 0 R (_broadcast_8cpp_source_l00115) 12660 0 R]
+/Limits [(_broadcast_8cpp_source_l00110) (_broadcast_8cpp_source_l00115)]
+>>
+endobj
+13634 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00116) 12661 0 R (_broadcast_8cpp_source_l00117) 12662 0 R (_broadcast_8cpp_source_l00118) 12663 0 R (_broadcast_8cpp_source_l00119) 12664 0 R (_broadcast_8cpp_source_l00120) 12665 0 R (_broadcast_8cpp_source_l00121) 12666 0 R]
+/Limits [(_broadcast_8cpp_source_l00116) (_broadcast_8cpp_source_l00121)]
+>>
+endobj
+13635 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00122) 12667 0 R (_broadcast_8cpp_source_l00123) 12668 0 R (_broadcast_8cpp_source_l00124) 12669 0 R (_broadcast_8cpp_source_l00125) 12670 0 R (_broadcast_8cpp_source_l00126) 12671 0 R (_broadcast_8cpp_source_l00127) 12672 0 R]
+/Limits [(_broadcast_8cpp_source_l00122) (_broadcast_8cpp_source_l00127)]
+>>
+endobj
+13636 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00128) 12673 0 R (_broadcast_8cpp_source_l00129) 12674 0 R (_broadcast_8cpp_source_l00130) 12698 0 R (_broadcast_8cpp_source_l00131) 12699 0 R (_broadcast_8cpp_source_l00132) 3887 0 R (_broadcast_8cpp_source_l00133) 12700 0 R]
+/Limits [(_broadcast_8cpp_source_l00128) (_broadcast_8cpp_source_l00133)]
+>>
+endobj
+13637 0 obj
+<<
+/Names [(_broadcast_8cpp_source_l00134) 12701 0 R (_broadcast_8cpp_source_l00135) 12702 0 R (_broadcast_8cpp_source_l00136) 12703 0 R (_broadcast_8cpp_source_l00137) 12704 0 R (_broadcast_8cpp_source_l00138) 12705 0 R (_broadcast_8h) 3380 0 R]
+/Limits [(_broadcast_8cpp_source_l00134) (_broadcast_8h)]
+>>
+endobj
+13638 0 obj
+<<
+/Names [(_broadcast_8h_source) 3849 0 R (_broadcast_8h_source_l00001) 12708 0 R (_broadcast_8h_source_l00002) 12709 0 R (_broadcast_8h_source_l00003) 12710 0 R (_broadcast_8h_source_l00004) 12711 0 R (_broadcast_8h_source_l00005) 12712 0 R]
+/Limits [(_broadcast_8h_source) (_broadcast_8h_source_l00005)]
+>>
+endobj
+13639 0 obj
+<<
+/Names [(_broadcast_8h_source_l00006) 12713 0 R (_broadcast_8h_source_l00007) 12714 0 R (_broadcast_8h_source_l00008) 12715 0 R (_broadcast_8h_source_l00009) 12716 0 R (_broadcast_8h_source_l00010) 12717 0 R (_broadcast_8h_source_l00011) 12718 0 R]
+/Limits [(_broadcast_8h_source_l00006) (_broadcast_8h_source_l00011)]
+>>
+endobj
+13640 0 obj
+<<
+/Names [(_broadcast_8h_source_l00012) 12719 0 R (_broadcast_8h_source_l00013) 12720 0 R (_broadcast_8h_source_l00014) 12721 0 R (_broadcast_8h_source_l00022) 3848 0 R (_broadcast_8h_source_l00023) 12722 0 R (_broadcast_8h_source_l00024) 12723 0 R]
+/Limits [(_broadcast_8h_source_l00012) (_broadcast_8h_source_l00024)]
+>>
+endobj
+13641 0 obj
+<<
+/Names [(_broadcast_8h_source_l00031) 12724 0 R (_broadcast_8h_source_l00032) 12725 0 R (_broadcast_8h_source_l00038) 12726 0 R (_broadcast_8h_source_l00039) 12727 0 R (_broadcast_8h_source_l00045) 12728 0 R (_broadcast_8h_source_l00046) 12729 0 R]
+/Limits [(_broadcast_8h_source_l00031) (_broadcast_8h_source_l00046)]
+>>
+endobj
+13642 0 obj
+<<
+/Names [(_broadcast_8h_source_l00052) 12730 0 R (_broadcast_8h_source_l00053) 12731 0 R (_broadcast_8h_source_l00059) 12732 0 R (_broadcast_8h_source_l00060) 12733 0 R (_broadcast_8h_source_l00066) 12754 0 R (_broadcast_8h_source_l00067) 12755 0 R]
+/Limits [(_broadcast_8h_source_l00052) (_broadcast_8h_source_l00067)]
+>>
+endobj
+13643 0 obj
+<<
+/Names [(_broadcast_8h_source_l00074) 12756 0 R (_broadcast_8h_source_l00075) 12757 0 R (_broadcast_8h_source_l00076) 12758 0 R (_broadcast_8h_source_l00086) 12759 0 R (_broadcast_8h_source_l00087) 12760 0 R (_broadcast_8h_source_l00093) 12761 0 R]
+/Limits [(_broadcast_8h_source_l00074) (_broadcast_8h_source_l00093)]
+>>
+endobj
+13644 0 obj
+<<
+/Names [(_broadcast_8h_source_l00094) 12762 0 R (_broadcast_8h_source_l00104) 12763 0 R (_broadcast_8h_source_l00105) 12764 0 R (_broadcast_8h_source_l00112) 12765 0 R (_broadcast_8h_source_l00113) 12766 0 R (_broadcast_8h_source_l00120) 12767 0 R]
+/Limits [(_broadcast_8h_source_l00094) (_broadcast_8h_source_l00120)]
+>>
+endobj
+13645 0 obj
+<<
+/Names [(_broadcast_8h_source_l00121) 12768 0 R (_broadcast_8h_source_l00128) 12769 0 R (_broadcast_8h_source_l00129) 12770 0 R (_broadcast_8h_source_l00130) 12771 0 R (_broadcast_8h_source_l00131) 12772 0 R (_broadcast_8h_source_l00139) 3917 0 R]
+/Limits [(_broadcast_8h_source_l00121) (_broadcast_8h_source_l00139)]
+>>
+endobj
+13646 0 obj
+<<
+/Names [(_broadcast_8h_source_l00140) 12773 0 R (_broadcast_8h_source_l00147) 12774 0 R (_broadcast_8h_source_l00148) 12775 0 R (_broadcast_8h_source_l00149) 12776 0 R (_broadcast_8h_source_l00150) 12777 0 R (_container_8cpp) 3325 0 R]
+/Limits [(_broadcast_8h_source_l00140) (_container_8cpp)]
+>>
+endobj
+13647 0 obj
+<<
+/Names [(_container_8cpp_source) 8751 0 R (_container_8cpp_source_l00001) 8752 0 R (_container_8h) 3326 0 R (_container_8h_source) 4154 0 R (_container_8h_source_l00001) 8755 0 R (_container_8h_source_l00002) 8756 0 R]
+/Limits [(_container_8cpp_source) (_container_8h_source_l00002)]
+>>
+endobj
+13648 0 obj
+<<
+/Names [(_container_8h_source_l00003) 8757 0 R (_container_8h_source_l00004) 8758 0 R (_container_8h_source_l00005) 8759 0 R (_container_8h_source_l00006) 8760 0 R (_container_8h_source_l00007) 8761 0 R (_container_8h_source_l00020) 8762 0 R]
+/Limits [(_container_8h_source_l00003) (_container_8h_source_l00020)]
+>>
+endobj
+13649 0 obj
+<<
+/Names [(_container_8h_source_l00021) 4153 0 R (_container_8h_source_l00022) 8763 0 R (_container_8h_source_l00023) 8764 0 R (_container_8h_source_l00029) 8765 0 R (_container_8h_source_l00030) 8766 0 R (_container_8h_source_l00037) 8767 0 R]
+/Limits [(_container_8h_source_l00021) (_container_8h_source_l00037)]
+>>
+endobj
+13650 0 obj
+<<
+/Names [(_container_8h_source_l00038) 8768 0 R (_container_8h_source_l00046) 8769 0 R (_container_8h_source_l00047) 8770 0 R (_container_8h_source_l00054) 8845 0 R (_container_8h_source_l00055) 8846 0 R (_container_8h_source_l00062) 8847 0 R]
+/Limits [(_container_8h_source_l00038) (_container_8h_source_l00062)]
+>>
+endobj
+13651 0 obj
+<<
+/Names [(_container_8h_source_l00063) 8848 0 R (_container_8h_source_l00070) 8849 0 R (_container_8h_source_l00071) 8850 0 R (_container_8h_source_l00079) 4194 0 R (_container_8h_source_l00080) 8851 0 R (_container_8h_source_l00087) 4217 0 R]
+/Limits [(_container_8h_source_l00063) (_container_8h_source_l00087)]
+>>
+endobj
+13652 0 obj
+<<
+/Names [(_container_8h_source_l00088) 8852 0 R (_container_8h_source_l00097) 8853 0 R (_container_8h_source_l00098) 8854 0 R (_container_8h_source_l00107) 8855 0 R (_container_8h_source_l00108) 8856 0 R (_container_8h_source_l00117) 8857 0 R]
+/Limits [(_container_8h_source_l00088) (_container_8h_source_l00117)]
+>>
+endobj
+13653 0 obj
+<<
+/Names [(_container_8h_source_l00118) 8858 0 R (_container_8h_source_l00125) 8859 0 R (_container_8h_source_l00126) 8860 0 R (_container_8h_source_l00133) 8861 0 R (_container_8h_source_l00134) 8862 0 R (_container_8h_source_l00135) 8863 0 R]
+/Limits [(_container_8h_source_l00118) (_container_8h_source_l00135)]
+>>
+endobj
+13654 0 obj
+<<
+/Names [(_container_8h_source_l00136) 8864 0 R (_container_8h_source_l00145) 8865 0 R (_container_8h_source_l00146) 4322 0 R (_container_8h_source_l00147) 8866 0 R (_container_8h_source_l00148) 8867 0 R (_container_8h_source_l00149) 8868 0 R]
+/Limits [(_container_8h_source_l00136) (_container_8h_source_l00149)]
+>>
+endobj
+13655 0 obj
+<<
+/Names [(_container_8h_source_l00150) 8869 0 R (_container_8h_source_l00151) 8870 0 R (_container_8h_source_l00152) 8871 0 R (_container_8h_source_l00153) 8872 0 R (_container_8h_source_l00154) 8873 0 R (_container_8h_source_l00155) 8874 0 R]
+/Limits [(_container_8h_source_l00150) (_container_8h_source_l00155)]
+>>
+endobj
+13656 0 obj
+<<
+/Names [(_container_8h_source_l00156) 4337 0 R (_container_8h_source_l00157) 4366 0 R (_container_8h_source_l00158) 8875 0 R (_container_8h_source_l00159) 8876 0 R (_container_8h_source_l00160) 8877 0 R (_container_8h_source_l00161) 8878 0 R]
+/Limits [(_container_8h_source_l00156) (_container_8h_source_l00161)]
+>>
+endobj
+13657 0 obj
+<<
+/Names [(_container_8h_source_l00162) 8879 0 R (_container_8h_source_l00163) 8880 0 R (_container_8h_source_l00164) 8881 0 R (_container_8h_source_l00165) 8882 0 R (_container_8h_source_l00173) 8883 0 R (_container_8h_source_l00174) 4255 0 R]
+/Limits [(_container_8h_source_l00162) (_container_8h_source_l00174)]
+>>
+endobj
+13658 0 obj
+<<
+/Names [(_container_8h_source_l00175) 8884 0 R (_container_8h_source_l00176) 8885 0 R (_container_8h_source_l00177) 8886 0 R (_container_8h_source_l00178) 8887 0 R (_container_8h_source_l00179) 8888 0 R (_container_8h_source_l00180) 8889 0 R]
+/Limits [(_container_8h_source_l00175) (_container_8h_source_l00180)]
+>>
+endobj
+13659 0 obj
+<<
+/Names [(_container_8h_source_l00181) 8890 0 R (_container_8h_source_l00182) 8891 0 R (_container_8h_source_l00183) 8892 0 R (_container_8h_source_l00184) 4271 0 R (_container_8h_source_l00185) 4295 0 R (_container_8h_source_l00186) 8893 0 R]
+/Limits [(_container_8h_source_l00181) (_container_8h_source_l00186)]
+>>
+endobj
+13660 0 obj
+<<
+/Names [(_container_8h_source_l00187) 8894 0 R (_container_8h_source_l00188) 8895 0 R (_container_8h_source_l00189) 8896 0 R (_container_8h_source_l00190) 8897 0 R (_container_8h_source_l00191) 8898 0 R (_container_8h_source_l00192) 8899 0 R]
+/Limits [(_container_8h_source_l00187) (_container_8h_source_l00192)]
+>>
+endobj
+13661 0 obj
+<<
+/Names [(_container_8h_source_l00193) 8900 0 R (_container_8h_source_l00194) 8901 0 R (_container_8h_source_l00195) 8902 0 R (_container_8h_source_l00196) 4155 0 R (_container_8h_source_l00197) 8903 0 R (_container_8h_source_l00198) 8904 0 R]
+/Limits [(_container_8h_source_l00193) (_container_8h_source_l00198)]
+>>
+endobj
+13662 0 obj
+<<
+/Names [(_container_8h_source_l00199) 8905 0 R (_container_8h_source_l00200) 8906 0 R (_container_8h_source_l00201) 8907 0 R (_container_8h_source_l00202) 8908 0 R (_container_8h_source_l00203) 8909 0 R (_container_8h_source_l00204) 8910 0 R]
+/Limits [(_container_8h_source_l00199) (_container_8h_source_l00204)]
+>>
+endobj
+13663 0 obj
+<<
+/Names [(_container_8h_source_l00205) 8911 0 R (_container_8h_source_l00206) 8912 0 R (_container_8h_source_l00207) 8913 0 R (_container_8h_source_l00208) 8914 0 R (_container_8h_source_l00209) 8915 0 R (_container_8h_source_l00210) 4156 0 R]
+/Limits [(_container_8h_source_l00205) (_container_8h_source_l00210)]
+>>
+endobj
+13664 0 obj
+<<
+/Names [(_container_8h_source_l00211) 8916 0 R (_container_8h_source_l00212) 8917 0 R (_container_8h_source_l00213) 8918 0 R (_container_8h_source_l00214) 8919 0 R (_container_8h_source_l00215) 8920 0 R (_container_8h_source_l00216) 8921 0 R]
+/Limits [(_container_8h_source_l00211) (_container_8h_source_l00216)]
+>>
+endobj
+13665 0 obj
+<<
+/Names [(_container_8h_source_l00217) 8943 0 R (_container_8h_source_l00218) 8944 0 R (_container_8h_source_l00219) 8945 0 R (_container_8h_source_l00220) 8946 0 R (_container_8h_source_l00221) 8947 0 R (_container_8h_source_l00222) 8948 0 R]
+/Limits [(_container_8h_source_l00217) (_container_8h_source_l00222)]
+>>
+endobj
+13666 0 obj
+<<
+/Names [(_container_8h_source_l00223) 8949 0 R (_container_8h_source_l00224) 8950 0 R (_container_8h_source_l00225) 8951 0 R (_container_8h_source_l00226) 8952 0 R (_container_8h_source_l00227) 8953 0 R (_container_8h_source_l00228) 8954 0 R]
+/Limits [(_container_8h_source_l00223) (_container_8h_source_l00228)]
+>>
+endobj
+13667 0 obj
+<<
+/Names [(_container_8h_source_l00229) 8955 0 R (_container_8h_source_l00230) 8956 0 R (_container_8h_source_l00231) 4174 0 R (_container_8h_source_l00232) 8957 0 R (_container_8h_source_l00233) 8958 0 R (_container_8h_source_l00234) 8959 0 R]
+/Limits [(_container_8h_source_l00229) (_container_8h_source_l00234)]
+>>
+endobj
+13668 0 obj
+<<
+/Names [(_container_8h_source_l00235) 8960 0 R (_container_8h_source_l00236) 8961 0 R (_container_8h_source_l00237) 8962 0 R (_container_8h_source_l00238) 8963 0 R (_container_8h_source_l00239) 8964 0 R (_container_8h_source_l00240) 8965 0 R]
+/Limits [(_container_8h_source_l00235) (_container_8h_source_l00240)]
+>>
+endobj
+13669 0 obj
+<<
+/Names [(_container_8h_source_l00241) 8966 0 R (_container_8h_source_l00242) 8967 0 R (_container_8h_source_l00243) 8968 0 R (_container_8h_source_l00244) 8969 0 R (_container_8h_source_l00245) 8970 0 R (_container_8h_source_l00246) 8971 0 R]
+/Limits [(_container_8h_source_l00241) (_container_8h_source_l00246)]
+>>
+endobj
+13670 0 obj
+<<
+/Names [(_container_8h_source_l00247) 8972 0 R (_container_8h_source_l00248) 8973 0 R (_container_8h_source_l00249) 8974 0 R (_container_8h_source_l00250) 8975 0 R (_container_8h_source_l00251) 8976 0 R (_container_8h_source_l00252) 8977 0 R]
+/Limits [(_container_8h_source_l00247) (_container_8h_source_l00252)]
+>>
+endobj
+13671 0 obj
+<<
+/Names [(_container_8h_source_l00253) 8978 0 R (_container_8h_source_l00254) 8979 0 R (_container_8h_source_l00255) 8980 0 R (_container_8h_source_l00256) 8981 0 R (_container_8h_source_l00257) 8982 0 R (_container_8h_source_l00258) 8983 0 R]
+/Limits [(_container_8h_source_l00253) (_container_8h_source_l00258)]
+>>
+endobj
+13672 0 obj
+<<
+/Names [(_container_8h_source_l00259) 8984 0 R (_container_8h_source_l00260) 8985 0 R (_container_8h_source_l00261) 8986 0 R (_container_8h_source_l00262) 8987 0 R (_container_8h_source_l00263) 4195 0 R (_container_8h_source_l00264) 8988 0 R]
+/Limits [(_container_8h_source_l00259) (_container_8h_source_l00264)]
+>>
+endobj
+13673 0 obj
+<<
+/Names [(_container_8h_source_l00265) 8989 0 R (_container_8h_source_l00266) 8990 0 R (_container_8h_source_l00267) 8991 0 R (_container_8h_source_l00268) 8992 0 R (_container_8h_source_l00269) 4218 0 R (_container_8h_source_l00270) 8993 0 R]
+/Limits [(_container_8h_source_l00265) (_container_8h_source_l00270)]
+>>
+endobj
+13674 0 obj
+<<
+/Names [(_container_8h_source_l00271) 8994 0 R (_container_8h_source_l00272) 8995 0 R (_container_8h_source_l00273) 8996 0 R (_container_8h_source_l00274) 8997 0 R (_container_8h_source_l00275) 8998 0 R (_container_8h_source_l00276) 8999 0 R]
+/Limits [(_container_8h_source_l00271) (_container_8h_source_l00276)]
+>>
+endobj
+13675 0 obj
+<<
+/Names [(_container_8h_source_l00277) 9000 0 R (_container_8h_source_l00278) 9001 0 R (_container_8h_source_l00279) 9002 0 R (_container_8h_source_l00280) 9003 0 R (_container_8h_source_l00281) 9004 0 R (_container_8h_source_l00282) 9005 0 R]
+/Limits [(_container_8h_source_l00277) (_container_8h_source_l00282)]
+>>
+endobj
+13676 0 obj
+<<
+/Names [(_container_8h_source_l00283) 9006 0 R (_container_8h_source_l00284) 9007 0 R (_container_8h_source_l00285) 9008 0 R (_container_8h_source_l00286) 9009 0 R (_container_8h_source_l00287) 9010 0 R (_container_8h_source_l00288) 9011 0 R]
+/Limits [(_container_8h_source_l00283) (_container_8h_source_l00288)]
+>>
+endobj
+13677 0 obj
+<<
+/Names [(_container_8h_source_l00289) 9012 0 R (_container_8h_source_l00290) 9013 0 R (_container_8h_source_l00291) 9014 0 R (_container_8h_source_l00292) 9015 0 R (_container_8h_source_l00293) 4193 0 R (_container_8h_source_l00294) 9016 0 R]
+/Limits [(_container_8h_source_l00289) (_container_8h_source_l00294)]
+>>
+endobj
+13678 0 obj
+<<
+/Names [(_container_8h_source_l00295) 9017 0 R (_container_8h_source_l00296) 9018 0 R (_container_8h_source_l00297) 9019 0 R (_container_8h_source_l00298) 9020 0 R (_container_8h_source_l00299) 9021 0 R (_container_8h_source_l00300) 9022 0 R]
+/Limits [(_container_8h_source_l00295) (_container_8h_source_l00300)]
+>>
+endobj
+13679 0 obj
+<<
+/Names [(_container_8h_source_l00301) 9023 0 R (_container_8h_source_l00302) 9024 0 R (_container_8h_source_l00303) 9025 0 R (_container_8h_source_l00304) 9038 0 R (_container_8h_source_l00305) 9039 0 R (_container_8h_source_l00306) 9040 0 R]
+/Limits [(_container_8h_source_l00301) (_container_8h_source_l00306)]
+>>
+endobj
+13680 0 obj
+<<
+/Names [(_container_8h_source_l00307) 9041 0 R (_container_8h_source_l00308) 9042 0 R (_container_8h_source_l00309) 9043 0 R (_container_8h_source_l00310) 9044 0 R (_container_8h_source_l00311) 9045 0 R (_container_8h_source_l00312) 9046 0 R]
+/Limits [(_container_8h_source_l00307) (_container_8h_source_l00312)]
+>>
+endobj
+13681 0 obj
+<<
+/Names [(_container_8h_source_l00313) 4175 0 R (_container_8h_source_l00314) 9047 0 R (_container_8h_source_l00315) 9048 0 R (_container_8h_source_l00316) 9049 0 R (_container_8h_source_l00317) 9050 0 R (_container_8h_source_l00318) 9051 0 R]
+/Limits [(_container_8h_source_l00313) (_container_8h_source_l00318)]
+>>
+endobj
+13682 0 obj
+<<
+/Names [(_container_8h_source_l00319) 9052 0 R (_container_8h_source_l00320) 9053 0 R (_container_8h_source_l00321) 9054 0 R (_container_8h_source_l00322) 9055 0 R (_container_8h_source_l00323) 4216 0 R (_container_8h_source_l00324) 9056 0 R]
+/Limits [(_container_8h_source_l00319) (_container_8h_source_l00324)]
+>>
+endobj
+13683 0 obj
+<<
+/Names [(_container_8h_source_l00325) 9057 0 R (_container_8h_source_l00326) 9058 0 R (_container_8h_source_l00327) 9059 0 R (_container_8h_source_l00328) 9060 0 R (_container_8h_source_l00329) 9061 0 R (_container_8h_source_l00330) 9062 0 R]
+/Limits [(_container_8h_source_l00325) (_container_8h_source_l00330)]
+>>
+endobj
+13684 0 obj
+<<
+/Names [(_container_8h_source_l00331) 9063 0 R (_container_8h_source_l00332) 9064 0 R (_container_8h_source_l00333) 9065 0 R (_container_8h_source_l00334) 9066 0 R (_container_8h_source_l00335) 9067 0 R (_container_8h_source_l00336) 9068 0 R]
+/Limits [(_container_8h_source_l00331) (_container_8h_source_l00336)]
+>>
+endobj
+13685 0 obj
+<<
+/Names [(_container_8h_source_l00337) 9069 0 R (_container_8h_source_l00338) 9070 0 R (_container_8h_source_l00339) 9071 0 R (_container_8h_source_l00340) 9072 0 R (_container_8h_source_l00341) 9073 0 R (_container_8h_source_l00342) 9074 0 R]
+/Limits [(_container_8h_source_l00337) (_container_8h_source_l00342)]
+>>
+endobj
+13686 0 obj
+<<
+/Names [(_container_8h_source_l00343) 9075 0 R (_container_8h_source_l00344) 9076 0 R (_container_8h_source_l00345) 9077 0 R (_container_8h_source_l00346) 9078 0 R (_container_8h_source_l00347) 9079 0 R (_container_8h_source_l00348) 9080 0 R]
+/Limits [(_container_8h_source_l00343) (_container_8h_source_l00348)]
+>>
+endobj
+13687 0 obj
+<<
+/Names [(_container_8h_source_l00349) 9081 0 R (_container_8h_source_l00350) 4196 0 R (_container_8h_source_l00351) 9082 0 R (_container_8h_source_l00352) 9083 0 R (_container_8h_source_l00353) 9084 0 R (_container_8h_source_l00354) 9085 0 R]
+/Limits [(_container_8h_source_l00349) (_container_8h_source_l00354)]
+>>
+endobj
+13688 0 obj
+<<
+/Names [(_container_8h_source_l00355) 9086 0 R (_container_8h_source_l00356) 9087 0 R (_container_8h_source_l00357) 9088 0 R (_container_8h_source_l00358) 9089 0 R (_container_8h_source_l00359) 9090 0 R (_container_8h_source_l00360) 9091 0 R]
+/Limits [(_container_8h_source_l00355) (_container_8h_source_l00360)]
+>>
+endobj
+13689 0 obj
+<<
+/Names [(_container_8h_source_l00361) 9092 0 R (_container_8h_source_l00362) 9093 0 R (_container_8h_source_l00363) 9094 0 R (_container_8h_source_l00364) 9095 0 R (_container_8h_source_l00365) 9096 0 R (_container_8h_source_l00366) 9097 0 R]
+/Limits [(_container_8h_source_l00361) (_container_8h_source_l00366)]
+>>
+endobj
+13690 0 obj
+<<
+/Names [(_container_8h_source_l00367) 9098 0 R (_container_8h_source_l00368) 9099 0 R (_container_8h_source_l00369) 9100 0 R (_container_8h_source_l00370) 9101 0 R (_container_8h_source_l00371) 9102 0 R (_container_8h_source_l00372) 9103 0 R]
+/Limits [(_container_8h_source_l00367) (_container_8h_source_l00372)]
+>>
+endobj
+13691 0 obj
+<<
+/Names [(_container_8h_source_l00373) 9104 0 R (_container_8h_source_l00374) 9105 0 R (_container_8h_source_l00375) 9106 0 R (_container_8h_source_l00376) 9107 0 R (_container_8h_source_l00377) 9108 0 R (_container_8h_source_l00378) 9109 0 R]
+/Limits [(_container_8h_source_l00373) (_container_8h_source_l00378)]
+>>
+endobj
+13692 0 obj
+<<
+/Names [(_container_8h_source_l00379) 9110 0 R (_container_8h_source_l00380) 9111 0 R (_container_8h_source_l00381) 9112 0 R (_container_8h_source_l00382) 9113 0 R (_container_8h_source_l00383) 9114 0 R (_container_8h_source_l00384) 9115 0 R]
+/Limits [(_container_8h_source_l00379) (_container_8h_source_l00384)]
+>>
+endobj
+13693 0 obj
+<<
+/Names [(_container_8h_source_l00385) 9116 0 R (_container_8h_source_l00386) 9117 0 R (_container_8h_source_l00387) 9118 0 R (_container_8h_source_l00388) 9119 0 R (_container_8h_source_l00389) 9120 0 R (_container_8h_source_l00390) 9131 0 R]
+/Limits [(_container_8h_source_l00385) (_container_8h_source_l00390)]
+>>
+endobj
+13694 0 obj
+<<
+/Names [(_container_8h_source_l00391) 9132 0 R (_container_8h_source_l00392) 9133 0 R (_container_8h_source_l00393) 9134 0 R (_container_8h_source_l00394) 9135 0 R (_container_8h_source_l00395) 9136 0 R (_container_8h_source_l00396) 9137 0 R]
+/Limits [(_container_8h_source_l00391) (_container_8h_source_l00396)]
+>>
+endobj
+13695 0 obj
+<<
+/Names [(_container_8h_source_l00397) 9138 0 R (_container_8h_source_l00398) 9139 0 R (_container_8h_source_l00399) 9140 0 R (_container_8h_source_l00400) 9141 0 R (_container_8h_source_l00401) 9142 0 R (_container_8h_source_l00402) 9143 0 R]
+/Limits [(_container_8h_source_l00397) (_container_8h_source_l00402)]
+>>
+endobj
+13696 0 obj
+<<
+/Names [(_container_8h_source_l00403) 9144 0 R (_container_8h_source_l00404) 9145 0 R (_container_8h_source_l00405) 9146 0 R (_container_8h_source_l00406) 9147 0 R (_container_8h_source_l00407) 9148 0 R (_container_8h_source_l00408) 9149 0 R]
+/Limits [(_container_8h_source_l00403) (_container_8h_source_l00408)]
+>>
+endobj
+13697 0 obj
+<<
+/Names [(_container_8h_source_l00409) 9150 0 R (_container_8h_source_l00410) 9151 0 R (_container_8h_source_l00411) 9152 0 R (_container_8h_source_l00412) 9153 0 R (_container_8h_source_l00413) 9154 0 R (_container_8h_source_l00414) 9155 0 R]
+/Limits [(_container_8h_source_l00409) (_container_8h_source_l00414)]
+>>
+endobj
+13698 0 obj
+<<
+/Names [(_container_8h_source_l00415) 9156 0 R (_container_8h_source_l00416) 9157 0 R (_container_8h_source_l00417) 9158 0 R (_container_8h_source_l00418) 9159 0 R (_container_8h_source_l00419) 9160 0 R (_container_8h_source_l00420) 9161 0 R]
+/Limits [(_container_8h_source_l00415) (_container_8h_source_l00420)]
+>>
+endobj
+13699 0 obj
+<<
+/Names [(_container_8h_source_l00421) 9162 0 R (_container_8h_source_l00422) 9163 0 R (_container_8h_source_l00423) 9164 0 R (_container_8h_source_l00424) 9165 0 R (_container_8h_source_l00425) 9166 0 R (_container_8h_source_l00426) 9167 0 R]
+/Limits [(_container_8h_source_l00421) (_container_8h_source_l00426)]
+>>
+endobj
+13700 0 obj
+<<
+/Names [(_container_8h_source_l00427) 9168 0 R (_container_8h_source_l00428) 9169 0 R (_container_8h_source_l00429) 9170 0 R (_container_8h_source_l00430) 9171 0 R (_container_8h_source_l00431) 9172 0 R (_container_8h_source_l00432) 9173 0 R]
+/Limits [(_container_8h_source_l00427) (_container_8h_source_l00432)]
+>>
+endobj
+13701 0 obj
+<<
+/Names [(_container_8h_source_l00433) 9174 0 R (_container_8h_source_l00434) 9175 0 R (_container_8h_source_l00435) 9176 0 R (_container_8h_source_l00436) 9177 0 R (_container_8h_source_l00437) 9178 0 R (_container_8h_source_l00438) 9179 0 R]
+/Limits [(_container_8h_source_l00433) (_container_8h_source_l00438)]
+>>
+endobj
+13702 0 obj
+<<
+/Names [(_container_8h_source_l00439) 9180 0 R (_container_8h_source_l00440) 9181 0 R (_container_8h_source_l00441) 9182 0 R (_container_8h_source_l00442) 9183 0 R (_container_8h_source_l00443) 9184 0 R (_container_8h_source_l00444) 9185 0 R]
+/Limits [(_container_8h_source_l00439) (_container_8h_source_l00444)]
+>>
+endobj
+13703 0 obj
+<<
+/Names [(_container_8h_source_l00445) 9186 0 R (_container_8h_source_l00446) 9187 0 R (_container_8h_source_l00447) 9188 0 R (_container_8h_source_l00448) 9189 0 R (_container_8h_source_l00449) 9190 0 R (_container_8h_source_l00450) 9191 0 R]
+/Limits [(_container_8h_source_l00445) (_container_8h_source_l00450)]
+>>
+endobj
+13704 0 obj
+<<
+/Names [(_container_8h_source_l00451) 9192 0 R (_container_8h_source_l00452) 9193 0 R (_container_8h_source_l00453) 9194 0 R (_container_8h_source_l00454) 9195 0 R (_container_8h_source_l00455) 9196 0 R (_container_8h_source_l00456) 9197 0 R]
+/Limits [(_container_8h_source_l00451) (_container_8h_source_l00456)]
+>>
+endobj
+13705 0 obj
+<<
+/Names [(_container_8h_source_l00457) 9198 0 R (_container_8h_source_l00458) 9199 0 R (_container_8h_source_l00459) 9200 0 R (_container_8h_source_l00460) 9201 0 R (_container_8h_source_l00461) 9202 0 R (_container_8h_source_l00462) 9203 0 R]
+/Limits [(_container_8h_source_l00457) (_container_8h_source_l00462)]
+>>
+endobj
+13706 0 obj
+<<
+/Names [(_container_8h_source_l00463) 9204 0 R (_container_8h_source_l00464) 9205 0 R (_container_8h_source_l00465) 9206 0 R (_container_8h_source_l00466) 9207 0 R (_container_8h_source_l00467) 9208 0 R (_container_8h_source_l00468) 9209 0 R]
+/Limits [(_container_8h_source_l00463) (_container_8h_source_l00468)]
+>>
+endobj
+13707 0 obj
+<<
+/Names [(_container_8h_source_l00469) 9210 0 R (_container_8h_source_l00470) 9211 0 R (_container_8h_source_l00471) 9212 0 R (_container_8h_source_l00472) 9213 0 R (_container_8h_source_l00473) 9214 0 R (_container_8h_source_l00474) 9215 0 R]
+/Limits [(_container_8h_source_l00469) (_container_8h_source_l00474)]
+>>
+endobj
+13708 0 obj
+<<
+/Names [(_container_8h_source_l00475) 9216 0 R (_container_8h_source_l00476) 9217 0 R (_container_8h_source_l00477) 9228 0 R (_container_8h_source_l00478) 9229 0 R (_container_8h_source_l00479) 9230 0 R (_container_8h_source_l00480) 9231 0 R]
+/Limits [(_container_8h_source_l00475) (_container_8h_source_l00480)]
+>>
+endobj
+13709 0 obj
+<<
+/Names [(_container_8h_source_l00481) 9232 0 R (_container_8h_source_l00482) 9233 0 R (_container_8h_source_l00483) 9234 0 R (_container_8h_source_l00484) 9235 0 R (_container_8h_source_l00485) 9236 0 R (_container_8h_source_l00486) 9237 0 R]
+/Limits [(_container_8h_source_l00481) (_container_8h_source_l00486)]
+>>
+endobj
+13710 0 obj
+<<
+/Names [(_container_8h_source_l00487) 9238 0 R (_container_8h_source_l00488) 9239 0 R (_container_8h_source_l00489) 9240 0 R (_container_8h_source_l00490) 9241 0 R (_container_8h_source_l00491) 9242 0 R (_container_8h_source_l00492) 9243 0 R]
+/Limits [(_container_8h_source_l00487) (_container_8h_source_l00492)]
+>>
+endobj
+13711 0 obj
+<<
+/Names [(_container_8h_source_l00493) 9244 0 R (_container_8h_source_l00494) 9245 0 R (_container_8h_source_l00495) 9246 0 R (_container_8h_source_l00496) 9247 0 R (_container_8h_source_l00497) 9248 0 R (_container_8h_source_l00498) 9249 0 R]
+/Limits [(_container_8h_source_l00493) (_container_8h_source_l00498)]
+>>
+endobj
+13712 0 obj
+<<
+/Names [(_container_8h_source_l00499) 9250 0 R (_container_8h_source_l00500) 9251 0 R (_container_8h_source_l00501) 9252 0 R (_container_8h_source_l00502) 9253 0 R (_container_8h_source_l00503) 9254 0 R (_container_8h_source_l00504) 9255 0 R]
+/Limits [(_container_8h_source_l00499) (_container_8h_source_l00504)]
+>>
+endobj
+13713 0 obj
+<<
+/Names [(_container_8h_source_l00505) 9256 0 R (_container_8h_source_l00506) 9257 0 R (_container_8h_source_l00507) 9258 0 R (_container_8h_source_l00508) 9259 0 R (_container_8h_source_l00509) 9260 0 R (_container_8h_source_l00510) 9261 0 R]
+/Limits [(_container_8h_source_l00505) (_container_8h_source_l00510)]
+>>
+endobj
+13714 0 obj
+<<
+/Names [(_container_8h_source_l00511) 9262 0 R (_container_8h_source_l00512) 9263 0 R (_container_8h_source_l00513) 9264 0 R (_container_8h_source_l00514) 9265 0 R (_container_8h_source_l00515) 9266 0 R (_container_8h_source_l00516) 9267 0 R]
+/Limits [(_container_8h_source_l00511) (_container_8h_source_l00516)]
+>>
+endobj
+13715 0 obj
+<<
+/Names [(_container_8h_source_l00517) 9268 0 R (_container_8h_source_l00518) 9269 0 R (_container_8h_source_l00519) 9270 0 R (_container_8h_source_l00520) 9271 0 R (_container_8h_source_l00521) 9272 0 R (_container_8h_source_l00522) 9273 0 R]
+/Limits [(_container_8h_source_l00517) (_container_8h_source_l00522)]
+>>
+endobj
+13716 0 obj
+<<
+/Names [(_container_8h_source_l00523) 9274 0 R (_container_8h_source_l00524) 9275 0 R (_container_8h_source_l00525) 9276 0 R (_container_8h_source_l00526) 9277 0 R (_container_8h_source_l00527) 9278 0 R (_container_8h_source_l00528) 9279 0 R]
+/Limits [(_container_8h_source_l00523) (_container_8h_source_l00528)]
+>>
+endobj
+13717 0 obj
+<<
+/Names [(_container_8h_source_l00529) 9280 0 R (_container_8h_source_l00530) 9281 0 R (_container_8h_source_l00531) 9282 0 R (_container_8h_source_l00532) 9283 0 R (_container_8h_source_l00533) 9284 0 R (_container_8h_source_l00534) 9285 0 R]
+/Limits [(_container_8h_source_l00529) (_container_8h_source_l00534)]
+>>
+endobj
+13718 0 obj
+<<
+/Names [(_container_8h_source_l00535) 9286 0 R (_container_8h_source_l00536) 9287 0 R (_container_8h_source_l00537) 9288 0 R (_container_8h_source_l00538) 9289 0 R (_container_8h_source_l00539) 9290 0 R (_container_8h_source_l00540) 9291 0 R]
+/Limits [(_container_8h_source_l00535) (_container_8h_source_l00540)]
+>>
+endobj
+13719 0 obj
+<<
+/Names [(_container_8h_source_l00541) 9292 0 R (_container_8h_source_l00542) 9293 0 R (_container_8h_source_l00543) 9294 0 R (_container_8h_source_l00544) 9295 0 R (_container_8h_source_l00545) 9296 0 R (_container_8h_source_l00546) 9297 0 R]
+/Limits [(_container_8h_source_l00541) (_container_8h_source_l00546)]
+>>
+endobj
+13720 0 obj
+<<
+/Names [(_container_8h_source_l00547) 9298 0 R (_container_8h_source_l00548) 9299 0 R (_container_8h_source_l00549) 9300 0 R (_container_8h_source_l00550) 9301 0 R (_container_8h_source_l00551) 9302 0 R (_container_8h_source_l00552) 9303 0 R]
+/Limits [(_container_8h_source_l00547) (_container_8h_source_l00552)]
+>>
+endobj
+13721 0 obj
+<<
+/Names [(_container_8h_source_l00553) 9304 0 R (_container_8h_source_l00554) 9305 0 R (_container_8h_source_l00555) 9306 0 R (_container_8h_source_l00556) 9307 0 R (_container_8h_source_l00557) 9308 0 R (_container_8h_source_l00558) 9309 0 R]
+/Limits [(_container_8h_source_l00553) (_container_8h_source_l00558)]
+>>
+endobj
+13722 0 obj
+<<
+/Names [(_container_8h_source_l00559) 9310 0 R (_container_8h_source_l00560) 9311 0 R (_container_8h_source_l00561) 9312 0 R (_container_8h_source_l00562) 9313 0 R (_container_8h_source_l00563) 9314 0 R (_container_8h_source_l00564) 9335 0 R]
+/Limits [(_container_8h_source_l00559) (_container_8h_source_l00564)]
+>>
+endobj
+13723 0 obj
+<<
+/Names [(_container_8h_source_l00565) 9336 0 R (_container_8h_source_l00566) 9337 0 R (_container_8h_source_l00567) 9338 0 R (_container_8h_source_l00568) 9339 0 R (_container_8h_source_l00569) 9340 0 R (_container_8h_source_l00570) 9341 0 R]
+/Limits [(_container_8h_source_l00565) (_container_8h_source_l00570)]
+>>
+endobj
+13724 0 obj
+<<
+/Names [(_container_8h_source_l00571) 9342 0 R (_container_8h_source_l00572) 9343 0 R (_container_8h_source_l00573) 9344 0 R (_container_8h_source_l00574) 9345 0 R (_container_8h_source_l00575) 9346 0 R (_container_8h_source_l00576) 9347 0 R]
+/Limits [(_container_8h_source_l00571) (_container_8h_source_l00576)]
+>>
+endobj
+13725 0 obj
+<<
+/Names [(_container_8h_source_l00577) 9348 0 R (_container_8h_source_l00578) 9349 0 R (_container_8h_source_l00579) 9350 0 R (_container_8h_source_l00580) 9351 0 R (_container_8h_source_l00581) 9352 0 R (_container_8h_source_l00582) 9353 0 R]
+/Limits [(_container_8h_source_l00577) (_container_8h_source_l00582)]
+>>
+endobj
+13726 0 obj
+<<
+/Names [(_container_8h_source_l00583) 9354 0 R (_container_8h_source_l00584) 9355 0 R (_container_8h_source_l00585) 9356 0 R (_container_8h_source_l00586) 9357 0 R (_container_8h_source_l00587) 9358 0 R (_container_8h_source_l00588) 9359 0 R]
+/Limits [(_container_8h_source_l00583) (_container_8h_source_l00588)]
+>>
+endobj
+13727 0 obj
+<<
+/Names [(_container_8h_source_l00589) 9360 0 R (_container_8h_source_l00590) 9361 0 R (_container_8h_source_l00591) 9362 0 R (_container_8h_source_l00592) 9363 0 R (_container_8h_source_l00593) 9364 0 R (_container_8h_source_l00594) 9365 0 R]
+/Limits [(_container_8h_source_l00589) (_container_8h_source_l00594)]
+>>
+endobj
+13728 0 obj
+<<
+/Names [(_container_8h_source_l00595) 9366 0 R (_container_8h_source_l00596) 9367 0 R (_container_8h_source_l00597) 9368 0 R (_container_8h_source_l00598) 9369 0 R (_container_8h_source_l00599) 9370 0 R (_container_8h_source_l00600) 9371 0 R]
+/Limits [(_container_8h_source_l00595) (_container_8h_source_l00600)]
+>>
+endobj
+13729 0 obj
+<<
+/Names [(_container_8h_source_l00601) 9372 0 R (_container_8h_source_l00602) 9373 0 R (_container_8h_source_l00603) 9374 0 R (_element_8cpp) 3327 0 R (_element_8cpp_source) 4474 0 R (_element_8cpp_source_l00001) 9375 0 R]
+/Limits [(_container_8h_source_l00601) (_element_8cpp_source_l00001)]
+>>
+endobj
+13730 0 obj
+<<
+/Names [(_element_8cpp_source_l00002) 9376 0 R (_element_8cpp_source_l00003) 9377 0 R (_element_8cpp_source_l00004) 9378 0 R (_element_8cpp_source_l00005) 4473 0 R (_element_8cpp_source_l00006) 9379 0 R (_element_8cpp_source_l00007) 9380 0 R]
+/Limits [(_element_8cpp_source_l00002) (_element_8cpp_source_l00007)]
+>>
+endobj
+13731 0 obj
+<<
+/Names [(_element_8cpp_source_l00008) 9381 0 R (_element_8cpp_source_l00009) 9382 0 R (_element_8cpp_source_l00010) 9383 0 R (_element_8cpp_source_l00011) 9384 0 R (_element_8cpp_source_l00012) 9385 0 R (_element_8cpp_source_l00013) 9386 0 R]
+/Limits [(_element_8cpp_source_l00008) (_element_8cpp_source_l00013)]
+>>
+endobj
+13732 0 obj
+<<
+/Names [(_element_8cpp_source_l00014) 9387 0 R (_element_8cpp_source_l00015) 9388 0 R (_element_8cpp_source_l00016) 9389 0 R (_element_8cpp_source_l00017) 9390 0 R (_element_8cpp_source_l00018) 9391 0 R (_element_8cpp_source_l00019) 4489 0 R]
+/Limits [(_element_8cpp_source_l00014) (_element_8cpp_source_l00019)]
+>>
+endobj
+13733 0 obj
+<<
+/Names [(_element_8cpp_source_l00020) 9392 0 R (_element_8cpp_source_l00021) 9393 0 R (_element_8cpp_source_l00022) 9394 0 R (_element_8cpp_source_l00023) 9414 0 R (_element_8cpp_source_l00024) 9415 0 R (_element_8cpp_source_l00025) 9416 0 R]
+/Limits [(_element_8cpp_source_l00020) (_element_8cpp_source_l00025)]
+>>
+endobj
+13734 0 obj
+<<
+/Names [(_element_8cpp_source_l00026) 4511 0 R (_element_8cpp_source_l00027) 9417 0 R (_element_8cpp_source_l00028) 9418 0 R (_element_8cpp_source_l00029) 9419 0 R (_element_8cpp_source_l00030) 9420 0 R (_element_8cpp_source_l00031) 9421 0 R]
+/Limits [(_element_8cpp_source_l00026) (_element_8cpp_source_l00031)]
+>>
+endobj
+13735 0 obj
+<<
+/Names [(_element_8cpp_source_l00032) 9422 0 R (_element_8cpp_source_l00033) 9423 0 R (_element_8cpp_source_l00034) 9424 0 R (_element_8cpp_source_l00035) 9425 0 R (_element_8cpp_source_l00036) 9426 0 R (_element_8cpp_source_l00037) 9427 0 R]
+/Limits [(_element_8cpp_source_l00032) (_element_8cpp_source_l00037)]
+>>
+endobj
+13736 0 obj
+<<
+/Names [(_element_8cpp_source_l00038) 4586 0 R (_element_8cpp_source_l00039) 9428 0 R (_element_8cpp_source_l00040) 9429 0 R (_element_8cpp_source_l00041) 9430 0 R (_element_8cpp_source_l00042) 9431 0 R (_element_8cpp_source_l00043) 9432 0 R]
+/Limits [(_element_8cpp_source_l00038) (_element_8cpp_source_l00043)]
+>>
+endobj
+13737 0 obj
+<<
+/Names [(_element_8cpp_source_l00044) 9433 0 R (_element_8cpp_source_l00045) 9434 0 R (_element_8cpp_source_l00046) 9435 0 R (_element_8cpp_source_l00047) 9436 0 R (_element_8cpp_source_l00048) 9437 0 R (_element_8cpp_source_l00049) 9438 0 R]
+/Limits [(_element_8cpp_source_l00044) (_element_8cpp_source_l00049)]
+>>
+endobj
+13738 0 obj
+<<
+/Names [(_element_8cpp_source_l00050) 9439 0 R (_element_8cpp_source_l00051) 9440 0 R (_element_8cpp_source_l00052) 9441 0 R (_element_8cpp_source_l00053) 9442 0 R (_element_8cpp_source_l00054) 9443 0 R (_element_8cpp_source_l00055) 9444 0 R]
+/Limits [(_element_8cpp_source_l00050) (_element_8cpp_source_l00055)]
+>>
+endobj
+13739 0 obj
+<<
+/Names [(_element_8cpp_source_l00056) 9445 0 R (_element_8cpp_source_l00057) 9446 0 R (_element_8cpp_source_l00058) 9447 0 R (_element_8cpp_source_l00059) 9448 0 R (_element_8cpp_source_l00060) 9449 0 R (_element_8cpp_source_l00061) 9450 0 R]
+/Limits [(_element_8cpp_source_l00056) (_element_8cpp_source_l00061)]
+>>
+endobj
+13740 0 obj
+<<
+/Names [(_element_8cpp_source_l00062) 9451 0 R (_element_8cpp_source_l00063) 9452 0 R (_element_8cpp_source_l00064) 9453 0 R (_element_8cpp_source_l00065) 9454 0 R (_element_8cpp_source_l00066) 9455 0 R (_element_8cpp_source_l00067) 9456 0 R]
+/Limits [(_element_8cpp_source_l00062) (_element_8cpp_source_l00067)]
+>>
+endobj
+13741 0 obj
+<<
+/Names [(_element_8cpp_source_l00068) 9457 0 R (_element_8cpp_source_l00069) 9458 0 R (_element_8cpp_source_l00070) 9459 0 R (_element_8cpp_source_l00071) 9460 0 R (_element_8cpp_source_l00072) 9461 0 R (_element_8cpp_source_l00073) 9462 0 R]
+/Limits [(_element_8cpp_source_l00068) (_element_8cpp_source_l00073)]
+>>
+endobj
+13742 0 obj
+<<
+/Names [(_element_8cpp_source_l00074) 9463 0 R (_element_8cpp_source_l00075) 9464 0 R (_element_8cpp_source_l00076) 9465 0 R (_element_8cpp_source_l00077) 9466 0 R (_element_8cpp_source_l00078) 9467 0 R (_element_8cpp_source_l00079) 4509 0 R]
+/Limits [(_element_8cpp_source_l00074) (_element_8cpp_source_l00079)]
+>>
+endobj
+13743 0 obj
+<<
+/Names [(_element_8cpp_source_l00080) 9468 0 R (_element_8cpp_source_l00081) 9469 0 R (_element_8cpp_source_l00082) 9470 0 R (_element_8cpp_source_l00083) 9471 0 R (_element_8cpp_source_l00084) 9472 0 R (_element_8cpp_source_l00085) 9473 0 R]
+/Limits [(_element_8cpp_source_l00080) (_element_8cpp_source_l00085)]
+>>
+endobj
+13744 0 obj
+<<
+/Names [(_element_8cpp_source_l00086) 4490 0 R (_element_8cpp_source_l00087) 9474 0 R (_element_8cpp_source_l00088) 9475 0 R (_element_8cpp_source_l00089) 9476 0 R (_element_8cpp_source_l00090) 9477 0 R (_element_8cpp_source_l00091) 4545 0 R]
+/Limits [(_element_8cpp_source_l00086) (_element_8cpp_source_l00091)]
+>>
+endobj
+13745 0 obj
+<<
+/Names [(_element_8cpp_source_l00092) 9478 0 R (_element_8cpp_source_l00093) 9479 0 R (_element_8cpp_source_l00094) 9480 0 R (_element_8cpp_source_l00095) 9481 0 R (_element_8cpp_source_l00096) 9482 0 R (_element_8cpp_source_l00097) 9483 0 R]
+/Limits [(_element_8cpp_source_l00092) (_element_8cpp_source_l00097)]
+>>
+endobj
+13746 0 obj
+<<
+/Names [(_element_8cpp_source_l00098) 4530 0 R (_element_8cpp_source_l00099) 9484 0 R (_element_8cpp_source_l00100) 9485 0 R (_element_8cpp_source_l00101) 9486 0 R (_element_8cpp_source_l00102) 9487 0 R (_element_8cpp_source_l00103) 4587 0 R]
+/Limits [(_element_8cpp_source_l00098) (_element_8cpp_source_l00103)]
+>>
+endobj
+13747 0 obj
+<<
+/Names [(_element_8cpp_source_l00104) 9488 0 R (_element_8cpp_source_l00105) 9489 0 R (_element_8cpp_source_l00106) 9490 0 R (_element_8cpp_source_l00107) 9491 0 R (_element_8cpp_source_l00108) 9492 0 R (_element_8cpp_source_l00109) 9520 0 R]
+/Limits [(_element_8cpp_source_l00104) (_element_8cpp_source_l00109)]
+>>
+endobj
+13748 0 obj
+<<
+/Names [(_element_8cpp_source_l00110) 4547 0 R (_element_8cpp_source_l00111) 9521 0 R (_element_8cpp_source_l00112) 9522 0 R (_element_8cpp_source_l00113) 9523 0 R (_element_8cpp_source_l00114) 9524 0 R (_element_8cpp_source_l00115) 4559 0 R]
+/Limits [(_element_8cpp_source_l00110) (_element_8cpp_source_l00115)]
+>>
+endobj
+13749 0 obj
+<<
+/Names [(_element_8cpp_source_l00116) 9525 0 R (_element_8cpp_source_l00117) 9526 0 R (_element_8cpp_source_l00118) 9527 0 R (_element_8cpp_source_l00119) 9528 0 R (_element_8cpp_source_l00120) 4546 0 R (_element_8cpp_source_l00121) 9529 0 R]
+/Limits [(_element_8cpp_source_l00116) (_element_8cpp_source_l00121)]
+>>
+endobj
+13750 0 obj
+<<
+/Names [(_element_8cpp_source_l00122) 9530 0 R (_element_8cpp_source_l00123) 9531 0 R (_element_8cpp_source_l00124) 9532 0 R (_element_8cpp_source_l00125) 4558 0 R (_element_8cpp_source_l00126) 9533 0 R (_element_8cpp_source_l00127) 9534 0 R]
+/Limits [(_element_8cpp_source_l00122) (_element_8cpp_source_l00127)]
+>>
+endobj
+13751 0 obj
+<<
+/Names [(_element_8cpp_source_l00128) 9535 0 R (_element_8cpp_source_l00129) 9536 0 R (_element_8cpp_source_l00130) 4593 0 R (_element_8cpp_source_l00131) 9537 0 R (_element_8cpp_source_l00132) 9538 0 R (_element_8cpp_source_l00133) 9539 0 R]
+/Limits [(_element_8cpp_source_l00128) (_element_8cpp_source_l00133)]
+>>
+endobj
+13752 0 obj
+<<
+/Names [(_element_8cpp_source_l00134) 9540 0 R (_element_8cpp_source_l00135) 9541 0 R (_element_8cpp_source_l00136) 9542 0 R (_element_8cpp_source_l00137) 9543 0 R (_element_8cpp_source_l00138) 9544 0 R (_element_8cpp_source_l00139) 9545 0 R]
+/Limits [(_element_8cpp_source_l00134) (_element_8cpp_source_l00139)]
+>>
+endobj
+13753 0 obj
+<<
+/Names [(_element_8cpp_source_l00140) 9546 0 R (_element_8cpp_source_l00141) 9547 0 R (_element_8cpp_source_l00142) 9548 0 R (_element_8cpp_source_l00143) 9549 0 R (_element_8cpp_source_l00144) 9550 0 R (_element_8cpp_source_l00145) 9551 0 R]
+/Limits [(_element_8cpp_source_l00140) (_element_8cpp_source_l00145)]
+>>
+endobj
+13754 0 obj
+<<
+/Names [(_element_8cpp_source_l00146) 9552 0 R (_element_8cpp_source_l00147) 9553 0 R (_element_8cpp_source_l00148) 4560 0 R (_element_8cpp_source_l00149) 9554 0 R (_element_8cpp_source_l00150) 9555 0 R (_element_8cpp_source_l00151) 9556 0 R]
+/Limits [(_element_8cpp_source_l00146) (_element_8cpp_source_l00151)]
+>>
+endobj
+13755 0 obj
+<<
+/Names [(_element_8cpp_source_l00152) 9557 0 R (_element_8cpp_source_l00153) 9558 0 R (_element_8cpp_source_l00154) 9559 0 R (_element_8cpp_source_l00155) 4529 0 R (_element_8cpp_source_l00156) 9560 0 R (_element_8cpp_source_l00157) 9561 0 R]
+/Limits [(_element_8cpp_source_l00152) (_element_8cpp_source_l00157)]
+>>
+endobj
+13756 0 obj
+<<
+/Names [(_element_8cpp_source_l00158) 9562 0 R (_element_8cpp_source_l00159) 9563 0 R (_element_8cpp_source_l00160) 9564 0 R (_element_8cpp_source_l00161) 9565 0 R (_element_8cpp_source_l00162) 9566 0 R (_element_8cpp_source_l00163) 9567 0 R]
+/Limits [(_element_8cpp_source_l00158) (_element_8cpp_source_l00163)]
+>>
+endobj
+13757 0 obj
+<<
+/Names [(_element_8cpp_source_l00164) 9568 0 R (_element_8cpp_source_l00165) 9569 0 R (_element_8cpp_source_l00166) 9570 0 R (_element_8cpp_source_l00167) 9571 0 R (_element_8cpp_source_l00168) 9572 0 R (_element_8cpp_source_l00169) 9573 0 R]
+/Limits [(_element_8cpp_source_l00164) (_element_8cpp_source_l00169)]
+>>
+endobj
+13758 0 obj
+<<
+/Names [(_element_8cpp_source_l00170) 9574 0 R (_element_8cpp_source_l00171) 9575 0 R (_element_8cpp_source_l00172) 9576 0 R (_element_8cpp_source_l00173) 9577 0 R (_element_8cpp_source_l00174) 9578 0 R (_element_8cpp_source_l00175) 9579 0 R]
+/Limits [(_element_8cpp_source_l00170) (_element_8cpp_source_l00175)]
+>>
+endobj
+13759 0 obj
+<<
+/Names [(_element_8cpp_source_l00176) 9580 0 R (_element_8cpp_source_l00177) 9581 0 R (_element_8cpp_source_l00178) 9582 0 R (_element_8cpp_source_l00179) 9583 0 R (_element_8cpp_source_l00180) 9584 0 R (_element_8cpp_source_l00181) 9585 0 R]
+/Limits [(_element_8cpp_source_l00176) (_element_8cpp_source_l00181)]
+>>
+endobj
+13760 0 obj
+<<
+/Names [(_element_8cpp_source_l00182) 9586 0 R (_element_8cpp_source_l00183) 9587 0 R (_element_8cpp_source_l00184) 9588 0 R (_element_8h) 3328 0 R (_element_8h_source) 3713 0 R (_element_8h_source_l00001) 9629 0 R]
+/Limits [(_element_8cpp_source_l00182) (_element_8h_source_l00001)]
+>>
+endobj
+13761 0 obj
+<<
+/Names [(_element_8h_source_l00002) 9630 0 R (_element_8h_source_l00003) 9631 0 R (_element_8h_source_l00004) 9632 0 R (_element_8h_source_l00005) 9633 0 R (_element_8h_source_l00006) 9634 0 R (_element_8h_source_l00007) 9635 0 R]
+/Limits [(_element_8h_source_l00002) (_element_8h_source_l00007)]
+>>
+endobj
+13762 0 obj
+<<
+/Names [(_element_8h_source_l00008) 9636 0 R (_element_8h_source_l00009) 9637 0 R (_element_8h_source_l00010) 9638 0 R (_element_8h_source_l00011) 9639 0 R (_element_8h_source_l00012) 9640 0 R (_element_8h_source_l00013) 9641 0 R]
+/Limits [(_element_8h_source_l00008) (_element_8h_source_l00013)]
+>>
+endobj
+13763 0 obj
+<<
+/Names [(_element_8h_source_l00023) 4472 0 R (_element_8h_source_l00024) 9642 0 R (_element_8h_source_l00025) 9643 0 R (_element_8h_source_l00026) 9644 0 R (_element_8h_source_l00032) 4614 0 R (_element_8h_source_l00033) 9645 0 R]
+/Limits [(_element_8h_source_l00023) (_element_8h_source_l00033)]
+>>
+endobj
+13764 0 obj
+<<
+/Names [(_element_8h_source_l00039) 4639 0 R (_element_8h_source_l00040) 9646 0 R (_element_8h_source_l00046) 4640 0 R (_element_8h_source_l00047) 9647 0 R (_element_8h_source_l00053) 4641 0 R (_element_8h_source_l00054) 9648 0 R]
+/Limits [(_element_8h_source_l00039) (_element_8h_source_l00054)]
+>>
+endobj
+13765 0 obj
+<<
+/Names [(_element_8h_source_l00060) 4617 0 R (_element_8h_source_l00061) 9649 0 R (_element_8h_source_l00067) 4615 0 R (_element_8h_source_l00068) 9650 0 R (_element_8h_source_l00076) 4638 0 R (_element_8h_source_l00077) 9651 0 R]
+/Limits [(_element_8h_source_l00060) (_element_8h_source_l00077)]
+>>
+endobj
+13766 0 obj
+<<
+/Names [(_element_8h_source_l00083) 4616 0 R (_element_8h_source_l00084) 9652 0 R (_element_8h_source_l00096) 9653 0 R (_element_8h_source_l00097) 9654 0 R (_element_8h_source_l00105) 9684 0 R (_element_8h_source_l00106) 9685 0 R]
+/Limits [(_element_8h_source_l00083) (_element_8h_source_l00106)]
+>>
+endobj
+13767 0 obj
+<<
+/Names [(_element_8h_source_l00113) 9686 0 R (_element_8h_source_l00114) 9687 0 R (_element_8h_source_l00126) 9688 0 R (_element_8h_source_l00127) 9689 0 R (_element_8h_source_l00136) 9690 0 R (_element_8h_source_l00137) 9691 0 R]
+/Limits [(_element_8h_source_l00113) (_element_8h_source_l00137)]
+>>
+endobj
+13768 0 obj
+<<
+/Names [(_element_8h_source_l00147) 9692 0 R (_element_8h_source_l00148) 9693 0 R (_element_8h_source_l00158) 9694 0 R (_element_8h_source_l00159) 9695 0 R (_element_8h_source_l00170) 9696 0 R (_element_8h_source_l00171) 9697 0 R]
+/Limits [(_element_8h_source_l00147) (_element_8h_source_l00171)]
+>>
+endobj
+13769 0 obj
+<<
+/Names [(_element_8h_source_l00180) 9698 0 R (_element_8h_source_l00181) 9699 0 R (_element_8h_source_l00191) 9700 0 R (_element_8h_source_l00192) 9701 0 R (_element_8h_source_l00201) 9702 0 R (_element_8h_source_l00202) 9703 0 R]
+/Limits [(_element_8h_source_l00180) (_element_8h_source_l00202)]
+>>
+endobj
+13770 0 obj
+<<
+/Names [(_element_8h_source_l00211) 9704 0 R (_element_8h_source_l00212) 9705 0 R (_element_8h_source_l00221) 9706 0 R (_element_8h_source_l00222) 9707 0 R (_element_8h_source_l00231) 9708 0 R (_element_8h_source_l00232) 9709 0 R]
+/Limits [(_element_8h_source_l00211) (_element_8h_source_l00232)]
+>>
+endobj
+13771 0 obj
+<<
+/Names [(_element_8h_source_l00240) 9710 0 R (_element_8h_source_l00241) 9711 0 R (_element_8h_source_l00249) 9712 0 R (_element_8h_source_l00250) 9713 0 R (_element_8h_source_l00260) 9714 0 R (_element_8h_source_l00261) 9715 0 R]
+/Limits [(_element_8h_source_l00240) (_element_8h_source_l00261)]
+>>
+endobj
+13772 0 obj
+<<
+/Names [(_element_8h_source_l00262) 9716 0 R (_element_8h_source_l00263) 9717 0 R (_element_8h_source_l00264) 4510 0 R (_element_8h_source_l00265) 9718 0 R (_element_8h_source_l00266) 9719 0 R (_element_8h_source_l00267) 9720 0 R]
+/Limits [(_element_8h_source_l00262) (_element_8h_source_l00267)]
+>>
+endobj
+13773 0 obj
+<<
+/Names [(_element_8h_source_l00268) 9721 0 R (_element_8h_source_l00278) 3712 0 R (_element_8h_source_l00279) 9722 0 R (_element_8h_source_l00280) 9723 0 R (_element_8h_source_l00281) 9724 0 R (_enum_8cpp) 3329 0 R]
+/Limits [(_element_8h_source_l00268) (_enum_8cpp)]
+>>
+endobj
+13774 0 obj
+<<
+/Names [(_enum_8cpp_source) 4671 0 R (_enum_8cpp_source_l00001) 9725 0 R (_enum_8cpp_source_l00002) 9726 0 R (_enum_8cpp_source_l00003) 9727 0 R (_enum_8cpp_source_l00004) 4670 0 R (_enum_8cpp_source_l00005) 9728 0 R]
+/Limits [(_enum_8cpp_source) (_enum_8cpp_source_l00005)]
+>>
+endobj
+13775 0 obj
+<<
+/Names [(_enum_8cpp_source_l00006) 9729 0 R (_enum_8cpp_source_l00007) 9730 0 R (_enum_8cpp_source_l00008) 4687 0 R (_enum_8cpp_source_l00009) 9731 0 R (_enum_8cpp_source_l00010) 9732 0 R (_enum_8cpp_source_l00011) 9733 0 R]
+/Limits [(_enum_8cpp_source_l00006) (_enum_8cpp_source_l00011)]
+>>
+endobj
+13776 0 obj
+<<
+/Names [(_enum_8cpp_source_l00012) 4688 0 R (_enum_8cpp_source_l00013) 9734 0 R (_enum_8cpp_source_l00014) 9735 0 R (_enum_8cpp_source_l00015) 9736 0 R (_enum_8cpp_source_l00016) 9737 0 R (_enum_8cpp_source_l00017) 4689 0 R]
+/Limits [(_enum_8cpp_source_l00012) (_enum_8cpp_source_l00017)]
+>>
+endobj
+13777 0 obj
+<<
+/Names [(_enum_8cpp_source_l00018) 9738 0 R (_enum_8cpp_source_l00019) 9739 0 R (_enum_8cpp_source_l00020) 9740 0 R (_enum_8cpp_source_l00021) 4705 0 R (_enum_8cpp_source_l00022) 9741 0 R (_enum_8cpp_source_l00023) 9760 0 R]
+/Limits [(_enum_8cpp_source_l00018) (_enum_8cpp_source_l00023)]
+>>
+endobj
+13778 0 obj
+<<
+/Names [(_enum_8cpp_source_l00024) 9761 0 R (_enum_8cpp_source_l00025) 9762 0 R (_enum_8cpp_source_l00026) 4690 0 R (_enum_8cpp_source_l00027) 9763 0 R (_enum_8cpp_source_l00028) 9764 0 R (_enum_8cpp_source_l00029) 9765 0 R]
+/Limits [(_enum_8cpp_source_l00024) (_enum_8cpp_source_l00029)]
+>>
+endobj
+13779 0 obj
+<<
+/Names [(_enum_8cpp_source_l00030) 9766 0 R (_enum_8cpp_source_l00031) 4703 0 R (_enum_8cpp_source_l00032) 9767 0 R (_enum_8cpp_source_l00033) 9768 0 R (_enum_8cpp_source_l00034) 9769 0 R (_enum_8cpp_source_l00035) 9770 0 R]
+/Limits [(_enum_8cpp_source_l00030) (_enum_8cpp_source_l00035)]
+>>
+endobj
+13780 0 obj
+<<
+/Names [(_enum_8cpp_source_l00036) 9771 0 R (_enum_8cpp_source_l00037) 9772 0 R (_enum_8cpp_source_l00038) 9773 0 R (_enum_8cpp_source_l00039) 9774 0 R (_enum_8cpp_source_l00040) 9775 0 R (_enum_8cpp_source_l00041) 9776 0 R]
+/Limits [(_enum_8cpp_source_l00036) (_enum_8cpp_source_l00041)]
+>>
+endobj
+13781 0 obj
+<<
+/Names [(_enum_8cpp_source_l00042) 9777 0 R (_enum_8cpp_source_l00043) 4704 0 R (_enum_8cpp_source_l00044) 9778 0 R (_enum_8cpp_source_l00045) 9779 0 R (_enum_8cpp_source_l00046) 9780 0 R (_enum_8cpp_source_l00047) 9781 0 R]
+/Limits [(_enum_8cpp_source_l00042) (_enum_8cpp_source_l00047)]
+>>
+endobj
+13782 0 obj
+<<
+/Names [(_enum_8cpp_source_l00048) 9782 0 R (_enum_8cpp_source_l00049) 9783 0 R (_enum_8cpp_source_l00050) 9784 0 R (_enum_8cpp_source_l00051) 9785 0 R (_enum_8cpp_source_l00052) 9786 0 R (_enum_8cpp_source_l00053) 9787 0 R]
+/Limits [(_enum_8cpp_source_l00048) (_enum_8cpp_source_l00053)]
+>>
+endobj
+13783 0 obj
+<<
+/Names [(_enum_8cpp_source_l00054) 9788 0 R (_enum_8cpp_source_l00055) 4729 0 R (_enum_8cpp_source_l00056) 9789 0 R (_enum_8cpp_source_l00057) 9790 0 R (_enum_8cpp_source_l00058) 9791 0 R (_enum_8cpp_source_l00059) 9792 0 R]
+/Limits [(_enum_8cpp_source_l00054) (_enum_8cpp_source_l00059)]
+>>
+endobj
+13784 0 obj
+<<
+/Names [(_enum_8cpp_source_l00060) 9793 0 R (_enum_8cpp_source_l00061) 9794 0 R (_enum_8cpp_source_l00062) 9795 0 R (_enum_8cpp_source_l00063) 9796 0 R (_enum_8cpp_source_l00064) 9797 0 R (_enum_8cpp_source_l00065) 9798 0 R]
+/Limits [(_enum_8cpp_source_l00060) (_enum_8cpp_source_l00065)]
+>>
+endobj
+13785 0 obj
+<<
+/Names [(_enum_8cpp_source_l00066) 9799 0 R (_enum_8cpp_source_l00067) 4730 0 R (_enum_8cpp_source_l00068) 9800 0 R (_enum_8cpp_source_l00069) 9801 0 R (_enum_8cpp_source_l00070) 9802 0 R (_enum_8h) 3330 0 R]
+/Limits [(_enum_8cpp_source_l00066) (_enum_8h)]
+>>
+endobj
+13786 0 obj
+<<
+/Names [(_enum_8h_source) 4669 0 R (_enum_8h_source_l00001) 9830 0 R (_enum_8h_source_l00002) 9831 0 R (_enum_8h_source_l00003) 9832 0 R (_enum_8h_source_l00004) 9833 0 R (_enum_8h_source_l00005) 9834 0 R]
+/Limits [(_enum_8h_source) (_enum_8h_source_l00005)]
+>>
+endobj
+13787 0 obj
+<<
+/Names [(_enum_8h_source_l00006) 9835 0 R (_enum_8h_source_l00007) 9836 0 R (_enum_8h_source_l00008) 9837 0 R (_enum_8h_source_l00015) 4668 0 R (_enum_8h_source_l00016) 9838 0 R (_enum_8h_source_l00017) 9839 0 R]
+/Limits [(_enum_8h_source_l00006) (_enum_8h_source_l00017)]
+>>
+endobj
+13788 0 obj
+<<
+/Names [(_enum_8h_source_l00023) 9840 0 R (_enum_8h_source_l00024) 9841 0 R (_enum_8h_source_l00030) 9842 0 R (_enum_8h_source_l00031) 9843 0 R (_enum_8h_source_l00037) 9844 0 R (_enum_8h_source_l00038) 9845 0 R]
+/Limits [(_enum_8h_source_l00023) (_enum_8h_source_l00038)]
+>>
+endobj
+13789 0 obj
+<<
+/Names [(_enum_8h_source_l00048) 9846 0 R (_enum_8h_source_l00049) 9847 0 R (_enum_8h_source_l00058) 9848 0 R (_enum_8h_source_l00059) 9849 0 R (_enum_8h_source_l00065) 9850 0 R (_enum_8h_source_l00066) 9851 0 R]
+/Limits [(_enum_8h_source_l00048) (_enum_8h_source_l00066)]
+>>
+endobj
+13790 0 obj
+<<
+/Names [(_enum_8h_source_l00073) 9852 0 R (_enum_8h_source_l00074) 9853 0 R (_enum_8h_source_l00081) 9854 0 R (_enum_8h_source_l00082) 9855 0 R (_enum_8h_source_l00089) 9856 0 R (_enum_8h_source_l00090) 9857 0 R]
+/Limits [(_enum_8h_source_l00073) (_enum_8h_source_l00090)]
+>>
+endobj
+13791 0 obj
+<<
+/Names [(_enum_8h_source_l00102) 9858 0 R (_enum_8h_source_l00103) 9859 0 R (_enum_8h_source_l00113) 9860 0 R (_enum_8h_source_l00114) 9861 0 R (_enum_8h_source_l00124) 9862 0 R (_enum_8h_source_l00125) 9863 0 R]
+/Limits [(_enum_8h_source_l00102) (_enum_8h_source_l00125)]
+>>
+endobj
+13792 0 obj
+<<
+/Names [(_enum_8h_source_l00126) 9864 0 R (_exception_8cpp) 3384 0 R (_exception_8cpp_source) 4803 0 R (_exception_8cpp_source_l00001) 12778 0 R (_exception_8cpp_source_l00002) 12779 0 R (_exception_8cpp_source_l00003) 4802 0 R]
+/Limits [(_enum_8h_source_l00126) (_exception_8cpp_source_l00003)]
+>>
+endobj
+13793 0 obj
+<<
+/Names [(_exception_8cpp_source_l00004) 12780 0 R (_exception_8cpp_source_l00005) 12781 0 R (_exception_8cpp_source_l00006) 12782 0 R (_exception_8cpp_source_l00007) 4871 0 R (_exception_8cpp_source_l00008) 12783 0 R (_exception_8cpp_source_l00009) 12784 0 R]
+/Limits [(_exception_8cpp_source_l00004) (_exception_8cpp_source_l00009)]
+>>
+endobj
+13794 0 obj
+<<
+/Names [(_exception_8h) 3385 0 R (_exception_8h_source) 4801 0 R (_exception_8h_source_l00001) 12796 0 R (_exception_8h_source_l00002) 12797 0 R (_exception_8h_source_l00003) 12798 0 R (_exception_8h_source_l00004) 12799 0 R]
+/Limits [(_exception_8h) (_exception_8h_source_l00004)]
+>>
+endobj
+13795 0 obj
+<<
+/Names [(_exception_8h_source_l00005) 12800 0 R (_exception_8h_source_l00011) 4800 0 R (_exception_8h_source_l00012) 12801 0 R (_exception_8h_source_l00013) 12802 0 R (_exception_8h_source_l00014) 12803 0 R (_exception_8h_source_l00021) 12804 0 R]
+/Limits [(_exception_8h_source_l00005) (_exception_8h_source_l00021)]
+>>
+endobj
+13796 0 obj
+<<
+/Names [(_exception_8h_source_l00022) 12805 0 R (_exception_8h_source_l00028) 12806 0 R (_exception_8h_source_l00029) 12807 0 R (_exception_8h_source_l00030) 12808 0 R (_exception_8h_source_l00031) 12809 0 R (_figure_8cpp) 3331 0 R]
+/Limits [(_exception_8h_source_l00022) (_figure_8cpp)]
+>>
+endobj
+13797 0 obj
+<<
+/Names [(_figure_8cpp_a2c60fe17aef5a333bceb59cbcbef54c0) 9866 0 R (_figure_8cpp_a30e419f20fa7f6edd5cd20a93ad810ea) 9867 0 R (_figure_8cpp_a879dfa5f8bb335421b721c57145b622e) 9869 0 R (_figure_8cpp_source) 3691 0 R (_figure_8cpp_source_l00001) 9901 0 R (_figure_8cpp_source_l00002) 9902 0 R]
+/Limits [(_figure_8cpp_a2c60fe17aef5a333bceb59cbcbef54c0) (_figure_8cpp_source_l00002)]
+>>
+endobj
+13798 0 obj
+<<
+/Names [(_figure_8cpp_source_l00003) 9903 0 R (_figure_8cpp_source_l00004) 3692 0 R (_figure_8cpp_source_l00005) 9904 0 R (_figure_8cpp_source_l00006) 9905 0 R (_figure_8cpp_source_l00007) 9906 0 R (_figure_8cpp_source_l00008) 9907 0 R]
+/Limits [(_figure_8cpp_source_l00003) (_figure_8cpp_source_l00008)]
+>>
+endobj
+13799 0 obj
+<<
+/Names [(_figure_8cpp_source_l00009) 9908 0 R (_figure_8cpp_source_l00010) 3690 0 R (_figure_8cpp_source_l00011) 9909 0 R (_figure_8cpp_source_l00012) 9910 0 R (_figure_8cpp_source_l00013) 9911 0 R (_figure_8cpp_source_l00014) 9912 0 R]
+/Limits [(_figure_8cpp_source_l00009) (_figure_8cpp_source_l00014)]
+>>
+endobj
+13800 0 obj
+<<
+/Names [(_figure_8cpp_source_l00015) 9913 0 R (_figure_8cpp_source_l00016) 9914 0 R (_figure_8cpp_source_l00017) 9915 0 R (_figure_8cpp_source_l00018) 9916 0 R (_figure_8cpp_source_l00019) 9917 0 R (_figure_8cpp_source_l00020) 9918 0 R]
+/Limits [(_figure_8cpp_source_l00015) (_figure_8cpp_source_l00020)]
+>>
+endobj
+13801 0 obj
+<<
+/Names [(_figure_8cpp_source_l00021) 9919 0 R (_figure_8cpp_source_l00022) 9920 0 R (_figure_8cpp_source_l00023) 9921 0 R (_figure_8cpp_source_l00024) 3694 0 R (_figure_8cpp_source_l00025) 9922 0 R (_figure_8cpp_source_l00026) 9923 0 R]
+/Limits [(_figure_8cpp_source_l00021) (_figure_8cpp_source_l00026)]
+>>
+endobj
+13802 0 obj
+<<
+/Names [(_figure_8cpp_source_l00027) 9924 0 R (_figure_8cpp_source_l00028) 9925 0 R (_figure_8cpp_source_l00029) 9926 0 R (_figure_8cpp_source_l00030) 9927 0 R (_figure_8cpp_source_l00031) 3693 0 R (_figure_8cpp_source_l00032) 9928 0 R]
+/Limits [(_figure_8cpp_source_l00027) (_figure_8cpp_source_l00032)]
+>>
+endobj
+13803 0 obj
+<<
+/Names [(_figure_8cpp_source_l00033) 9929 0 R (_figure_8cpp_source_l00034) 9930 0 R (_figure_8cpp_source_l00035) 9931 0 R (_figure_8cpp_source_l00036) 9932 0 R (_figure_8cpp_source_l00037) 9933 0 R (_figure_8cpp_source_l00038) 9934 0 R]
+/Limits [(_figure_8cpp_source_l00033) (_figure_8cpp_source_l00038)]
+>>
+endobj
+13804 0 obj
+<<
+/Names [(_figure_8cpp_source_l00039) 9935 0 R (_figure_8cpp_source_l00040) 9936 0 R (_figure_8cpp_source_l00041) 9937 0 R (_figure_8cpp_source_l00042) 9938 0 R (_figure_8cpp_source_l00043) 9870 0 R (_figure_8cpp_source_l00044) 9939 0 R]
+/Limits [(_figure_8cpp_source_l00039) (_figure_8cpp_source_l00044)]
+>>
+endobj
+13805 0 obj
+<<
+/Names [(_figure_8cpp_source_l00045) 9940 0 R (_figure_8cpp_source_l00046) 9941 0 R (_figure_8h) 3332 0 R (_figure_8h_source) 4918 0 R (_figure_8h_source_l00001) 10001 0 R (_figure_8h_source_l00002) 10002 0 R]
+/Limits [(_figure_8cpp_source_l00045) (_figure_8h_source_l00002)]
+>>
+endobj
+13806 0 obj
+<<
+/Names [(_figure_8h_source_l00003) 10003 0 R (_figure_8h_source_l00004) 10004 0 R (_figure_8h_source_l00005) 10005 0 R (_figure_8h_source_l00006) 10006 0 R (_figure_8h_source_l00007) 10007 0 R (_figure_8h_source_l00008) 10008 0 R]
+/Limits [(_figure_8h_source_l00003) (_figure_8h_source_l00008)]
+>>
+endobj
+13807 0 obj
+<<
+/Names [(_figure_8h_source_l00018) 10009 0 R (_figure_8h_source_l00019) 10010 0 R (_figure_8h_source_l00020) 10011 0 R (_figure_8h_source_l00021) 10012 0 R (_figure_8h_source_l00022) 10013 0 R (_figure_8h_source_l00023) 10014 0 R]
+/Limits [(_figure_8h_source_l00018) (_figure_8h_source_l00023)]
+>>
+endobj
+13808 0 obj
+<<
+/Names [(_figure_8h_source_l00024) 10015 0 R (_figure_8h_source_l00025) 10016 0 R (_figure_8h_source_l00026) 10017 0 R (_figure_8h_source_l00027) 10018 0 R (_figure_8h_source_l00028) 10019 0 R (_figure_8h_source_l00029) 10020 0 R]
+/Limits [(_figure_8h_source_l00024) (_figure_8h_source_l00029)]
+>>
+endobj
+13809 0 obj
+<<
+/Names [(_figure_8h_source_l00030) 10021 0 R (_figure_8h_source_l00031) 10022 0 R (_figure_8h_source_l00032) 10115 0 R (_figure_8h_source_l00033) 10116 0 R (_figure_8h_source_l00034) 10117 0 R (_figure_8h_source_l00035) 10118 0 R]
+/Limits [(_figure_8h_source_l00030) (_figure_8h_source_l00035)]
+>>
+endobj
+13810 0 obj
+<<
+/Names [(_figure_8h_source_l00047) 10119 0 R (_figure_8h_source_l00048) 4917 0 R (_figure_8h_source_l00049) 10120 0 R (_figure_8h_source_l00050) 10121 0 R (_figure_8h_source_l00056) 5079 0 R (_figure_8h_source_l00057) 10122 0 R]
+/Limits [(_figure_8h_source_l00047) (_figure_8h_source_l00057)]
+>>
+endobj
+13811 0 obj
+<<
+/Names [(_figure_8h_source_l00063) 5080 0 R (_figure_8h_source_l00064) 10123 0 R (_figure_8h_source_l00070) 5081 0 R (_figure_8h_source_l00071) 10124 0 R (_figure_8h_source_l00077) 5044 0 R (_figure_8h_source_l00078) 10125 0 R]
+/Limits [(_figure_8h_source_l00063) (_figure_8h_source_l00078)]
+>>
+endobj
+13812 0 obj
+<<
+/Names [(_figure_8h_source_l00085) 10126 0 R (_figure_8h_source_l00086) 10127 0 R (_figure_8h_source_l00093) 10128 0 R (_figure_8h_source_l00094) 10129 0 R (_figure_8h_source_l00095) 10130 0 R (_figure_8h_source_l00109) 10131 0 R]
+/Limits [(_figure_8h_source_l00085) (_figure_8h_source_l00109)]
+>>
+endobj
+13813 0 obj
+<<
+/Names [(_figure_8h_source_l00110) 10132 0 R (_figure_8h_source_l00116) 10133 0 R (_figure_8h_source_l00117) 10134 0 R (_figure_8h_source_l00128) 10135 0 R (_figure_8h_source_l00129) 10136 0 R (_figure_8h_source_l00130) 10137 0 R]
+/Limits [(_figure_8h_source_l00110) (_figure_8h_source_l00130)]
+>>
+endobj
+13814 0 obj
+<<
+/Names [(_figure_8h_source_l00137) 10138 0 R (_figure_8h_source_l00138) 10139 0 R (_figure_8h_source_l00147) 10140 0 R (_figure_8h_source_l00148) 10141 0 R (_figure_8h_source_l00155) 10142 0 R (_figure_8h_source_l00156) 10143 0 R]
+/Limits [(_figure_8h_source_l00137) (_figure_8h_source_l00156)]
+>>
+endobj
+13815 0 obj
+<<
+/Names [(_figure_8h_source_l00163) 10144 0 R (_figure_8h_source_l00164) 10145 0 R (_figure_8h_source_l00175) 10146 0 R (_figure_8h_source_l00176) 10147 0 R (_figure_8h_source_l00177) 10148 0 R (_figure_8h_source_l00186) 10149 0 R]
+/Limits [(_figure_8h_source_l00163) (_figure_8h_source_l00186)]
+>>
+endobj
+13816 0 obj
+<<
+/Names [(_figure_8h_source_l00187) 10150 0 R (_figure_8h_source_l00198) 10151 0 R (_figure_8h_source_l00199) 10152 0 R (_figure_8h_source_l00209) 10153 0 R (_figure_8h_source_l00210) 10154 0 R (_figure_8h_source_l00211) 10155 0 R]
+/Limits [(_figure_8h_source_l00187) (_figure_8h_source_l00211)]
+>>
+endobj
+13817 0 obj
+<<
+/Names [(_figure_8h_source_l00212) 10156 0 R (_figure_8h_source_l00213) 10157 0 R (_figure_8h_source_l00214) 10158 0 R (_figure_8h_source_l00215) 10159 0 R (_figure_8h_source_l00216) 10160 0 R (_figure_8h_source_l00217) 10161 0 R]
+/Limits [(_figure_8h_source_l00212) (_figure_8h_source_l00217)]
+>>
+endobj
+13818 0 obj
+<<
+/Names [(_figure_8h_source_l00218) 4933 0 R (_figure_8h_source_l00219) 10162 0 R (_figure_8h_source_l00220) 10163 0 R (_figure_8h_source_l00221) 10164 0 R (_figure_8h_source_l00222) 10165 0 R (_figure_8h_source_l00223) 4934 0 R]
+/Limits [(_figure_8h_source_l00218) (_figure_8h_source_l00223)]
+>>
+endobj
+13819 0 obj
+<<
+/Names [(_figure_8h_source_l00224) 10166 0 R (_figure_8h_source_l00225) 10167 0 R (_figure_8h_source_l00226) 10168 0 R (_figure_8h_source_l00227) 10169 0 R (_figure_8h_source_l00228) 10170 0 R (_figure_8h_source_l00229) 5041 0 R]
+/Limits [(_figure_8h_source_l00224) (_figure_8h_source_l00229)]
+>>
+endobj
+13820 0 obj
+<<
+/Names [(_figure_8h_source_l00230) 10171 0 R (_figure_8h_source_l00231) 10172 0 R (_figure_8h_source_l00232) 10173 0 R (_figure_8h_source_l00233) 10174 0 R (_figure_8h_source_l00234) 10175 0 R (_figure_8h_source_l00235) 10176 0 R]
+/Limits [(_figure_8h_source_l00230) (_figure_8h_source_l00235)]
+>>
+endobj
+13821 0 obj
+<<
+/Names [(_figure_8h_source_l00236) 10177 0 R (_figure_8h_source_l00237) 10178 0 R (_figure_8h_source_l00238) 10179 0 R (_figure_8h_source_l00239) 10180 0 R (_figure_8h_source_l00240) 10181 0 R (_figure_8h_source_l00241) 10182 0 R]
+/Limits [(_figure_8h_source_l00236) (_figure_8h_source_l00241)]
+>>
+endobj
+13822 0 obj
+<<
+/Names [(_figure_8h_source_l00242) 10183 0 R (_figure_8h_source_l00243) 10184 0 R (_figure_8h_source_l00244) 10185 0 R (_figure_8h_source_l00245) 10186 0 R (_figure_8h_source_l00246) 10187 0 R (_figure_8h_source_l00247) 10188 0 R]
+/Limits [(_figure_8h_source_l00242) (_figure_8h_source_l00247)]
+>>
+endobj
+13823 0 obj
+<<
+/Names [(_figure_8h_source_l00248) 4956 0 R (_figure_8h_source_l00249) 10221 0 R (_figure_8h_source_l00250) 10222 0 R (_figure_8h_source_l00251) 10223 0 R (_figure_8h_source_l00252) 10224 0 R (_figure_8h_source_l00253) 10225 0 R]
+/Limits [(_figure_8h_source_l00248) (_figure_8h_source_l00253)]
+>>
+endobj
+13824 0 obj
+<<
+/Names [(_figure_8h_source_l00254) 4986 0 R (_figure_8h_source_l00255) 10226 0 R (_figure_8h_source_l00256) 10227 0 R (_figure_8h_source_l00257) 10228 0 R (_figure_8h_source_l00258) 10229 0 R (_figure_8h_source_l00259) 4983 0 R]
+/Limits [(_figure_8h_source_l00254) (_figure_8h_source_l00259)]
+>>
+endobj
+13825 0 obj
+<<
+/Names [(_figure_8h_source_l00260) 10230 0 R (_figure_8h_source_l00261) 10231 0 R (_figure_8h_source_l00262) 10232 0 R (_figure_8h_source_l00263) 10233 0 R (_figure_8h_source_l00264) 10234 0 R (_figure_8h_source_l00265) 10235 0 R]
+/Limits [(_figure_8h_source_l00260) (_figure_8h_source_l00265)]
+>>
+endobj
+13826 0 obj
+<<
+/Names [(_figure_8h_source_l00266) 10236 0 R (_figure_8h_source_l00267) 10237 0 R (_figure_8h_source_l00268) 10238 0 R (_figure_8h_source_l00269) 10239 0 R (_figure_8h_source_l00270) 10240 0 R (_figure_8h_source_l00271) 4958 0 R]
+/Limits [(_figure_8h_source_l00266) (_figure_8h_source_l00271)]
+>>
+endobj
+13827 0 obj
+<<
+/Names [(_figure_8h_source_l00272) 10241 0 R (_figure_8h_source_l00273) 10242 0 R (_figure_8h_source_l00274) 10243 0 R (_figure_8h_source_l00275) 10244 0 R (_figure_8h_source_l00276) 10245 0 R (_figure_8h_source_l00277) 10246 0 R]
+/Limits [(_figure_8h_source_l00272) (_figure_8h_source_l00277)]
+>>
+endobj
+13828 0 obj
+<<
+/Names [(_figure_8h_source_l00278) 4957 0 R (_figure_8h_source_l00279) 10247 0 R (_figure_8h_source_l00280) 10248 0 R (_figure_8h_source_l00281) 10249 0 R (_figure_8h_source_l00282) 10250 0 R (_figure_8h_source_l00283) 10251 0 R]
+/Limits [(_figure_8h_source_l00278) (_figure_8h_source_l00283)]
+>>
+endobj
+13829 0 obj
+<<
+/Names [(_figure_8h_source_l00284) 4987 0 R (_figure_8h_source_l00285) 10252 0 R (_figure_8h_source_l00286) 10253 0 R (_figure_8h_source_l00287) 10254 0 R (_figure_8h_source_l00288) 10255 0 R (_figure_8h_source_l00289) 10256 0 R]
+/Limits [(_figure_8h_source_l00284) (_figure_8h_source_l00289)]
+>>
+endobj
+13830 0 obj
+<<
+/Names [(_figure_8h_source_l00290) 10257 0 R (_figure_8h_source_l00291) 5010 0 R (_figure_8h_source_l00292) 10258 0 R (_figure_8h_source_l00293) 10259 0 R (_figure_8h_source_l00294) 10260 0 R (_figure_8h_source_l00295) 10261 0 R]
+/Limits [(_figure_8h_source_l00290) (_figure_8h_source_l00295)]
+>>
+endobj
+13831 0 obj
+<<
+/Names [(_figure_8h_source_l00296) 10262 0 R (_figure_8h_source_l00297) 10263 0 R (_figure_8h_source_l00298) 5011 0 R (_figure_8h_source_l00299) 10264 0 R (_figure_8h_source_l00300) 10265 0 R (_figure_8h_source_l00301) 10266 0 R]
+/Limits [(_figure_8h_source_l00296) (_figure_8h_source_l00301)]
+>>
+endobj
+13832 0 obj
+<<
+/Names [(_figure_8h_source_l00302) 10267 0 R (_figure_8h_source_l00303) 10268 0 R (_figure_8h_source_l00304) 10269 0 R (_figure_8h_source_l00305) 10270 0 R (_figure_8h_source_l00306) 10271 0 R (_figure_8h_source_l00307) 10272 0 R]
+/Limits [(_figure_8h_source_l00302) (_figure_8h_source_l00307)]
+>>
+endobj
+13833 0 obj
+<<
+/Names [(_figure_8h_source_l00308) 5012 0 R (_figure_8h_source_l00309) 10273 0 R (_figure_8h_source_l00310) 10274 0 R (_figure_8h_source_l00311) 10275 0 R (_figure_8h_source_l00312) 10276 0 R (_figure_8h_source_l00313) 10277 0 R]
+/Limits [(_figure_8h_source_l00308) (_figure_8h_source_l00313)]
+>>
+endobj
+13834 0 obj
+<<
+/Names [(_figure_8h_source_l00314) 10278 0 R (_figure_8h_source_l00315) 10279 0 R (_figure_8h_source_l00316) 10280 0 R (_figure_8h_source_l00317) 10281 0 R (_figure_8h_source_l00318) 10282 0 R (_figure_8h_source_l00319) 10283 0 R]
+/Limits [(_figure_8h_source_l00314) (_figure_8h_source_l00319)]
+>>
+endobj
+13835 0 obj
+<<
+/Names [(_figure_8h_source_l00320) 10284 0 R (_figure_8h_source_l00321) 10285 0 R (_figure_8h_source_l00322) 10286 0 R (_function_8cpp) 3333 0 R (_function_8cpp_source) 5175 0 R (_function_8cpp_source_l00001) 10320 0 R]
+/Limits [(_figure_8h_source_l00320) (_function_8cpp_source_l00001)]
+>>
+endobj
+13836 0 obj
+<<
+/Names [(_function_8cpp_source_l00002) 10321 0 R (_function_8cpp_source_l00003) 10322 0 R (_function_8cpp_source_l00004) 5174 0 R (_function_8cpp_source_l00005) 10323 0 R (_function_8cpp_source_l00006) 10324 0 R (_function_8cpp_source_l00007) 10325 0 R]
+/Limits [(_function_8cpp_source_l00002) (_function_8cpp_source_l00007)]
+>>
+endobj
+13837 0 obj
+<<
+/Names [(_function_8cpp_source_l00008) 10326 0 R (_function_8cpp_source_l00009) 10327 0 R (_function_8cpp_source_l00010) 10328 0 R (_function_8cpp_source_l00011) 10329 0 R (_function_8cpp_source_l00012) 10330 0 R (_function_8cpp_source_l00013) 10331 0 R]
+/Limits [(_function_8cpp_source_l00008) (_function_8cpp_source_l00013)]
+>>
+endobj
+13838 0 obj
+<<
+/Names [(_function_8cpp_source_l00014) 5176 0 R (_function_8cpp_source_l00015) 10332 0 R (_function_8cpp_source_l00016) 10333 0 R (_function_8cpp_source_l00017) 10334 0 R (_function_8cpp_source_l00018) 5239 0 R (_function_8cpp_source_l00019) 10335 0 R]
+/Limits [(_function_8cpp_source_l00014) (_function_8cpp_source_l00019)]
+>>
+endobj
+13839 0 obj
+<<
+/Names [(_function_8cpp_source_l00020) 10336 0 R (_function_8cpp_source_l00021) 10337 0 R (_function_8cpp_source_l00022) 10338 0 R (_function_8cpp_source_l00023) 10339 0 R (_function_8cpp_source_l00024) 5317 0 R (_function_8cpp_source_l00025) 10340 0 R]
+/Limits [(_function_8cpp_source_l00020) (_function_8cpp_source_l00025)]
+>>
+endobj
+13840 0 obj
+<<
+/Names [(_function_8cpp_source_l00026) 10341 0 R (_function_8cpp_source_l00027) 10342 0 R (_function_8cpp_source_l00028) 10343 0 R (_function_8cpp_source_l00029) 10344 0 R (_function_8cpp_source_l00030) 10345 0 R (_function_8cpp_source_l00031) 10346 0 R]
+/Limits [(_function_8cpp_source_l00026) (_function_8cpp_source_l00031)]
+>>
+endobj
+13841 0 obj
+<<
+/Names [(_function_8cpp_source_l00032) 10347 0 R (_function_8cpp_source_l00033) 10348 0 R (_function_8cpp_source_l00034) 10349 0 R (_function_8cpp_source_l00035) 10350 0 R (_function_8cpp_source_l00036) 10351 0 R (_function_8cpp_source_l00037) 10352 0 R]
+/Limits [(_function_8cpp_source_l00032) (_function_8cpp_source_l00037)]
+>>
+endobj
+13842 0 obj
+<<
+/Names [(_function_8cpp_source_l00038) 10353 0 R (_function_8cpp_source_l00039) 10354 0 R (_function_8cpp_source_l00040) 10355 0 R (_function_8cpp_source_l00041) 10356 0 R (_function_8cpp_source_l00042) 10357 0 R (_function_8cpp_source_l00043) 10358 0 R]
+/Limits [(_function_8cpp_source_l00038) (_function_8cpp_source_l00043)]
+>>
+endobj
+13843 0 obj
+<<
+/Names [(_function_8cpp_source_l00044) 10359 0 R (_function_8cpp_source_l00045) 10360 0 R (_function_8cpp_source_l00046) 5241 0 R (_function_8cpp_source_l00047) 10361 0 R (_function_8cpp_source_l00048) 10362 0 R (_function_8cpp_source_l00049) 10363 0 R]
+/Limits [(_function_8cpp_source_l00044) (_function_8cpp_source_l00049)]
+>>
+endobj
+13844 0 obj
+<<
+/Names [(_function_8cpp_source_l00050) 10364 0 R (_function_8cpp_source_l00051) 10365 0 R (_function_8cpp_source_l00052) 10366 0 R (_function_8cpp_source_l00053) 10367 0 R (_function_8cpp_source_l00054) 5269 0 R (_function_8cpp_source_l00055) 10368 0 R]
+/Limits [(_function_8cpp_source_l00050) (_function_8cpp_source_l00055)]
+>>
+endobj
+13845 0 obj
+<<
+/Names [(_function_8cpp_source_l00056) 10369 0 R (_function_8cpp_source_l00057) 10370 0 R (_function_8cpp_source_l00058) 10371 0 R (_function_8cpp_source_l00059) 10372 0 R (_function_8cpp_source_l00060) 10373 0 R (_function_8cpp_source_l00061) 10374 0 R]
+/Limits [(_function_8cpp_source_l00056) (_function_8cpp_source_l00061)]
+>>
+endobj
+13846 0 obj
+<<
+/Names [(_function_8cpp_source_l00062) 10375 0 R (_function_8cpp_source_l00063) 10376 0 R (_function_8cpp_source_l00064) 10377 0 R (_function_8cpp_source_l00065) 10378 0 R (_function_8cpp_source_l00066) 10379 0 R (_function_8cpp_source_l00067) 10380 0 R]
+/Limits [(_function_8cpp_source_l00062) (_function_8cpp_source_l00067)]
+>>
+endobj
+13847 0 obj
+<<
+/Names [(_function_8cpp_source_l00068) 10381 0 R (_function_8cpp_source_l00069) 10382 0 R (_function_8cpp_source_l00070) 10383 0 R (_function_8cpp_source_l00071) 10384 0 R (_function_8cpp_source_l00072) 10385 0 R (_function_8cpp_source_l00073) 10386 0 R]
+/Limits [(_function_8cpp_source_l00068) (_function_8cpp_source_l00073)]
+>>
+endobj
+13848 0 obj
+<<
+/Names [(_function_8cpp_source_l00074) 10387 0 R (_function_8cpp_source_l00075) 10388 0 R (_function_8cpp_source_l00076) 10389 0 R (_function_8cpp_source_l00077) 10390 0 R (_function_8cpp_source_l00078) 10391 0 R (_function_8cpp_source_l00079) 10392 0 R]
+/Limits [(_function_8cpp_source_l00074) (_function_8cpp_source_l00079)]
+>>
+endobj
+13849 0 obj
+<<
+/Names [(_function_8cpp_source_l00080) 10444 0 R (_function_8cpp_source_l00081) 10445 0 R (_function_8cpp_source_l00082) 10446 0 R (_function_8cpp_source_l00083) 10447 0 R (_function_8cpp_source_l00084) 10448 0 R (_function_8cpp_source_l00085) 10449 0 R]
+/Limits [(_function_8cpp_source_l00080) (_function_8cpp_source_l00085)]
+>>
+endobj
+13850 0 obj
+<<
+/Names [(_function_8cpp_source_l00086) 10450 0 R (_function_8cpp_source_l00087) 10451 0 R (_function_8cpp_source_l00088) 10452 0 R (_function_8cpp_source_l00089) 10453 0 R (_function_8cpp_source_l00090) 10454 0 R (_function_8cpp_source_l00091) 10455 0 R]
+/Limits [(_function_8cpp_source_l00086) (_function_8cpp_source_l00091)]
+>>
+endobj
+13851 0 obj
+<<
+/Names [(_function_8cpp_source_l00092) 10456 0 R (_function_8cpp_source_l00093) 10457 0 R (_function_8cpp_source_l00094) 10458 0 R (_function_8cpp_source_l00095) 5270 0 R (_function_8cpp_source_l00096) 10459 0 R (_function_8cpp_source_l00097) 10460 0 R]
+/Limits [(_function_8cpp_source_l00092) (_function_8cpp_source_l00097)]
+>>
+endobj
+13852 0 obj
+<<
+/Names [(_function_8cpp_source_l00098) 10461 0 R (_function_8h) 3334 0 R (_function_8h_source) 5158 0 R (_function_8h_source_l00001) 10464 0 R (_function_8h_source_l00002) 10465 0 R (_function_8h_source_l00003) 10466 0 R]
+/Limits [(_function_8cpp_source_l00098) (_function_8h_source_l00003)]
+>>
+endobj
+13853 0 obj
+<<
+/Names [(_function_8h_source_l00004) 10467 0 R (_function_8h_source_l00005) 10468 0 R (_function_8h_source_l00006) 10469 0 R (_function_8h_source_l00007) 10470 0 R (_function_8h_source_l00008) 10471 0 R (_function_8h_source_l00009) 10472 0 R]
+/Limits [(_function_8h_source_l00004) (_function_8h_source_l00009)]
+>>
+endobj
+13854 0 obj
+<<
+/Names [(_function_8h_source_l00021) 5157 0 R (_function_8h_source_l00022) 10473 0 R (_function_8h_source_l00023) 10474 0 R (_function_8h_source_l00024) 10475 0 R (_function_8h_source_l00032) 10476 0 R (_function_8h_source_l00033) 10477 0 R]
+/Limits [(_function_8h_source_l00021) (_function_8h_source_l00033)]
+>>
+endobj
+13855 0 obj
+<<
+/Names [(_function_8h_source_l00041) 10478 0 R (_function_8h_source_l00042) 10479 0 R (_function_8h_source_l00056) 10480 0 R (_function_8h_source_l00057) 10481 0 R (_function_8h_source_l00063) 10482 0 R (_function_8h_source_l00064) 10560 0 R]
+/Limits [(_function_8h_source_l00041) (_function_8h_source_l00064)]
+>>
+endobj
+13856 0 obj
+<<
+/Names [(_function_8h_source_l00077) 10561 0 R (_function_8h_source_l00078) 10562 0 R (_function_8h_source_l00094) 10563 0 R (_function_8h_source_l00095) 10564 0 R (_function_8h_source_l00112) 10565 0 R (_function_8h_source_l00113) 10566 0 R]
+/Limits [(_function_8h_source_l00077) (_function_8h_source_l00113)]
+>>
+endobj
+13857 0 obj
+<<
+/Names [(_function_8h_source_l00114) 10567 0 R (_function_8h_source_l00130) 10568 0 R (_function_8h_source_l00131) 10569 0 R (_function_8h_source_l00132) 10570 0 R (_function_8h_source_l00133) 10571 0 R (_function_8h_source_l00147) 10572 0 R]
+/Limits [(_function_8h_source_l00114) (_function_8h_source_l00147)]
+>>
+endobj
+13858 0 obj
+<<
+/Names [(_function_8h_source_l00148) 10573 0 R (_function_8h_source_l00149) 10574 0 R (_function_8h_source_l00163) 10575 0 R (_function_8h_source_l00164) 10576 0 R (_function_8h_source_l00165) 10577 0 R (_function_8h_source_l00172) 10578 0 R]
+/Limits [(_function_8h_source_l00148) (_function_8h_source_l00172)]
+>>
+endobj
+13859 0 obj
+<<
+/Names [(_function_8h_source_l00173) 10579 0 R (_function_8h_source_l00183) 10580 0 R (_function_8h_source_l00184) 10581 0 R (_function_8h_source_l00196) 10582 0 R (_function_8h_source_l00197) 10583 0 R (_function_8h_source_l00215) 10584 0 R]
+/Limits [(_function_8h_source_l00173) (_function_8h_source_l00215)]
+>>
+endobj
+13860 0 obj
+<<
+/Names [(_function_8h_source_l00216) 10585 0 R (_function_8h_source_l00223) 5316 0 R (_function_8h_source_l00224) 10586 0 R (_function_8h_source_l00225) 10587 0 R (_function_8h_source_l00226) 10588 0 R (_function_8h_source_l00227) 10589 0 R]
+/Limits [(_function_8h_source_l00216) (_function_8h_source_l00227)]
+>>
+endobj
+13861 0 obj
+<<
+/Names [(_function_8h_source_l00228) 10590 0 R (_function_8h_source_l00229) 5210 0 R (_function_8h_source_l00230) 10591 0 R (_function_8h_source_l00231) 10592 0 R (_function_8h_source_l00232) 10593 0 R (_function_8h_source_l00233) 10594 0 R]
+/Limits [(_function_8h_source_l00228) (_function_8h_source_l00233)]
+>>
+endobj
+13862 0 obj
+<<
+/Names [(_function_8h_source_l00234) 5193 0 R (_function_8h_source_l00235) 10595 0 R (_function_8h_source_l00236) 10596 0 R (_function_8h_source_l00237) 10597 0 R (_function_8h_source_l00238) 10598 0 R (_function_8h_source_l00239) 10599 0 R]
+/Limits [(_function_8h_source_l00234) (_function_8h_source_l00239)]
+>>
+endobj
+13863 0 obj
+<<
+/Names [(_function_8h_source_l00240) 10600 0 R (_function_8h_source_l00241) 10601 0 R (_function_8h_source_l00242) 10602 0 R (_function_8h_source_l00243) 5211 0 R (_function_8h_source_l00244) 10603 0 R (_function_8h_source_l00245) 10604 0 R]
+/Limits [(_function_8h_source_l00240) (_function_8h_source_l00245)]
+>>
+endobj
+13864 0 obj
+<<
+/Names [(_function_8h_source_l00246) 10605 0 R (_function_8h_source_l00247) 10606 0 R (_function_8h_source_l00248) 5291 0 R (_function_8h_source_l00249) 10607 0 R (_function_8h_source_l00250) 10608 0 R (_function_8h_source_l00251) 10609 0 R]
+/Limits [(_function_8h_source_l00246) (_function_8h_source_l00251)]
+>>
+endobj
+13865 0 obj
+<<
+/Names [(_function_8h_source_l00252) 10610 0 R (_function_8h_source_l00253) 10611 0 R (_function_8h_source_l00254) 10612 0 R (_function_8h_source_l00255) 10613 0 R (_function_8h_source_l00256) 5290 0 R (_function_8h_source_l00257) 10614 0 R]
+/Limits [(_function_8h_source_l00252) (_function_8h_source_l00257)]
+>>
+endobj
+13866 0 obj
+<<
+/Names [(_function_8h_source_l00258) 10615 0 R (_function_8h_source_l00259) 10616 0 R (_function_8h_source_l00260) 10617 0 R (_function_8h_source_l00261) 10618 0 R (_function_8h_source_l00262) 10619 0 R (_function_8h_source_l00263) 10620 0 R]
+/Limits [(_function_8h_source_l00258) (_function_8h_source_l00263)]
+>>
+endobj
+13867 0 obj
+<<
+/Names [(_function_8h_source_l00264) 10621 0 R (_function_8h_source_l00265) 10622 0 R (_function_8h_source_l00266) 10623 0 R (_function_8h_source_l00267) 10624 0 R (_function_8h_source_l00268) 10625 0 R (_hasher_8cpp) 3320 0 R]
+/Limits [(_function_8h_source_l00264) (_hasher_8cpp)]
+>>
+endobj
+13868 0 obj
+<<
+/Names [(_hasher_8cpp_source) 5342 0 R (_hasher_8cpp_source_l00001) 8470 0 R (_hasher_8cpp_source_l00002) 8471 0 R (_hasher_8cpp_source_l00003) 8472 0 R (_hasher_8cpp_source_l00004) 8473 0 R (_hasher_8cpp_source_l00005) 8474 0 R]
+/Limits [(_hasher_8cpp_source) (_hasher_8cpp_source_l00005)]
+>>
+endobj
+13869 0 obj
+<<
+/Names [(_hasher_8cpp_source_l00006) 8475 0 R (_hasher_8cpp_source_l00007) 8476 0 R (_hasher_8cpp_source_l00008) 5369 0 R (_hasher_8cpp_source_l00009) 8477 0 R (_hasher_8cpp_source_l00010) 8478 0 R (_hasher_8cpp_source_l00011) 8479 0 R]
+/Limits [(_hasher_8cpp_source_l00006) (_hasher_8cpp_source_l00011)]
+>>
+endobj
+13870 0 obj
+<<
+/Names [(_hasher_8cpp_source_l00012) 8480 0 R (_hasher_8cpp_source_l00013) 8481 0 R (_hasher_8cpp_source_l00014) 8482 0 R (_hasher_8cpp_source_l00015) 8483 0 R (_hasher_8cpp_source_l00016) 8484 0 R (_hasher_8cpp_source_l00017) 8485 0 R]
+/Limits [(_hasher_8cpp_source_l00012) (_hasher_8cpp_source_l00017)]
+>>
+endobj
+13871 0 obj
+<<
+/Names [(_hasher_8cpp_source_l00018) 8486 0 R (_hasher_8cpp_source_l00019) 5341 0 R (_hasher_8cpp_source_l00020) 8487 0 R (_hasher_8cpp_source_l00021) 8488 0 R (_hasher_8cpp_source_l00022) 8489 0 R (_hasher_8cpp_source_l00023) 8490 0 R]
+/Limits [(_hasher_8cpp_source_l00018) (_hasher_8cpp_source_l00023)]
+>>
+endobj
+13872 0 obj
+<<
+/Names [(_hasher_8cpp_source_l00024) 5343 0 R (_hasher_8cpp_source_l00025) 8491 0 R (_hasher_8cpp_source_l00026) 8492 0 R (_hasher_8cpp_source_l00027) 8493 0 R (_hasher_8cpp_source_l00028) 5351 0 R (_hasher_8cpp_source_l00029) 8494 0 R]
+/Limits [(_hasher_8cpp_source_l00024) (_hasher_8cpp_source_l00029)]
+>>
+endobj
+13873 0 obj
+<<
+/Names [(_hasher_8cpp_source_l00030) 8495 0 R (_hasher_8cpp_source_l00031) 8496 0 R (_hasher_8cpp_source_l00032) 8497 0 R (_hasher_8cpp_source_l00033) 5368 0 R (_hasher_8cpp_source_l00034) 8498 0 R (_hasher_8cpp_source_l00035) 8499 0 R]
+/Limits [(_hasher_8cpp_source_l00030) (_hasher_8cpp_source_l00035)]
+>>
+endobj
+13874 0 obj
+<<
+/Names [(_hasher_8cpp_source_l00036) 8500 0 R (_hasher_8cpp_source_l00037) 8501 0 R (_hasher_8cpp_source_l00038) 5395 0 R (_hasher_8cpp_source_l00039) 8502 0 R (_hasher_8cpp_source_l00040) 8503 0 R (_hasher_8cpp_source_l00041) 8504 0 R]
+/Limits [(_hasher_8cpp_source_l00036) (_hasher_8cpp_source_l00041)]
+>>
+endobj
+13875 0 obj
+<<
+/Names [(_hasher_8cpp_source_l00042) 8505 0 R (_hasher_8cpp_source_l00043) 5352 0 R (_hasher_8cpp_source_l00044) 8506 0 R (_hasher_8cpp_source_l00045) 8507 0 R (_hasher_8cpp_source_l00046) 8508 0 R (_hasher_8cpp_source_l00047) 8509 0 R]
+/Limits [(_hasher_8cpp_source_l00042) (_hasher_8cpp_source_l00047)]
+>>
+endobj
+13876 0 obj
+<<
+/Names [(_hasher_8cpp_source_l00048) 8510 0 R (_hasher_8cpp_source_l00049) 8511 0 R (_hasher_8cpp_source_l00050) 8512 0 R (_hasher_8cpp_source_l00051) 8513 0 R (_hasher_8cpp_source_l00052) 8514 0 R (_hasher_8cpp_source_l00053) 8515 0 R]
+/Limits [(_hasher_8cpp_source_l00048) (_hasher_8cpp_source_l00053)]
+>>
+endobj
+13877 0 obj
+<<
+/Names [(_hasher_8cpp_source_l00054) 8516 0 R (_hasher_8cpp_source_l00055) 8517 0 R (_hasher_8cpp_source_l00056) 8518 0 R (_hasher_8cpp_source_l00057) 8519 0 R (_hasher_8cpp_source_l00058) 8520 0 R (_hasher_8h) 3321 0 R]
+/Limits [(_hasher_8cpp_source_l00054) (_hasher_8h)]
+>>
+endobj
+13878 0 obj
+<<
+/Names [(_hasher_8h_source) 5340 0 R (_hasher_8h_source_l00001) 8539 0 R (_hasher_8h_source_l00002) 8540 0 R (_hasher_8h_source_l00003) 8541 0 R (_hasher_8h_source_l00004) 8542 0 R (_hasher_8h_source_l00005) 8543 0 R]
+/Limits [(_hasher_8h_source) (_hasher_8h_source_l00005)]
+>>
+endobj
+13879 0 obj
+<<
+/Names [(_hasher_8h_source_l00006) 8544 0 R (_hasher_8h_source_l00007) 8545 0 R (_hasher_8h_source_l00014) 5339 0 R (_hasher_8h_source_l00015) 8546 0 R (_hasher_8h_source_l00016) 8547 0 R (_hasher_8h_source_l00022) 8548 0 R]
+/Limits [(_hasher_8h_source_l00006) (_hasher_8h_source_l00022)]
+>>
+endobj
+13880 0 obj
+<<
+/Names [(_hasher_8h_source_l00023) 8549 0 R (_hasher_8h_source_l00029) 8550 0 R (_hasher_8h_source_l00030) 8551 0 R (_hasher_8h_source_l00036) 8552 0 R (_hasher_8h_source_l00037) 8553 0 R (_hasher_8h_source_l00047) 8554 0 R]
+/Limits [(_hasher_8h_source_l00023) (_hasher_8h_source_l00047)]
+>>
+endobj
+13881 0 obj
+<<
+/Names [(_hasher_8h_source_l00048) 8555 0 R (_hasher_8h_source_l00057) 8556 0 R (_hasher_8h_source_l00058) 8557 0 R (_hasher_8h_source_l00064) 8558 0 R (_hasher_8h_source_l00065) 8559 0 R (_hasher_8h_source_l00072) 8560 0 R]
+/Limits [(_hasher_8h_source_l00048) (_hasher_8h_source_l00072)]
+>>
+endobj
+13882 0 obj
+<<
+/Names [(_hasher_8h_source_l00073) 8561 0 R (_hasher_8h_source_l00083) 8562 0 R (_hasher_8h_source_l00084) 8563 0 R (_hasher_8h_source_l00095) 8564 0 R (_hasher_8h_source_l00096) 8565 0 R (_hasher_8h_source_l00097) 8566 0 R]
+/Limits [(_hasher_8h_source_l00073) (_hasher_8h_source_l00097)]
+>>
+endobj
+13883 0 obj
+<<
+/Names [(_hasher_8h_source_l00098) 8567 0 R (_hasher_8h_source_l00099) 5367 0 R (_hasher_8h_source_l00100) 8568 0 R (_hasher_8h_source_l00101) 8569 0 R (_hasher_8h_source_l00102) 8570 0 R (_hasher_8h_source_l00103) 8571 0 R]
+/Limits [(_hasher_8h_source_l00098) (_hasher_8h_source_l00103)]
+>>
+endobj
+13884 0 obj
+<<
+/Names [(_hasher_8h_source_l00104) 8572 0 R (_hasher_8h_source_l00105) 8573 0 R (_hasher_8h_source_l00106) 8574 0 R (_hasher_8h_source_l00107) 8575 0 R (_local_exception_8cpp) 3308 0 R (_local_exception_8cpp_source) 4756 0 R]
+/Limits [(_hasher_8h_source_l00104) (_local_exception_8cpp_source)]
+>>
+endobj
+13885 0 obj
+<<
+/Names [(_local_exception_8cpp_source_l00001) 7424 0 R (_local_exception_8cpp_source_l00002) 7425 0 R (_local_exception_8cpp_source_l00003) 7426 0 R (_local_exception_8cpp_source_l00004) 7427 0 R (_local_exception_8cpp_source_l00005) 4755 0 R (_local_exception_8cpp_source_l00006) 7428 0 R]
+/Limits [(_local_exception_8cpp_source_l00001) (_local_exception_8cpp_source_l00006)]
+>>
+endobj
+13886 0 obj
+<<
+/Names [(_local_exception_8cpp_source_l00007) 7429 0 R (_local_exception_8cpp_source_l00008) 7430 0 R (_local_exception_8cpp_source_l00009) 4781 0 R (_local_exception_8cpp_source_l00010) 7431 0 R (_local_exception_8cpp_source_l00011) 7432 0 R (_local_exception_8cpp_source_l00012) 7433 0 R]
+/Limits [(_local_exception_8cpp_source_l00007) (_local_exception_8cpp_source_l00012)]
+>>
+endobj
+13887 0 obj
+<<
+/Names [(_local_exception_8cpp_source_l00013) 7434 0 R (_local_exception_8cpp_source_l00014) 4782 0 R (_local_exception_8cpp_source_l00015) 7435 0 R (_local_exception_8cpp_source_l00016) 7436 0 R (_local_exception_8cpp_source_l00017) 7437 0 R (_local_exception_8cpp_source_l00018) 7438 0 R]
+/Limits [(_local_exception_8cpp_source_l00013) (_local_exception_8cpp_source_l00018)]
+>>
+endobj
+13888 0 obj
+<<
+/Names [(_local_exception_8h) 3309 0 R (_local_exception_8h_source) 4754 0 R (_local_exception_8h_source_l00001) 7441 0 R (_local_exception_8h_source_l00002) 7442 0 R (_local_exception_8h_source_l00003) 7443 0 R (_local_exception_8h_source_l00004) 7444 0 R]
+/Limits [(_local_exception_8h) (_local_exception_8h_source_l00004)]
+>>
+endobj
+13889 0 obj
+<<
+/Names [(_local_exception_8h_source_l00005) 7445 0 R (_local_exception_8h_source_l00006) 7446 0 R (_local_exception_8h_source_l00007) 7447 0 R (_local_exception_8h_source_l00013) 4753 0 R (_local_exception_8h_source_l00014) 7448 0 R (_local_exception_8h_source_l00015) 7449 0 R]
+/Limits [(_local_exception_8h_source_l00005) (_local_exception_8h_source_l00015)]
+>>
+endobj
+13890 0 obj
+<<
+/Names [(_local_exception_8h_source_l00016) 7450 0 R (_local_exception_8h_source_l00022) 7473 0 R (_local_exception_8h_source_l00023) 7474 0 R (_local_exception_8h_source_l00024) 7475 0 R (_local_exception_8h_source_l00032) 7476 0 R (_local_exception_8h_source_l00033) 7477 0 R]
+/Limits [(_local_exception_8h_source_l00016) (_local_exception_8h_source_l00033)]
+>>
+endobj
+13891 0 obj
+<<
+/Names [(_local_exception_8h_source_l00040) 7478 0 R (_local_exception_8h_source_l00041) 7479 0 R (_local_exception_8h_source_l00047) 7480 0 R (_local_exception_8h_source_l00048) 7481 0 R (_local_exception_8h_source_l00055) 4783 0 R (_local_exception_8h_source_l00056) 7482 0 R]
+/Limits [(_local_exception_8h_source_l00040) (_local_exception_8h_source_l00056)]
+>>
+endobj
+13892 0 obj
+<<
+/Names [(_local_exception_8h_source_l00057) 7483 0 R (_local_exception_8h_source_l00058) 7484 0 R (_local_exception_8h_source_l00059) 7485 0 R (_local_exception_8h_source_l00060) 7486 0 R (_m_q_t_t_2_configuration_8cpp) 3305 0 R (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) 3592 0 R]
+/Limits [(_local_exception_8h_source_l00057) (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d)]
+>>
+endobj
+13893 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source) 3962 0 R (_m_q_t_t_2_configuration_8cpp_source_l00001) 7012 0 R (_m_q_t_t_2_configuration_8cpp_source_l00002) 7013 0 R (_m_q_t_t_2_configuration_8cpp_source_l00003) 7014 0 R (_m_q_t_t_2_configuration_8cpp_source_l00004) 7015 0 R (_m_q_t_t_2_configuration_8cpp_source_l00005) 7016 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source) (_m_q_t_t_2_configuration_8cpp_source_l00005)]
+>>
+endobj
+13894 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00006) 6997 0 R (_m_q_t_t_2_configuration_8cpp_source_l00007) 7017 0 R (_m_q_t_t_2_configuration_8cpp_source_l00008) 3961 0 R (_m_q_t_t_2_configuration_8cpp_source_l00009) 7018 0 R (_m_q_t_t_2_configuration_8cpp_source_l00010) 7019 0 R (_m_q_t_t_2_configuration_8cpp_source_l00011) 7020 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00006) (_m_q_t_t_2_configuration_8cpp_source_l00011)]
+>>
+endobj
+13895 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00012) 7021 0 R (_m_q_t_t_2_configuration_8cpp_source_l00013) 7022 0 R (_m_q_t_t_2_configuration_8cpp_source_l00014) 7023 0 R (_m_q_t_t_2_configuration_8cpp_source_l00015) 7024 0 R (_m_q_t_t_2_configuration_8cpp_source_l00016) 7025 0 R (_m_q_t_t_2_configuration_8cpp_source_l00017) 7026 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00012) (_m_q_t_t_2_configuration_8cpp_source_l00017)]
+>>
+endobj
+13896 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00018) 7027 0 R (_m_q_t_t_2_configuration_8cpp_source_l00019) 7028 0 R (_m_q_t_t_2_configuration_8cpp_source_l00020) 7029 0 R (_m_q_t_t_2_configuration_8cpp_source_l00021) 7030 0 R (_m_q_t_t_2_configuration_8cpp_source_l00022) 7031 0 R (_m_q_t_t_2_configuration_8cpp_source_l00023) 7032 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00018) (_m_q_t_t_2_configuration_8cpp_source_l00023)]
+>>
+endobj
+13897 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00024) 7033 0 R (_m_q_t_t_2_configuration_8cpp_source_l00025) 7034 0 R (_m_q_t_t_2_configuration_8cpp_source_l00026) 7035 0 R (_m_q_t_t_2_configuration_8cpp_source_l00027) 3977 0 R (_m_q_t_t_2_configuration_8cpp_source_l00028) 7036 0 R (_m_q_t_t_2_configuration_8cpp_source_l00029) 7037 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00024) (_m_q_t_t_2_configuration_8cpp_source_l00029)]
+>>
+endobj
+13898 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00030) 7038 0 R (_m_q_t_t_2_configuration_8cpp_source_l00031) 7039 0 R (_m_q_t_t_2_configuration_8cpp_source_l00032) 7040 0 R (_m_q_t_t_2_configuration_8cpp_source_l00033) 7041 0 R (_m_q_t_t_2_configuration_8cpp_source_l00034) 7042 0 R (_m_q_t_t_2_configuration_8cpp_source_l00035) 7043 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00030) (_m_q_t_t_2_configuration_8cpp_source_l00035)]
+>>
+endobj
+13899 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00036) 7044 0 R (_m_q_t_t_2_configuration_8cpp_source_l00037) 7045 0 R (_m_q_t_t_2_configuration_8cpp_source_l00038) 7046 0 R (_m_q_t_t_2_configuration_8cpp_source_l00039) 7047 0 R (_m_q_t_t_2_configuration_8cpp_source_l00040) 7048 0 R (_m_q_t_t_2_configuration_8cpp_source_l00041) 7049 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00036) (_m_q_t_t_2_configuration_8cpp_source_l00041)]
+>>
+endobj
+13900 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00042) 7050 0 R (_m_q_t_t_2_configuration_8cpp_source_l00043) 7051 0 R (_m_q_t_t_2_configuration_8cpp_source_l00044) 7052 0 R (_m_q_t_t_2_configuration_8cpp_source_l00045) 7053 0 R (_m_q_t_t_2_configuration_8cpp_source_l00046) 7054 0 R (_m_q_t_t_2_configuration_8cpp_source_l00047) 7055 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00042) (_m_q_t_t_2_configuration_8cpp_source_l00047)]
+>>
+endobj
+13901 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00048) 7056 0 R (_m_q_t_t_2_configuration_8cpp_source_l00049) 3978 0 R (_m_q_t_t_2_configuration_8cpp_source_l00050) 7057 0 R (_m_q_t_t_2_configuration_8cpp_source_l00051) 7058 0 R (_m_q_t_t_2_configuration_8cpp_source_l00052) 7059 0 R (_m_q_t_t_2_configuration_8cpp_source_l00053) 3979 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00048) (_m_q_t_t_2_configuration_8cpp_source_l00053)]
+>>
+endobj
+13902 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00054) 7060 0 R (_m_q_t_t_2_configuration_8cpp_source_l00055) 7061 0 R (_m_q_t_t_2_configuration_8cpp_source_l00056) 7062 0 R (_m_q_t_t_2_configuration_8cpp_source_l00057) 7063 0 R (_m_q_t_t_2_configuration_8cpp_source_l00058) 7064 0 R (_m_q_t_t_2_configuration_8cpp_source_l00059) 7065 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00054) (_m_q_t_t_2_configuration_8cpp_source_l00059)]
+>>
+endobj
+13903 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00060) 7066 0 R (_m_q_t_t_2_configuration_8cpp_source_l00061) 7067 0 R (_m_q_t_t_2_configuration_8cpp_source_l00062) 7068 0 R (_m_q_t_t_2_configuration_8cpp_source_l00063) 7069 0 R (_m_q_t_t_2_configuration_8cpp_source_l00064) 7070 0 R (_m_q_t_t_2_configuration_8cpp_source_l00065) 7071 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00060) (_m_q_t_t_2_configuration_8cpp_source_l00065)]
+>>
+endobj
+13904 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00066) 7072 0 R (_m_q_t_t_2_configuration_8cpp_source_l00067) 7073 0 R (_m_q_t_t_2_configuration_8cpp_source_l00068) 7074 0 R (_m_q_t_t_2_configuration_8cpp_source_l00069) 7075 0 R (_m_q_t_t_2_configuration_8cpp_source_l00070) 7076 0 R (_m_q_t_t_2_configuration_8cpp_source_l00071) 7077 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00066) (_m_q_t_t_2_configuration_8cpp_source_l00071)]
+>>
+endobj
+13905 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00072) 7078 0 R (_m_q_t_t_2_configuration_8cpp_source_l00073) 7079 0 R (_m_q_t_t_2_configuration_8cpp_source_l00074) 7080 0 R (_m_q_t_t_2_configuration_8cpp_source_l00075) 7081 0 R (_m_q_t_t_2_configuration_8cpp_source_l00076) 7082 0 R (_m_q_t_t_2_configuration_8cpp_source_l00077) 7083 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00072) (_m_q_t_t_2_configuration_8cpp_source_l00077)]
+>>
+endobj
+13906 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00078) 7084 0 R (_m_q_t_t_2_configuration_8cpp_source_l00079) 7085 0 R (_m_q_t_t_2_configuration_8cpp_source_l00080) 7086 0 R (_m_q_t_t_2_configuration_8cpp_source_l00081) 7087 0 R (_m_q_t_t_2_configuration_8cpp_source_l00082) 7088 0 R (_m_q_t_t_2_configuration_8cpp_source_l00083) 7110 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00078) (_m_q_t_t_2_configuration_8cpp_source_l00083)]
+>>
+endobj
+13907 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00084) 7111 0 R (_m_q_t_t_2_configuration_8cpp_source_l00085) 7112 0 R (_m_q_t_t_2_configuration_8cpp_source_l00086) 7113 0 R (_m_q_t_t_2_configuration_8cpp_source_l00087) 7114 0 R (_m_q_t_t_2_configuration_8cpp_source_l00088) 7115 0 R (_m_q_t_t_2_configuration_8cpp_source_l00089) 7116 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00084) (_m_q_t_t_2_configuration_8cpp_source_l00089)]
+>>
+endobj
+13908 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8cpp_source_l00090) 7117 0 R (_m_q_t_t_2_configuration_8h) 3306 0 R (_m_q_t_t_2_configuration_8h_source) 3960 0 R (_m_q_t_t_2_configuration_8h_source_l00001) 7191 0 R (_m_q_t_t_2_configuration_8h_source_l00002) 7192 0 R (_m_q_t_t_2_configuration_8h_source_l00003) 7193 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00090) (_m_q_t_t_2_configuration_8h_source_l00003)]
+>>
+endobj
+13909 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8h_source_l00004) 7194 0 R (_m_q_t_t_2_configuration_8h_source_l00005) 7195 0 R (_m_q_t_t_2_configuration_8h_source_l00006) 7196 0 R (_m_q_t_t_2_configuration_8h_source_l00013) 3959 0 R (_m_q_t_t_2_configuration_8h_source_l00014) 7197 0 R (_m_q_t_t_2_configuration_8h_source_l00015) 7198 0 R]
+/Limits [(_m_q_t_t_2_configuration_8h_source_l00004) (_m_q_t_t_2_configuration_8h_source_l00015)]
+>>
+endobj
+13910 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8h_source_l00022) 4000 0 R (_m_q_t_t_2_configuration_8h_source_l00023) 7199 0 R (_m_q_t_t_2_configuration_8h_source_l00030) 4022 0 R (_m_q_t_t_2_configuration_8h_source_l00031) 7200 0 R (_m_q_t_t_2_configuration_8h_source_l00039) 4046 0 R (_m_q_t_t_2_configuration_8h_source_l00040) 7201 0 R]
+/Limits [(_m_q_t_t_2_configuration_8h_source_l00022) (_m_q_t_t_2_configuration_8h_source_l00040)]
+>>
+endobj
+13911 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8h_source_l00047) 4020 0 R (_m_q_t_t_2_configuration_8h_source_l00048) 7202 0 R (_m_q_t_t_2_configuration_8h_source_l00055) 3998 0 R (_m_q_t_t_2_configuration_8h_source_l00056) 7203 0 R (_m_q_t_t_2_configuration_8h_source_l00064) 4044 0 R (_m_q_t_t_2_configuration_8h_source_l00065) 7204 0 R]
+/Limits [(_m_q_t_t_2_configuration_8h_source_l00047) (_m_q_t_t_2_configuration_8h_source_l00065)]
+>>
+endobj
+13912 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8h_source_l00072) 4018 0 R (_m_q_t_t_2_configuration_8h_source_l00073) 7205 0 R (_m_q_t_t_2_configuration_8h_source_l00081) 4019 0 R (_m_q_t_t_2_configuration_8h_source_l00082) 7206 0 R (_m_q_t_t_2_configuration_8h_source_l00090) 3999 0 R (_m_q_t_t_2_configuration_8h_source_l00091) 7207 0 R]
+/Limits [(_m_q_t_t_2_configuration_8h_source_l00072) (_m_q_t_t_2_configuration_8h_source_l00091)]
+>>
+endobj
+13913 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8h_source_l00099) 4045 0 R (_m_q_t_t_2_configuration_8h_source_l00100) 7208 0 R (_m_q_t_t_2_configuration_8h_source_l00107) 4047 0 R (_m_q_t_t_2_configuration_8h_source_l00108) 7209 0 R (_m_q_t_t_2_configuration_8h_source_l00116) 4065 0 R (_m_q_t_t_2_configuration_8h_source_l00117) 7210 0 R]
+/Limits [(_m_q_t_t_2_configuration_8h_source_l00099) (_m_q_t_t_2_configuration_8h_source_l00117)]
+>>
+endobj
+13914 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8h_source_l00124) 4021 0 R (_m_q_t_t_2_configuration_8h_source_l00125) 7211 0 R (_m_q_t_t_2_configuration_8h_source_l00133) 3997 0 R (_m_q_t_t_2_configuration_8h_source_l00134) 7212 0 R (_m_q_t_t_2_configuration_8h_source_l00140) 7213 0 R (_m_q_t_t_2_configuration_8h_source_l00141) 7214 0 R]
+/Limits [(_m_q_t_t_2_configuration_8h_source_l00124) (_m_q_t_t_2_configuration_8h_source_l00141)]
+>>
+endobj
+13915 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8h_source_l00149) 7215 0 R (_m_q_t_t_2_configuration_8h_source_l00150) 7216 0 R (_m_q_t_t_2_configuration_8h_source_l00156) 7217 0 R (_m_q_t_t_2_configuration_8h_source_l00157) 7218 0 R (_m_q_t_t_2_configuration_8h_source_l00164) 7219 0 R (_m_q_t_t_2_configuration_8h_source_l00165) 7220 0 R]
+/Limits [(_m_q_t_t_2_configuration_8h_source_l00149) (_m_q_t_t_2_configuration_8h_source_l00165)]
+>>
+endobj
+13916 0 obj
+<<
+/Names [(_m_q_t_t_2_configuration_8h_source_l00166) 7221 0 R (_m_q_t_t_2constants_8h) 3307 0 R (_m_q_t_t_2constants_8h_ac50762666aa00bd3a4308158510f1748) 7267 0 R (_m_q_t_t_2constants_8h_source) 7278 0 R (_m_q_t_t_2constants_8h_source_l00001) 7279 0 R (_m_q_t_t_2constants_8h_source_l00007) 7280 0 R]
+/Limits [(_m_q_t_t_2_configuration_8h_source_l00166) (_m_q_t_t_2constants_8h_source_l00007)]
+>>
+endobj
+13917 0 obj
+<<
+/Names [(_m_q_t_t_2constants_8h_source_l00008) 7281 0 R (_m_q_t_t_2constants_8h_source_l00009) 7282 0 R (_m_q_t_t_2constants_8h_source_l00010) 7283 0 R (_m_q_t_t_2constants_8h_source_l00011) 7284 0 R (_m_q_t_t_2constants_8h_source_l00012) 7285 0 R (_m_q_t_t_2constants_8h_source_l00013) 7286 0 R]
+/Limits [(_m_q_t_t_2constants_8h_source_l00008) (_m_q_t_t_2constants_8h_source_l00013)]
+>>
+endobj
+13918 0 obj
+<<
+/Names [(_m_q_t_t_2constants_8h_source_l00014) 7287 0 R (_m_q_t_t_2constants_8h_source_l00015) 7288 0 R (_m_q_t_t_2constants_8h_source_l00016) 7289 0 R (_m_q_t_t_2constants_8h_source_l00017) 7290 0 R (_m_q_t_t_2constants_8h_source_l00018) 7291 0 R (_m_q_t_t_2constants_8h_source_l00019) 7292 0 R]
+/Limits [(_m_q_t_t_2constants_8h_source_l00014) (_m_q_t_t_2constants_8h_source_l00019)]
+>>
+endobj
+13919 0 obj
+<<
+/Names [(_m_q_t_t_2constants_8h_source_l00020) 7293 0 R (_m_q_t_t_2constants_8h_source_l00021) 7294 0 R (_m_q_t_t_2constants_8h_source_l00022) 7295 0 R (_m_q_t_t_2constants_8h_source_l00023) 7296 0 R (_message_container_8h) 3310 0 R (_message_container_8h_source) 5399 0 R]
+/Limits [(_m_q_t_t_2constants_8h_source_l00020) (_message_container_8h_source)]
+>>
+endobj
+13920 0 obj
+<<
+/Names [(_message_container_8h_source_l00001) 7489 0 R (_message_container_8h_source_l00002) 7490 0 R (_message_container_8h_source_l00003) 7491 0 R (_message_container_8h_source_l00004) 7492 0 R (_message_container_8h_source_l00010) 5398 0 R (_message_container_8h_source_l00011) 7493 0 R]
+/Limits [(_message_container_8h_source_l00001) (_message_container_8h_source_l00011)]
+>>
+endobj
+13921 0 obj
+<<
+/Names [(_message_container_8h_source_l00017) 5434 0 R (_message_container_8h_source_l00018) 7494 0 R (_message_container_8h_source_l00024) 5400 0 R (_message_container_8h_source_l00025) 7495 0 R (_message_container_8h_source_l00032) 5432 0 R (_message_container_8h_source_l00033) 7496 0 R]
+/Limits [(_message_container_8h_source_l00017) (_message_container_8h_source_l00033)]
+>>
+endobj
+13922 0 obj
+<<
+/Names [(_message_container_8h_source_l00039) 5433 0 R (_message_container_8h_source_l00040) 7497 0 R (_message_container_8h_source_l00041) 7498 0 R (_message_container_8h_source_l00042) 7499 0 R (_object_8cpp) 3337 0 R (_object_8cpp_source) 5502 0 R]
+/Limits [(_message_container_8h_source_l00039) (_object_8cpp_source)]
+>>
+endobj
+13923 0 obj
+<<
+/Names [(_object_8cpp_source_l00001) 10943 0 R (_object_8cpp_source_l00002) 10944 0 R (_object_8cpp_source_l00003) 10945 0 R (_object_8cpp_source_l00004) 5501 0 R (_object_8cpp_source_l00005) 10946 0 R (_object_8cpp_source_l00006) 10947 0 R]
+/Limits [(_object_8cpp_source_l00001) (_object_8cpp_source_l00006)]
+>>
+endobj
+13924 0 obj
+<<
+/Names [(_object_8cpp_source_l00007) 10948 0 R (_object_8cpp_source_l00008) 10949 0 R (_object_8cpp_source_l00009) 10950 0 R (_object_8cpp_source_l00010) 10951 0 R (_object_8cpp_source_l00011) 10952 0 R (_object_8cpp_source_l00012) 10953 0 R]
+/Limits [(_object_8cpp_source_l00007) (_object_8cpp_source_l00012)]
+>>
+endobj
+13925 0 obj
+<<
+/Names [(_object_8cpp_source_l00013) 10954 0 R (_object_8cpp_source_l00014) 5503 0 R (_object_8cpp_source_l00015) 10955 0 R (_object_8cpp_source_l00016) 10996 0 R (_object_8cpp_source_l00017) 10997 0 R (_object_8cpp_source_l00018) 5531 0 R]
+/Limits [(_object_8cpp_source_l00013) (_object_8cpp_source_l00018)]
+>>
+endobj
+13926 0 obj
+<<
+/Names [(_object_8cpp_source_l00019) 10998 0 R (_object_8cpp_source_l00020) 10999 0 R (_object_8cpp_source_l00021) 11000 0 R (_object_8cpp_source_l00022) 11001 0 R (_object_8cpp_source_l00023) 11002 0 R (_object_8cpp_source_l00024) 5640 0 R]
+/Limits [(_object_8cpp_source_l00019) (_object_8cpp_source_l00024)]
+>>
+endobj
+13927 0 obj
+<<
+/Names [(_object_8cpp_source_l00025) 11003 0 R (_object_8cpp_source_l00026) 11004 0 R (_object_8cpp_source_l00027) 11005 0 R (_object_8cpp_source_l00028) 11006 0 R (_object_8cpp_source_l00029) 11007 0 R (_object_8cpp_source_l00030) 11008 0 R]
+/Limits [(_object_8cpp_source_l00025) (_object_8cpp_source_l00030)]
+>>
+endobj
+13928 0 obj
+<<
+/Names [(_object_8cpp_source_l00031) 11009 0 R (_object_8cpp_source_l00032) 11010 0 R (_object_8cpp_source_l00033) 11011 0 R (_object_8cpp_source_l00034) 11012 0 R (_object_8cpp_source_l00035) 11013 0 R (_object_8cpp_source_l00036) 11014 0 R]
+/Limits [(_object_8cpp_source_l00031) (_object_8cpp_source_l00036)]
+>>
+endobj
+13929 0 obj
+<<
+/Names [(_object_8cpp_source_l00037) 11015 0 R (_object_8cpp_source_l00038) 11016 0 R (_object_8cpp_source_l00039) 11017 0 R (_object_8cpp_source_l00040) 5598 0 R (_object_8cpp_source_l00041) 11018 0 R (_object_8cpp_source_l00042) 11019 0 R]
+/Limits [(_object_8cpp_source_l00037) (_object_8cpp_source_l00042)]
+>>
+endobj
+13930 0 obj
+<<
+/Names [(_object_8cpp_source_l00043) 11020 0 R (_object_8cpp_source_l00044) 5596 0 R (_object_8cpp_source_l00045) 11021 0 R (_object_8cpp_source_l00046) 11022 0 R (_object_8cpp_source_l00047) 11023 0 R (_object_8cpp_source_l00048) 11024 0 R]
+/Limits [(_object_8cpp_source_l00043) (_object_8cpp_source_l00048)]
+>>
+endobj
+13931 0 obj
+<<
+/Names [(_object_8cpp_source_l00049) 5639 0 R (_object_8cpp_source_l00050) 11025 0 R (_object_8cpp_source_l00051) 11026 0 R (_object_8cpp_source_l00052) 11027 0 R (_object_8cpp_source_l00053) 11028 0 R (_object_8cpp_source_l00054) 5567 0 R]
+/Limits [(_object_8cpp_source_l00049) (_object_8cpp_source_l00054)]
+>>
+endobj
+13932 0 obj
+<<
+/Names [(_object_8cpp_source_l00055) 11029 0 R (_object_8cpp_source_l00056) 11030 0 R (_object_8cpp_source_l00057) 11031 0 R (_object_8cpp_source_l00058) 11032 0 R (_object_8cpp_source_l00059) 11033 0 R (_object_8cpp_source_l00060) 11034 0 R]
+/Limits [(_object_8cpp_source_l00055) (_object_8cpp_source_l00060)]
+>>
+endobj
+13933 0 obj
+<<
+/Names [(_object_8cpp_source_l00061) 11035 0 R (_object_8cpp_source_l00062) 11036 0 R (_object_8cpp_source_l00063) 5569 0 R (_object_8cpp_source_l00064) 11037 0 R (_object_8cpp_source_l00065) 11038 0 R (_object_8cpp_source_l00066) 11039 0 R]
+/Limits [(_object_8cpp_source_l00061) (_object_8cpp_source_l00066)]
+>>
+endobj
+13934 0 obj
+<<
+/Names [(_object_8cpp_source_l00067) 11040 0 R (_object_8cpp_source_l00068) 11041 0 R (_object_8cpp_source_l00069) 11042 0 R (_object_8cpp_source_l00070) 11043 0 R (_object_8cpp_source_l00071) 11044 0 R (_object_8cpp_source_l00072) 11045 0 R]
+/Limits [(_object_8cpp_source_l00067) (_object_8cpp_source_l00072)]
+>>
+endobj
+13935 0 obj
+<<
+/Names [(_object_8cpp_source_l00073) 11046 0 R (_object_8cpp_source_l00074) 11047 0 R (_object_8cpp_source_l00075) 5533 0 R (_object_8cpp_source_l00076) 11048 0 R (_object_8cpp_source_l00077) 11049 0 R (_object_8cpp_source_l00078) 11050 0 R]
+/Limits [(_object_8cpp_source_l00073) (_object_8cpp_source_l00078)]
+>>
+endobj
+13936 0 obj
+<<
+/Names [(_object_8cpp_source_l00079) 11051 0 R (_object_8cpp_source_l00080) 11052 0 R (_object_8cpp_source_l00081) 11053 0 R (_object_8cpp_source_l00082) 11054 0 R (_object_8h) 3338 0 R (_object_8h_source) 5487 0 R]
+/Limits [(_object_8cpp_source_l00079) (_object_8h_source)]
+>>
+endobj
+13937 0 obj
+<<
+/Names [(_object_8h_source_l00001) 11084 0 R (_object_8h_source_l00002) 11085 0 R (_object_8h_source_l00003) 11086 0 R (_object_8h_source_l00004) 11087 0 R (_object_8h_source_l00005) 11088 0 R (_object_8h_source_l00006) 11089 0 R]
+/Limits [(_object_8h_source_l00001) (_object_8h_source_l00006)]
+>>
+endobj
+13938 0 obj
+<<
+/Names [(_object_8h_source_l00018) 5486 0 R (_object_8h_source_l00019) 11090 0 R (_object_8h_source_l00020) 11091 0 R (_object_8h_source_l00021) 11092 0 R (_object_8h_source_l00034) 11093 0 R (_object_8h_source_l00035) 11094 0 R]
+/Limits [(_object_8h_source_l00018) (_object_8h_source_l00035)]
+>>
+endobj
+13939 0 obj
+<<
+/Names [(_object_8h_source_l00042) 11095 0 R (_object_8h_source_l00043) 11096 0 R (_object_8h_source_l00057) 11097 0 R (_object_8h_source_l00058) 11098 0 R (_object_8h_source_l00065) 11099 0 R (_object_8h_source_l00066) 11100 0 R]
+/Limits [(_object_8h_source_l00042) (_object_8h_source_l00066)]
+>>
+endobj
+13940 0 obj
+<<
+/Names [(_object_8h_source_l00073) 11101 0 R (_object_8h_source_l00074) 11102 0 R (_object_8h_source_l00087) 11103 0 R (_object_8h_source_l00088) 11104 0 R (_object_8h_source_l00095) 11105 0 R (_object_8h_source_l00096) 11106 0 R]
+/Limits [(_object_8h_source_l00073) (_object_8h_source_l00096)]
+>>
+endobj
+13941 0 obj
+<<
+/Names [(_object_8h_source_l00108) 11107 0 R (_object_8h_source_l00109) 11108 0 R (_object_8h_source_l00124) 11109 0 R (_object_8h_source_l00125) 11110 0 R (_object_8h_source_l00141) 11111 0 R (_object_8h_source_l00142) 11112 0 R]
+/Limits [(_object_8h_source_l00108) (_object_8h_source_l00142)]
+>>
+endobj
+13942 0 obj
+<<
+/Names [(_object_8h_source_l00149) 5597 0 R (_object_8h_source_l00150) 11113 0 R (_object_8h_source_l00151) 11114 0 R (_object_8h_source_l00152) 11115 0 R (_object_8h_source_l00153) 11116 0 R (_object_8h_source_l00154) 11117 0 R]
+/Limits [(_object_8h_source_l00149) (_object_8h_source_l00154)]
+>>
+endobj
+13943 0 obj
+<<
+/Names [(_object_8h_source_l00155) 11118 0 R (_parameter_8cpp) 3339 0 R (_parameter_8cpp_source) 11119 0 R (_parameter_8cpp_source_l00001) 11120 0 R (_parameter_8h) 3370 0 R (_parameter_8h_source) 5721 0 R]
+/Limits [(_object_8h_source_l00155) (_parameter_8h_source)]
+>>
+endobj
+13944 0 obj
+<<
+/Names [(_parameter_8h_source_l00001) 11189 0 R (_parameter_8h_source_l00002) 11190 0 R (_parameter_8h_source_l00003) 11191 0 R (_parameter_8h_source_l00004) 11192 0 R (_parameter_8h_source_l00005) 11193 0 R (_parameter_8h_source_l00006) 11194 0 R]
+/Limits [(_parameter_8h_source_l00001) (_parameter_8h_source_l00006)]
+>>
+endobj
+13945 0 obj
+<<
+/Names [(_parameter_8h_source_l00007) 11195 0 R (_parameter_8h_source_l00008) 11196 0 R (_parameter_8h_source_l00009) 11197 0 R (_parameter_8h_source_l00010) 11198 0 R (_parameter_8h_source_l00011) 11199 0 R (_parameter_8h_source_l00012) 11200 0 R]
+/Limits [(_parameter_8h_source_l00007) (_parameter_8h_source_l00012)]
+>>
+endobj
+13946 0 obj
+<<
+/Names [(_parameter_8h_source_l00033) 11201 0 R (_parameter_8h_source_l00034) 5720 0 R (_parameter_8h_source_l00035) 11202 0 R (_parameter_8h_source_l00036) 11203 0 R (_parameter_8h_source_l00037) 11204 0 R (_parameter_8h_source_l00038) 11205 0 R]
+/Limits [(_parameter_8h_source_l00033) (_parameter_8h_source_l00038)]
+>>
+endobj
+13947 0 obj
+<<
+/Names [(_parameter_8h_source_l00039) 11206 0 R (_parameter_8h_source_l00040) 11207 0 R (_parameter_8h_source_l00046) 5855 0 R (_parameter_8h_source_l00047) 11208 0 R (_parameter_8h_source_l00054) 11209 0 R (_parameter_8h_source_l00055) 11210 0 R]
+/Limits [(_parameter_8h_source_l00039) (_parameter_8h_source_l00055)]
+>>
+endobj
+13948 0 obj
+<<
+/Names [(_parameter_8h_source_l00062) 11211 0 R (_parameter_8h_source_l00063) 11212 0 R (_parameter_8h_source_l00064) 11213 0 R (_parameter_8h_source_l00079) 11214 0 R (_parameter_8h_source_l00080) 11215 0 R (_parameter_8h_source_l00086) 11216 0 R]
+/Limits [(_parameter_8h_source_l00062) (_parameter_8h_source_l00086)]
+>>
+endobj
+13949 0 obj
+<<
+/Names [(_parameter_8h_source_l00087) 11217 0 R (_parameter_8h_source_l00103) 11218 0 R (_parameter_8h_source_l00104) 11219 0 R (_parameter_8h_source_l00116) 11220 0 R (_parameter_8h_source_l00117) 11221 0 R (_parameter_8h_source_l00118) 11222 0 R]
+/Limits [(_parameter_8h_source_l00087) (_parameter_8h_source_l00118)]
+>>
+endobj
+13950 0 obj
+<<
+/Names [(_parameter_8h_source_l00128) 11267 0 R (_parameter_8h_source_l00129) 11268 0 R (_parameter_8h_source_l00141) 11269 0 R (_parameter_8h_source_l00142) 11270 0 R (_parameter_8h_source_l00158) 11271 0 R (_parameter_8h_source_l00159) 11272 0 R]
+/Limits [(_parameter_8h_source_l00128) (_parameter_8h_source_l00159)]
+>>
+endobj
+13951 0 obj
+<<
+/Names [(_parameter_8h_source_l00166) 5827 0 R (_parameter_8h_source_l00167) 11273 0 R (_parameter_8h_source_l00168) 11274 0 R (_parameter_8h_source_l00169) 11275 0 R (_parameter_8h_source_l00170) 11276 0 R (_parameter_8h_source_l00192) 11277 0 R]
+/Limits [(_parameter_8h_source_l00166) (_parameter_8h_source_l00192)]
+>>
+endobj
+13952 0 obj
+<<
+/Names [(_parameter_8h_source_l00193) 11278 0 R (_parameter_8h_source_l00194) 11279 0 R (_parameter_8h_source_l00195) 11280 0 R (_parameter_8h_source_l00196) 11281 0 R (_parameter_8h_source_l00197) 11282 0 R (_parameter_8h_source_l00198) 11283 0 R]
+/Limits [(_parameter_8h_source_l00193) (_parameter_8h_source_l00198)]
+>>
+endobj
+13953 0 obj
+<<
+/Names [(_parameter_8h_source_l00199) 11284 0 R (_parameter_8h_source_l00200) 11285 0 R (_parameter_8h_source_l00201) 11286 0 R (_parameter_8h_source_l00202) 5742 0 R (_parameter_8h_source_l00203) 11287 0 R (_parameter_8h_source_l00204) 11288 0 R]
+/Limits [(_parameter_8h_source_l00199) (_parameter_8h_source_l00204)]
+>>
+endobj
+13954 0 obj
+<<
+/Names [(_parameter_8h_source_l00205) 11289 0 R (_parameter_8h_source_l00206) 11290 0 R (_parameter_8h_source_l00207) 11291 0 R (_parameter_8h_source_l00208) 11292 0 R (_parameter_8h_source_l00209) 11293 0 R (_parameter_8h_source_l00210) 11294 0 R]
+/Limits [(_parameter_8h_source_l00205) (_parameter_8h_source_l00210)]
+>>
+endobj
+13955 0 obj
+<<
+/Names [(_parameter_8h_source_l00211) 11295 0 R (_parameter_8h_source_l00212) 11296 0 R (_parameter_8h_source_l00213) 5743 0 R (_parameter_8h_source_l00214) 11297 0 R (_parameter_8h_source_l00215) 11298 0 R (_parameter_8h_source_l00216) 11299 0 R]
+/Limits [(_parameter_8h_source_l00211) (_parameter_8h_source_l00216)]
+>>
+endobj
+13956 0 obj
+<<
+/Names [(_parameter_8h_source_l00217) 11300 0 R (_parameter_8h_source_l00218) 5773 0 R (_parameter_8h_source_l00219) 11301 0 R (_parameter_8h_source_l00220) 11302 0 R (_parameter_8h_source_l00221) 11303 0 R (_parameter_8h_source_l00222) 11304 0 R]
+/Limits [(_parameter_8h_source_l00217) (_parameter_8h_source_l00222)]
+>>
+endobj
+13957 0 obj
+<<
+/Names [(_parameter_8h_source_l00223) 11305 0 R (_parameter_8h_source_l00224) 11306 0 R (_parameter_8h_source_l00225) 5826 0 R (_parameter_8h_source_l00226) 11307 0 R (_parameter_8h_source_l00227) 11308 0 R (_parameter_8h_source_l00228) 11309 0 R]
+/Limits [(_parameter_8h_source_l00223) (_parameter_8h_source_l00228)]
+>>
+endobj
+13958 0 obj
+<<
+/Names [(_parameter_8h_source_l00229) 11310 0 R (_parameter_8h_source_l00230) 11311 0 R (_parameter_8h_source_l00231) 11312 0 R (_parameter_8h_source_l00232) 11313 0 R (_parameter_8h_source_l00233) 5853 0 R (_parameter_8h_source_l00234) 11314 0 R]
+/Limits [(_parameter_8h_source_l00229) (_parameter_8h_source_l00234)]
+>>
+endobj
+13959 0 obj
+<<
+/Names [(_parameter_8h_source_l00235) 11315 0 R (_parameter_8h_source_l00236) 11316 0 R (_parameter_8h_source_l00237) 11317 0 R (_parameter_8h_source_l00238) 11318 0 R (_parameter_8h_source_l00239) 11319 0 R (_parameter_8h_source_l00240) 11320 0 R]
+/Limits [(_parameter_8h_source_l00235) (_parameter_8h_source_l00240)]
+>>
+endobj
+13960 0 obj
+<<
+/Names [(_parameter_8h_source_l00241) 11321 0 R (_parameter_8h_source_l00242) 11322 0 R (_parameter_8h_source_l00243) 5828 0 R (_parameter_8h_source_l00244) 11323 0 R (_parameter_8h_source_l00245) 11324 0 R (_parameter_8h_source_l00246) 11325 0 R]
+/Limits [(_parameter_8h_source_l00241) (_parameter_8h_source_l00246)]
+>>
+endobj
+13961 0 obj
+<<
+/Names [(_parameter_8h_source_l00247) 11326 0 R (_parameter_8h_source_l00248) 5854 0 R (_parameter_8h_source_l00249) 11327 0 R (_parameter_8h_source_l00250) 11328 0 R (_parameter_8h_source_l00251) 11329 0 R (_parameter_8h_source_l00252) 11330 0 R]
+/Limits [(_parameter_8h_source_l00247) (_parameter_8h_source_l00252)]
+>>
+endobj
+13962 0 obj
+<<
+/Names [(_parameter_8h_source_l00253) 11331 0 R (_parameter_8h_source_l00254) 5774 0 R (_parameter_8h_source_l00255) 11332 0 R (_parameter_8h_source_l00256) 11333 0 R (_parameter_8h_source_l00257) 11334 0 R (_parameter_8h_source_l00258) 11335 0 R]
+/Limits [(_parameter_8h_source_l00253) (_parameter_8h_source_l00258)]
+>>
+endobj
+13963 0 obj
+<<
+/Names [(_parameter_8h_source_l00259) 11360 0 R (_parameter_8h_source_l00260) 11361 0 R (_parameter_8h_source_l00261) 11362 0 R (_parameter_8h_source_l00262) 11363 0 R (_parameter_8h_source_l00263) 11364 0 R (_parameter_8h_source_l00264) 11365 0 R]
+/Limits [(_parameter_8h_source_l00259) (_parameter_8h_source_l00264)]
+>>
+endobj
+13964 0 obj
+<<
+/Names [(_parameter_8h_source_l00265) 11366 0 R (_parameter_8h_source_l00266) 11367 0 R (_parameter_8h_source_l00267) 11368 0 R (_parameter_8h_source_l00268) 5803 0 R (_parameter_8h_source_l00269) 11369 0 R (_parameter_8h_source_l00270) 11370 0 R]
+/Limits [(_parameter_8h_source_l00265) (_parameter_8h_source_l00270)]
+>>
+endobj
+13965 0 obj
+<<
+/Names [(_parameter_8h_source_l00271) 11371 0 R (_parameter_8h_source_l00272) 11372 0 R (_parameter_8h_source_l00273) 11373 0 R (_parameter_8h_source_l00274) 11374 0 R (_parameter_8h_source_l00275) 11375 0 R (_parameter_8h_source_l00276) 11376 0 R]
+/Limits [(_parameter_8h_source_l00271) (_parameter_8h_source_l00276)]
+>>
+endobj
+13966 0 obj
+<<
+/Names [(_parameter_8h_source_l00277) 11377 0 R (_parameter_8h_source_l00278) 11378 0 R (_parameter_8h_source_l00279) 11379 0 R (_parameter_8h_source_l00280) 11380 0 R (_parameter_8h_source_l00281) 11381 0 R (_parameter_8h_source_l00282) 11382 0 R]
+/Limits [(_parameter_8h_source_l00277) (_parameter_8h_source_l00282)]
+>>
+endobj
+13967 0 obj
+<<
+/Names [(_parameter_8h_source_l00283) 11383 0 R (_parameter_8h_source_l00284) 11384 0 R (_parameter_8h_source_l00285) 11385 0 R (_parameter_8h_source_l00286) 11386 0 R (_parameter_8h_source_l00287) 11387 0 R (_parameter_8h_source_l00288) 11388 0 R]
+/Limits [(_parameter_8h_source_l00283) (_parameter_8h_source_l00288)]
+>>
+endobj
+13968 0 obj
+<<
+/Names [(_parameter_8h_source_l00289) 11389 0 R (_parameter_8h_source_l00290) 11390 0 R (_parameter_8h_source_l00291) 11391 0 R (_parameter_8h_source_l00292) 11392 0 R (_parameter_8h_source_l00293) 11393 0 R (_parameter_8h_source_l00294) 11394 0 R]
+/Limits [(_parameter_8h_source_l00289) (_parameter_8h_source_l00294)]
+>>
+endobj
+13969 0 obj
+<<
+/Names [(_parameter_8h_source_l00295) 11395 0 R (_parameter_8h_source_l00296) 11396 0 R (_parameter_8h_source_l00297) 11397 0 R (_parameter_8h_source_l00298) 11398 0 R (_parameter_8h_source_l00299) 11399 0 R (_parameter_8h_source_l00300) 5804 0 R]
+/Limits [(_parameter_8h_source_l00295) (_parameter_8h_source_l00300)]
+>>
+endobj
+13970 0 obj
+<<
+/Names [(_parameter_8h_source_l00301) 11400 0 R (_parameter_8h_source_l00302) 11401 0 R (_parameter_8h_source_l00303) 11402 0 R (_parameter_8h_source_l00304) 11403 0 R (_parameter_8h_source_l00305) 11404 0 R (_parameter_8h_source_l00306) 11405 0 R]
+/Limits [(_parameter_8h_source_l00301) (_parameter_8h_source_l00306)]
+>>
+endobj
+13971 0 obj
+<<
+/Names [(_parameter_8h_source_l00307) 11406 0 R (_publisher_8cpp) 3311 0 R (_publisher_8cpp_a7448c142e0c36065fc7e625cd4b6b045) 7518 0 R (_publisher_8cpp_source) 5909 0 R (_publisher_8cpp_source_l00001) 7519 0 R (_publisher_8cpp_source_l00002) 7520 0 R]
+/Limits [(_parameter_8h_source_l00307) (_publisher_8cpp_source_l00002)]
+>>
+endobj
+13972 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00003) 7521 0 R (_publisher_8cpp_source_l00004) 7522 0 R (_publisher_8cpp_source_l00005) 7523 0 R (_publisher_8cpp_source_l00006) 7524 0 R (_publisher_8cpp_source_l00007) 7525 0 R (_publisher_8cpp_source_l00008) 7526 0 R]
+/Limits [(_publisher_8cpp_source_l00003) (_publisher_8cpp_source_l00008)]
+>>
+endobj
+13973 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00009) 7527 0 R (_publisher_8cpp_source_l00010) 7528 0 R (_publisher_8cpp_source_l00011) 7529 0 R (_publisher_8cpp_source_l00012) 7530 0 R (_publisher_8cpp_source_l00013) 7531 0 R (_publisher_8cpp_source_l00014) 7532 0 R]
+/Limits [(_publisher_8cpp_source_l00009) (_publisher_8cpp_source_l00014)]
+>>
+endobj
+13974 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00015) 7533 0 R (_publisher_8cpp_source_l00016) 7534 0 R (_publisher_8cpp_source_l00017) 7535 0 R (_publisher_8cpp_source_l00018) 7536 0 R (_publisher_8cpp_source_l00019) 7537 0 R (_publisher_8cpp_source_l00020) 7538 0 R]
+/Limits [(_publisher_8cpp_source_l00015) (_publisher_8cpp_source_l00020)]
+>>
+endobj
+13975 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00021) 7539 0 R (_publisher_8cpp_source_l00022) 7540 0 R (_publisher_8cpp_source_l00023) 7541 0 R (_publisher_8cpp_source_l00024) 7542 0 R (_publisher_8cpp_source_l00025) 7543 0 R (_publisher_8cpp_source_l00026) 7544 0 R]
+/Limits [(_publisher_8cpp_source_l00021) (_publisher_8cpp_source_l00026)]
+>>
+endobj
+13976 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00027) 7545 0 R (_publisher_8cpp_source_l00028) 7546 0 R (_publisher_8cpp_source_l00029) 7547 0 R (_publisher_8cpp_source_l00030) 7548 0 R (_publisher_8cpp_source_l00031) 7549 0 R (_publisher_8cpp_source_l00032) 7550 0 R]
+/Limits [(_publisher_8cpp_source_l00027) (_publisher_8cpp_source_l00032)]
+>>
+endobj
+13977 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00033) 7551 0 R (_publisher_8cpp_source_l00034) 7552 0 R (_publisher_8cpp_source_l00035) 7553 0 R (_publisher_8cpp_source_l00036) 7554 0 R (_publisher_8cpp_source_l00037) 7555 0 R (_publisher_8cpp_source_l00038) 7556 0 R]
+/Limits [(_publisher_8cpp_source_l00033) (_publisher_8cpp_source_l00038)]
+>>
+endobj
+13978 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00039) 7557 0 R (_publisher_8cpp_source_l00040) 7558 0 R (_publisher_8cpp_source_l00041) 7559 0 R (_publisher_8cpp_source_l00042) 7560 0 R (_publisher_8cpp_source_l00043) 7561 0 R (_publisher_8cpp_source_l00044) 7562 0 R]
+/Limits [(_publisher_8cpp_source_l00039) (_publisher_8cpp_source_l00044)]
+>>
+endobj
+13979 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00045) 7563 0 R (_publisher_8cpp_source_l00046) 7564 0 R (_publisher_8cpp_source_l00047) 7565 0 R (_publisher_8cpp_source_l00048) 7566 0 R (_publisher_8cpp_source_l00049) 7567 0 R (_publisher_8cpp_source_l00050) 7568 0 R]
+/Limits [(_publisher_8cpp_source_l00045) (_publisher_8cpp_source_l00050)]
+>>
+endobj
+13980 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00051) 7569 0 R (_publisher_8cpp_source_l00052) 7570 0 R (_publisher_8cpp_source_l00053) 7596 0 R (_publisher_8cpp_source_l00054) 7597 0 R (_publisher_8cpp_source_l00055) 7598 0 R (_publisher_8cpp_source_l00056) 7599 0 R]
+/Limits [(_publisher_8cpp_source_l00051) (_publisher_8cpp_source_l00056)]
+>>
+endobj
+13981 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00057) 7600 0 R (_publisher_8cpp_source_l00058) 7601 0 R (_publisher_8cpp_source_l00059) 7602 0 R (_publisher_8cpp_source_l00060) 7603 0 R (_publisher_8cpp_source_l00061) 7604 0 R (_publisher_8cpp_source_l00062) 7605 0 R]
+/Limits [(_publisher_8cpp_source_l00057) (_publisher_8cpp_source_l00062)]
+>>
+endobj
+13982 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00063) 7606 0 R (_publisher_8cpp_source_l00064) 7607 0 R (_publisher_8cpp_source_l00065) 7608 0 R (_publisher_8cpp_source_l00066) 5908 0 R (_publisher_8cpp_source_l00067) 7609 0 R (_publisher_8cpp_source_l00068) 7610 0 R]
+/Limits [(_publisher_8cpp_source_l00063) (_publisher_8cpp_source_l00068)]
+>>
+endobj
+13983 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00069) 7611 0 R (_publisher_8cpp_source_l00070) 7612 0 R (_publisher_8cpp_source_l00071) 7613 0 R (_publisher_8cpp_source_l00072) 7614 0 R (_publisher_8cpp_source_l00073) 7615 0 R (_publisher_8cpp_source_l00074) 7616 0 R]
+/Limits [(_publisher_8cpp_source_l00069) (_publisher_8cpp_source_l00074)]
+>>
+endobj
+13984 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00075) 7617 0 R (_publisher_8cpp_source_l00076) 7618 0 R (_publisher_8cpp_source_l00077) 7619 0 R (_publisher_8cpp_source_l00078) 7620 0 R (_publisher_8cpp_source_l00079) 7621 0 R (_publisher_8cpp_source_l00080) 7622 0 R]
+/Limits [(_publisher_8cpp_source_l00075) (_publisher_8cpp_source_l00080)]
+>>
+endobj
+13985 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00081) 7623 0 R (_publisher_8cpp_source_l00082) 5910 0 R (_publisher_8cpp_source_l00083) 7624 0 R (_publisher_8cpp_source_l00084) 7625 0 R (_publisher_8cpp_source_l00085) 7626 0 R (_publisher_8cpp_source_l00086) 7627 0 R]
+/Limits [(_publisher_8cpp_source_l00081) (_publisher_8cpp_source_l00086)]
+>>
+endobj
+13986 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00087) 7628 0 R (_publisher_8cpp_source_l00088) 7629 0 R (_publisher_8cpp_source_l00089) 7630 0 R (_publisher_8cpp_source_l00090) 7631 0 R (_publisher_8cpp_source_l00091) 7632 0 R (_publisher_8cpp_source_l00092) 7633 0 R]
+/Limits [(_publisher_8cpp_source_l00087) (_publisher_8cpp_source_l00092)]
+>>
+endobj
+13987 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00093) 5930 0 R (_publisher_8cpp_source_l00094) 7634 0 R (_publisher_8cpp_source_l00095) 7635 0 R (_publisher_8cpp_source_l00096) 7636 0 R (_publisher_8cpp_source_l00097) 7637 0 R (_publisher_8cpp_source_l00098) 7638 0 R]
+/Limits [(_publisher_8cpp_source_l00093) (_publisher_8cpp_source_l00098)]
+>>
+endobj
+13988 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00099) 7639 0 R (_publisher_8cpp_source_l00100) 7640 0 R (_publisher_8cpp_source_l00101) 7641 0 R (_publisher_8cpp_source_l00102) 7642 0 R (_publisher_8cpp_source_l00103) 7643 0 R (_publisher_8cpp_source_l00104) 7644 0 R]
+/Limits [(_publisher_8cpp_source_l00099) (_publisher_8cpp_source_l00104)]
+>>
+endobj
+13989 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00105) 7645 0 R (_publisher_8cpp_source_l00106) 7646 0 R (_publisher_8cpp_source_l00107) 7647 0 R (_publisher_8cpp_source_l00108) 7648 0 R (_publisher_8cpp_source_l00109) 7649 0 R (_publisher_8cpp_source_l00110) 7650 0 R]
+/Limits [(_publisher_8cpp_source_l00105) (_publisher_8cpp_source_l00110)]
+>>
+endobj
+13990 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00111) 7651 0 R (_publisher_8cpp_source_l00112) 7652 0 R (_publisher_8cpp_source_l00113) 7653 0 R (_publisher_8cpp_source_l00114) 7654 0 R (_publisher_8cpp_source_l00115) 7655 0 R (_publisher_8cpp_source_l00116) 7656 0 R]
+/Limits [(_publisher_8cpp_source_l00111) (_publisher_8cpp_source_l00116)]
+>>
+endobj
+13991 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00117) 7657 0 R (_publisher_8cpp_source_l00118) 7658 0 R (_publisher_8cpp_source_l00119) 7659 0 R (_publisher_8cpp_source_l00120) 7660 0 R (_publisher_8cpp_source_l00121) 7661 0 R (_publisher_8cpp_source_l00122) 7662 0 R]
+/Limits [(_publisher_8cpp_source_l00117) (_publisher_8cpp_source_l00122)]
+>>
+endobj
+13992 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00123) 7663 0 R (_publisher_8cpp_source_l00124) 7664 0 R (_publisher_8cpp_source_l00125) 7665 0 R (_publisher_8cpp_source_l00126) 7666 0 R (_publisher_8cpp_source_l00127) 7667 0 R (_publisher_8cpp_source_l00128) 7668 0 R]
+/Limits [(_publisher_8cpp_source_l00123) (_publisher_8cpp_source_l00128)]
+>>
+endobj
+13993 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00129) 7669 0 R (_publisher_8cpp_source_l00130) 7670 0 R (_publisher_8cpp_source_l00131) 7671 0 R (_publisher_8cpp_source_l00132) 5929 0 R (_publisher_8cpp_source_l00133) 7672 0 R (_publisher_8cpp_source_l00134) 7673 0 R]
+/Limits [(_publisher_8cpp_source_l00129) (_publisher_8cpp_source_l00134)]
+>>
+endobj
+13994 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00135) 7674 0 R (_publisher_8cpp_source_l00136) 7675 0 R (_publisher_8cpp_source_l00137) 7676 0 R (_publisher_8cpp_source_l00138) 5972 0 R (_publisher_8cpp_source_l00139) 7677 0 R (_publisher_8cpp_source_l00140) 7702 0 R]
+/Limits [(_publisher_8cpp_source_l00135) (_publisher_8cpp_source_l00140)]
+>>
+endobj
+13995 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00141) 7703 0 R (_publisher_8cpp_source_l00142) 7704 0 R (_publisher_8cpp_source_l00143) 7705 0 R (_publisher_8cpp_source_l00144) 7706 0 R (_publisher_8cpp_source_l00145) 7707 0 R (_publisher_8cpp_source_l00146) 7708 0 R]
+/Limits [(_publisher_8cpp_source_l00141) (_publisher_8cpp_source_l00146)]
+>>
+endobj
+13996 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00147) 7709 0 R (_publisher_8cpp_source_l00148) 7710 0 R (_publisher_8cpp_source_l00149) 7711 0 R (_publisher_8cpp_source_l00150) 7712 0 R (_publisher_8cpp_source_l00151) 7713 0 R (_publisher_8cpp_source_l00152) 7714 0 R]
+/Limits [(_publisher_8cpp_source_l00147) (_publisher_8cpp_source_l00152)]
+>>
+endobj
+13997 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00153) 7715 0 R (_publisher_8cpp_source_l00154) 7716 0 R (_publisher_8cpp_source_l00155) 7717 0 R (_publisher_8cpp_source_l00156) 7718 0 R (_publisher_8cpp_source_l00157) 5931 0 R (_publisher_8cpp_source_l00158) 7719 0 R]
+/Limits [(_publisher_8cpp_source_l00153) (_publisher_8cpp_source_l00158)]
+>>
+endobj
+13998 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00159) 7720 0 R (_publisher_8cpp_source_l00160) 7721 0 R (_publisher_8cpp_source_l00161) 7722 0 R (_publisher_8cpp_source_l00162) 7723 0 R (_publisher_8cpp_source_l00163) 7724 0 R (_publisher_8cpp_source_l00164) 7725 0 R]
+/Limits [(_publisher_8cpp_source_l00159) (_publisher_8cpp_source_l00164)]
+>>
+endobj
+13999 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00165) 7726 0 R (_publisher_8cpp_source_l00166) 7727 0 R (_publisher_8cpp_source_l00167) 7728 0 R (_publisher_8cpp_source_l00168) 7729 0 R (_publisher_8cpp_source_l00169) 5994 0 R (_publisher_8cpp_source_l00170) 7730 0 R]
+/Limits [(_publisher_8cpp_source_l00165) (_publisher_8cpp_source_l00170)]
+>>
+endobj
+14000 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00171) 7731 0 R (_publisher_8cpp_source_l00172) 7732 0 R (_publisher_8cpp_source_l00173) 7733 0 R (_publisher_8cpp_source_l00174) 7734 0 R (_publisher_8cpp_source_l00175) 7735 0 R (_publisher_8cpp_source_l00176) 7736 0 R]
+/Limits [(_publisher_8cpp_source_l00171) (_publisher_8cpp_source_l00176)]
+>>
+endobj
+14001 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00177) 7737 0 R (_publisher_8cpp_source_l00178) 7738 0 R (_publisher_8cpp_source_l00179) 5973 0 R (_publisher_8cpp_source_l00180) 7739 0 R (_publisher_8cpp_source_l00181) 7740 0 R (_publisher_8cpp_source_l00182) 7741 0 R]
+/Limits [(_publisher_8cpp_source_l00177) (_publisher_8cpp_source_l00182)]
+>>
+endobj
+14002 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00183) 7742 0 R (_publisher_8cpp_source_l00184) 5950 0 R (_publisher_8cpp_source_l00185) 7743 0 R (_publisher_8cpp_source_l00186) 7744 0 R (_publisher_8cpp_source_l00187) 7745 0 R (_publisher_8cpp_source_l00188) 7746 0 R]
+/Limits [(_publisher_8cpp_source_l00183) (_publisher_8cpp_source_l00188)]
+>>
+endobj
+14003 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00189) 7747 0 R (_publisher_8cpp_source_l00190) 7748 0 R (_publisher_8cpp_source_l00191) 7749 0 R (_publisher_8cpp_source_l00192) 7750 0 R (_publisher_8cpp_source_l00193) 7751 0 R (_publisher_8cpp_source_l00194) 7752 0 R]
+/Limits [(_publisher_8cpp_source_l00189) (_publisher_8cpp_source_l00194)]
+>>
+endobj
+14004 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00195) 7753 0 R (_publisher_8cpp_source_l00196) 5911 0 R (_publisher_8cpp_source_l00197) 7754 0 R (_publisher_8cpp_source_l00198) 7755 0 R (_publisher_8cpp_source_l00199) 7756 0 R (_publisher_8cpp_source_l00200) 7757 0 R]
+/Limits [(_publisher_8cpp_source_l00195) (_publisher_8cpp_source_l00200)]
+>>
+endobj
+14005 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00201) 7758 0 R (_publisher_8cpp_source_l00202) 7759 0 R (_publisher_8cpp_source_l00203) 7760 0 R (_publisher_8cpp_source_l00204) 7761 0 R (_publisher_8cpp_source_l00205) 7762 0 R (_publisher_8cpp_source_l00206) 7763 0 R]
+/Limits [(_publisher_8cpp_source_l00201) (_publisher_8cpp_source_l00206)]
+>>
+endobj
+14006 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00207) 5952 0 R (_publisher_8cpp_source_l00208) 7764 0 R (_publisher_8cpp_source_l00209) 7765 0 R (_publisher_8cpp_source_l00210) 7766 0 R (_publisher_8cpp_source_l00211) 7767 0 R (_publisher_8cpp_source_l00212) 7768 0 R]
+/Limits [(_publisher_8cpp_source_l00207) (_publisher_8cpp_source_l00212)]
+>>
+endobj
+14007 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00213) 7769 0 R (_publisher_8cpp_source_l00214) 7770 0 R (_publisher_8cpp_source_l00215) 7771 0 R (_publisher_8cpp_source_l00216) 7772 0 R (_publisher_8cpp_source_l00217) 7773 0 R (_publisher_8cpp_source_l00218) 7774 0 R]
+/Limits [(_publisher_8cpp_source_l00213) (_publisher_8cpp_source_l00218)]
+>>
+endobj
+14008 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00219) 7775 0 R (_publisher_8cpp_source_l00220) 7776 0 R (_publisher_8cpp_source_l00221) 7777 0 R (_publisher_8cpp_source_l00222) 7778 0 R (_publisher_8cpp_source_l00223) 7779 0 R (_publisher_8cpp_source_l00224) 5971 0 R]
+/Limits [(_publisher_8cpp_source_l00219) (_publisher_8cpp_source_l00224)]
+>>
+endobj
+14009 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00225) 7780 0 R (_publisher_8cpp_source_l00226) 7799 0 R (_publisher_8cpp_source_l00227) 7800 0 R (_publisher_8cpp_source_l00228) 7801 0 R (_publisher_8cpp_source_l00229) 7802 0 R (_publisher_8cpp_source_l00230) 7803 0 R]
+/Limits [(_publisher_8cpp_source_l00225) (_publisher_8cpp_source_l00230)]
+>>
+endobj
+14010 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00231) 7804 0 R (_publisher_8cpp_source_l00232) 7805 0 R (_publisher_8cpp_source_l00233) 7806 0 R (_publisher_8cpp_source_l00234) 7807 0 R (_publisher_8cpp_source_l00235) 7808 0 R (_publisher_8cpp_source_l00236) 7809 0 R]
+/Limits [(_publisher_8cpp_source_l00231) (_publisher_8cpp_source_l00236)]
+>>
+endobj
+14011 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00237) 7810 0 R (_publisher_8cpp_source_l00238) 7811 0 R (_publisher_8cpp_source_l00239) 7812 0 R (_publisher_8cpp_source_l00240) 7813 0 R (_publisher_8cpp_source_l00241) 7814 0 R (_publisher_8cpp_source_l00242) 7815 0 R]
+/Limits [(_publisher_8cpp_source_l00237) (_publisher_8cpp_source_l00242)]
+>>
+endobj
+14012 0 obj
+<<
+/Names [(_publisher_8cpp_source_l00243) 7816 0 R (_publisher_8cpp_source_l00244) 7817 0 R (_publisher_8cpp_source_l00245) 7818 0 R (_publisher_8cpp_source_l00246) 7819 0 R (_publisher_8h) 3312 0 R (_publisher_8h_source) 5894 0 R]
+/Limits [(_publisher_8cpp_source_l00243) (_publisher_8h_source)]
+>>
+endobj
+14013 0 obj
+<<
+/Names [(_publisher_8h_source_l00001) 7822 0 R (_publisher_8h_source_l00002) 7823 0 R (_publisher_8h_source_l00003) 7824 0 R (_publisher_8h_source_l00004) 7825 0 R (_publisher_8h_source_l00005) 7826 0 R (_publisher_8h_source_l00006) 7827 0 R]
+/Limits [(_publisher_8h_source_l00001) (_publisher_8h_source_l00006)]
+>>
+endobj
+14014 0 obj
+<<
+/Names [(_publisher_8h_source_l00007) 7828 0 R (_publisher_8h_source_l00008) 7829 0 R (_publisher_8h_source_l00009) 7830 0 R (_publisher_8h_source_l00010) 7831 0 R (_publisher_8h_source_l00011) 7832 0 R (_publisher_8h_source_l00012) 7833 0 R]
+/Limits [(_publisher_8h_source_l00007) (_publisher_8h_source_l00012)]
+>>
+endobj
+14015 0 obj
+<<
+/Names [(_publisher_8h_source_l00013) 7834 0 R (_publisher_8h_source_l00014) 7848 0 R (_publisher_8h_source_l00015) 7849 0 R (_publisher_8h_source_l00019) 7850 0 R (_publisher_8h_source_l00020) 7851 0 R (_publisher_8h_source_l00021) 7852 0 R]
+/Limits [(_publisher_8h_source_l00013) (_publisher_8h_source_l00021)]
+>>
+endobj
+14016 0 obj
+<<
+/Names [(_publisher_8h_source_l00022) 7853 0 R (_publisher_8h_source_l00023) 7854 0 R (_publisher_8h_source_l00035) 5893 0 R (_publisher_8h_source_l00036) 7855 0 R (_publisher_8h_source_l00037) 7856 0 R (_publisher_8h_source_l00044) 7857 0 R]
+/Limits [(_publisher_8h_source_l00022) (_publisher_8h_source_l00044)]
+>>
+endobj
+14017 0 obj
+<<
+/Names [(_publisher_8h_source_l00045) 7858 0 R (_publisher_8h_source_l00052) 7859 0 R (_publisher_8h_source_l00053) 7860 0 R (_publisher_8h_source_l00062) 7861 0 R (_publisher_8h_source_l00063) 7862 0 R (_publisher_8h_source_l00069) 7863 0 R]
+/Limits [(_publisher_8h_source_l00045) (_publisher_8h_source_l00069)]
+>>
+endobj
+14018 0 obj
+<<
+/Names [(_publisher_8h_source_l00070) 7864 0 R (_publisher_8h_source_l00077) 7865 0 R (_publisher_8h_source_l00078) 7866 0 R (_publisher_8h_source_l00084) 7867 0 R (_publisher_8h_source_l00085) 7868 0 R (_publisher_8h_source_l00091) 7869 0 R]
+/Limits [(_publisher_8h_source_l00070) (_publisher_8h_source_l00091)]
+>>
+endobj
+14019 0 obj
+<<
+/Names [(_publisher_8h_source_l00092) 7870 0 R (_publisher_8h_source_l00098) 7871 0 R (_publisher_8h_source_l00099) 7872 0 R (_publisher_8h_source_l00105) 7873 0 R (_publisher_8h_source_l00106) 7874 0 R (_publisher_8h_source_l00113) 7875 0 R]
+/Limits [(_publisher_8h_source_l00092) (_publisher_8h_source_l00113)]
+>>
+endobj
+14020 0 obj
+<<
+/Names [(_publisher_8h_source_l00114) 7876 0 R (_publisher_8h_source_l00121) 7877 0 R (_publisher_8h_source_l00122) 7878 0 R (_publisher_8h_source_l00130) 7879 0 R (_publisher_8h_source_l00131) 7880 0 R (_publisher_8h_source_l00138) 7881 0 R]
+/Limits [(_publisher_8h_source_l00114) (_publisher_8h_source_l00138)]
+>>
+endobj
+14021 0 obj
+<<
+/Names [(_publisher_8h_source_l00139) 7882 0 R (_publisher_8h_source_l00145) 7883 0 R (_publisher_8h_source_l00146) 7884 0 R (_publisher_8h_source_l00147) 7885 0 R (_publisher_8h_source_l00148) 7886 0 R (_publisher_8h_source_l00157) 7887 0 R]
+/Limits [(_publisher_8h_source_l00139) (_publisher_8h_source_l00157)]
+>>
+endobj
+14022 0 obj
+<<
+/Names [(_publisher_8h_source_l00158) 7888 0 R (_publisher_8h_source_l00164) 7889 0 R (_publisher_8h_source_l00165) 7890 0 R (_publisher_8h_source_l00177) 7891 0 R (_publisher_8h_source_l00178) 7892 0 R (_publisher_8h_source_l00190) 7893 0 R]
+/Limits [(_publisher_8h_source_l00158) (_publisher_8h_source_l00190)]
+>>
+endobj
+14023 0 obj
+<<
+/Names [(_publisher_8h_source_l00191) 7894 0 R (_publisher_8h_source_l00200) 7895 0 R (_publisher_8h_source_l00201) 7896 0 R (_publisher_8h_source_l00207) 7897 0 R (_publisher_8h_source_l00208) 7898 0 R (_publisher_8h_source_l00214) 7899 0 R]
+/Limits [(_publisher_8h_source_l00191) (_publisher_8h_source_l00214)]
+>>
+endobj
+14024 0 obj
+<<
+/Names [(_publisher_8h_source_l00215) 7900 0 R (_publisher_8h_source_l00224) 7901 0 R (_publisher_8h_source_l00225) 7902 0 R (_publisher_8h_source_l00232) 7903 0 R (_publisher_8h_source_l00233) 7904 0 R (_publisher_8h_source_l00241) 7905 0 R]
+/Limits [(_publisher_8h_source_l00215) (_publisher_8h_source_l00241)]
+>>
+endobj
+14025 0 obj
+<<
+/Names [(_publisher_8h_source_l00242) 7906 0 R (_publisher_8h_source_l00251) 7907 0 R (_publisher_8h_source_l00252) 7908 0 R (_publisher_8h_source_l00261) 5951 0 R (_publisher_8h_source_l00262) 7909 0 R (_publisher_8h_source_l00270) 7910 0 R]
+/Limits [(_publisher_8h_source_l00242) (_publisher_8h_source_l00270)]
+>>
+endobj
+14026 0 obj
+<<
+/Names [(_publisher_8h_source_l00271) 7911 0 R (_publisher_8h_source_l00272) 7912 0 R (_publisher_8h_source_l00273) 7913 0 R (_publisher_8h_source_l00274) 7914 0 R (_publisher_8h_source_l00275) 7915 0 R (_publisher_8h_source_l00276) 7916 0 R]
+/Limits [(_publisher_8h_source_l00271) (_publisher_8h_source_l00276)]
+>>
+endobj
+14027 0 obj
+<<
+/Names [(_r_e_a_d_m_e_8md) 6995 0 R (_r_e_s_t_2_types_8h) 3318 0 R (_r_e_s_t_2_types_8h_source) 3421 0 R (_r_e_s_t_2_types_8h_source_l00001) 8389 0 R (_r_e_s_t_2_types_8h_source_l00002) 8390 0 R (_r_e_s_t_2_types_8h_source_l00003) 8391 0 R]
+/Limits [(_r_e_a_d_m_e_8md) (_r_e_s_t_2_types_8h_source_l00003)]
+>>
+endobj
+14028 0 obj
+<<
+/Names [(_r_e_s_t_2_types_8h_source_l00004) 8392 0 R (_r_e_s_t_2_types_8h_source_l00005) 8393 0 R (_r_e_s_t_2_types_8h_source_l00011) 3455 0 R (_r_e_s_t_2_types_8h_source_l00012) 8394 0 R (_r_e_s_t_2_types_8h_source_l00018) 3456 0 R (_r_e_s_t_2_types_8h_source_l00019) 8395 0 R]
+/Limits [(_r_e_s_t_2_types_8h_source_l00004) (_r_e_s_t_2_types_8h_source_l00019)]
+>>
+endobj
+14029 0 obj
+<<
+/Names [(_r_e_s_t_2_types_8h_source_l00025) 3457 0 R (_r_e_s_t_2_types_8h_source_l00026) 8396 0 R (_r_e_s_t_2_types_8h_source_l00032) 3454 0 R (_r_e_s_t_2_types_8h_source_l00033) 8397 0 R (_r_e_s_t_2_types_8h_source_l00039) 3420 0 R (_r_e_s_t_2_types_8h_source_l00040) 8398 0 R]
+/Limits [(_r_e_s_t_2_types_8h_source_l00025) (_r_e_s_t_2_types_8h_source_l00040)]
+>>
+endobj
+14030 0 obj
+<<
+/Names [(_r_e_s_t_2_types_8h_source_l00041) 8399 0 R (_r_e_s_t_2constants_8h) 3313 0 R (_r_e_s_t_2constants_8h_ac50762666aa00bd3a4308158510f1748) 7298 0 R (_r_e_s_t_2constants_8h_source) 7299 0 R (_r_e_s_t_2constants_8h_source_l00001) 7311 0 R (_r_e_s_t_2constants_8h_source_l00006) 7312 0 R]
+/Limits [(_r_e_s_t_2_types_8h_source_l00041) (_r_e_s_t_2constants_8h_source_l00006)]
+>>
+endobj
+14031 0 obj
+<<
+/Names [(_r_e_s_t_2constants_8h_source_l00007) 7313 0 R (_r_e_s_t_2constants_8h_source_l00008) 7314 0 R (_r_e_s_t_2constants_8h_source_l00009) 7315 0 R (_r_e_s_t_2constants_8h_source_l00010) 7316 0 R (_r_e_s_t_2constants_8h_source_l00011) 7317 0 R (_r_e_s_t_2constants_8h_source_l00012) 7318 0 R]
+/Limits [(_r_e_s_t_2constants_8h_source_l00007) (_r_e_s_t_2constants_8h_source_l00012)]
+>>
+endobj
+14032 0 obj
+<<
+/Names [(_r_e_s_t_2constants_8h_source_l00013) 7319 0 R (_r_e_s_t_2constants_8h_source_l00014) 7320 0 R (_r_e_s_t_2constants_8h_source_l00015) 7321 0 R (_r_e_s_t_2constants_8h_source_l00016) 7322 0 R (_r_e_s_t_2constants_8h_source_l00017) 7323 0 R (_r_e_s_t_2constants_8h_source_l00018) 7324 0 R]
+/Limits [(_r_e_s_t_2constants_8h_source_l00013) (_r_e_s_t_2constants_8h_source_l00018)]
+>>
+endobj
+14033 0 obj
+<<
+/Names [(_r_e_s_t_2constants_8h_source_l00019) 7300 0 R (_r_e_s_t_2constants_8h_source_l00020) 7325 0 R (_r_e_s_t_2constants_8h_source_l00021) 7326 0 R (_r_e_s_t_2constants_8h_source_l00022) 7327 0 R (_range_8cpp) 3371 0 R (_range_8cpp_source) 6019 0 R]
+/Limits [(_r_e_s_t_2constants_8h_source_l00019) (_range_8cpp_source)]
+>>
+endobj
+14034 0 obj
+<<
+/Names [(_range_8cpp_source_l00001) 11407 0 R (_range_8cpp_source_l00002) 11408 0 R (_range_8cpp_source_l00003) 6137 0 R (_range_8cpp_source_l00004) 11409 0 R (_range_8cpp_source_l00005) 11410 0 R (_range_8cpp_source_l00006) 11411 0 R]
+/Limits [(_range_8cpp_source_l00001) (_range_8cpp_source_l00006)]
+>>
+endobj
+14035 0 obj
+<<
+/Names [(_range_8cpp_source_l00007) 6138 0 R (_range_8cpp_source_l00008) 11412 0 R (_range_8cpp_source_l00009) 11413 0 R (_range_8cpp_source_l00010) 11414 0 R (_range_8cpp_source_l00011) 6139 0 R (_range_8cpp_source_l00012) 11415 0 R]
+/Limits [(_range_8cpp_source_l00007) (_range_8cpp_source_l00012)]
+>>
+endobj
+14036 0 obj
+<<
+/Names [(_range_8cpp_source_l00013) 11416 0 R (_range_8cpp_source_l00014) 11417 0 R (_range_8cpp_source_l00015) 11418 0 R (_range_8cpp_source_l00016) 11419 0 R (_range_8cpp_source_l00017) 11443 0 R (_range_8cpp_source_l00018) 11444 0 R]
+/Limits [(_range_8cpp_source_l00013) (_range_8cpp_source_l00018)]
+>>
+endobj
+14037 0 obj
+<<
+/Names [(_range_8cpp_source_l00019) 11445 0 R (_range_8cpp_source_l00020) 11446 0 R (_range_8cpp_source_l00021) 11447 0 R (_range_8cpp_source_l00022) 11448 0 R (_range_8cpp_source_l00023) 11449 0 R (_range_8cpp_source_l00024) 11450 0 R]
+/Limits [(_range_8cpp_source_l00019) (_range_8cpp_source_l00024)]
+>>
+endobj
+14038 0 obj
+<<
+/Names [(_range_8cpp_source_l00025) 11451 0 R (_range_8cpp_source_l00026) 11452 0 R (_range_8cpp_source_l00027) 11453 0 R (_range_8cpp_source_l00028) 11454 0 R (_range_8cpp_source_l00029) 6140 0 R (_range_8cpp_source_l00030) 11455 0 R]
+/Limits [(_range_8cpp_source_l00025) (_range_8cpp_source_l00030)]
+>>
+endobj
+14039 0 obj
+<<
+/Names [(_range_8cpp_source_l00031) 11456 0 R (_range_8cpp_source_l00032) 11457 0 R (_range_8cpp_source_l00033) 6195 0 R (_range_8cpp_source_l00034) 11458 0 R (_range_8cpp_source_l00035) 11459 0 R (_range_8cpp_source_l00036) 11460 0 R]
+/Limits [(_range_8cpp_source_l00031) (_range_8cpp_source_l00036)]
+>>
+endobj
+14040 0 obj
+<<
+/Names [(_range_8cpp_source_l00037) 11461 0 R (_range_8cpp_source_l00038) 11462 0 R (_range_8cpp_source_l00039) 11463 0 R (_range_8cpp_source_l00040) 11464 0 R (_range_8cpp_source_l00041) 11465 0 R (_range_8cpp_source_l00042) 11466 0 R]
+/Limits [(_range_8cpp_source_l00037) (_range_8cpp_source_l00042)]
+>>
+endobj
+14041 0 obj
+<<
+/Names [(_range_8cpp_source_l00043) 11467 0 R (_range_8cpp_source_l00044) 6194 0 R (_range_8cpp_source_l00045) 11468 0 R (_range_8cpp_source_l00046) 11469 0 R (_range_8cpp_source_l00047) 11470 0 R (_range_8cpp_source_l00048) 11471 0 R]
+/Limits [(_range_8cpp_source_l00043) (_range_8cpp_source_l00048)]
+>>
+endobj
+14042 0 obj
+<<
+/Names [(_range_8cpp_source_l00049) 11472 0 R (_range_8cpp_source_l00050) 11473 0 R (_range_8cpp_source_l00051) 11474 0 R (_range_8cpp_source_l00052) 11475 0 R (_range_8cpp_source_l00053) 11476 0 R (_range_8cpp_source_l00054) 11477 0 R]
+/Limits [(_range_8cpp_source_l00049) (_range_8cpp_source_l00054)]
+>>
+endobj
+14043 0 obj
+<<
+/Names [(_range_8cpp_source_l00055) 11478 0 R (_range_8cpp_source_l00056) 11479 0 R (_range_8cpp_source_l00057) 11480 0 R (_range_8cpp_source_l00058) 6018 0 R (_range_8cpp_source_l00059) 11481 0 R (_range_8cpp_source_l00060) 11482 0 R]
+/Limits [(_range_8cpp_source_l00055) (_range_8cpp_source_l00060)]
+>>
+endobj
+14044 0 obj
+<<
+/Names [(_range_8cpp_source_l00061) 11483 0 R (_range_8cpp_source_l00062) 11484 0 R (_range_8cpp_source_l00063) 11485 0 R (_range_8cpp_source_l00064) 11486 0 R (_range_8cpp_source_l00065) 11487 0 R (_range_8cpp_source_l00066) 11488 0 R]
+/Limits [(_range_8cpp_source_l00061) (_range_8cpp_source_l00066)]
+>>
+endobj
+14045 0 obj
+<<
+/Names [(_range_8cpp_source_l00067) 11489 0 R (_range_8cpp_source_l00068) 6041 0 R (_range_8cpp_source_l00069) 11490 0 R (_range_8cpp_source_l00070) 11491 0 R (_range_8cpp_source_l00071) 11492 0 R (_range_8cpp_source_l00072) 6080 0 R]
+/Limits [(_range_8cpp_source_l00067) (_range_8cpp_source_l00072)]
+>>
+endobj
+14046 0 obj
+<<
+/Names [(_range_8cpp_source_l00073) 11493 0 R (_range_8cpp_source_l00074) 11494 0 R (_range_8cpp_source_l00075) 11495 0 R (_range_8cpp_source_l00076) 11496 0 R (_range_8cpp_source_l00077) 11497 0 R (_range_8cpp_source_l00078) 11498 0 R]
+/Limits [(_range_8cpp_source_l00073) (_range_8cpp_source_l00078)]
+>>
+endobj
+14047 0 obj
+<<
+/Names [(_range_8cpp_source_l00079) 11499 0 R (_range_8cpp_source_l00080) 11500 0 R (_range_8cpp_source_l00081) 11501 0 R (_range_8cpp_source_l00082) 11502 0 R (_range_8cpp_source_l00083) 11503 0 R (_range_8cpp_source_l00084) 11504 0 R]
+/Limits [(_range_8cpp_source_l00079) (_range_8cpp_source_l00084)]
+>>
+endobj
+14048 0 obj
+<<
+/Names [(_range_8cpp_source_l00085) 6042 0 R (_range_8cpp_source_l00086) 11505 0 R (_range_8cpp_source_l00087) 11506 0 R (_range_8cpp_source_l00088) 11507 0 R (_range_8cpp_source_l00089) 11508 0 R (_range_8cpp_source_l00090) 11509 0 R]
+/Limits [(_range_8cpp_source_l00085) (_range_8cpp_source_l00090)]
+>>
+endobj
+14049 0 obj
+<<
+/Names [(_range_8cpp_source_l00091) 11510 0 R (_range_8cpp_source_l00092) 11511 0 R (_range_8cpp_source_l00093) 11512 0 R (_range_8cpp_source_l00094) 11513 0 R (_range_8cpp_source_l00095) 11514 0 R (_range_8cpp_source_l00096) 11515 0 R]
+/Limits [(_range_8cpp_source_l00091) (_range_8cpp_source_l00096)]
+>>
+endobj
+14050 0 obj
+<<
+/Names [(_range_8cpp_source_l00097) 11516 0 R (_range_8cpp_source_l00098) 11517 0 R (_range_8cpp_source_l00099) 11518 0 R (_range_8cpp_source_l00100) 11519 0 R (_range_8cpp_source_l00101) 11520 0 R (_range_8cpp_source_l00102) 11521 0 R]
+/Limits [(_range_8cpp_source_l00097) (_range_8cpp_source_l00102)]
+>>
+endobj
+14051 0 obj
+<<
+/Names [(_range_8cpp_source_l00103) 11522 0 R (_range_8cpp_source_l00104) 11554 0 R (_range_8cpp_source_l00105) 11555 0 R (_range_8cpp_source_l00106) 11556 0 R (_range_8cpp_source_l00107) 11557 0 R (_range_8cpp_source_l00108) 11558 0 R]
+/Limits [(_range_8cpp_source_l00103) (_range_8cpp_source_l00108)]
+>>
+endobj
+14052 0 obj
+<<
+/Names [(_range_8h) 3372 0 R (_range_8h_source) 6017 0 R (_range_8h_source_l00001) 11561 0 R (_range_8h_source_l00002) 11562 0 R (_range_8h_source_l00003) 11563 0 R (_range_8h_source_l00004) 11564 0 R]
+/Limits [(_range_8h) (_range_8h_source_l00004)]
+>>
+endobj
+14053 0 obj
+<<
+/Names [(_range_8h_source_l00005) 11565 0 R (_range_8h_source_l00006) 11566 0 R (_range_8h_source_l00007) 11567 0 R (_range_8h_source_l00008) 11568 0 R (_range_8h_source_l00023) 11569 0 R (_range_8h_source_l00024) 6016 0 R]
+/Limits [(_range_8h_source_l00005) (_range_8h_source_l00024)]
+>>
+endobj
+14054 0 obj
+<<
+/Names [(_range_8h_source_l00025) 11570 0 R (_range_8h_source_l00026) 11571 0 R (_range_8h_source_l00032) 11572 0 R (_range_8h_source_l00033) 11573 0 R (_range_8h_source_l00039) 11574 0 R (_range_8h_source_l00040) 11575 0 R]
+/Limits [(_range_8h_source_l00025) (_range_8h_source_l00040)]
+>>
+endobj
+14055 0 obj
+<<
+/Names [(_range_8h_source_l00047) 11576 0 R (_range_8h_source_l00048) 11577 0 R (_range_8h_source_l00054) 11578 0 R (_range_8h_source_l00055) 11579 0 R (_range_8h_source_l00064) 11580 0 R (_range_8h_source_l00065) 11581 0 R]
+/Limits [(_range_8h_source_l00047) (_range_8h_source_l00065)]
+>>
+endobj
+14056 0 obj
+<<
+/Names [(_range_8h_source_l00074) 11582 0 R (_range_8h_source_l00075) 11583 0 R (_range_8h_source_l00081) 11584 0 R (_range_8h_source_l00082) 11585 0 R (_range_8h_source_l00089) 11586 0 R (_range_8h_source_l00090) 11587 0 R]
+/Limits [(_range_8h_source_l00074) (_range_8h_source_l00090)]
+>>
+endobj
+14057 0 obj
+<<
+/Names [(_range_8h_source_l00101) 11588 0 R (_range_8h_source_l00102) 11625 0 R (_range_8h_source_l00103) 11626 0 R (_range_8h_source_l00109) 11627 0 R (_range_8h_source_l00110) 6136 0 R (_range_8h_source_l00111) 11628 0 R]
+/Limits [(_range_8h_source_l00101) (_range_8h_source_l00111)]
+>>
+endobj
+14058 0 obj
+<<
+/Names [(_range_8h_source_l00112) 11629 0 R (_range_8h_source_l00113) 11630 0 R (_range_8h_source_l00114) 11631 0 R (_range_8h_source_l00115) 11632 0 R (_range_8h_source_l00116) 11633 0 R (_range_8h_source_l00117) 11634 0 R]
+/Limits [(_range_8h_source_l00112) (_range_8h_source_l00117)]
+>>
+endobj
+14059 0 obj
+<<
+/Names [(_range_8h_source_l00118) 11635 0 R (_range_8h_source_l00119) 11636 0 R (_range_8h_source_l00120) 11637 0 R (_range_8h_source_l00121) 11638 0 R (_range_8h_source_l00122) 11639 0 R (_range_8h_source_l00123) 11640 0 R]
+/Limits [(_range_8h_source_l00118) (_range_8h_source_l00123)]
+>>
+endobj
+14060 0 obj
+<<
+/Names [(_range_8h_source_l00124) 11641 0 R (_range_8h_source_l00130) 11642 0 R (_range_8h_source_l00131) 6084 0 R (_range_8h_source_l00132) 11643 0 R (_range_8h_source_l00133) 11644 0 R (_range_8h_source_l00134) 11645 0 R]
+/Limits [(_range_8h_source_l00124) (_range_8h_source_l00134)]
+>>
+endobj
+14061 0 obj
+<<
+/Names [(_range_8h_source_l00135) 11646 0 R (_range_8h_source_l00136) 11647 0 R (_range_8h_source_l00137) 11648 0 R (_range_8h_source_l00138) 11649 0 R (_range_8h_source_l00139) 11650 0 R (_range_8h_source_l00140) 11651 0 R]
+/Limits [(_range_8h_source_l00135) (_range_8h_source_l00140)]
+>>
+endobj
+14062 0 obj
+<<
+/Names [(_range_8h_source_l00141) 11652 0 R (_range_8h_source_l00142) 11653 0 R (_range_8h_source_l00143) 11654 0 R (_range_8h_source_l00144) 11655 0 R (_range_8h_source_l00145) 11656 0 R (_range_8h_source_l00146) 11657 0 R]
+/Limits [(_range_8h_source_l00141) (_range_8h_source_l00146)]
+>>
+endobj
+14063 0 obj
+<<
+/Names [(_range_8h_source_l00147) 11658 0 R (_range_8h_source_l00148) 11659 0 R (_range_8h_source_l00149) 11660 0 R (_range_8h_source_l00150) 11661 0 R (_range_8h_source_l00151) 6020 0 R (_range_8h_source_l00152) 11662 0 R]
+/Limits [(_range_8h_source_l00147) (_range_8h_source_l00152)]
+>>
+endobj
+14064 0 obj
+<<
+/Names [(_range_8h_source_l00153) 11663 0 R (_range_8h_source_l00154) 11664 0 R (_range_8h_source_l00155) 11665 0 R (_range_8h_source_l00156) 6040 0 R (_range_8h_source_l00157) 11666 0 R (_range_8h_source_l00158) 11667 0 R]
+/Limits [(_range_8h_source_l00153) (_range_8h_source_l00158)]
+>>
+endobj
+14065 0 obj
+<<
+/Names [(_range_8h_source_l00159) 11668 0 R (_range_8h_source_l00160) 11669 0 R (_range_8h_source_l00161) 11670 0 R (_range_8h_source_l00162) 11671 0 R (_range_8h_source_l00163) 11672 0 R (_range_8h_source_l00164) 11673 0 R]
+/Limits [(_range_8h_source_l00159) (_range_8h_source_l00164)]
+>>
+endobj
+14066 0 obj
+<<
+/Names [(_range_8h_source_l00165) 11674 0 R (_range_8h_source_l00166) 11675 0 R (_range_8h_source_l00167) 11676 0 R (_range_8h_source_l00168) 11677 0 R (_range_8h_source_l00169) 11678 0 R (_range_8h_source_l00170) 11679 0 R]
+/Limits [(_range_8h_source_l00165) (_range_8h_source_l00170)]
+>>
+endobj
+14067 0 obj
+<<
+/Names [(_range_8h_source_l00171) 11680 0 R (_range_8h_source_l00172) 11681 0 R (_range_8h_source_l00173) 11682 0 R (_range_8h_source_l00174) 11683 0 R (_range_8h_source_l00175) 11684 0 R (_range_8h_source_l00176) 11685 0 R]
+/Limits [(_range_8h_source_l00171) (_range_8h_source_l00176)]
+>>
+endobj
+14068 0 obj
+<<
+/Names [(_range_8h_source_l00177) 11686 0 R (_range_8h_source_l00178) 11687 0 R (_range_8h_source_l00179) 11688 0 R (_range_8h_source_l00180) 11689 0 R (_range_8h_source_l00181) 11690 0 R (_range_8h_source_l00182) 11691 0 R]
+/Limits [(_range_8h_source_l00177) (_range_8h_source_l00182)]
+>>
+endobj
+14069 0 obj
+<<
+/Names [(_range_8h_source_l00183) 11692 0 R (_range_8h_source_l00184) 11693 0 R (_range_8h_source_l00185) 11694 0 R (_range_8h_source_l00186) 11695 0 R (_range_8h_source_l00187) 11696 0 R (_range_8h_source_l00188) 11697 0 R]
+/Limits [(_range_8h_source_l00183) (_range_8h_source_l00188)]
+>>
+endobj
+14070 0 obj
+<<
+/Names [(_range_8h_source_l00189) 11698 0 R (_range_8h_source_l00190) 11699 0 R (_range_8h_source_l00191) 11700 0 R (_range_8h_source_l00192) 11701 0 R (_range_8h_source_l00193) 11702 0 R (_range_8h_source_l00194) 11703 0 R]
+/Limits [(_range_8h_source_l00189) (_range_8h_source_l00194)]
+>>
+endobj
+14071 0 obj
+<<
+/Names [(_range_8h_source_l00195) 11704 0 R (_range_8h_source_l00196) 11705 0 R (_range_8h_source_l00197) 11706 0 R (_range_8h_source_l00198) 11707 0 R (_range_8h_source_l00199) 11727 0 R (_range_8h_source_l00200) 11728 0 R]
+/Limits [(_range_8h_source_l00195) (_range_8h_source_l00200)]
+>>
+endobj
+14072 0 obj
+<<
+/Names [(_range_8h_source_l00201) 11729 0 R (_range_8h_source_l00202) 11730 0 R (_range_8h_source_l00203) 11731 0 R (_range_8h_source_l00204) 11732 0 R (_range_8h_source_l00205) 11733 0 R (_range_8h_source_l00206) 11734 0 R]
+/Limits [(_range_8h_source_l00201) (_range_8h_source_l00206)]
+>>
+endobj
+14073 0 obj
+<<
+/Names [(_range_8h_source_l00207) 11735 0 R (_range_8h_source_l00208) 11736 0 R (_range_8h_source_l00209) 11737 0 R (_range_8h_source_l00210) 11738 0 R (_resource_8cpp) 3314 0 R (_resource_8cpp_source) 6247 0 R]
+/Limits [(_range_8h_source_l00207) (_resource_8cpp_source)]
+>>
+endobj
+14074 0 obj
+<<
+/Names [(_resource_8cpp_source_l00001) 7941 0 R (_resource_8cpp_source_l00002) 7942 0 R (_resource_8cpp_source_l00003) 6393 0 R (_resource_8cpp_source_l00004) 7943 0 R (_resource_8cpp_source_l00005) 7944 0 R (_resource_8cpp_source_l00006) 7945 0 R]
+/Limits [(_resource_8cpp_source_l00001) (_resource_8cpp_source_l00006)]
+>>
+endobj
+14075 0 obj
+<<
+/Names [(_resource_8cpp_source_l00007) 7946 0 R (_resource_8cpp_source_l00008) 7947 0 R (_resource_8cpp_source_l00009) 7948 0 R (_resource_8cpp_source_l00010) 7949 0 R (_resource_8cpp_source_l00011) 7950 0 R (_resource_8cpp_source_l00012) 7951 0 R]
+/Limits [(_resource_8cpp_source_l00007) (_resource_8cpp_source_l00012)]
+>>
+endobj
+14076 0 obj
+<<
+/Names [(_resource_8cpp_source_l00013) 7952 0 R (_resource_8cpp_source_l00014) 7953 0 R (_resource_8cpp_source_l00015) 7954 0 R (_resource_8cpp_source_l00016) 7955 0 R (_resource_8cpp_source_l00017) 7956 0 R (_resource_8cpp_source_l00018) 7957 0 R]
+/Limits [(_resource_8cpp_source_l00013) (_resource_8cpp_source_l00018)]
+>>
+endobj
+14077 0 obj
+<<
+/Names [(_resource_8cpp_source_l00019) 7958 0 R (_resource_8cpp_source_l00020) 7959 0 R (_resource_8cpp_source_l00021) 7960 0 R (_resource_8cpp_source_l00022) 7961 0 R (_resource_8cpp_source_l00023) 7962 0 R (_resource_8cpp_source_l00024) 7963 0 R]
+/Limits [(_resource_8cpp_source_l00019) (_resource_8cpp_source_l00024)]
+>>
+endobj
+14078 0 obj
+<<
+/Names [(_resource_8cpp_source_l00025) 7964 0 R (_resource_8cpp_source_l00026) 7965 0 R (_resource_8cpp_source_l00027) 7966 0 R (_resource_8cpp_source_l00028) 7967 0 R (_resource_8cpp_source_l00029) 7968 0 R (_resource_8cpp_source_l00030) 7969 0 R]
+/Limits [(_resource_8cpp_source_l00025) (_resource_8cpp_source_l00030)]
+>>
+endobj
+14079 0 obj
+<<
+/Names [(_resource_8cpp_source_l00031) 7970 0 R (_resource_8cpp_source_l00032) 7971 0 R (_resource_8cpp_source_l00033) 7972 0 R (_resource_8cpp_source_l00034) 7973 0 R (_resource_8cpp_source_l00035) 7974 0 R (_resource_8cpp_source_l00036) 7975 0 R]
+/Limits [(_resource_8cpp_source_l00031) (_resource_8cpp_source_l00036)]
+>>
+endobj
+14080 0 obj
+<<
+/Names [(_resource_8cpp_source_l00037) 7976 0 R (_resource_8cpp_source_l00038) 7977 0 R (_resource_8cpp_source_l00039) 7978 0 R (_resource_8cpp_source_l00040) 7979 0 R (_resource_8cpp_source_l00041) 7980 0 R (_resource_8cpp_source_l00042) 7981 0 R]
+/Limits [(_resource_8cpp_source_l00037) (_resource_8cpp_source_l00042)]
+>>
+endobj
+14081 0 obj
+<<
+/Names [(_resource_8cpp_source_l00043) 7982 0 R (_resource_8cpp_source_l00044) 7983 0 R (_resource_8cpp_source_l00045) 7984 0 R (_resource_8cpp_source_l00046) 7985 0 R (_resource_8cpp_source_l00047) 7986 0 R (_resource_8cpp_source_l00048) 7987 0 R]
+/Limits [(_resource_8cpp_source_l00043) (_resource_8cpp_source_l00048)]
+>>
+endobj
+14082 0 obj
+<<
+/Names [(_resource_8cpp_source_l00049) 7988 0 R (_resource_8cpp_source_l00050) 6249 0 R (_resource_8cpp_source_l00051) 7989 0 R (_resource_8cpp_source_l00052) 7990 0 R (_resource_8cpp_source_l00053) 7991 0 R (_resource_8cpp_source_l00054) 7992 0 R]
+/Limits [(_resource_8cpp_source_l00049) (_resource_8cpp_source_l00054)]
+>>
+endobj
+14083 0 obj
+<<
+/Names [(_resource_8cpp_source_l00055) 7993 0 R (_resource_8cpp_source_l00056) 7994 0 R (_resource_8cpp_source_l00057) 7995 0 R (_resource_8cpp_source_l00058) 7996 0 R (_resource_8cpp_source_l00059) 7997 0 R (_resource_8cpp_source_l00060) 7998 0 R]
+/Limits [(_resource_8cpp_source_l00055) (_resource_8cpp_source_l00060)]
+>>
+endobj
+14084 0 obj
+<<
+/Names [(_resource_8cpp_source_l00061) 7999 0 R (_resource_8cpp_source_l00062) 8000 0 R (_resource_8cpp_source_l00063) 8001 0 R (_resource_8cpp_source_l00064) 8002 0 R (_resource_8cpp_source_l00065) 8003 0 R (_resource_8cpp_source_l00066) 8004 0 R]
+/Limits [(_resource_8cpp_source_l00061) (_resource_8cpp_source_l00066)]
+>>
+endobj
+14085 0 obj
+<<
+/Names [(_resource_8cpp_source_l00067) 6246 0 R (_resource_8cpp_source_l00068) 8005 0 R (_resource_8cpp_source_l00069) 8006 0 R (_resource_8cpp_source_l00070) 8007 0 R (_resource_8cpp_source_l00071) 8008 0 R (_resource_8cpp_source_l00072) 8009 0 R]
+/Limits [(_resource_8cpp_source_l00067) (_resource_8cpp_source_l00072)]
+>>
+endobj
+14086 0 obj
+<<
+/Names [(_resource_8cpp_source_l00073) 8010 0 R (_resource_8cpp_source_l00074) 6248 0 R (_resource_8cpp_source_l00075) 8011 0 R (_resource_8cpp_source_l00076) 8012 0 R (_resource_8cpp_source_l00077) 8013 0 R (_resource_8cpp_source_l00078) 6277 0 R]
+/Limits [(_resource_8cpp_source_l00073) (_resource_8cpp_source_l00078)]
+>>
+endobj
+14087 0 obj
+<<
+/Names [(_resource_8cpp_source_l00079) 8051 0 R (_resource_8cpp_source_l00080) 8052 0 R (_resource_8cpp_source_l00081) 8053 0 R (_resource_8cpp_source_l00082) 8054 0 R (_resource_8cpp_source_l00083) 8055 0 R (_resource_8cpp_source_l00084) 8056 0 R]
+/Limits [(_resource_8cpp_source_l00079) (_resource_8cpp_source_l00084)]
+>>
+endobj
+14088 0 obj
+<<
+/Names [(_resource_8cpp_source_l00085) 8057 0 R (_resource_8cpp_source_l00086) 8058 0 R (_resource_8cpp_source_l00087) 8059 0 R (_resource_8cpp_source_l00088) 8060 0 R (_resource_8cpp_source_l00089) 8061 0 R (_resource_8cpp_source_l00090) 8062 0 R]
+/Limits [(_resource_8cpp_source_l00085) (_resource_8cpp_source_l00090)]
+>>
+endobj
+14089 0 obj
+<<
+/Names [(_resource_8cpp_source_l00091) 8063 0 R (_resource_8cpp_source_l00092) 8064 0 R (_resource_8cpp_source_l00093) 8065 0 R (_resource_8cpp_source_l00094) 8066 0 R (_resource_8cpp_source_l00095) 8067 0 R (_resource_8cpp_source_l00096) 8068 0 R]
+/Limits [(_resource_8cpp_source_l00091) (_resource_8cpp_source_l00096)]
+>>
+endobj
+14090 0 obj
+<<
+/Names [(_resource_8cpp_source_l00097) 8069 0 R (_resource_8cpp_source_l00098) 8070 0 R (_resource_8cpp_source_l00099) 8071 0 R (_resource_8cpp_source_l00100) 8072 0 R (_resource_8cpp_source_l00101) 8073 0 R (_resource_8cpp_source_l00102) 8074 0 R]
+/Limits [(_resource_8cpp_source_l00097) (_resource_8cpp_source_l00102)]
+>>
+endobj
+14091 0 obj
+<<
+/Names [(_resource_8cpp_source_l00103) 8075 0 R (_resource_8cpp_source_l00104) 8076 0 R (_resource_8cpp_source_l00105) 8077 0 R (_resource_8cpp_source_l00106) 8078 0 R (_resource_8cpp_source_l00107) 8079 0 R (_resource_8cpp_source_l00108) 8080 0 R]
+/Limits [(_resource_8cpp_source_l00103) (_resource_8cpp_source_l00108)]
+>>
+endobj
+14092 0 obj
+<<
+/Names [(_resource_8cpp_source_l00109) 8081 0 R (_resource_8cpp_source_l00110) 8082 0 R (_resource_8cpp_source_l00111) 8083 0 R (_resource_8cpp_source_l00112) 8084 0 R (_resource_8cpp_source_l00113) 8085 0 R (_resource_8cpp_source_l00114) 8086 0 R]
+/Limits [(_resource_8cpp_source_l00109) (_resource_8cpp_source_l00114)]
+>>
+endobj
+14093 0 obj
+<<
+/Names [(_resource_8cpp_source_l00115) 8087 0 R (_resource_8cpp_source_l00116) 8088 0 R (_resource_8cpp_source_l00117) 8089 0 R (_resource_8cpp_source_l00118) 8090 0 R (_resource_8cpp_source_l00119) 8091 0 R (_resource_8cpp_source_l00120) 6310 0 R]
+/Limits [(_resource_8cpp_source_l00115) (_resource_8cpp_source_l00120)]
+>>
+endobj
+14094 0 obj
+<<
+/Names [(_resource_8cpp_source_l00121) 8092 0 R (_resource_8cpp_source_l00122) 8093 0 R (_resource_8cpp_source_l00123) 8094 0 R (_resource_8cpp_source_l00124) 8095 0 R (_resource_8cpp_source_l00125) 6371 0 R (_resource_8cpp_source_l00126) 8096 0 R]
+/Limits [(_resource_8cpp_source_l00121) (_resource_8cpp_source_l00126)]
+>>
+endobj
+14095 0 obj
+<<
+/Names [(_resource_8cpp_source_l00127) 8097 0 R (_resource_8cpp_source_l00128) 8098 0 R (_resource_8cpp_source_l00129) 8099 0 R (_resource_8cpp_source_l00130) 6370 0 R (_resource_8cpp_source_l00131) 8100 0 R (_resource_8cpp_source_l00132) 8101 0 R]
+/Limits [(_resource_8cpp_source_l00127) (_resource_8cpp_source_l00132)]
+>>
+endobj
+14096 0 obj
+<<
+/Names [(_resource_8cpp_source_l00133) 8102 0 R (_resource_8cpp_source_l00134) 8103 0 R (_resource_8cpp_source_l00135) 8104 0 R (_resource_8cpp_source_l00136) 6278 0 R (_resource_8cpp_source_l00137) 8105 0 R (_resource_8cpp_source_l00138) 8106 0 R]
+/Limits [(_resource_8cpp_source_l00133) (_resource_8cpp_source_l00138)]
+>>
+endobj
+14097 0 obj
+<<
+/Names [(_resource_8cpp_source_l00139) 8107 0 R (_resource_8cpp_source_l00140) 8108 0 R (_resource_8cpp_source_l00141) 8109 0 R (_resource_8cpp_source_l00142) 6372 0 R (_resource_8cpp_source_l00143) 8110 0 R (_resource_8cpp_source_l00144) 8111 0 R]
+/Limits [(_resource_8cpp_source_l00139) (_resource_8cpp_source_l00144)]
+>>
+endobj
+14098 0 obj
+<<
+/Names [(_resource_8cpp_source_l00145) 8112 0 R (_resource_8cpp_source_l00146) 8113 0 R (_resource_8cpp_source_l00147) 8114 0 R (_resource_8cpp_source_l00148) 6342 0 R (_resource_8cpp_source_l00149) 8115 0 R (_resource_8cpp_source_l00150) 8116 0 R]
+/Limits [(_resource_8cpp_source_l00145) (_resource_8cpp_source_l00150)]
+>>
+endobj
+14099 0 obj
+<<
+/Names [(_resource_8cpp_source_l00151) 8117 0 R (_resource_8cpp_source_l00152) 8118 0 R (_resource_8cpp_source_l00153) 6340 0 R (_resource_8cpp_source_l00154) 8119 0 R (_resource_8cpp_source_l00155) 8120 0 R (_resource_8cpp_source_l00156) 8121 0 R]
+/Limits [(_resource_8cpp_source_l00151) (_resource_8cpp_source_l00156)]
+>>
+endobj
+14100 0 obj
+<<
+/Names [(_resource_8cpp_source_l00157) 8122 0 R (_resource_8cpp_source_l00158) 6308 0 R (_resource_8cpp_source_l00159) 8123 0 R (_resource_8cpp_source_l00160) 8124 0 R (_resource_8cpp_source_l00161) 8125 0 R (_resource_8cpp_source_l00162) 8126 0 R]
+/Limits [(_resource_8cpp_source_l00157) (_resource_8cpp_source_l00162)]
+>>
+endobj
+14101 0 obj
+<<
+/Names [(_resource_8cpp_source_l00163) 8127 0 R (_resource_8cpp_source_l00164) 8128 0 R (_resource_8cpp_source_l00165) 8174 0 R (_resource_8cpp_source_l00166) 8175 0 R (_resource_8cpp_source_l00167) 8176 0 R (_resource_8h) 3315 0 R]
+/Limits [(_resource_8cpp_source_l00163) (_resource_8h)]
+>>
+endobj
+14102 0 obj
+<<
+/Names [(_resource_8h_source) 6227 0 R (_resource_8h_source_l00001) 8179 0 R (_resource_8h_source_l00002) 8180 0 R (_resource_8h_source_l00003) 8181 0 R (_resource_8h_source_l00004) 8182 0 R (_resource_8h_source_l00005) 8183 0 R]
+/Limits [(_resource_8h_source) (_resource_8h_source_l00005)]
+>>
+endobj
+14103 0 obj
+<<
+/Names [(_resource_8h_source_l00006) 8184 0 R (_resource_8h_source_l00007) 8185 0 R (_resource_8h_source_l00008) 8186 0 R (_resource_8h_source_l00009) 8187 0 R (_resource_8h_source_l00020) 6226 0 R (_resource_8h_source_l00021) 8188 0 R]
+/Limits [(_resource_8h_source_l00006) (_resource_8h_source_l00021)]
+>>
+endobj
+14104 0 obj
+<<
+/Names [(_resource_8h_source_l00022) 8189 0 R (_resource_8h_source_l00034) 8190 0 R (_resource_8h_source_l00035) 8191 0 R (_resource_8h_source_l00042) 6394 0 R (_resource_8h_source_l00043) 8192 0 R (_resource_8h_source_l00050) 6417 0 R]
+/Limits [(_resource_8h_source_l00022) (_resource_8h_source_l00050)]
+>>
+endobj
+14105 0 obj
+<<
+/Names [(_resource_8h_source_l00051) 8193 0 R (_resource_8h_source_l00060) 6395 0 R (_resource_8h_source_l00061) 8194 0 R (_resource_8h_source_l00069) 8195 0 R (_resource_8h_source_l00070) 8196 0 R (_resource_8h_source_l00076) 8197 0 R]
+/Limits [(_resource_8h_source_l00051) (_resource_8h_source_l00076)]
+>>
+endobj
+14106 0 obj
+<<
+/Names [(_resource_8h_source_l00077) 8198 0 R (_resource_8h_source_l00083) 8199 0 R (_resource_8h_source_l00084) 8200 0 R (_resource_8h_source_l00096) 8201 0 R (_resource_8h_source_l00097) 8202 0 R (_resource_8h_source_l00109) 8203 0 R]
+/Limits [(_resource_8h_source_l00077) (_resource_8h_source_l00109)]
+>>
+endobj
+14107 0 obj
+<<
+/Names [(_resource_8h_source_l00110) 8204 0 R (_resource_8h_source_l00122) 8205 0 R (_resource_8h_source_l00123) 8206 0 R (_resource_8h_source_l00135) 8207 0 R (_resource_8h_source_l00136) 8208 0 R (_resource_8h_source_l00148) 8209 0 R]
+/Limits [(_resource_8h_source_l00110) (_resource_8h_source_l00148)]
+>>
+endobj
+14108 0 obj
+<<
+/Names [(_resource_8h_source_l00149) 8210 0 R (_resource_8h_source_l00161) 8211 0 R (_resource_8h_source_l00162) 8212 0 R (_resource_8h_source_l00174) 8213 0 R (_resource_8h_source_l00175) 8230 0 R (_resource_8h_source_l00187) 8231 0 R]
+/Limits [(_resource_8h_source_l00149) (_resource_8h_source_l00187)]
+>>
+endobj
+14109 0 obj
+<<
+/Names [(_resource_8h_source_l00188) 8232 0 R (_resource_8h_source_l00200) 8233 0 R (_resource_8h_source_l00201) 8234 0 R (_resource_8h_source_l00213) 8235 0 R (_resource_8h_source_l00214) 8236 0 R (_resource_8h_source_l00215) 8237 0 R]
+/Limits [(_resource_8h_source_l00188) (_resource_8h_source_l00215)]
+>>
+endobj
+14110 0 obj
+<<
+/Names [(_resource_8h_source_l00216) 8238 0 R (_s_i_g_n_2constants_8h) 3319 0 R (_s_i_g_n_2constants_8h_ac50762666aa00bd3a4308158510f1748) 7329 0 R (_s_i_g_n_2constants_8h_source) 7330 0 R (_s_i_g_n_2constants_8h_source_l00001) 7331 0 R (_s_i_g_n_2constants_8h_source_l00006) 7332 0 R]
+/Limits [(_resource_8h_source_l00216) (_s_i_g_n_2constants_8h_source_l00006)]
+>>
+endobj
+14111 0 obj
+<<
+/Names [(_s_i_g_n_2constants_8h_source_l00007) 7333 0 R (_s_i_g_n_2constants_8h_source_l00008) 7334 0 R (_s_i_g_n_2constants_8h_source_l00009) 7335 0 R (_s_i_g_n_2constants_8h_source_l00010) 7336 0 R (_s_i_g_n_2constants_8h_source_l00011) 7337 0 R (_s_i_g_n_2constants_8h_source_l00012) 7338 0 R]
+/Limits [(_s_i_g_n_2constants_8h_source_l00007) (_s_i_g_n_2constants_8h_source_l00012)]
+>>
+endobj
+14112 0 obj
+<<
+/Names [(_s_i_g_n_2constants_8h_source_l00013) 7339 0 R (_s_i_g_n_2constants_8h_source_l00014) 7340 0 R (_s_i_g_n_2constants_8h_source_l00015) 7341 0 R (_s_i_g_n_2constants_8h_source_l00016) 7342 0 R (_s_i_g_n_2constants_8h_source_l00017) 7343 0 R (_s_i_g_n_2constants_8h_source_l00018) 7344 0 R]
+/Limits [(_s_i_g_n_2constants_8h_source_l00013) (_s_i_g_n_2constants_8h_source_l00018)]
+>>
+endobj
+14113 0 obj
+<<
+/Names [(_s_i_g_n_2constants_8h_source_l00019) 7345 0 R (_s_i_g_n_2constants_8h_source_l00020) 7346 0 R (_s_i_g_n_2constants_8h_source_l00021) 7347 0 R (_s_i_g_n_2constants_8h_source_l00022) 7348 0 R (_s_o_i_l_2_types_8h) 3376 0 R (_s_o_i_l_2_types_8h_source) 3641 0 R]
+/Limits [(_s_i_g_n_2constants_8h_source_l00019) (_s_o_i_l_2_types_8h_source)]
+>>
+endobj
+14114 0 obj
+<<
+/Names [(_s_o_i_l_2_types_8h_source_l00001) 8436 0 R (_s_o_i_l_2_types_8h_source_l00008) 8437 0 R (_s_o_i_l_2_types_8h_source_l00009) 8438 0 R (_s_o_i_l_2_types_8h_source_l00010) 8439 0 R (_s_o_i_l_2_types_8h_source_l00011) 8440 0 R (_s_o_i_l_2_types_8h_source_l00012) 8441 0 R]
+/Limits [(_s_o_i_l_2_types_8h_source_l00001) (_s_o_i_l_2_types_8h_source_l00012)]
+>>
+endobj
+14115 0 obj
+<<
+/Names [(_s_o_i_l_2_types_8h_source_l00018) 3658 0 R (_s_o_i_l_2_types_8h_source_l00019) 8442 0 R (_s_o_i_l_2_types_8h_source_l00026) 3643 0 R (_s_o_i_l_2_types_8h_source_l00027) 8443 0 R (_s_o_i_l_2_types_8h_source_l00033) 3640 0 R (_s_o_i_l_2_types_8h_source_l00034) 8444 0 R]
+/Limits [(_s_o_i_l_2_types_8h_source_l00018) (_s_o_i_l_2_types_8h_source_l00034)]
+>>
+endobj
+14116 0 obj
+<<
+/Names [(_s_o_i_l_2_types_8h_source_l00040) 3659 0 R (_s_o_i_l_2_types_8h_source_l00041) 8445 0 R (_s_o_i_l_2_types_8h_source_l00047) 3644 0 R (_s_o_i_l_2_types_8h_source_l00048) 8446 0 R (_s_o_i_l_2_types_8h_source_l00054) 3660 0 R (_s_o_i_l_2_types_8h_source_l00055) 8447 0 R]
+/Limits [(_s_o_i_l_2_types_8h_source_l00040) (_s_o_i_l_2_types_8h_source_l00055)]
+>>
+endobj
+14117 0 obj
+<<
+/Names [(_s_o_i_l_2_types_8h_source_l00061) 3642 0 R (_s_o_i_l_2_types_8h_source_l00062) 8448 0 R (_s_o_i_l_2_types_8h_source_l00063) 8449 0 R (_s_o_i_l_2_types_8h_source_l00064) 8450 0 R (_s_o_i_l_2constants_8h) 3324 0 R (_s_o_i_l_2constants_8h_ac50762666aa00bd3a4308158510f1748) 7359 0 R]
+/Limits [(_s_o_i_l_2_types_8h_source_l00061) (_s_o_i_l_2constants_8h_ac50762666aa00bd3a4308158510f1748)]
+>>
+endobj
+14118 0 obj
+<<
+/Names [(_s_o_i_l_2constants_8h_source) 7360 0 R (_s_o_i_l_2constants_8h_source_l00001) 7361 0 R (_s_o_i_l_2constants_8h_source_l00006) 7362 0 R (_s_o_i_l_2constants_8h_source_l00007) 7363 0 R (_s_o_i_l_2constants_8h_source_l00008) 7364 0 R (_s_o_i_l_2constants_8h_source_l00009) 7365 0 R]
+/Limits [(_s_o_i_l_2constants_8h_source) (_s_o_i_l_2constants_8h_source_l00009)]
+>>
+endobj
+14119 0 obj
+<<
+/Names [(_s_o_i_l_2constants_8h_source_l00010) 7366 0 R (_s_o_i_l_2constants_8h_source_l00011) 7367 0 R (_s_o_i_l_2constants_8h_source_l00012) 7368 0 R (_s_o_i_l_2constants_8h_source_l00013) 7369 0 R (_s_o_i_l_2constants_8h_source_l00014) 7370 0 R (_s_o_i_l_2constants_8h_source_l00015) 7371 0 R]
+/Limits [(_s_o_i_l_2constants_8h_source_l00010) (_s_o_i_l_2constants_8h_source_l00015)]
+>>
+endobj
+14120 0 obj
+<<
+/Names [(_s_o_i_l_2constants_8h_source_l00016) 7372 0 R (_s_o_i_l_2constants_8h_source_l00017) 7373 0 R (_s_o_i_l_2constants_8h_source_l00018) 7374 0 R (_s_o_i_l_2constants_8h_source_l00019) 7375 0 R (_s_o_i_l_2constants_8h_source_l00020) 7376 0 R (_s_o_i_l_2constants_8h_source_l00021) 7377 0 R]
+/Limits [(_s_o_i_l_2constants_8h_source_l00016) (_s_o_i_l_2constants_8h_source_l00021)]
+>>
+endobj
+14121 0 obj
+<<
+/Names [(_s_o_i_l_2constants_8h_source_l00022) 7378 0 R (_server_8cpp) 3316 0 R (_server_8cpp_source) 6441 0 R (_server_8cpp_source_l00001) 8239 0 R (_server_8cpp_source_l00002) 8240 0 R (_server_8cpp_source_l00003) 8241 0 R]
+/Limits [(_s_o_i_l_2constants_8h_source_l00022) (_server_8cpp_source_l00003)]
+>>
+endobj
+14122 0 obj
+<<
+/Names [(_server_8cpp_source_l00004) 8242 0 R (_server_8cpp_source_l00005) 8243 0 R (_server_8cpp_source_l00006) 8244 0 R (_server_8cpp_source_l00007) 8245 0 R (_server_8cpp_source_l00008) 8246 0 R (_server_8cpp_source_l00009) 6440 0 R]
+/Limits [(_server_8cpp_source_l00004) (_server_8cpp_source_l00009)]
+>>
+endobj
+14123 0 obj
+<<
+/Names [(_server_8cpp_source_l00010) 8247 0 R (_server_8cpp_source_l00011) 8248 0 R (_server_8cpp_source_l00012) 8249 0 R (_server_8cpp_source_l00013) 8250 0 R (_server_8cpp_source_l00014) 8251 0 R (_server_8cpp_source_l00015) 6442 0 R]
+/Limits [(_server_8cpp_source_l00010) (_server_8cpp_source_l00015)]
+>>
+endobj
+14124 0 obj
+<<
+/Names [(_server_8cpp_source_l00016) 8252 0 R (_server_8cpp_source_l00017) 8253 0 R (_server_8cpp_source_l00018) 8254 0 R (_server_8cpp_source_l00019) 8255 0 R (_server_8cpp_source_l00020) 8256 0 R (_server_8cpp_source_l00021) 8257 0 R]
+/Limits [(_server_8cpp_source_l00016) (_server_8cpp_source_l00021)]
+>>
+endobj
+14125 0 obj
+<<
+/Names [(_server_8cpp_source_l00022) 8258 0 R (_server_8cpp_source_l00023) 8259 0 R (_server_8cpp_source_l00024) 8260 0 R (_server_8cpp_source_l00025) 8261 0 R (_server_8cpp_source_l00026) 8262 0 R (_server_8cpp_source_l00027) 8263 0 R]
+/Limits [(_server_8cpp_source_l00022) (_server_8cpp_source_l00027)]
+>>
+endobj
+14126 0 obj
+<<
+/Names [(_server_8cpp_source_l00028) 8264 0 R (_server_8cpp_source_l00029) 8265 0 R (_server_8cpp_source_l00030) 8266 0 R (_server_8cpp_source_l00031) 8267 0 R (_server_8cpp_source_l00032) 8268 0 R (_server_8cpp_source_l00033) 8269 0 R]
+/Limits [(_server_8cpp_source_l00028) (_server_8cpp_source_l00033)]
+>>
+endobj
+14127 0 obj
+<<
+/Names [(_server_8cpp_source_l00034) 8270 0 R (_server_8cpp_source_l00035) 8271 0 R (_server_8cpp_source_l00036) 8272 0 R (_server_8cpp_source_l00037) 8273 0 R (_server_8cpp_source_l00038) 8274 0 R (_server_8cpp_source_l00039) 6443 0 R]
+/Limits [(_server_8cpp_source_l00034) (_server_8cpp_source_l00039)]
+>>
+endobj
+14128 0 obj
+<<
+/Names [(_server_8cpp_source_l00040) 8275 0 R (_server_8cpp_source_l00041) 8276 0 R (_server_8cpp_source_l00042) 8277 0 R (_server_8cpp_source_l00043) 8278 0 R (_server_8cpp_source_l00044) 6461 0 R (_server_8cpp_source_l00045) 8279 0 R]
+/Limits [(_server_8cpp_source_l00040) (_server_8cpp_source_l00045)]
+>>
+endobj
+14129 0 obj
+<<
+/Names [(_server_8cpp_source_l00046) 8280 0 R (_server_8cpp_source_l00047) 8281 0 R (_server_8cpp_source_l00048) 8282 0 R (_server_8cpp_source_l00049) 8283 0 R (_server_8cpp_source_l00050) 8284 0 R (_server_8cpp_source_l00051) 8285 0 R]
+/Limits [(_server_8cpp_source_l00046) (_server_8cpp_source_l00051)]
+>>
+endobj
+14130 0 obj
+<<
+/Names [(_server_8cpp_source_l00052) 8286 0 R (_server_8cpp_source_l00053) 8287 0 R (_server_8cpp_source_l00054) 8288 0 R (_server_8h) 3317 0 R (_server_8h_source) 6424 0 R (_server_8h_source_l00001) 8313 0 R]
+/Limits [(_server_8cpp_source_l00052) (_server_8h_source_l00001)]
+>>
+endobj
+14131 0 obj
+<<
+/Names [(_server_8h_source_l00002) 8314 0 R (_server_8h_source_l00003) 8315 0 R (_server_8h_source_l00004) 8316 0 R (_server_8h_source_l00005) 8317 0 R (_server_8h_source_l00006) 8318 0 R (_server_8h_source_l00007) 8319 0 R]
+/Limits [(_server_8h_source_l00002) (_server_8h_source_l00007)]
+>>
+endobj
+14132 0 obj
+<<
+/Names [(_server_8h_source_l00008) 8320 0 R (_server_8h_source_l00009) 8321 0 R (_server_8h_source_l00010) 8322 0 R (_server_8h_source_l00011) 8323 0 R (_server_8h_source_l00012) 8324 0 R (_server_8h_source_l00021) 6423 0 R]
+/Limits [(_server_8h_source_l00008) (_server_8h_source_l00021)]
+>>
+endobj
+14133 0 obj
+<<
+/Names [(_server_8h_source_l00022) 8325 0 R (_server_8h_source_l00023) 8326 0 R (_server_8h_source_l00029) 8327 0 R (_server_8h_source_l00030) 8328 0 R (_server_8h_source_l00037) 8329 0 R (_server_8h_source_l00038) 8330 0 R]
+/Limits [(_server_8h_source_l00022) (_server_8h_source_l00038)]
+>>
+endobj
+14134 0 obj
+<<
+/Names [(_server_8h_source_l00049) 8331 0 R (_server_8h_source_l00050) 8332 0 R (_server_8h_source_l00051) 8333 0 R (_server_8h_source_l00057) 8334 0 R (_server_8h_source_l00058) 8335 0 R (_server_8h_source_l00059) 8336 0 R]
+/Limits [(_server_8h_source_l00049) (_server_8h_source_l00059)]
+>>
+endobj
+14135 0 obj
+<<
+/Names [(_server_8h_source_l00069) 8337 0 R (_server_8h_source_l00070) 8338 0 R (_server_8h_source_l00077) 8339 0 R (_server_8h_source_l00078) 8340 0 R (_server_8h_source_l00084) 6460 0 R (_server_8h_source_l00085) 8341 0 R]
+/Limits [(_server_8h_source_l00069) (_server_8h_source_l00085)]
+>>
+endobj
+14136 0 obj
+<<
+/Names [(_server_8h_source_l00091) 6459 0 R (_server_8h_source_l00092) 8342 0 R (_server_8h_source_l00104) 8343 0 R (_server_8h_source_l00105) 8344 0 R (_server_8h_source_l00114) 8345 0 R (_server_8h_source_l00115) 8346 0 R]
+/Limits [(_server_8h_source_l00091) (_server_8h_source_l00115)]
+>>
+endobj
+14137 0 obj
+<<
+/Names [(_server_8h_source_l00116) 8347 0 R (_server_8h_source_l00117) 8348 0 R (_server_8h_source_l00118) 8349 0 R (_signer_8cpp) 3322 0 R (_signer_8cpp_source) 6486 0 R (_signer_8cpp_source_l00001) 8576 0 R]
+/Limits [(_server_8h_source_l00116) (_signer_8cpp_source_l00001)]
+>>
+endobj
+14138 0 obj
+<<
+/Names [(_signer_8cpp_source_l00002) 8593 0 R (_signer_8cpp_source_l00003) 8594 0 R (_signer_8cpp_source_l00004) 8595 0 R (_signer_8cpp_source_l00005) 8596 0 R (_signer_8cpp_source_l00006) 8597 0 R (_signer_8cpp_source_l00007) 8598 0 R]
+/Limits [(_signer_8cpp_source_l00002) (_signer_8cpp_source_l00007)]
+>>
+endobj
+14139 0 obj
+<<
+/Names [(_signer_8cpp_source_l00008) 8599 0 R (_signer_8cpp_source_l00009) 8600 0 R (_signer_8cpp_source_l00010) 8601 0 R (_signer_8cpp_source_l00011) 6485 0 R (_signer_8cpp_source_l00012) 8602 0 R (_signer_8cpp_source_l00013) 8603 0 R]
+/Limits [(_signer_8cpp_source_l00008) (_signer_8cpp_source_l00013)]
+>>
+endobj
+14140 0 obj
+<<
+/Names [(_signer_8cpp_source_l00014) 8604 0 R (_signer_8cpp_source_l00015) 8605 0 R (_signer_8cpp_source_l00016) 8606 0 R (_signer_8cpp_source_l00017) 8607 0 R (_signer_8cpp_source_l00018) 8608 0 R (_signer_8cpp_source_l00019) 8609 0 R]
+/Limits [(_signer_8cpp_source_l00014) (_signer_8cpp_source_l00019)]
+>>
+endobj
+14141 0 obj
+<<
+/Names [(_signer_8cpp_source_l00020) 8610 0 R (_signer_8cpp_source_l00021) 8611 0 R (_signer_8cpp_source_l00022) 8612 0 R (_signer_8cpp_source_l00023) 8613 0 R (_signer_8cpp_source_l00024) 8614 0 R (_signer_8cpp_source_l00025) 8615 0 R]
+/Limits [(_signer_8cpp_source_l00020) (_signer_8cpp_source_l00025)]
+>>
+endobj
+14142 0 obj
+<<
+/Names [(_signer_8cpp_source_l00026) 8616 0 R (_signer_8cpp_source_l00027) 8617 0 R (_signer_8cpp_source_l00028) 8618 0 R (_signer_8cpp_source_l00029) 8619 0 R (_signer_8cpp_source_l00030) 8620 0 R (_signer_8cpp_source_l00031) 8621 0 R]
+/Limits [(_signer_8cpp_source_l00026) (_signer_8cpp_source_l00031)]
+>>
+endobj
+14143 0 obj
+<<
+/Names [(_signer_8cpp_source_l00032) 8622 0 R (_signer_8cpp_source_l00033) 8623 0 R (_signer_8cpp_source_l00034) 8624 0 R (_signer_8cpp_source_l00035) 8625 0 R (_signer_8cpp_source_l00036) 6487 0 R (_signer_8cpp_source_l00037) 8626 0 R]
+/Limits [(_signer_8cpp_source_l00032) (_signer_8cpp_source_l00037)]
+>>
+endobj
+14144 0 obj
+<<
+/Names [(_signer_8cpp_source_l00038) 8627 0 R (_signer_8cpp_source_l00039) 8628 0 R (_signer_8cpp_source_l00040) 8629 0 R (_signer_8cpp_source_l00041) 6533 0 R (_signer_8cpp_source_l00042) 8630 0 R (_signer_8cpp_source_l00043) 8631 0 R]
+/Limits [(_signer_8cpp_source_l00038) (_signer_8cpp_source_l00043)]
+>>
+endobj
+14145 0 obj
+<<
+/Names [(_signer_8cpp_source_l00044) 8632 0 R (_signer_8cpp_source_l00045) 8633 0 R (_signer_8cpp_source_l00046) 8634 0 R (_signer_8cpp_source_l00047) 8635 0 R (_signer_8cpp_source_l00048) 8636 0 R (_signer_8cpp_source_l00049) 8637 0 R]
+/Limits [(_signer_8cpp_source_l00044) (_signer_8cpp_source_l00049)]
+>>
+endobj
+14146 0 obj
+<<
+/Names [(_signer_8cpp_source_l00050) 8638 0 R (_signer_8cpp_source_l00051) 8639 0 R (_signer_8cpp_source_l00052) 8640 0 R (_signer_8cpp_source_l00053) 8641 0 R (_signer_8cpp_source_l00054) 8642 0 R (_signer_8cpp_source_l00055) 8643 0 R]
+/Limits [(_signer_8cpp_source_l00050) (_signer_8cpp_source_l00055)]
+>>
+endobj
+14147 0 obj
+<<
+/Names [(_signer_8cpp_source_l00056) 8644 0 R (_signer_8cpp_source_l00057) 8645 0 R (_signer_8cpp_source_l00058) 8646 0 R (_signer_8cpp_source_l00059) 8647 0 R (_signer_8cpp_source_l00060) 8648 0 R (_signer_8cpp_source_l00061) 6498 0 R]
+/Limits [(_signer_8cpp_source_l00056) (_signer_8cpp_source_l00061)]
+>>
+endobj
+14148 0 obj
+<<
+/Names [(_signer_8cpp_source_l00062) 8649 0 R (_signer_8cpp_source_l00063) 8650 0 R (_signer_8cpp_source_l00064) 8651 0 R (_signer_8h) 3323 0 R (_signer_8h_a11ccc869c9ea1749e6fe88f44826b56a) 8683 0 R (_signer_8h_a2fca4fef9e4c7a2a739b1ea04acb56ce) 8684 0 R]
+/Limits [(_signer_8cpp_source_l00062) (_signer_8h_a2fca4fef9e4c7a2a739b1ea04acb56ce)]
+>>
+endobj
+14149 0 obj
+<<
+/Names [(_signer_8h_source) 6484 0 R (_signer_8h_source_l00001) 8685 0 R (_signer_8h_source_l00002) 8686 0 R (_signer_8h_source_l00003) 8687 0 R (_signer_8h_source_l00004) 8688 0 R (_signer_8h_source_l00005) 8689 0 R]
+/Limits [(_signer_8h_source) (_signer_8h_source_l00005)]
+>>
+endobj
+14150 0 obj
+<<
+/Names [(_signer_8h_source_l00006) 8690 0 R (_signer_8h_source_l00007) 8691 0 R (_signer_8h_source_l00008) 8692 0 R (_signer_8h_source_l00009) 8693 0 R (_signer_8h_source_l00010) 8694 0 R (_signer_8h_source_l00011) 8695 0 R]
+/Limits [(_signer_8h_source_l00006) (_signer_8h_source_l00011)]
+>>
+endobj
+14151 0 obj
+<<
+/Names [(_signer_8h_source_l00018) 6483 0 R (_signer_8h_source_l00019) 8696 0 R (_signer_8h_source_l00020) 8697 0 R (_signer_8h_source_l00026) 8698 0 R (_signer_8h_source_l00027) 8699 0 R (_signer_8h_source_l00034) 8700 0 R]
+/Limits [(_signer_8h_source_l00018) (_signer_8h_source_l00034)]
+>>
+endobj
+14152 0 obj
+<<
+/Names [(_signer_8h_source_l00035) 8701 0 R (_signer_8h_source_l00041) 8702 0 R (_signer_8h_source_l00042) 8703 0 R (_signer_8h_source_l00049) 8704 0 R (_signer_8h_source_l00050) 8705 0 R (_signer_8h_source_l00056) 8706 0 R]
+/Limits [(_signer_8h_source_l00035) (_signer_8h_source_l00056)]
+>>
+endobj
+14153 0 obj
+<<
+/Names [(_signer_8h_source_l00057) 8707 0 R (_signer_8h_source_l00067) 8708 0 R (_signer_8h_source_l00068) 8709 0 R (_signer_8h_source_l00077) 8710 0 R (_signer_8h_source_l00078) 8711 0 R (_signer_8h_source_l00086) 6497 0 R]
+/Limits [(_signer_8h_source_l00057) (_signer_8h_source_l00086)]
+>>
+endobj
+14154 0 obj
+<<
+/Names [(_signer_8h_source_l00087) 8712 0 R (_signer_8h_source_l00088) 8713 0 R (_signer_8h_source_l00089) 8714 0 R (_time_8cpp) 3373 0 R (_time_8cpp_source) 3731 0 R (_time_8cpp_source_l00001) 11739 0 R]
+/Limits [(_signer_8h_source_l00087) (_time_8cpp_source_l00001)]
+>>
+endobj
+14155 0 obj
+<<
+/Names [(_time_8cpp_source_l00002) 11740 0 R (_time_8cpp_source_l00003) 11741 0 R (_time_8cpp_source_l00004) 11742 0 R (_time_8cpp_source_l00005) 11743 0 R (_time_8cpp_source_l00006) 6592 0 R (_time_8cpp_source_l00007) 11744 0 R]
+/Limits [(_time_8cpp_source_l00002) (_time_8cpp_source_l00007)]
+>>
+endobj
+14156 0 obj
+<<
+/Names [(_time_8cpp_source_l00008) 11745 0 R (_time_8cpp_source_l00009) 11746 0 R (_time_8cpp_source_l00010) 11747 0 R (_time_8cpp_source_l00011) 11748 0 R (_time_8cpp_source_l00012) 11749 0 R (_time_8cpp_source_l00013) 11750 0 R]
+/Limits [(_time_8cpp_source_l00008) (_time_8cpp_source_l00013)]
+>>
+endobj
+14157 0 obj
+<<
+/Names [(_time_8cpp_source_l00014) 11751 0 R (_time_8cpp_source_l00015) 11752 0 R (_time_8cpp_source_l00016) 11753 0 R (_time_8cpp_source_l00017) 11754 0 R (_time_8cpp_source_l00018) 11755 0 R (_time_8cpp_source_l00019) 11756 0 R]
+/Limits [(_time_8cpp_source_l00014) (_time_8cpp_source_l00019)]
+>>
+endobj
+14158 0 obj
+<<
+/Names [(_time_8cpp_source_l00020) 11757 0 R (_time_8cpp_source_l00021) 11758 0 R (_time_8cpp_source_l00022) 11759 0 R (_time_8cpp_source_l00023) 11760 0 R (_time_8cpp_source_l00024) 11761 0 R (_time_8cpp_source_l00025) 11762 0 R]
+/Limits [(_time_8cpp_source_l00020) (_time_8cpp_source_l00025)]
+>>
+endobj
+14159 0 obj
+<<
+/Names [(_time_8cpp_source_l00026) 11763 0 R (_time_8cpp_source_l00027) 6564 0 R (_time_8cpp_source_l00028) 11764 0 R (_time_8cpp_source_l00029) 11765 0 R (_time_8cpp_source_l00030) 11766 0 R (_time_8cpp_source_l00031) 6565 0 R]
+/Limits [(_time_8cpp_source_l00026) (_time_8cpp_source_l00031)]
+>>
+endobj
+14160 0 obj
+<<
+/Names [(_time_8cpp_source_l00032) 11767 0 R (_time_8cpp_source_l00033) 11768 0 R (_time_8cpp_source_l00034) 11769 0 R (_time_8cpp_source_l00035) 11770 0 R (_time_8cpp_source_l00036) 11771 0 R (_time_8cpp_source_l00037) 11772 0 R]
+/Limits [(_time_8cpp_source_l00032) (_time_8cpp_source_l00037)]
+>>
+endobj
+14161 0 obj
+<<
+/Names [(_time_8cpp_source_l00038) 11773 0 R (_time_8cpp_source_l00039) 11774 0 R (_time_8cpp_source_l00040) 11775 0 R (_time_8cpp_source_l00041) 11776 0 R (_time_8cpp_source_l00042) 11777 0 R (_time_8cpp_source_l00043) 11778 0 R]
+/Limits [(_time_8cpp_source_l00038) (_time_8cpp_source_l00043)]
+>>
+endobj
+14162 0 obj
+<<
+/Names [(_time_8cpp_source_l00044) 11779 0 R (_time_8cpp_source_l00045) 11780 0 R (_time_8cpp_source_l00046) 6582 0 R (_time_8cpp_source_l00047) 11781 0 R (_time_8cpp_source_l00048) 11782 0 R (_time_8cpp_source_l00049) 11783 0 R]
+/Limits [(_time_8cpp_source_l00044) (_time_8cpp_source_l00049)]
+>>
+endobj
+14163 0 obj
+<<
+/Names [(_time_8cpp_source_l00050) 11784 0 R (_time_8cpp_source_l00051) 11785 0 R (_time_8cpp_source_l00052) 11786 0 R (_time_8cpp_source_l00053) 6583 0 R (_time_8cpp_source_l00054) 11805 0 R (_time_8cpp_source_l00055) 11806 0 R]
+/Limits [(_time_8cpp_source_l00050) (_time_8cpp_source_l00055)]
+>>
+endobj
+14164 0 obj
+<<
+/Names [(_time_8cpp_source_l00056) 11807 0 R (_time_8cpp_source_l00057) 6612 0 R (_time_8cpp_source_l00058) 11808 0 R (_time_8cpp_source_l00059) 11809 0 R (_time_8cpp_source_l00060) 11810 0 R (_time_8cpp_source_l00061) 11811 0 R]
+/Limits [(_time_8cpp_source_l00056) (_time_8cpp_source_l00061)]
+>>
+endobj
+14165 0 obj
+<<
+/Names [(_time_8cpp_source_l00062) 6593 0 R (_time_8cpp_source_l00063) 11812 0 R (_time_8cpp_source_l00064) 11813 0 R (_time_8cpp_source_l00065) 11814 0 R (_time_8cpp_source_l00066) 11815 0 R (_time_8cpp_source_l00067) 11816 0 R]
+/Limits [(_time_8cpp_source_l00062) (_time_8cpp_source_l00067)]
+>>
+endobj
+14166 0 obj
+<<
+/Names [(_time_8cpp_source_l00068) 11817 0 R (_time_8cpp_source_l00069) 11818 0 R (_time_8cpp_source_l00070) 11819 0 R (_time_8cpp_source_l00071) 11820 0 R (_time_8cpp_source_l00072) 11821 0 R (_time_8cpp_source_l00073) 11822 0 R]
+/Limits [(_time_8cpp_source_l00068) (_time_8cpp_source_l00073)]
+>>
+endobj
+14167 0 obj
+<<
+/Names [(_time_8cpp_source_l00074) 11823 0 R (_time_8cpp_source_l00075) 11824 0 R (_time_8cpp_source_l00076) 11825 0 R (_time_8cpp_source_l00077) 11826 0 R (_time_8cpp_source_l00078) 11827 0 R (_time_8cpp_source_l00079) 11828 0 R]
+/Limits [(_time_8cpp_source_l00074) (_time_8cpp_source_l00079)]
+>>
+endobj
+14168 0 obj
+<<
+/Names [(_time_8cpp_source_l00080) 11829 0 R (_time_8cpp_source_l00081) 11830 0 R (_time_8cpp_source_l00082) 11831 0 R (_time_8cpp_source_l00083) 11832 0 R (_time_8cpp_source_l00084) 11833 0 R (_time_8cpp_source_l00085) 11834 0 R]
+/Limits [(_time_8cpp_source_l00080) (_time_8cpp_source_l00085)]
+>>
+endobj
+14169 0 obj
+<<
+/Names [(_time_8cpp_source_l00086) 11835 0 R (_time_8cpp_source_l00087) 11836 0 R (_time_8cpp_source_l00088) 11837 0 R (_time_8cpp_source_l00089) 11838 0 R (_time_8cpp_source_l00090) 11839 0 R (_time_8cpp_source_l00091) 11840 0 R]
+/Limits [(_time_8cpp_source_l00086) (_time_8cpp_source_l00091)]
+>>
+endobj
+14170 0 obj
+<<
+/Names [(_time_8cpp_source_l00092) 11841 0 R (_time_8cpp_source_l00093) 11842 0 R (_time_8cpp_source_l00094) 11843 0 R (_time_8cpp_source_l00095) 11844 0 R (_time_8cpp_source_l00096) 11845 0 R (_time_8cpp_source_l00097) 11846 0 R]
+/Limits [(_time_8cpp_source_l00092) (_time_8cpp_source_l00097)]
+>>
+endobj
+14171 0 obj
+<<
+/Names [(_time_8cpp_source_l00098) 11847 0 R (_time_8cpp_source_l00099) 11848 0 R (_time_8cpp_source_l00100) 11849 0 R (_time_8cpp_source_l00101) 11850 0 R (_time_8cpp_source_l00102) 11851 0 R (_time_8cpp_source_l00103) 11852 0 R]
+/Limits [(_time_8cpp_source_l00098) (_time_8cpp_source_l00103)]
+>>
+endobj
+14172 0 obj
+<<
+/Names [(_time_8cpp_source_l00104) 11853 0 R (_time_8cpp_source_l00105) 11854 0 R (_time_8cpp_source_l00106) 11855 0 R (_time_8cpp_source_l00107) 11856 0 R (_time_8cpp_source_l00108) 11857 0 R (_time_8cpp_source_l00109) 11858 0 R]
+/Limits [(_time_8cpp_source_l00104) (_time_8cpp_source_l00109)]
+>>
+endobj
+14173 0 obj
+<<
+/Names [(_time_8cpp_source_l00110) 11859 0 R (_time_8cpp_source_l00111) 11860 0 R (_time_8cpp_source_l00112) 11861 0 R (_time_8cpp_source_l00113) 11862 0 R (_time_8cpp_source_l00114) 11863 0 R (_time_8cpp_source_l00115) 11864 0 R]
+/Limits [(_time_8cpp_source_l00110) (_time_8cpp_source_l00115)]
+>>
+endobj
+14174 0 obj
+<<
+/Names [(_time_8cpp_source_l00116) 3732 0 R (_time_8cpp_source_l00117) 11865 0 R (_time_8cpp_source_l00118) 11866 0 R (_time_8cpp_source_l00119) 11867 0 R (_time_8cpp_source_l00120) 11868 0 R (_time_8cpp_source_l00121) 11869 0 R]
+/Limits [(_time_8cpp_source_l00116) (_time_8cpp_source_l00121)]
+>>
+endobj
+14175 0 obj
+<<
+/Names [(_time_8cpp_source_l00122) 11870 0 R (_time_8cpp_source_l00123) 11871 0 R (_time_8cpp_source_l00124) 11872 0 R (_time_8cpp_source_l00125) 11873 0 R (_time_8cpp_source_l00126) 11874 0 R (_time_8cpp_source_l00127) 11875 0 R]
+/Limits [(_time_8cpp_source_l00122) (_time_8cpp_source_l00127)]
+>>
+endobj
+14176 0 obj
+<<
+/Names [(_time_8cpp_source_l00128) 3730 0 R (_time_8cpp_source_l00129) 11876 0 R (_time_8cpp_source_l00130) 11877 0 R (_time_8cpp_source_l00131) 11878 0 R (_time_8cpp_source_l00132) 11879 0 R (_time_8cpp_source_l00133) 11880 0 R]
+/Limits [(_time_8cpp_source_l00128) (_time_8cpp_source_l00133)]
+>>
+endobj
+14177 0 obj
+<<
+/Names [(_time_8cpp_source_l00134) 11881 0 R (_time_8cpp_source_l00135) 11882 0 R (_time_8cpp_source_l00136) 11883 0 R (_time_8cpp_source_l00137) 11884 0 R (_time_8cpp_source_l00138) 11885 0 R (_time_8h) 3374 0 R]
+/Limits [(_time_8cpp_source_l00134) (_time_8h)]
+>>
+endobj
+14178 0 obj
+<<
+/Names [(_time_8h_source) 6563 0 R (_time_8h_source_l00001) 11931 0 R (_time_8h_source_l00002) 11932 0 R (_time_8h_source_l00003) 11933 0 R (_time_8h_source_l00004) 11934 0 R (_time_8h_source_l00005) 11935 0 R]
+/Limits [(_time_8h_source) (_time_8h_source_l00005)]
+>>
+endobj
+14179 0 obj
+<<
+/Names [(_time_8h_source_l00006) 11936 0 R (_time_8h_source_l00012) 6562 0 R (_time_8h_source_l00013) 11937 0 R (_time_8h_source_l00014) 11938 0 R (_time_8h_source_l00020) 11939 0 R (_time_8h_source_l00021) 11940 0 R]
+/Limits [(_time_8h_source_l00006) (_time_8h_source_l00021)]
+>>
+endobj
+14180 0 obj
+<<
+/Names [(_time_8h_source_l00029) 11941 0 R (_time_8h_source_l00030) 11942 0 R (_time_8h_source_l00039) 11943 0 R (_time_8h_source_l00040) 11944 0 R (_time_8h_source_l00046) 11945 0 R (_time_8h_source_l00047) 11946 0 R]
+/Limits [(_time_8h_source_l00029) (_time_8h_source_l00047)]
+>>
+endobj
+14181 0 obj
+<<
+/Names [(_time_8h_source_l00058) 11947 0 R (_time_8h_source_l00059) 11948 0 R (_time_8h_source_l00068) 11949 0 R (_time_8h_source_l00069) 11950 0 R (_time_8h_source_l00075) 11951 0 R (_time_8h_source_l00076) 11952 0 R]
+/Limits [(_time_8h_source_l00058) (_time_8h_source_l00076)]
+>>
+endobj
+14182 0 obj
+<<
+/Names [(_time_8h_source_l00092) 6584 0 R (_time_8h_source_l00093) 11953 0 R (_time_8h_source_l00100) 6611 0 R (_time_8h_source_l00101) 11954 0 R (_time_8h_source_l00111) 11955 0 R (_time_8h_source_l00112) 11956 0 R]
+/Limits [(_time_8h_source_l00092) (_time_8h_source_l00112)]
+>>
+endobj
+14183 0 obj
+<<
+/Names [(_time_8h_source_l00118) 11957 0 R (_time_8h_source_l00119) 11958 0 R (_time_8h_source_l00125) 11959 0 R (_time_8h_source_l00126) 11960 0 R (_time_8h_source_l00143) 11961 0 R (_time_8h_source_l00144) 11962 0 R]
+/Limits [(_time_8h_source_l00118) (_time_8h_source_l00144)]
+>>
+endobj
+14184 0 obj
+<<
+/Names [(_time_8h_source_l00145) 11963 0 R (_time_8h_source_l00158) 11964 0 R (_time_8h_source_l00159) 11965 0 R (_time_8h_source_l00160) 11966 0 R (_time_8h_source_l00173) 11967 0 R (_time_8h_source_l00174) 11968 0 R]
+/Limits [(_time_8h_source_l00145) (_time_8h_source_l00174)]
+>>
+endobj
+14185 0 obj
+<<
+/Names [(_types_8cpp) 3375 0 R (_types_8cpp_source) 11987 0 R (_types_8cpp_source_l00001) 11988 0 R (_u_d_p_2_configuration_8cpp) 3381 0 R (_u_d_p_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d) 7119 0 R (_u_d_p_2_configuration_8cpp_source) 4087 0 R]
+/Limits [(_types_8cpp) (_u_d_p_2_configuration_8cpp_source)]
+>>
+endobj
+14186 0 obj
+<<
+/Names [(_u_d_p_2_configuration_8cpp_source_l00001) 7120 0 R (_u_d_p_2_configuration_8cpp_source_l00002) 7121 0 R (_u_d_p_2_configuration_8cpp_source_l00003) 7122 0 R (_u_d_p_2_configuration_8cpp_source_l00004) 7123 0 R (_u_d_p_2_configuration_8cpp_source_l00005) 7124 0 R (_u_d_p_2_configuration_8cpp_source_l00006) 7125 0 R]
+/Limits [(_u_d_p_2_configuration_8cpp_source_l00001) (_u_d_p_2_configuration_8cpp_source_l00006)]
+>>
+endobj
+14187 0 obj
+<<
+/Names [(_u_d_p_2_configuration_8cpp_source_l00007) 4086 0 R (_u_d_p_2_configuration_8cpp_source_l00008) 7126 0 R (_u_d_p_2_configuration_8cpp_source_l00009) 7127 0 R (_u_d_p_2_configuration_8cpp_source_l00010) 7128 0 R (_u_d_p_2_configuration_8cpp_source_l00011) 7129 0 R (_u_d_p_2_configuration_8cpp_source_l00012) 4088 0 R]
+/Limits [(_u_d_p_2_configuration_8cpp_source_l00007) (_u_d_p_2_configuration_8cpp_source_l00012)]
+>>
+endobj
+14188 0 obj
+<<
+/Names [(_u_d_p_2_configuration_8cpp_source_l00013) 7130 0 R (_u_d_p_2_configuration_8cpp_source_l00014) 7131 0 R (_u_d_p_2_configuration_8cpp_source_l00015) 7132 0 R (_u_d_p_2_configuration_8cpp_source_l00016) 7133 0 R (_u_d_p_2_configuration_8cpp_source_l00017) 7134 0 R (_u_d_p_2_configuration_8cpp_source_l00018) 7135 0 R]
+/Limits [(_u_d_p_2_configuration_8cpp_source_l00013) (_u_d_p_2_configuration_8cpp_source_l00018)]
+>>
+endobj
+14189 0 obj
+<<
+/Names [(_u_d_p_2_configuration_8cpp_source_l00019) 7136 0 R (_u_d_p_2_configuration_8cpp_source_l00020) 7137 0 R (_u_d_p_2_configuration_8cpp_source_l00021) 7138 0 R (_u_d_p_2_configuration_8cpp_source_l00022) 7139 0 R (_u_d_p_2_configuration_8cpp_source_l00023) 7140 0 R (_u_d_p_2_configuration_8cpp_source_l00024) 4089 0 R]
+/Limits [(_u_d_p_2_configuration_8cpp_source_l00019) (_u_d_p_2_configuration_8cpp_source_l00024)]
+>>
+endobj
+14190 0 obj
+<<
+/Names [(_u_d_p_2_configuration_8cpp_source_l00025) 7141 0 R (_u_d_p_2_configuration_8cpp_source_l00026) 7142 0 R (_u_d_p_2_configuration_8cpp_source_l00027) 7143 0 R (_u_d_p_2_configuration_8h) 3382 0 R (_u_d_p_2_configuration_8h_source) 4072 0 R (_u_d_p_2_configuration_8h_source_l00001) 7249 0 R]
+/Limits [(_u_d_p_2_configuration_8cpp_source_l00025) (_u_d_p_2_configuration_8h_source_l00001)]
+>>
+endobj
+14191 0 obj
+<<
+/Names [(_u_d_p_2_configuration_8h_source_l00002) 7250 0 R (_u_d_p_2_configuration_8h_source_l00003) 7251 0 R (_u_d_p_2_configuration_8h_source_l00004) 7252 0 R (_u_d_p_2_configuration_8h_source_l00005) 7253 0 R (_u_d_p_2_configuration_8h_source_l00006) 7254 0 R (_u_d_p_2_configuration_8h_source_l00013) 4071 0 R]
+/Limits [(_u_d_p_2_configuration_8h_source_l00002) (_u_d_p_2_configuration_8h_source_l00013)]
+>>
+endobj
+14192 0 obj
+<<
+/Names [(_u_d_p_2_configuration_8h_source_l00014) 7255 0 R (_u_d_p_2_configuration_8h_source_l00015) 7256 0 R (_u_d_p_2_configuration_8h_source_l00021) 4085 0 R (_u_d_p_2_configuration_8h_source_l00022) 7257 0 R (_u_d_p_2_configuration_8h_source_l00028) 4118 0 R (_u_d_p_2_configuration_8h_source_l00029) 7258 0 R]
+/Limits [(_u_d_p_2_configuration_8h_source_l00014) (_u_d_p_2_configuration_8h_source_l00029)]
+>>
+endobj
+14193 0 obj
+<<
+/Names [(_u_d_p_2_configuration_8h_source_l00035) 7259 0 R (_u_d_p_2_configuration_8h_source_l00036) 7260 0 R (_u_d_p_2_configuration_8h_source_l00044) 7261 0 R (_u_d_p_2_configuration_8h_source_l00045) 7262 0 R (_u_d_p_2_configuration_8h_source_l00051) 7263 0 R (_u_d_p_2_configuration_8h_source_l00052) 7264 0 R]
+/Limits [(_u_d_p_2_configuration_8h_source_l00035) (_u_d_p_2_configuration_8h_source_l00052)]
+>>
+endobj
+14194 0 obj
+<<
+/Names [(_u_d_p_2_configuration_8h_source_l00053) 7265 0 R (_u_d_p_2constants_8h) 3383 0 R (_u_d_p_2constants_8h_source) 7379 0 R (_u_d_p_2constants_8h_source_l00001) 7380 0 R (_u_d_p_2constants_8h_source_l00006) 7381 0 R (_u_d_p_2constants_8h_source_l00007) 7382 0 R]
+/Limits [(_u_d_p_2_configuration_8h_source_l00053) (_u_d_p_2constants_8h_source_l00007)]
+>>
+endobj
+14195 0 obj
+<<
+/Names [(_u_d_p_2constants_8h_source_l00008) 7383 0 R (_u_d_p_2constants_8h_source_l00009) 7384 0 R (_u_d_p_2constants_8h_source_l00010) 7385 0 R (_u_d_p_2constants_8h_source_l00011) 7386 0 R (_u_d_p_2constants_8h_source_l00012) 7387 0 R (_u_d_p_2constants_8h_source_l00013) 7388 0 R]
+/Limits [(_u_d_p_2constants_8h_source_l00008) (_u_d_p_2constants_8h_source_l00013)]
+>>
+endobj
+14196 0 obj
+<<
+/Names [(_u_d_p_2constants_8h_source_l00014) 7389 0 R (_u_d_p_2constants_8h_source_l00015) 7390 0 R (_u_d_p_2constants_8h_source_l00016) 7391 0 R (_u_d_p_2constants_8h_source_l00017) 7392 0 R (_u_d_p_2constants_8h_source_l00018) 7393 0 R (_u_d_p_2constants_8h_source_l00019) 7394 0 R]
+/Limits [(_u_d_p_2constants_8h_source_l00014) (_u_d_p_2constants_8h_source_l00019)]
+>>
+endobj
+14197 0 obj
+<<
+/Names [(_u_d_p_2constants_8h_source_l00020) 7395 0 R (_u_d_p_2constants_8h_source_l00021) 7396 0 R (_variable_8cpp) 3377 0 R (_variable_8cpp_source) 11989 0 R (_variable_8cpp_source_l00001) 11990 0 R (_variable_8h) 3378 0 R]
+/Limits [(_u_d_p_2constants_8h_source_l00020) (_variable_8h)]
+>>
+endobj
+14198 0 obj
+<<
+/Names [(_variable_8h_source) 6756 0 R (_variable_8h_source_l00001) 12079 0 R (_variable_8h_source_l00002) 12080 0 R (_variable_8h_source_l00003) 12081 0 R (_variable_8h_source_l00004) 12082 0 R (_variable_8h_source_l00005) 12083 0 R]
+/Limits [(_variable_8h_source) (_variable_8h_source_l00005)]
+>>
+endobj
+14199 0 obj
+<<
+/Names [(_variable_8h_source_l00006) 12084 0 R (_variable_8h_source_l00007) 12085 0 R (_variable_8h_source_l00008) 12086 0 R (_variable_8h_source_l00009) 12087 0 R (_variable_8h_source_l00010) 12088 0 R (_variable_8h_source_l00011) 12089 0 R]
+/Limits [(_variable_8h_source_l00006) (_variable_8h_source_l00011)]
+>>
+endobj
+14200 0 obj
+<<
+/Names [(_variable_8h_source_l00012) 12090 0 R (_variable_8h_source_l00013) 12091 0 R (_variable_8h_source_l00014) 12092 0 R (_variable_8h_source_l00015) 12093 0 R (_variable_8h_source_l00040) 12094 0 R (_variable_8h_source_l00041) 6755 0 R]
+/Limits [(_variable_8h_source_l00012) (_variable_8h_source_l00041)]
+>>
+endobj
+14201 0 obj
+<<
+/Names [(_variable_8h_source_l00042) 12095 0 R (_variable_8h_source_l00043) 12096 0 R (_variable_8h_source_l00044) 12097 0 R (_variable_8h_source_l00051) 6963 0 R (_variable_8h_source_l00052) 12098 0 R (_variable_8h_source_l00061) 6962 0 R]
+/Limits [(_variable_8h_source_l00042) (_variable_8h_source_l00061)]
+>>
+endobj
+14202 0 obj
+<<
+/Names [(_variable_8h_source_l00062) 12099 0 R (_variable_8h_source_l00074) 6961 0 R (_variable_8h_source_l00075) 12100 0 R (_variable_8h_source_l00083) 12101 0 R (_variable_8h_source_l00084) 12102 0 R (_variable_8h_source_l00092) 12103 0 R]
+/Limits [(_variable_8h_source_l00062) (_variable_8h_source_l00092)]
+>>
+endobj
+14203 0 obj
+<<
+/Names [(_variable_8h_source_l00093) 12104 0 R (_variable_8h_source_l00094) 12105 0 R (_variable_8h_source_l00109) 12106 0 R (_variable_8h_source_l00110) 12107 0 R (_variable_8h_source_l00116) 12108 0 R (_variable_8h_source_l00117) 12109 0 R]
+/Limits [(_variable_8h_source_l00093) (_variable_8h_source_l00117)]
+>>
+endobj
+14204 0 obj
+<<
+/Names [(_variable_8h_source_l00133) 12110 0 R (_variable_8h_source_l00134) 12111 0 R (_variable_8h_source_l00146) 12112 0 R (_variable_8h_source_l00147) 12113 0 R (_variable_8h_source_l00157) 12114 0 R (_variable_8h_source_l00158) 12115 0 R]
+/Limits [(_variable_8h_source_l00133) (_variable_8h_source_l00158)]
+>>
+endobj
+14205 0 obj
+<<
+/Names [(_variable_8h_source_l00173) 12116 0 R (_variable_8h_source_l00174) 12117 0 R (_variable_8h_source_l00187) 12118 0 R (_variable_8h_source_l00188) 12119 0 R (_variable_8h_source_l00199) 12120 0 R (_variable_8h_source_l00200) 12121 0 R]
+/Limits [(_variable_8h_source_l00173) (_variable_8h_source_l00200)]
+>>
+endobj
+14206 0 obj
+<<
+/Names [(_variable_8h_source_l00211) 12122 0 R (_variable_8h_source_l00212) 12123 0 R (_variable_8h_source_l00229) 12124 0 R (_variable_8h_source_l00230) 12125 0 R (_variable_8h_source_l00239) 12126 0 R (_variable_8h_source_l00240) 12127 0 R]
+/Limits [(_variable_8h_source_l00211) (_variable_8h_source_l00240)]
+>>
+endobj
+14207 0 obj
+<<
+/Names [(_variable_8h_source_l00255) 12128 0 R (_variable_8h_source_l00256) 12129 0 R (_variable_8h_source_l00268) 12130 0 R (_variable_8h_source_l00269) 12131 0 R (_variable_8h_source_l00270) 12132 0 R (_variable_8h_source_l00277) 6893 0 R]
+/Limits [(_variable_8h_source_l00255) (_variable_8h_source_l00277)]
+>>
+endobj
+14208 0 obj
+<<
+/Names [(_variable_8h_source_l00278) 12133 0 R (_variable_8h_source_l00279) 12134 0 R (_variable_8h_source_l00280) 12135 0 R (_variable_8h_source_l00281) 12136 0 R (_variable_8h_source_l00303) 12137 0 R (_variable_8h_source_l00304) 12138 0 R]
+/Limits [(_variable_8h_source_l00278) (_variable_8h_source_l00304)]
+>>
+endobj
+14209 0 obj
+<<
+/Names [(_variable_8h_source_l00305) 12139 0 R (_variable_8h_source_l00306) 12140 0 R (_variable_8h_source_l00307) 12141 0 R (_variable_8h_source_l00308) 12142 0 R (_variable_8h_source_l00309) 12143 0 R (_variable_8h_source_l00310) 12144 0 R]
+/Limits [(_variable_8h_source_l00305) (_variable_8h_source_l00310)]
+>>
+endobj
+14210 0 obj
+<<
+/Names [(_variable_8h_source_l00311) 12145 0 R (_variable_8h_source_l00312) 6770 0 R (_variable_8h_source_l00313) 12146 0 R (_variable_8h_source_l00314) 12190 0 R (_variable_8h_source_l00315) 12191 0 R (_variable_8h_source_l00316) 12192 0 R]
+/Limits [(_variable_8h_source_l00311) (_variable_8h_source_l00316)]
+>>
+endobj
+14211 0 obj
+<<
+/Names [(_variable_8h_source_l00317) 12193 0 R (_variable_8h_source_l00318) 12194 0 R (_variable_8h_source_l00319) 12195 0 R (_variable_8h_source_l00320) 12196 0 R (_variable_8h_source_l00321) 12197 0 R (_variable_8h_source_l00322) 12198 0 R]
+/Limits [(_variable_8h_source_l00317) (_variable_8h_source_l00322)]
+>>
+endobj
+14212 0 obj
+<<
+/Names [(_variable_8h_source_l00323) 6771 0 R (_variable_8h_source_l00324) 12199 0 R (_variable_8h_source_l00325) 12200 0 R (_variable_8h_source_l00326) 12201 0 R (_variable_8h_source_l00327) 12202 0 R (_variable_8h_source_l00328) 6815 0 R]
+/Limits [(_variable_8h_source_l00323) (_variable_8h_source_l00328)]
+>>
+endobj
+14213 0 obj
+<<
+/Names [(_variable_8h_source_l00329) 12203 0 R (_variable_8h_source_l00330) 12204 0 R (_variable_8h_source_l00331) 12205 0 R (_variable_8h_source_l00332) 12206 0 R (_variable_8h_source_l00333) 12207 0 R (_variable_8h_source_l00334) 12208 0 R]
+/Limits [(_variable_8h_source_l00329) (_variable_8h_source_l00334)]
+>>
+endobj
+14214 0 obj
+<<
+/Names [(_variable_8h_source_l00335) 6873 0 R (_variable_8h_source_l00336) 12209 0 R (_variable_8h_source_l00337) 12210 0 R (_variable_8h_source_l00338) 12211 0 R (_variable_8h_source_l00339) 12212 0 R (_variable_8h_source_l00340) 12213 0 R]
+/Limits [(_variable_8h_source_l00335) (_variable_8h_source_l00340)]
+>>
+endobj
+14215 0 obj
+<<
+/Names [(_variable_8h_source_l00341) 12214 0 R (_variable_8h_source_l00342) 12215 0 R (_variable_8h_source_l00343) 6948 0 R (_variable_8h_source_l00344) 12216 0 R (_variable_8h_source_l00345) 12217 0 R (_variable_8h_source_l00346) 12218 0 R]
+/Limits [(_variable_8h_source_l00341) (_variable_8h_source_l00346)]
+>>
+endobj
+14216 0 obj
+<<
+/Names [(_variable_8h_source_l00347) 12219 0 R (_variable_8h_source_l00348) 12220 0 R (_variable_8h_source_l00349) 12221 0 R (_variable_8h_source_l00350) 12222 0 R (_variable_8h_source_l00351) 12223 0 R (_variable_8h_source_l00352) 12224 0 R]
+/Limits [(_variable_8h_source_l00347) (_variable_8h_source_l00352)]
+>>
+endobj
+14217 0 obj
+<<
+/Names [(_variable_8h_source_l00353) 12225 0 R (_variable_8h_source_l00354) 12226 0 R (_variable_8h_source_l00355) 12227 0 R (_variable_8h_source_l00356) 12228 0 R (_variable_8h_source_l00357) 12229 0 R (_variable_8h_source_l00358) 12230 0 R]
+/Limits [(_variable_8h_source_l00353) (_variable_8h_source_l00358)]
+>>
+endobj
+14218 0 obj
+<<
+/Names [(_variable_8h_source_l00359) 12231 0 R (_variable_8h_source_l00360) 12232 0 R (_variable_8h_source_l00361) 12233 0 R (_variable_8h_source_l00362) 12234 0 R (_variable_8h_source_l00363) 12235 0 R (_variable_8h_source_l00364) 12236 0 R]
+/Limits [(_variable_8h_source_l00359) (_variable_8h_source_l00364)]
+>>
+endobj
+14219 0 obj
+<<
+/Names [(_variable_8h_source_l00365) 12237 0 R (_variable_8h_source_l00366) 12238 0 R (_variable_8h_source_l00367) 12239 0 R (_variable_8h_source_l00368) 12240 0 R (_variable_8h_source_l00369) 12241 0 R (_variable_8h_source_l00370) 6894 0 R]
+/Limits [(_variable_8h_source_l00365) (_variable_8h_source_l00370)]
+>>
+endobj
+14220 0 obj
+<<
+/Names [(_variable_8h_source_l00371) 12242 0 R (_variable_8h_source_l00372) 12243 0 R (_variable_8h_source_l00373) 12244 0 R (_variable_8h_source_l00374) 12245 0 R (_variable_8h_source_l00375) 6949 0 R (_variable_8h_source_l00376) 12246 0 R]
+/Limits [(_variable_8h_source_l00371) (_variable_8h_source_l00376)]
+>>
+endobj
+14221 0 obj
+<<
+/Names [(_variable_8h_source_l00377) 12247 0 R (_variable_8h_source_l00378) 12248 0 R (_variable_8h_source_l00379) 12249 0 R (_variable_8h_source_l00380) 6895 0 R (_variable_8h_source_l00381) 12250 0 R (_variable_8h_source_l00382) 12251 0 R]
+/Limits [(_variable_8h_source_l00377) (_variable_8h_source_l00382)]
+>>
+endobj
+14222 0 obj
+<<
+/Names [(_variable_8h_source_l00383) 12252 0 R (_variable_8h_source_l00384) 12253 0 R (_variable_8h_source_l00385) 12254 0 R (_variable_8h_source_l00386) 12255 0 R (_variable_8h_source_l00387) 6787 0 R (_variable_8h_source_l00388) 12256 0 R]
+/Limits [(_variable_8h_source_l00383) (_variable_8h_source_l00388)]
+>>
+endobj
+14223 0 obj
+<<
+/Names [(_variable_8h_source_l00389) 12257 0 R (_variable_8h_source_l00390) 12258 0 R (_variable_8h_source_l00391) 12259 0 R (_variable_8h_source_l00392) 12260 0 R (_variable_8h_source_l00393) 12261 0 R (_variable_8h_source_l00394) 12262 0 R]
+/Limits [(_variable_8h_source_l00389) (_variable_8h_source_l00394)]
+>>
+endobj
+14224 0 obj
+<<
+/Names [(_variable_8h_source_l00395) 12263 0 R (_variable_8h_source_l00396) 12296 0 R (_variable_8h_source_l00397) 12297 0 R (_variable_8h_source_l00398) 12298 0 R (_variable_8h_source_l00399) 12299 0 R (_variable_8h_source_l00400) 12300 0 R]
+/Limits [(_variable_8h_source_l00395) (_variable_8h_source_l00400)]
+>>
+endobj
+14225 0 obj
+<<
+/Names [(_variable_8h_source_l00401) 12301 0 R (_variable_8h_source_l00402) 12302 0 R (_variable_8h_source_l00403) 12303 0 R (_variable_8h_source_l00404) 12304 0 R (_variable_8h_source_l00405) 12305 0 R (_variable_8h_source_l00406) 12306 0 R]
+/Limits [(_variable_8h_source_l00401) (_variable_8h_source_l00406)]
+>>
+endobj
+14226 0 obj
+<<
+/Names [(_variable_8h_source_l00407) 12307 0 R (_variable_8h_source_l00408) 12308 0 R (_variable_8h_source_l00409) 12309 0 R (_variable_8h_source_l00410) 12310 0 R (_variable_8h_source_l00411) 12311 0 R (_variable_8h_source_l00412) 12312 0 R]
+/Limits [(_variable_8h_source_l00407) (_variable_8h_source_l00412)]
+>>
+endobj
+14227 0 obj
+<<
+/Names [(_variable_8h_source_l00413) 12313 0 R (_variable_8h_source_l00414) 12314 0 R (_variable_8h_source_l00415) 12315 0 R (_variable_8h_source_l00416) 12316 0 R (_variable_8h_source_l00417) 6918 0 R (_variable_8h_source_l00418) 12317 0 R]
+/Limits [(_variable_8h_source_l00413) (_variable_8h_source_l00418)]
+>>
+endobj
+14228 0 obj
+<<
+/Names [(_variable_8h_source_l00419) 12318 0 R (_variable_8h_source_l00420) 12319 0 R (_variable_8h_source_l00421) 12320 0 R (_variable_8h_source_l00422) 12321 0 R (_variable_8h_source_l00423) 12322 0 R (_variable_8h_source_l00424) 6816 0 R]
+/Limits [(_variable_8h_source_l00419) (_variable_8h_source_l00424)]
+>>
+endobj
+14229 0 obj
+<<
+/Names [(_variable_8h_source_l00425) 12323 0 R (_variable_8h_source_l00426) 12324 0 R (_variable_8h_source_l00427) 12325 0 R (_variable_8h_source_l00428) 12326 0 R (_variable_8h_source_l00429) 12327 0 R (_variable_8h_source_l00430) 6919 0 R]
+/Limits [(_variable_8h_source_l00425) (_variable_8h_source_l00430)]
+>>
+endobj
+14230 0 obj
+<<
+/Names [(_variable_8h_source_l00431) 12328 0 R (_variable_8h_source_l00432) 12329 0 R (_variable_8h_source_l00433) 12330 0 R (_variable_8h_source_l00434) 12331 0 R (_variable_8h_source_l00435) 12332 0 R (_variable_8h_source_l00436) 12333 0 R]
+/Limits [(_variable_8h_source_l00431) (_variable_8h_source_l00436)]
+>>
+endobj
+14231 0 obj
+<<
+/Names [(_variable_8h_source_l00437) 12334 0 R (_variable_8h_source_l00438) 12335 0 R (_variable_8h_source_l00439) 12336 0 R (_variable_8h_source_l00440) 12337 0 R (_variable_8h_source_l00441) 12338 0 R (_variable_8h_source_l00442) 12339 0 R]
+/Limits [(_variable_8h_source_l00437) (_variable_8h_source_l00442)]
+>>
+endobj
+14232 0 obj
+<<
+/Names [(_variable_8h_source_l00443) 12340 0 R (_variable_8h_source_l00444) 6872 0 R (_variable_8h_source_l00445) 12341 0 R (_variable_8h_source_l00446) 12342 0 R (_variable_8h_source_l00447) 12343 0 R (_variable_8h_source_l00448) 12344 0 R]
+/Limits [(_variable_8h_source_l00443) (_variable_8h_source_l00448)]
+>>
+endobj
+14233 0 obj
+<<
+/Names [(_variable_8h_source_l00449) 12345 0 R (_variable_8h_source_l00450) 12346 0 R (_variable_8h_source_l00451) 12347 0 R (_variable_8h_source_l00452) 6847 0 R (_variable_8h_source_l00453) 12348 0 R (_variable_8h_source_l00454) 12349 0 R]
+/Limits [(_variable_8h_source_l00449) (_variable_8h_source_l00454)]
+>>
+endobj
+14234 0 obj
+<<
+/Names [(_variable_8h_source_l00455) 12350 0 R (_variable_8h_source_l00456) 12351 0 R (_variable_8h_source_l00457) 12352 0 R (_variable_8h_source_l00458) 12353 0 R (_variable_8h_source_l00459) 12354 0 R (_variable_8h_source_l00460) 12355 0 R]
+/Limits [(_variable_8h_source_l00455) (_variable_8h_source_l00460)]
+>>
+endobj
+14235 0 obj
+<<
+/Names [(_variable_8h_source_l00461) 12356 0 R (_variable_8h_source_l00462) 12357 0 R (_variable_8h_source_l00463) 12358 0 R (_variable_8h_source_l00464) 6848 0 R (_variable_8h_source_l00465) 12359 0 R (_variable_8h_source_l00466) 12360 0 R]
+/Limits [(_variable_8h_source_l00461) (_variable_8h_source_l00466)]
+>>
+endobj
+14236 0 obj
+<<
+/Names [(_variable_8h_source_l00467) 12361 0 R (_variable_8h_source_l00468) 12362 0 R (_variable_8h_source_l00469) 12363 0 R (_variable_8h_source_l00470) 12364 0 R (_variable_8h_source_l00471) 12365 0 R (_variable_8h_source_l00472) 12366 0 R]
+/Limits [(_variable_8h_source_l00467) (_variable_8h_source_l00472)]
+>>
+endobj
+14237 0 obj
+<<
+/Names [(_variable_8h_source_l00473) 12367 0 R (_variable_8h_source_l00474) 6947 0 R (_variable_8h_source_l00475) 12368 0 R (_variable_8h_source_l00476) 12369 0 R (_variable_8h_source_l00477) 12370 0 R (_variable_8h_source_l00478) 12391 0 R]
+/Limits [(_variable_8h_source_l00473) (_variable_8h_source_l00478)]
+>>
+endobj
+14238 0 obj
+<<
+/Names [(_variable_8h_source_l00479) 12392 0 R (_variable_8h_source_l00480) 12393 0 R (_variable_8h_source_l00481) 12394 0 R (_variable_8h_source_l00482) 12395 0 R (_variable_8h_source_l00483) 12396 0 R (_variable_8h_source_l00484) 12397 0 R]
+/Limits [(_variable_8h_source_l00479) (_variable_8h_source_l00484)]
+>>
+endobj
+14239 0 obj
+<<
+/Names [(_variable_8h_source_l00485) 12398 0 R (chapter.1) 2 0 R (chapter.2) 30 0 R (chapter.3) 34 0 R (chapter.4) 42 0 R (chapter.5) 50 0 R]
+/Limits [(_variable_8h_source_l00485) (chapter.5)]
+>>
+endobj
+14240 0 obj
+<<
+/Names [(chapter.6) 58 0 R (chapter.7) 66 0 R (chapter.8) 266 0 R (chapter.9) 1730 0 R (class_h_t_t_p_1_1_resource) 3220 0 R (class_h_t_t_p_1_1_resource_a188f4a9d639f416317a9f5a6992e6ec5) 6197 0 R]
+/Limits [(chapter.6) (class_h_t_t_p_1_1_resource_a188f4a9d639f416317a9f5a6992e6ec5)]
+>>
+endobj
+14241 0 obj
+<<
+/Names [(class_h_t_t_p_1_1_resource_a21b1e78bdca84f9fd04fd026a0c3ea9c) 5568 0 R (class_h_t_t_p_1_1_resource_a3af3a05ec6058b8a8e058ceebe1d7ddf) 5268 0 R (class_h_t_t_p_1_1_resource_a4a78094cb756c0886c787f93462621c0) 6223 0 R (class_h_t_t_p_1_1_resource_a4d76365792fb2684cc05a36ee2573dad) 6221 0 R (class_h_t_t_p_1_1_resource_a5d1c2122fd6f7ea51c03c3b5cb45f2fc) 6196 0 R (class_h_t_t_p_1_1_resource_a742c093a9caba778c16592c424c4a169) 4528 0 R]
+/Limits [(class_h_t_t_p_1_1_resource_a21b1e78bdca84f9fd04fd026a0c3ea9c) (class_h_t_t_p_1_1_resource_a742c093a9caba778c16592c424c4a169)]
+>>
+endobj
+14242 0 obj
+<<
+/Names [(class_h_t_t_p_1_1_resource_a812b69953a8704e2528165c7d79012a5) 6219 0 R (class_h_t_t_p_1_1_resource_a8cb354f4fa7e6d76bdd748f50728b752) 6225 0 R (class_h_t_t_p_1_1_resource_a9d14fee20d1db0e8bd76e6f151e606e6) 6224 0 R (class_h_t_t_p_1_1_resource_aa65b75aa0006d4dc26b92dc6ae8017eb) 6222 0 R (class_h_t_t_p_1_1_resource_aad145d8d9ff6e9b1d0044b7e26678800) 6220 0 R (class_h_t_t_p_1_1_resource_abc5c8dc34053d3b02eae489f5c1afda4) 6218 0 R]
+/Limits [(class_h_t_t_p_1_1_resource_a812b69953a8704e2528165c7d79012a5) (class_h_t_t_p_1_1_resource_abc5c8dc34053d3b02eae489f5c1afda4)]
+>>
+endobj
+14243 0 obj
+<<
+/Names [(class_h_t_t_p_1_1_resource_ae0d3b5ab1757e069f38c55e2d5ecc3af) 5532 0 R (class_h_t_t_p_1_1_resource_ae6913253b8e38f0f4eed9903058ae589) 5240 0 R (class_h_t_t_p_1_1_resource_aec711995a2b463d35443e66e4eb70533) 5802 0 R (class_h_t_t_p_1_1_server) 3032 0 R (class_h_t_t_p_1_1_server_a2017a683878ebf7d90ad3a62c3516238) 6422 0 R (class_h_t_t_p_1_1_server_a9f24bc848a91d7d8a7e084b102de4e7a) 6420 0 R]
+/Limits [(class_h_t_t_p_1_1_resource_ae0d3b5ab1757e069f38c55e2d5ecc3af) (class_h_t_t_p_1_1_server_a9f24bc848a91d7d8a7e084b102de4e7a)]
+>>
+endobj
+14244 0 obj
+<<
+/Names [(class_h_t_t_p_1_1_server_aaea152f2562b0c0c4f16bfdc5472a759) 6418 0 R (class_h_t_t_p_1_1_server_ab739ee20c13e7d2e3979b67d39fc1ea0) 6416 0 R (class_h_t_t_p_1_1_server_abb452f50d7c5660ee204e47e20066c83) 6421 0 R (class_h_t_t_p_1_1_server_aec1277227e7f17a1115e6d868a07b486) 6419 0 R (class_m_q_t_t_1_1_configuration) 3185 0 R (class_m_q_t_t_1_1_configuration_a00eedbeafcfe5ce10df76e8ac20ac6f3) 3918 0 R]
+/Limits [(class_h_t_t_p_1_1_server_aaea152f2562b0c0c4f16bfdc5472a759) (class_m_q_t_t_1_1_configuration_a00eedbeafcfe5ce10df76e8ac20ac6f3)]
+>>
+endobj
+14245 0 obj
+<<
+/Names [(class_m_q_t_t_1_1_configuration_a365e6700bb8b4d43539de661490b7574) 3950 0 R (class_m_q_t_t_1_1_configuration_a4298d9cf83be4dcae422d98471ab1df5) 3945 0 R (class_m_q_t_t_1_1_configuration_a45ece5471e689eda8ee1c1e15acfc03b) 3952 0 R (class_m_q_t_t_1_1_configuration_a62add1ea6d5351e35a6c829ecdb41e06) 3951 0 R (class_m_q_t_t_1_1_configuration_a73f639dad1b94cc09de808519a7855fe) 3954 0 R (class_m_q_t_t_1_1_configuration_a76525cfc37fb8ddc692db93fd6fb5e6f) 3919 0 R]
+/Limits [(class_m_q_t_t_1_1_configuration_a365e6700bb8b4d43539de661490b7574) (class_m_q_t_t_1_1_configuration_a76525cfc37fb8ddc692db93fd6fb5e6f)]
+>>
+endobj
+14246 0 obj
+<<
+/Names [(class_m_q_t_t_1_1_configuration_a8e47ba510961e85709038796c458b0be) 3949 0 R (class_m_q_t_t_1_1_configuration_a92b3b5ff34fcfc3f72a28559275f78d1) 3946 0 R (class_m_q_t_t_1_1_configuration_a9c5a0645489d20461749953881ba7ab7) 3948 0 R (class_m_q_t_t_1_1_configuration_aa943275c72ea7cc94bd9de56c0dfaa9d) 3958 0 R (class_m_q_t_t_1_1_configuration_ab5887b09a89a934dcda3493f17dccd78) 3955 0 R (class_m_q_t_t_1_1_configuration_ac23db9e2e0f174a59f294a4a5139a097) 3956 0 R]
+/Limits [(class_m_q_t_t_1_1_configuration_a8e47ba510961e85709038796c458b0be) (class_m_q_t_t_1_1_configuration_ac23db9e2e0f174a59f294a4a5139a097)]
+>>
+endobj
+14247 0 obj
+<<
+/Names [(class_m_q_t_t_1_1_configuration_ac4b05210a99b650da641d3966266ec04) 3921 0 R (class_m_q_t_t_1_1_configuration_ad33e07f1c8389126541445253cbfff52) 3953 0 R (class_m_q_t_t_1_1_configuration_ae61824192da779011f60eded6903db9b) 3957 0 R (class_m_q_t_t_1_1_configuration_ae75c1ab7297f4cf3f25e31ec056df338) 3947 0 R (class_m_q_t_t_1_1_configuration_af3d0a9c0e14065afc259ad219a4e4458) 3920 0 R (class_m_q_t_t_1_1_exception) 3191 0 R]
+/Limits [(class_m_q_t_t_1_1_configuration_ac4b05210a99b650da641d3966266ec04) (class_m_q_t_t_1_1_exception)]
+>>
+endobj
+14248 0 obj
+<<
+/Names [(class_m_q_t_t_1_1_exception_aa2e20db284b3c4825824d421dfc3694f) 4748 0 R (class_m_q_t_t_1_1_exception_aa34f052cb61f915550c92b17621b58b1) 4751 0 R (class_m_q_t_t_1_1_exception_acc088fa326f26d0ea21aa7bf250eeeae) 4750 0 R (class_m_q_t_t_1_1_exception_ae4bb6d8901509f35649da27f9e681202) 4752 0 R (class_m_q_t_t_1_1_publisher) 3033 0 R (class_m_q_t_t_1_1_publisher_a027fef266eed826037e4188766f165f0) 5885 0 R]
+/Limits [(class_m_q_t_t_1_1_exception_aa2e20db284b3c4825824d421dfc3694f) (class_m_q_t_t_1_1_publisher_a027fef266eed826037e4188766f165f0)]
+>>
+endobj
+14249 0 obj
+<<
+/Names [(class_m_q_t_t_1_1_publisher_a10e8765c67285d1b9a969c531d091e08) 5886 0 R (class_m_q_t_t_1_1_publisher_a23f69f0d29a0f7e98d0ed2c0a74c47bd) 5891 0 R (class_m_q_t_t_1_1_publisher_a2904eace56884e6d996113707a729a15) 5892 0 R (class_m_q_t_t_1_1_publisher_a45246cdc54d4972c4639018549605bbe) 5882 0 R (class_m_q_t_t_1_1_publisher_a4af13f0d9c7dd02c7eb707122d551801) 5888 0 R (class_m_q_t_t_1_1_publisher_a6096485cddc28d316dd37cd32de809a7) 5883 0 R]
+/Limits [(class_m_q_t_t_1_1_publisher_a10e8765c67285d1b9a969c531d091e08) (class_m_q_t_t_1_1_publisher_a6096485cddc28d316dd37cd32de809a7)]
+>>
+endobj
+14250 0 obj
+<<
+/Names [(class_m_q_t_t_1_1_publisher_a60b4c5ff7ca2bfee4b13ac00d954c205) 5881 0 R (class_m_q_t_t_1_1_publisher_a6a1dfbd4bc21455ac307e73c4aefda3d) 5889 0 R (class_m_q_t_t_1_1_publisher_a725aac90d42d1b9e09e25d3e3347575d) 5890 0 R (class_m_q_t_t_1_1_publisher_a9cf2cb13cc906810ce3f403c4ce646ac) 5880 0 R (class_m_q_t_t_1_1_publisher_ac3a08d98f8387d2859c500c982bb243e) 5887 0 R (class_m_q_t_t_1_1_publisher_acb20d6b57d5a4e5285f35aa19e42ba93) 5884 0 R]
+/Limits [(class_m_q_t_t_1_1_publisher_a60b4c5ff7ca2bfee4b13ac00d954c205) (class_m_q_t_t_1_1_publisher_acb20d6b57d5a4e5285f35aa19e42ba93)]
+>>
+endobj
+14251 0 obj
+<<
+/Names [(class_s_i_g_n_1_1_hasher) 3194 0 R (class_s_i_g_n_1_1_hasher_a00cfd65d186d606a4fc1572812315960) 5321 0 R (class_s_i_g_n_1_1_hasher_a1478050616af6fac27055b9a5190a044) 5338 0 R (class_s_i_g_n_1_1_hasher_a4f80bf765513cdff089a634599cc534d) 5323 0 R (class_s_i_g_n_1_1_hasher_a582f222aea5015de7faceba2bab99bc3) 5319 0 R (class_s_i_g_n_1_1_hasher_a5bd6f0f8915dab9870ca8eb8a4d39a10) 5337 0 R]
+/Limits [(class_s_i_g_n_1_1_hasher) (class_s_i_g_n_1_1_hasher_a5bd6f0f8915dab9870ca8eb8a4d39a10)]
+>>
+endobj
+14252 0 obj
+<<
+/Names [(class_s_i_g_n_1_1_hasher_a5deae136de825a30bf627ec80a967a3f) 5320 0 R (class_s_i_g_n_1_1_hasher_a8c2a89d646c15f8da4c091ae843ae06b) 5318 0 R (class_s_i_g_n_1_1_hasher_ac1a37929a88ca5eab2bba5d39105bdf3) 5322 0 R (class_s_i_g_n_1_1_signer) 3221 0 R (class_s_i_g_n_1_1_signer_a0315eec3c80b3238ee64e26115de9f0f) 6480 0 R (class_s_i_g_n_1_1_signer_a6b83d99b55d005f7ae32a3e18a9d5925) 6482 0 R]
+/Limits [(class_s_i_g_n_1_1_hasher_a5deae136de825a30bf627ec80a967a3f) (class_s_i_g_n_1_1_signer_a6b83d99b55d005f7ae32a3e18a9d5925)]
+>>
+endobj
+14253 0 obj
+<<
+/Names [(class_s_i_g_n_1_1_signer_a8fbad2b5e76a6333dfa7fd537a5600e4) 6481 0 R (class_s_i_g_n_1_1_signer_ae312cab4c8479a9a4a56f90257ab8e7d) 6479 0 R (class_s_i_g_n_1_1_signer_aeb36266abd34f99a53482713be5b7794) 6477 0 R (class_s_o_i_l_1_1_container) 3187 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4) 3188 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_a55089fd352f89f4248ea546a365aecc7) 4246 0 R]
+/Limits [(class_s_i_g_n_1_1_signer_a8fbad2b5e76a6333dfa7fd537a5600e4) (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_a55089fd352f89f4248ea546a365aecc7)]
+>>
+endobj
+14254 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_a621f4d118ab910a12f01986158db4b04) 4244 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aa274a79ce54cb7ce0e384790332c6dfa) 4245 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aa74985ed06251ca010f9250d05fa9750) 4251 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ab568a07a3075826eb277cc7392510f74) 4254 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ab6644e2d6aa2ecc1027ce821a384e675) 4252 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_abab8884727d8470a1d6a151f11800338) 4250 0 R]
+/Limits [(class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_a621f4d118ab910a12f01986158db4b04) (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_abab8884727d8470a1d6a151f11800338)]
+>>
+endobj
+14255 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ac2430a1362863511e7766b1e552c74be) 4249 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ae43038fa9aa3b9fbe4dd37e782008509) 4253 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ae5184ac1f1d1292b4cb72c28b3b3442e) 4248 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_aead4f92e330d6791b664af81b3f1942b) 4247 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4) 3189 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a03f102c86faf01d5caef3972ff54463d) 4319 0 R]
+/Limits [(class_s_o_i_l_1_1_container_3_01_t_00_01-1_00_01-1_01_4_ac2430a1362863511e7766b1e552c74be) (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a03f102c86faf01d5caef3972ff54463d)]
+>>
+endobj
+14256 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a0cf0460b6035095a9fb4ac40fc0d56c8) 4311 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a44119ac58622a2aa98cf92018826def1) 4315 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a4afd624980020d58d536fecd24a3a64e) 4318 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a795ada1b50ab3659a27fe96e40745480) 4317 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_aaeb96652a1ee684921d9ff91be93b724) 4320 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ac0d511ffb0f1398cbb9b88a9974ca647) 4314 0 R]
+/Limits [(class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_a0cf0460b6035095a9fb4ac40fc0d56c8) (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ac0d511ffb0f1398cbb9b88a9974ca647)]
+>>
+endobj
+14257 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ad9bd44996d34de087f4d8e52e3d087bd) 4312 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ae25249aadcd39ed98369b62f69d9cf9b) 4316 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ae65685172c0bcfc9d437accc2b194d34) 4321 0 R (class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_aeeba9a7d45fc949532443d3f6184cb29) 4313 0 R (class_s_o_i_l_1_1_container_a00d0e2ac641857eac06d5d833c28229b) 4121 0 R (class_s_o_i_l_1_1_container_a197355701a388b65d7ea327ddd45024a) 4125 0 R]
+/Limits [(class_s_o_i_l_1_1_container_3_01_t_00_01x_00_01-1_01_4_ad9bd44996d34de087f4d8e52e3d087bd) (class_s_o_i_l_1_1_container_a197355701a388b65d7ea327ddd45024a)]
+>>
+endobj
+14258 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_container_a386c1992526628067cad3295763e6e39) 4124 0 R (class_s_o_i_l_1_1_container_a5bb5198238af5ed6058e2f77ddb15f38) 4128 0 R (class_s_o_i_l_1_1_container_a6483504f2c37393c0fdde77e39f5a030) 4122 0 R (class_s_o_i_l_1_1_container_a893d008aed36e88dac38fbb0c5497ac2) 4127 0 R (class_s_o_i_l_1_1_container_a8ae9246ee94ebe4a82f7dad7e02ff310) 4123 0 R (class_s_o_i_l_1_1_container_a8c515f73d9000e53db8478a8836c1d1f) 4120 0 R]
+/Limits [(class_s_o_i_l_1_1_container_a386c1992526628067cad3295763e6e39) (class_s_o_i_l_1_1_container_a8c515f73d9000e53db8478a8836c1d1f)]
+>>
+endobj
+14259 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_container_ac329fc28b401a84de21b5f298e9236ce) 4119 0 R (class_s_o_i_l_1_1_container_ad1574e37bb9696fdee3986964e77f050) 4126 0 R (class_s_o_i_l_1_1_container_adc3f75677472910832a714f472c00d5a) 4129 0 R (class_s_o_i_l_1_1_element) 3036 0 R (class_s_o_i_l_1_1_element_a06d51f457b4412d64c3980a377fbc9f0) 3034 0 R (class_s_o_i_l_1_1_element_a0f046d3e28928e07013a07b7e5b8e5a2) 4443 0 R]
+/Limits [(class_s_o_i_l_1_1_container_ac329fc28b401a84de21b5f298e9236ce) (class_s_o_i_l_1_1_element_a0f046d3e28928e07013a07b7e5b8e5a2)]
+>>
+endobj
+14260 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_element_a4704591e187b8bf5344979d095703239) 4432 0 R (class_s_o_i_l_1_1_element_a4acd9dc20ed4e0926da2ba7e4a5af7ab) 4430 0 R (class_s_o_i_l_1_1_element_a4c20dd71ee68dd4823e32aa3868f337b) 4440 0 R (class_s_o_i_l_1_1_element_a4fa228a217778ee48c592fe0272aaacf) 4444 0 R (class_s_o_i_l_1_1_element_a682f8e3123f99f13545db06e15a896bb) 4433 0 R (class_s_o_i_l_1_1_element_a6ef3653a14ca3245c529684e939b122d) 4436 0 R]
+/Limits [(class_s_o_i_l_1_1_element_a4704591e187b8bf5344979d095703239) (class_s_o_i_l_1_1_element_a6ef3653a14ca3245c529684e939b122d)]
+>>
+endobj
+14261 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) 4426 0 R (class_s_o_i_l_1_1_element_a8bd2f333fbe5c1b51218512c3ef8c9b3) 4437 0 R (class_s_o_i_l_1_1_element_a90aba7aaad7c5e9695b239480e95cea3) 4434 0 R (class_s_o_i_l_1_1_element_a9dd8b98ea77291d638408b123e68536a) 4441 0 R (class_s_o_i_l_1_1_element_aa035b89c623428f7d93b8b1da0ce1e49) 4438 0 R (class_s_o_i_l_1_1_element_aaa82810e11265c4a890246f633fe4fc7) 4439 0 R]
+/Limits [(class_s_o_i_l_1_1_element_a8676609fe497118147e31b25958d5104) (class_s_o_i_l_1_1_element_aaa82810e11265c4a890246f633fe4fc7)]
+>>
+endobj
+14262 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) 4428 0 R (class_s_o_i_l_1_1_element_ad0d80de0520ce5366067512e07068e1e) 3035 0 R (class_s_o_i_l_1_1_element_ad0dff9864321178e13df316f1b317bcb) 4431 0 R (class_s_o_i_l_1_1_element_ad55fc11662301ce186e593852a9425ce) 4442 0 R (class_s_o_i_l_1_1_element_ad89fecb69de794e7b918767d5f21027d) 4429 0 R (class_s_o_i_l_1_1_element_ae31b32fb944a138ac955e07a5be9d652) 4424 0 R]
+/Limits [(class_s_o_i_l_1_1_element_aaef3cdce55ced857a81ba285afc92ed9) (class_s_o_i_l_1_1_element_ae31b32fb944a138ac955e07a5be9d652)]
+>>
+endobj
+14263 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_element_ae32f6b04a96ff98acfe29f884177f22f) 4435 0 R (class_s_o_i_l_1_1_element_ae80d2c6c5f2577aa5a8489f2c0c352e8) 4427 0 R (class_s_o_i_l_1_1_element_af1992c267233cec3b17bc70038d1d84b) 4425 0 R (class_s_o_i_l_1_1_element_afc29676fd98e4c6b7ab004514c175b7c) 4471 0 R (class_s_o_i_l_1_1_element_afcdcd6ceb94c7d14b0fce99461bb5e30) 4445 0 R (class_s_o_i_l_1_1_enum) 3190 0 R]
+/Limits [(class_s_o_i_l_1_1_element_ae32f6b04a96ff98acfe29f884177f22f) (class_s_o_i_l_1_1_enum)]
+>>
+endobj
+14264 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_enum_a18e004d4a882a61c94a902a3330014e2) 4667 0 R (class_s_o_i_l_1_1_enum_a20887b8fedec14630adfda595d117a41) 4666 0 R (class_s_o_i_l_1_1_enum_a21bc467860d215a091d9f0d09b7223a1) 4659 0 R (class_s_o_i_l_1_1_enum_a2809b4d4200d001b62a5d3bd5d1aa04c) 4665 0 R (class_s_o_i_l_1_1_enum_a30718fd8e647815e78b1a0b63d878fd8) 3037 0 R (class_s_o_i_l_1_1_enum_a8bb7c616cb01a03df35a73a4dd5edd34) 4660 0 R]
+/Limits [(class_s_o_i_l_1_1_enum_a18e004d4a882a61c94a902a3330014e2) (class_s_o_i_l_1_1_enum_a8bb7c616cb01a03df35a73a4dd5edd34)]
+>>
+endobj
+14265 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_enum_aa02862d7713c094d7ae5819eab23765f) 4663 0 R (class_s_o_i_l_1_1_enum_ac25e85a1e15c6d2eb25565d6a362d867) 4662 0 R (class_s_o_i_l_1_1_enum_ac84d64e172ea5cbecf0e441c787872e0) 4664 0 R (class_s_o_i_l_1_1_enum_ad670fac86700dfca33f3fe79cc27602a) 4661 0 R (class_s_o_i_l_1_1_figure) 3043 0 R (class_s_o_i_l_1_1_figure_a1f20334aa82abbb7d0e9d2322e5683d0) 4876 0 R]
+/Limits [(class_s_o_i_l_1_1_enum_aa02862d7713c094d7ae5819eab23765f) (class_s_o_i_l_1_1_figure_a1f20334aa82abbb7d0e9d2322e5683d0)]
+>>
+endobj
+14266 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_figure_a358a1060f3f04ea4aa1cb0b7705af4d9) 4883 0 R (class_s_o_i_l_1_1_figure_a4e4d6c93a559d5e18178de9a79b472ec) 4877 0 R (class_s_o_i_l_1_1_figure_a627d9d3386a719a6612ec3068812ea67) 4873 0 R (class_s_o_i_l_1_1_figure_a65998054544cd71fdb47c0b1b956e883) 4884 0 R (class_s_o_i_l_1_1_figure_a6cebd6af4116112bb244b1444aa3a1da) 3038 0 R (class_s_o_i_l_1_1_figure_a6dc0dda3c135fb3512486192a52e0f8b) 4915 0 R]
+/Limits [(class_s_o_i_l_1_1_figure_a358a1060f3f04ea4aa1cb0b7705af4d9) (class_s_o_i_l_1_1_figure_a6dc0dda3c135fb3512486192a52e0f8b)]
+>>
+endobj
+14267 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_figure_a8da920bd367b9a6ee8b70fcfa1f709ac) 4872 0 R (class_s_o_i_l_1_1_figure_a8f320356ea837f06e439b74c2a22e81c) 4875 0 R (class_s_o_i_l_1_1_figure_a97c7e2488708c155d366e2cdc1934c3b) 4878 0 R (class_s_o_i_l_1_1_figure_aaf9b99da1c712f54d758c492830a7566) 4880 0 R (class_s_o_i_l_1_1_figure_ab431dcf967cbfb8591b9128257595712) 4874 0 R (class_s_o_i_l_1_1_figure_ab47f2268fb3f31960ab7bc8473974b3e) 4882 0 R]
+/Limits [(class_s_o_i_l_1_1_figure_a8da920bd367b9a6ee8b70fcfa1f709ac) (class_s_o_i_l_1_1_figure_ab47f2268fb3f31960ab7bc8473974b3e)]
+>>
+endobj
+14268 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_figure_abb3fe4e331a9a5f2f53b011309d6c937) 4879 0 R (class_s_o_i_l_1_1_figure_aca02467b79b6d4a9590553b612876b20) 4590 0 R (class_s_o_i_l_1_1_figure_af07e6f343402f0f9280ede65d4b26fa0) 4916 0 R (class_s_o_i_l_1_1_figure_af096fd3a66cdc35d18a1cbbf637dddf9) 4881 0 R (class_s_o_i_l_1_1_function) 3193 0 R (class_s_o_i_l_1_1_function_a3fb541cbb68722263ff8d7ab9628a260) 5155 0 R]
+/Limits [(class_s_o_i_l_1_1_figure_abb3fe4e331a9a5f2f53b011309d6c937) (class_s_o_i_l_1_1_function_a3fb541cbb68722263ff8d7ab9628a260)]
+>>
+endobj
+14269 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_function_a4cdaaf26db414f721aa0c79aaa38cd46) 5150 0 R (class_s_o_i_l_1_1_function_a50cf5e875bee2f192e04271642175bf6) 5156 0 R (class_s_o_i_l_1_1_function_a542306cc71842ef1fe4b13597a5b7d1b) 5151 0 R (class_s_o_i_l_1_1_function_a5d0ba47fb669127afcbea1a3d192fe88) 5153 0 R (class_s_o_i_l_1_1_function_a636a905c115a1686caef9815c5b1aac9) 5152 0 R (class_s_o_i_l_1_1_function_a6e6b923ef2cd3c534e831719ac6bbdb0) 5148 0 R]
+/Limits [(class_s_o_i_l_1_1_function_a4cdaaf26db414f721aa0c79aaa38cd46) (class_s_o_i_l_1_1_function_a6e6b923ef2cd3c534e831719ac6bbdb0)]
+>>
+endobj
+14270 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_function_a7705b93afa26a8a3d3012d88a9fea04d) 5147 0 R (class_s_o_i_l_1_1_function_a8082d73f3dcb5567775dc2db5c291aec) 5146 0 R (class_s_o_i_l_1_1_function_ac3753d06d5d191ed95e63df56f51f680) 5149 0 R (class_s_o_i_l_1_1_function_ac4d8391f2f588a467502f0bf9c8c7c7b) 5154 0 R (class_s_o_i_l_1_1_function_add2a16248e512d8efe813f2a27df73b1) 5145 0 R (class_s_o_i_l_1_1_function_add97197a51b3c44f9eb873a23329983e) 4588 0 R]
+/Limits [(class_s_o_i_l_1_1_function_a7705b93afa26a8a3d3012d88a9fea04d) (class_s_o_i_l_1_1_function_add97197a51b3c44f9eb873a23329983e)]
+>>
+endobj
+14271 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_object) 3039 0 R (class_s_o_i_l_1_1_object_a0d2c97d0d9a71ec307211897d596bbde) 5478 0 R (class_s_o_i_l_1_1_object_a24b2c5323d9f5f0651d48d3d319eb225) 5481 0 R (class_s_o_i_l_1_1_object_a4ce4f8d21682f894c34f447d2a62cd30) 5485 0 R (class_s_o_i_l_1_1_object_a4e237fb0358f5adaea25f2ac95b8b5e7) 5483 0 R (class_s_o_i_l_1_1_object_a5480dbba0b410666dd030006e86b1108) 5480 0 R]
+/Limits [(class_s_o_i_l_1_1_object) (class_s_o_i_l_1_1_object_a5480dbba0b410666dd030006e86b1108)]
+>>
+endobj
+14272 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_object_a5dabf727c8256928d1f019520a34be1f) 5479 0 R (class_s_o_i_l_1_1_object_a98e9761c2be5e2acdfe673f48259172e) 5484 0 R (class_s_o_i_l_1_1_object_ab0d8fb2cb9e32c16ea631ed93e7a5d57) 5477 0 R (class_s_o_i_l_1_1_object_ac6614134cf7d4c7caaaae13fac999978) 5482 0 R (class_s_o_i_l_1_1_object_ac821d8158a2c4214b15cb1d9be8954dd) 5476 0 R (class_s_o_i_l_1_1_object_aebb0f522c4ced342fbd33cb377eeb4b3) 4589 0 R]
+/Limits [(class_s_o_i_l_1_1_object_a5dabf727c8256928d1f019520a34be1f) (class_s_o_i_l_1_1_object_aebb0f522c4ced342fbd33cb377eeb4b3)]
+>>
+endobj
+14273 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_parameter) 3040 0 R (class_s_o_i_l_1_1_parameter_a37602b6b8f95595a78b70a9b0eb865ad) 5698 0 R (class_s_o_i_l_1_1_parameter_a3c7401cb8d13756cc70d1df4e16db2e5) 5696 0 R (class_s_o_i_l_1_1_parameter_a3ee4708c79c724f7905eecb9e2b2cc08) 5700 0 R (class_s_o_i_l_1_1_parameter_a57567b4cfe6b370e9af7c3ef6f10be6d) 4984 0 R (class_s_o_i_l_1_1_parameter_a698d4320aa3e34bf080f9e416fb12ce4) 5694 0 R]
+/Limits [(class_s_o_i_l_1_1_parameter) (class_s_o_i_l_1_1_parameter_a698d4320aa3e34bf080f9e416fb12ce4)]
+>>
+endobj
+14274 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_parameter_a905eb12cd0e50cf245f2003643602acf) 5697 0 R (class_s_o_i_l_1_1_parameter_aadc9c63027042e0e834b183698e964b9) 3041 0 R (class_s_o_i_l_1_1_parameter_ac58916de16e381e40123bf9633a151ad) 5699 0 R (class_s_o_i_l_1_1_parameter_ae6326c41af3bca1b02f8d8dcca05ecad) 5701 0 R (class_s_o_i_l_1_1_parameter_aec2434faa57778dbc8783ec77a86d627) 4591 0 R (class_s_o_i_l_1_1_parameter_aed57214457012af12a859669e182e841) 5695 0 R]
+/Limits [(class_s_o_i_l_1_1_parameter_a905eb12cd0e50cf245f2003643602acf) (class_s_o_i_l_1_1_parameter_aed57214457012af12a859669e182e841)]
+>>
+endobj
+14275 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_parameter_af378abd9212084ebb270383d3cd4300c) 5042 0 R (class_s_o_i_l_1_1_range) 3196 0 R (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4) 3218 0 R (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_a4099d35a82c3b57745d3c4d0165f590b) 6082 0 R (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_ab17c214a8c1af57e06e292b19ce1ae38) 6076 0 R (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_abd3d86c944aa61089231909a8d24e7f8) 6077 0 R]
+/Limits [(class_s_o_i_l_1_1_parameter_af378abd9212084ebb270383d3cd4300c) (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_abd3d86c944aa61089231909a8d24e7f8)]
+>>
+endobj
+14276 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_ac783001a590c29c1b9f128d3ad293c2c) 6078 0 R (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_acb0783d3e05740740715a4fb8948a2d3) 6081 0 R (class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_afd07b4bbc51b9b69f1ad8798fcc77fa6) 6083 0 R (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4) 3219 0 R (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a030f2f9b3f2e56f0e832956e069226d2) 6113 0 R (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a280aacb2fb5b4ad22c866a83671967c5) 6111 0 R]
+/Limits [(class_s_o_i_l_1_1_range_3_01_e_n_u_m_01_4_ac783001a590c29c1b9f128d3ad293c2c) (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a280aacb2fb5b4ad22c866a83671967c5)]
+>>
+endobj
+14277 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a635b0935b69730c81232c9f26267e5ec) 6108 0 R (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a940f37a4449075b3d335deb546644df1) 6109 0 R (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_ad5847bdeceb2dcf632de0e7c0c3bc73f) 6112 0 R (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_ae8c03e56fc933a95c0fec0d69b81da55) 6110 0 R (class_s_o_i_l_1_1_range_a65b2542daa4ce48d6738533e6e417ade) 5999 0 R (class_s_o_i_l_1_1_range_a7f49766e22783da9259eee242663581b) 5997 0 R]
+/Limits [(class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a635b0935b69730c81232c9f26267e5ec) (class_s_o_i_l_1_1_range_a7f49766e22783da9259eee242663581b)]
+>>
+endobj
+14278 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) 5995 0 R (class_s_o_i_l_1_1_range_a97c8857f5b22eb87ca35c1c21a1bd814) 5996 0 R (class_s_o_i_l_1_1_range_a98473208bab6e8563fef085b9c71cd53) 6000 0 R (class_s_o_i_l_1_1_range_ae371a8bd8d3c27d3e77b4e563084b19b) 5998 0 R (class_s_o_i_l_1_1_time) 3222 0 R (class_s_o_i_l_1_1_time_a155e5f5e05694a584161bcc064d57eda) 6561 0 R]
+/Limits [(class_s_o_i_l_1_1_range_a958a4969a97f2eb69c9732c66dc3393e) (class_s_o_i_l_1_1_time_a155e5f5e05694a584161bcc064d57eda)]
+>>
+endobj
+14279 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) 6539 0 R (class_s_o_i_l_1_1_time_a5fe6292ab3b05d9107c6884dfbb5da16) 6538 0 R (class_s_o_i_l_1_1_time_a60eb480cb5dca0fbcd090b2e85e7ebaf) 6535 0 R (class_s_o_i_l_1_1_time_a78fdd7cac3e6ce1141080c35efd5f95f) 6540 0 R (class_s_o_i_l_1_1_time_a7e51f091b04752599a4086ea3b0856f4) 6536 0 R (class_s_o_i_l_1_1_time_a8b1d27ee800ce3dddeb38356c5edb86d) 6534 0 R]
+/Limits [(class_s_o_i_l_1_1_time_a5248a0ed5db231883fd8d1ee34ab2325) (class_s_o_i_l_1_1_time_a8b1d27ee800ce3dddeb38356c5edb86d)]
+>>
+endobj
+14280 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_time_abe58e5fa4fc2cb986785a751fa6807aa) 6560 0 R (class_s_o_i_l_1_1_time_abf817530c975ea5bfce48be781a55993) 6541 0 R (class_s_o_i_l_1_1_time_ac84bbf33a7816b4502795d68a5e62486) 6537 0 R (class_s_o_i_l_1_1_time_ae06629b296dcd9b01b6019101a020208) 6542 0 R (class_s_o_i_l_1_1_variable) 3042 0 R (class_s_o_i_l_1_1_variable_a04574823a93f387d4d1aaa4a7087f22e) 6720 0 R]
+/Limits [(class_s_o_i_l_1_1_time_abe58e5fa4fc2cb986785a751fa6807aa) (class_s_o_i_l_1_1_variable_a04574823a93f387d4d1aaa4a7087f22e)]
+>>
+endobj
+14281 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_variable_a10c29b035a567af07850dd1f27e218fe) 6309 0 R (class_s_o_i_l_1_1_variable_a159b3f2994697e91aeaef8649376aee3) 6713 0 R (class_s_o_i_l_1_1_variable_a22c13c0c69fca4f40a3b25285e746e06) 6723 0 R (class_s_o_i_l_1_1_variable_a2bdfc0ecf346e6544ba897f86a5fa1e4) 6717 0 R (class_s_o_i_l_1_1_variable_a37198446b18018989419984f3ec82c68) 4592 0 R (class_s_o_i_l_1_1_variable_a421f6aeaee92e362e455edcbe6b58231) 6724 0 R]
+/Limits [(class_s_o_i_l_1_1_variable_a10c29b035a567af07850dd1f27e218fe) (class_s_o_i_l_1_1_variable_a421f6aeaee92e362e455edcbe6b58231)]
+>>
+endobj
+14282 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_variable_a42d3242d0f2619bbedbe54473e5bde05) 6712 0 R (class_s_o_i_l_1_1_variable_a62d80e5cd14d377d3bea90e6332b0b72) 6341 0 R (class_s_o_i_l_1_1_variable_a85828d5d8162aff4c496c782a432b55d) 6715 0 R (class_s_o_i_l_1_1_variable_a8ef20bb80d404cba203ebe64a9c3296f) 3045 0 R (class_s_o_i_l_1_1_variable_a95274da091367dba743e0cf0052b4dd7) 4985 0 R (class_s_o_i_l_1_1_variable_a9b112a792be9ae8647bc58fd4e28c5bb) 5043 0 R]
+/Limits [(class_s_o_i_l_1_1_variable_a42d3242d0f2619bbedbe54473e5bde05) (class_s_o_i_l_1_1_variable_a9b112a792be9ae8647bc58fd4e28c5bb)]
+>>
+endobj
+14283 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_variable_aaeba9a89d6c0b950246fff61ac221fa7) 6722 0 R (class_s_o_i_l_1_1_variable_ab1c36ffeef15739332ebd39c3c63184e) 6716 0 R (class_s_o_i_l_1_1_variable_ab7eac644327edcff9e211b45e1905d2a) 6719 0 R (class_s_o_i_l_1_1_variable_abaafa5ebe21c155fc27800d22275d639) 6718 0 R (class_s_o_i_l_1_1_variable_abb8683a103f7eed6be691c6057312baa) 6714 0 R (class_s_o_i_l_1_1_variable_adf66dfb35361158c8c05cc5ed81bd247) 6721 0 R]
+/Limits [(class_s_o_i_l_1_1_variable_aaeba9a89d6c0b950246fff61ac221fa7) (class_s_o_i_l_1_1_variable_adf66dfb35361158c8c05cc5ed81bd247)]
+>>
+endobj
+14284 0 obj
+<<
+/Names [(class_s_o_i_l_1_1_variable_ae5349b85d820a6204f44af04b528f6a9) 3044 0 R (class_u_d_p_1_1_broadcast) 3184 0 R (class_u_d_p_1_1_broadcast_a093abc49c309116a4674e2264b352c92) 3843 0 R (class_u_d_p_1_1_broadcast_a1b28acbf05f00ee1a23e5f148c952ac7) 3840 0 R (class_u_d_p_1_1_broadcast_a4083638acba927342d411db85d6fe9a1) 3847 0 R (class_u_d_p_1_1_broadcast_a43e3f6b55707430a2eb698c41d181f6d) 3845 0 R]
+/Limits [(class_s_o_i_l_1_1_variable_ae5349b85d820a6204f44af04b528f6a9) (class_u_d_p_1_1_broadcast_a43e3f6b55707430a2eb698c41d181f6d)]
+>>
+endobj
+14285 0 obj
+<<
+/Names [(class_u_d_p_1_1_broadcast_a909590437de40c1fdff2b8a2c3c934de) 3846 0 R (class_u_d_p_1_1_broadcast_a9c923c64d3e48d85c3e91db348ffaa45) 3844 0 R (class_u_d_p_1_1_broadcast_aa7e94761b0526d1fc1dac158b841377f) 3841 0 R (class_u_d_p_1_1_broadcast_ab4a1b3beb24edbadae5701c0d3c66c3b) 3842 0 R (class_u_d_p_1_1_configuration) 3186 0 R (class_u_d_p_1_1_configuration_a16a012d0744f694e3f9f9865ce89c624) 4068 0 R]
+/Limits [(class_u_d_p_1_1_broadcast_a909590437de40c1fdff2b8a2c3c934de) (class_u_d_p_1_1_configuration_a16a012d0744f694e3f9f9865ce89c624)]
+>>
+endobj
+14286 0 obj
+<<
+/Names [(class_u_d_p_1_1_configuration_a2f1e39379df27d5d6f81987dcade6053) 4066 0 R (class_u_d_p_1_1_configuration_a320ba9474ff76cbc5626d667a4388a55) 4070 0 R (class_u_d_p_1_1_configuration_accb7231b058bddbcde4345ee13cc7ada) 4069 0 R (class_u_d_p_1_1_configuration_ad8e8aaa5d502e7688ff6b08b50a523ed) 4067 0 R (class_u_d_p_1_1_exception) 3192 0 R (class_u_d_p_1_1_exception_a303fac04b1c83a4c5f8119344b6d8ec1) 4797 0 R]
+/Limits [(class_u_d_p_1_1_configuration_a2f1e39379df27d5d6f81987dcade6053) (class_u_d_p_1_1_exception_a303fac04b1c83a4c5f8119344b6d8ec1)]
+>>
+endobj
+14287 0 obj
+<<
+/Names [(class_u_d_p_1_1_exception_a825ce3fc0f996f9de64b075bad9bc7e0) 4799 0 R (etoc@tocid.1) 2334 0 R (figure.caption.21) 4364 0 R (figure.caption.26) 4746 0 R (figure.caption.28) 4795 0 R (figure.caption.30) 4868 0 R]
+/Limits [(class_u_d_p_1_1_exception_a825ce3fc0f996f9de64b075bad9bc7e0) (figure.caption.30)]
+>>
+endobj
+14288 0 obj
+<<
+/Names [(figure.caption.36) 5078 0 R (figure.caption.43) 5431 0 R (figure.caption.47) 5638 0 R (figure.caption.59) 6192 0 R (figure.caption.69) 6656 0 R (index) 2923 0 R]
+/Limits [(figure.caption.36) (index)]
+>>
+endobj
+14289 0 obj
+<<
+/Names [(index_autotoc_md1) 2926 0 R (index_autotoc_md2) 2927 0 R (index_autotoc_md3) 2928 0 R (index_autotoc_md4) 2956 0 R (index_autotoc_md5) 2965 0 R (index_autotoc_md6) 2966 0 R]
+/Limits [(index_autotoc_md1) (index_autotoc_md6)]
+>>
+endobj
+14290 0 obj
+<<
+/Names [(index_md_README) 2924 0 R (json__helpers_8cpp) 3335 0 R (json__helpers_8cpp_a10a05ce00d314258ffb9c6b536c1bf95) 10667 0 R (json__helpers_8cpp_a434c4f67044a7cc0f874ef0f5bf55b22) 10668 0 R (json__helpers_8cpp_a682bf7d67c51ddd6da804bfd2416d99d) 10670 0 R (json__helpers_8cpp_a6ae5f67d92f7f1c13b8c5f816640b887) 10666 0 R]
+/Limits [(index_md_README) (json__helpers_8cpp_a6ae5f67d92f7f1c13b8c5f816640b887)]
+>>
+endobj
+14291 0 obj
+<<
+/Names [(json__helpers_8cpp_a9769894e25cf77bdd6aaea440439d6c6) 10669 0 R (json__helpers_8cpp_aae694c8a60db24c08de0a3a22ef12a40) 10665 0 R (json__helpers_8cpp_ab40adce50ce6a2a1da1f33a133e674b8) 10671 0 R (json__helpers_8cpp_source) 3756 0 R (json__helpers_8cpp_source_l00001) 10729 0 R (json__helpers_8cpp_source_l00002) 10730 0 R]
+/Limits [(json__helpers_8cpp_a9769894e25cf77bdd6aaea440439d6c6) (json__helpers_8cpp_source_l00002)]
+>>
+endobj
+14292 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00003) 10731 0 R (json__helpers_8cpp_source_l00004) 10732 0 R (json__helpers_8cpp_source_l00005) 10733 0 R (json__helpers_8cpp_source_l00006) 10734 0 R (json__helpers_8cpp_source_l00007) 10735 0 R (json__helpers_8cpp_source_l00008) 10736 0 R]
+/Limits [(json__helpers_8cpp_source_l00003) (json__helpers_8cpp_source_l00008)]
+>>
+endobj
+14293 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00009) 10737 0 R (json__helpers_8cpp_source_l00010) 10738 0 R (json__helpers_8cpp_source_l00011) 3755 0 R (json__helpers_8cpp_source_l00012) 10739 0 R (json__helpers_8cpp_source_l00013) 10740 0 R (json__helpers_8cpp_source_l00014) 10741 0 R]
+/Limits [(json__helpers_8cpp_source_l00009) (json__helpers_8cpp_source_l00014)]
+>>
+endobj
+14294 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00015) 10742 0 R (json__helpers_8cpp_source_l00016) 10743 0 R (json__helpers_8cpp_source_l00017) 3758 0 R (json__helpers_8cpp_source_l00018) 10744 0 R (json__helpers_8cpp_source_l00019) 10745 0 R (json__helpers_8cpp_source_l00020) 10746 0 R]
+/Limits [(json__helpers_8cpp_source_l00015) (json__helpers_8cpp_source_l00020)]
+>>
+endobj
+14295 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00021) 10747 0 R (json__helpers_8cpp_source_l00022) 10748 0 R (json__helpers_8cpp_source_l00023) 3757 0 R (json__helpers_8cpp_source_l00024) 10749 0 R (json__helpers_8cpp_source_l00025) 10750 0 R (json__helpers_8cpp_source_l00026) 10751 0 R]
+/Limits [(json__helpers_8cpp_source_l00021) (json__helpers_8cpp_source_l00026)]
+>>
+endobj
+14296 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00027) 10752 0 R (json__helpers_8cpp_source_l00028) 10753 0 R (json__helpers_8cpp_source_l00029) 10700 0 R (json__helpers_8cpp_source_l00030) 10754 0 R (json__helpers_8cpp_source_l00031) 10755 0 R (json__helpers_8cpp_source_l00032) 10756 0 R]
+/Limits [(json__helpers_8cpp_source_l00027) (json__helpers_8cpp_source_l00032)]
+>>
+endobj
+14297 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00033) 10757 0 R (json__helpers_8cpp_source_l00034) 10758 0 R (json__helpers_8cpp_source_l00035) 10674 0 R (json__helpers_8cpp_source_l00036) 10759 0 R (json__helpers_8cpp_source_l00037) 10760 0 R (json__helpers_8cpp_source_l00038) 10761 0 R]
+/Limits [(json__helpers_8cpp_source_l00033) (json__helpers_8cpp_source_l00038)]
+>>
+endobj
+14298 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00039) 10762 0 R (json__helpers_8cpp_source_l00040) 10763 0 R (json__helpers_8cpp_source_l00041) 10673 0 R (json__helpers_8cpp_source_l00042) 10764 0 R (json__helpers_8cpp_source_l00043) 10765 0 R (json__helpers_8cpp_source_l00044) 10766 0 R]
+/Limits [(json__helpers_8cpp_source_l00039) (json__helpers_8cpp_source_l00044)]
+>>
+endobj
+14299 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00045) 10767 0 R (json__helpers_8cpp_source_l00046) 10768 0 R (json__helpers_8cpp_source_l00047) 10672 0 R (json__helpers_8cpp_source_l00048) 10769 0 R (json__helpers_8cpp_source_l00049) 10770 0 R (json__helpers_8cpp_source_l00050) 10771 0 R]
+/Limits [(json__helpers_8cpp_source_l00045) (json__helpers_8cpp_source_l00050)]
+>>
+endobj
+14300 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00051) 10772 0 R (json__helpers_8cpp_source_l00052) 10773 0 R (json__helpers_8cpp_source_l00053) 10774 0 R (json__helpers_8cpp_source_l00054) 10775 0 R (json__helpers_8cpp_source_l00055) 3797 0 R (json__helpers_8cpp_source_l00056) 10776 0 R]
+/Limits [(json__helpers_8cpp_source_l00051) (json__helpers_8cpp_source_l00056)]
+>>
+endobj
+14301 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00057) 10777 0 R (json__helpers_8cpp_source_l00058) 10778 0 R (json__helpers_8cpp_source_l00059) 10779 0 R (json__helpers_8cpp_source_l00060) 10780 0 R (json__helpers_8cpp_source_l00061) 10781 0 R (json__helpers_8cpp_source_l00062) 3798 0 R]
+/Limits [(json__helpers_8cpp_source_l00057) (json__helpers_8cpp_source_l00062)]
+>>
+endobj
+14302 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00063) 10782 0 R (json__helpers_8cpp_source_l00064) 10783 0 R (json__helpers_8cpp_source_l00065) 10784 0 R (json__helpers_8cpp_source_l00066) 10785 0 R (json__helpers_8cpp_source_l00067) 10786 0 R (json__helpers_8cpp_source_l00068) 3799 0 R]
+/Limits [(json__helpers_8cpp_source_l00063) (json__helpers_8cpp_source_l00068)]
+>>
+endobj
+14303 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00069) 10787 0 R (json__helpers_8cpp_source_l00070) 10788 0 R (json__helpers_8cpp_source_l00071) 10789 0 R (json__helpers_8cpp_source_l00072) 10790 0 R (json__helpers_8cpp_source_l00073) 10791 0 R (json__helpers_8cpp_source_l00074) 10703 0 R]
+/Limits [(json__helpers_8cpp_source_l00069) (json__helpers_8cpp_source_l00074)]
+>>
+endobj
+14304 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00075) 10792 0 R (json__helpers_8cpp_source_l00076) 10793 0 R (json__helpers_8cpp_source_l00077) 10794 0 R (json__helpers_8cpp_source_l00078) 10795 0 R (json__helpers_8cpp_source_l00079) 10796 0 R (json__helpers_8cpp_source_l00080) 10702 0 R]
+/Limits [(json__helpers_8cpp_source_l00075) (json__helpers_8cpp_source_l00080)]
+>>
+endobj
+14305 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00081) 10797 0 R (json__helpers_8cpp_source_l00082) 10798 0 R (json__helpers_8cpp_source_l00083) 10844 0 R (json__helpers_8cpp_source_l00084) 10845 0 R (json__helpers_8cpp_source_l00085) 10846 0 R (json__helpers_8cpp_source_l00086) 10701 0 R]
+/Limits [(json__helpers_8cpp_source_l00081) (json__helpers_8cpp_source_l00086)]
+>>
+endobj
+14306 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00087) 10847 0 R (json__helpers_8cpp_source_l00088) 10848 0 R (json__helpers_8cpp_source_l00089) 10849 0 R (json__helpers_8cpp_source_l00090) 10850 0 R (json__helpers_8cpp_source_l00091) 10851 0 R (json__helpers_8cpp_source_l00092) 3770 0 R]
+/Limits [(json__helpers_8cpp_source_l00087) (json__helpers_8cpp_source_l00092)]
+>>
+endobj
+14307 0 obj
+<<
+/Names [(json__helpers_8cpp_source_l00093) 10852 0 R (json__helpers_8cpp_source_l00094) 10853 0 R (json__helpers_8cpp_source_l00095) 10854 0 R (json__helpers_8h) 3336 0 R (json__helpers_8h_source) 10857 0 R (json__helpers_8h_source_l00001) 10900 0 R]
+/Limits [(json__helpers_8cpp_source_l00093) (json__helpers_8h_source_l00001)]
+>>
+endobj
+14308 0 obj
+<<
+/Names [(json__helpers_8h_source_l00002) 10901 0 R (json__helpers_8h_source_l00003) 10902 0 R (json__helpers_8h_source_l00004) 10903 0 R (json__helpers_8h_source_l00005) 10904 0 R (json__helpers_8h_source_l00006) 10905 0 R (json__helpers_8h_source_l00007) 10906 0 R]
+/Limits [(json__helpers_8h_source_l00002) (json__helpers_8h_source_l00007)]
+>>
+endobj
+14309 0 obj
+<<
+/Names [(json__helpers_8h_source_l00018) 10907 0 R (json__helpers_8h_source_l00019) 10908 0 R (json__helpers_8h_source_l00020) 10909 0 R (json__helpers_8h_source_l00031) 10910 0 R (json__helpers_8h_source_l00032) 10911 0 R (json__helpers_8h_source_l00033) 10912 0 R]
+/Limits [(json__helpers_8h_source_l00018) (json__helpers_8h_source_l00033)]
+>>
+endobj
+14310 0 obj
+<<
+/Names [(json__helpers_8h_source_l00034) 10913 0 R (json__helpers_8h_source_l00035) 10914 0 R (json__helpers_8h_source_l00036) 10915 0 R (json__helpers_8h_source_l00037) 10916 0 R (json__helpers_8h_source_l00038) 10917 0 R (json__helpers_8h_source_l00039) 10918 0 R]
+/Limits [(json__helpers_8h_source_l00034) (json__helpers_8h_source_l00039)]
+>>
+endobj
+14311 0 obj
+<<
+/Names [(json__helpers_8h_source_l00040) 10919 0 R (json__helpers_8h_source_l00041) 10920 0 R (json__helpers_8h_source_l00042) 10921 0 R (json__helpers_8h_source_l00043) 10922 0 R (json__helpers_8h_source_l00044) 10923 0 R (json__helpers_8h_source_l00045) 10924 0 R]
+/Limits [(json__helpers_8h_source_l00040) (json__helpers_8h_source_l00045)]
+>>
+endobj
+14312 0 obj
+<<
+/Names [(json__helpers_8h_source_l00046) 10925 0 R (json__helpers_8h_source_l00047) 10926 0 R (json__helpers_8h_source_l00048) 10927 0 R (json__helpers_8h_source_l00049) 10928 0 R (json__helpers_8h_source_l00050) 10929 0 R (json__helpers_8h_source_l00051) 10930 0 R]
+/Limits [(json__helpers_8h_source_l00046) (json__helpers_8h_source_l00051)]
+>>
+endobj
+14313 0 obj
+<<
+/Names [(json__helpers_8h_source_l00052) 10931 0 R (json__helpers_8h_source_l00053) 10932 0 R (json__helpers_8h_source_l00054) 10933 0 R (json__helpers_8h_source_l00055) 10934 0 R (json__helpers_8h_source_l00056) 10935 0 R (json__helpers_8h_source_l00057) 10936 0 R]
+/Limits [(json__helpers_8h_source_l00052) (json__helpers_8h_source_l00057)]
+>>
+endobj
+14314 0 obj
+<<
+/Names [(json__helpers_8h_source_l00058) 10937 0 R (json__helpers_8h_source_l00059) 10938 0 R (json__helpers_8h_source_l00060) 10939 0 R (json__helpers_8h_source_l00061) 10940 0 R (json__helpers_8h_source_l00062) 10941 0 R (json__helpers_8h_source_l00063) 10942 0 R]
+/Limits [(json__helpers_8h_source_l00058) (json__helpers_8h_source_l00063)]
+>>
+endobj
+14315 0 obj
+<<
+/Names [(main_8cpp) 2967 0 R (main_8cpp_a3c04138a5bfe5d72780bb7e82a18e627) 12400 0 R (main_8cpp_source) 12401 0 R (main_8cpp_source_l00001) 12402 0 R (main_8cpp_source_l00002) 12403 0 R (main_8cpp_source_l00003) 12404 0 R]
+/Limits [(main_8cpp) (main_8cpp_source_l00003)]
+>>
+endobj
+14316 0 obj
+<<
+/Names [(main_8cpp_source_l00004) 12405 0 R (main_8cpp_source_l00005) 12406 0 R (main_8cpp_source_l00006) 12407 0 R (main_8cpp_source_l00007) 12408 0 R (main_8cpp_source_l00008) 12409 0 R (main_8cpp_source_l00009) 12410 0 R]
+/Limits [(main_8cpp_source_l00004) (main_8cpp_source_l00009)]
+>>
+endobj
+14317 0 obj
+<<
+/Names [(main_8cpp_source_l00010) 12411 0 R (main_8cpp_source_l00011) 12412 0 R (main_8cpp_source_l00012) 12436 0 R (main_8cpp_source_l00013) 12437 0 R (main_8cpp_source_l00014) 12438 0 R (main_8cpp_source_l00015) 12413 0 R]
+/Limits [(main_8cpp_source_l00010) (main_8cpp_source_l00015)]
+>>
+endobj
+14318 0 obj
+<<
+/Names [(main_8cpp_source_l00016) 12439 0 R (main_8cpp_source_l00017) 12440 0 R (main_8cpp_source_l00018) 12441 0 R (main_8cpp_source_l00019) 12442 0 R (main_8cpp_source_l00020) 12443 0 R (main_8cpp_source_l00021) 12444 0 R]
+/Limits [(main_8cpp_source_l00016) (main_8cpp_source_l00021)]
+>>
+endobj
+14319 0 obj
+<<
+/Names [(main_8cpp_source_l00022) 12445 0 R (main_8cpp_source_l00023) 12446 0 R (main_8cpp_source_l00024) 12447 0 R (main_8cpp_source_l00025) 12448 0 R (main_8cpp_source_l00026) 12449 0 R (main_8cpp_source_l00027) 12450 0 R]
+/Limits [(main_8cpp_source_l00022) (main_8cpp_source_l00027)]
+>>
+endobj
+14320 0 obj
+<<
+/Names [(main_8cpp_source_l00028) 12451 0 R (main_8cpp_source_l00029) 12452 0 R (main_8cpp_source_l00030) 12453 0 R (main_8cpp_source_l00031) 12454 0 R (main_8cpp_source_l00032) 12455 0 R (main_8cpp_source_l00033) 12456 0 R]
+/Limits [(main_8cpp_source_l00028) (main_8cpp_source_l00033)]
+>>
+endobj
+14321 0 obj
+<<
+/Names [(main_8cpp_source_l00034) 12457 0 R (main_8cpp_source_l00035) 12458 0 R (main_8cpp_source_l00036) 12459 0 R (main_8cpp_source_l00037) 12460 0 R (main_8cpp_source_l00038) 12461 0 R (main_8cpp_source_l00039) 12462 0 R]
+/Limits [(main_8cpp_source_l00034) (main_8cpp_source_l00039)]
+>>
+endobj
+14322 0 obj
+<<
+/Names [(main_8cpp_source_l00040) 12463 0 R (main_8cpp_source_l00041) 12464 0 R (main_8cpp_source_l00042) 12465 0 R (main_8cpp_source_l00043) 12466 0 R (main_8cpp_source_l00044) 12467 0 R (main_8cpp_source_l00045) 12468 0 R]
+/Limits [(main_8cpp_source_l00040) (main_8cpp_source_l00045)]
+>>
+endobj
+14323 0 obj
+<<
+/Names [(main_8cpp_source_l00046) 12469 0 R (main_8cpp_source_l00047) 12470 0 R (main_8cpp_source_l00048) 12471 0 R (main_8cpp_source_l00049) 12472 0 R (main_8cpp_source_l00050) 12473 0 R (main_8cpp_source_l00051) 12474 0 R]
+/Limits [(main_8cpp_source_l00046) (main_8cpp_source_l00051)]
+>>
+endobj
+14324 0 obj
+<<
+/Names [(main_8cpp_source_l00052) 12475 0 R (main_8cpp_source_l00053) 12476 0 R (main_8cpp_source_l00054) 12477 0 R (main_8cpp_source_l00055) 12478 0 R (main_8cpp_source_l00056) 12479 0 R (main_8cpp_source_l00057) 12480 0 R]
+/Limits [(main_8cpp_source_l00052) (main_8cpp_source_l00057)]
+>>
+endobj
+14325 0 obj
+<<
+/Names [(main_8cpp_source_l00058) 12481 0 R (main_8cpp_source_l00059) 12482 0 R (main_8cpp_source_l00060) 12483 0 R (main_8cpp_source_l00061) 12484 0 R (main_8cpp_source_l00062) 12485 0 R (main_8cpp_source_l00063) 12486 0 R]
+/Limits [(main_8cpp_source_l00058) (main_8cpp_source_l00063)]
+>>
+endobj
+14326 0 obj
+<<
+/Names [(main_8cpp_source_l00064) 12487 0 R (main_8cpp_source_l00065) 12488 0 R (main_8cpp_source_l00066) 12489 0 R (main_8cpp_source_l00067) 12490 0 R (main_8cpp_source_l00068) 12491 0 R (main_8cpp_source_l00069) 12492 0 R]
+/Limits [(main_8cpp_source_l00064) (main_8cpp_source_l00069)]
+>>
+endobj
+14327 0 obj
+<<
+/Names [(main_8cpp_source_l00070) 12493 0 R (main_8cpp_source_l00071) 12494 0 R (main_8cpp_source_l00072) 12495 0 R (main_8cpp_source_l00073) 12496 0 R (main_8cpp_source_l00074) 12497 0 R (main_8cpp_source_l00075) 12498 0 R]
+/Limits [(main_8cpp_source_l00070) (main_8cpp_source_l00075)]
+>>
+endobj
+14328 0 obj
+<<
+/Names [(main_8cpp_source_l00076) 12499 0 R (main_8cpp_source_l00077) 12500 0 R (main_8cpp_source_l00078) 12501 0 R (main_8cpp_source_l00079) 12502 0 R (main_8cpp_source_l00080) 12503 0 R (main_8cpp_source_l00081) 12504 0 R]
+/Limits [(main_8cpp_source_l00076) (main_8cpp_source_l00081)]
+>>
+endobj
+14329 0 obj
+<<
+/Names [(main_8cpp_source_l00082) 12505 0 R (main_8cpp_source_l00083) 12521 0 R (main_8cpp_source_l00084) 12522 0 R (main_8cpp_source_l00085) 12523 0 R (main_8cpp_source_l00086) 12524 0 R (main_8cpp_source_l00087) 12525 0 R]
+/Limits [(main_8cpp_source_l00082) (main_8cpp_source_l00087)]
+>>
+endobj
+14330 0 obj
+<<
+/Names [(main_8cpp_source_l00088) 12526 0 R (main_8cpp_source_l00089) 12527 0 R (main_8cpp_source_l00090) 12528 0 R (main_8cpp_source_l00091) 12529 0 R (main_8cpp_source_l00092) 12530 0 R (main_8cpp_source_l00093) 12531 0 R]
+/Limits [(main_8cpp_source_l00088) (main_8cpp_source_l00093)]
+>>
+endobj
+14331 0 obj
+<<
+/Names [(main_8cpp_source_l00094) 12532 0 R (main_8cpp_source_l00095) 12533 0 R (main_8cpp_source_l00096) 12534 0 R (main_8cpp_source_l00097) 12535 0 R (main_8cpp_source_l00098) 12536 0 R (main_8cpp_source_l00099) 12537 0 R]
+/Limits [(main_8cpp_source_l00094) (main_8cpp_source_l00099)]
+>>
+endobj
+14332 0 obj
+<<
+/Names [(namespace_h_t_t_p) 2929 0 R (namespace_h_t_t_p_a28a83748614f1c141821ce4b9da83d3f) 3415 0 R (namespace_h_t_t_p_a317431a644c9db16a1657ecc77677a11) 3414 0 R (namespace_h_t_t_p_ab1754212af3bb8edc420a97cffb176ea) 3417 0 R (namespace_h_t_t_p_af603c787079c0b8cacc07b6be6ae5e95) 3419 0 R (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf) 3418 0 R]
+/Limits [(namespace_h_t_t_p) (namespace_h_t_t_p_af7f55b32590882bc9b905c78799fabdf)]
+>>
+endobj
+14333 0 obj
+<<
+/Names [(namespace_m_q_t_t) 2931 0 R (namespace_s_i_g_n) 3067 0 R (namespace_s_o_i_l) 2930 0 R (namespace_s_o_i_l_a02992988be78a7ab33f587f28f9d77ee) 3596 0 R (namespace_s_o_i_l_a034d9e6f234755509cc20b01b506f761) 3584 0 R (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328) 3579 0 R]
+/Limits [(namespace_m_q_t_t) (namespace_s_o_i_l_a088b157f218c9c844ae77c2c07f1b328)]
+>>
+endobj
+14334 0 obj
+<<
+/Names [(namespace_s_o_i_l_a104dd24cc9e4f3291cd6f6cd4ef9a962) 3601 0 R (namespace_s_o_i_l_a10e716692b430aae80488a4eb82c7711) 3604 0 R (namespace_s_o_i_l_a1691ac525df63feb4f180fcc32f307f1) 3575 0 R (namespace_s_o_i_l_a1d5fe6676b3cd6aef4b24e9c4ba4f097) 3578 0 R (namespace_s_o_i_l_a1e904aedc828f75201ffc0452ff28c03) 3587 0 R (namespace_s_o_i_l_a2c15040c8f4602cc146655bf71293721) 3599 0 R]
+/Limits [(namespace_s_o_i_l_a104dd24cc9e4f3291cd6f6cd4ef9a962) (namespace_s_o_i_l_a2c15040c8f4602cc146655bf71293721)]
+>>
+endobj
+14335 0 obj
+<<
+/Names [(namespace_s_o_i_l_a3656e92123956c8afcfbe545eef81eb7) 3589 0 R (namespace_s_o_i_l_a3b4ec3441b90255cca35259c5e4a9321) 3608 0 R (namespace_s_o_i_l_a485afdb40b0c76b73cbbc0da177cf8e3) 3582 0 R (namespace_s_o_i_l_a57872750dce21dba7ad0597f87c45556) 3591 0 R (namespace_s_o_i_l_a5b6625a4bf4d20d486a4258a17462ef9) 3603 0 R (namespace_s_o_i_l_a69374c360d593ed3cd4df6f3ebb40643) 3577 0 R]
+/Limits [(namespace_s_o_i_l_a3656e92123956c8afcfbe545eef81eb7) (namespace_s_o_i_l_a69374c360d593ed3cd4df6f3ebb40643)]
+>>
+endobj
+14336 0 obj
+<<
+/Names [(namespace_s_o_i_l_a6cb86f8e799f4d035ef321becf44d6e2) 3597 0 R (namespace_s_o_i_l_a738722655e044a443e338fde0f97e9a0) 3580 0 R (namespace_s_o_i_l_a79f0d9e5821444f0265d9edf1e37f237) 3576 0 R (namespace_s_o_i_l_a7a19e241bb85fab8d5669742af038a6b) 3598 0 R (namespace_s_o_i_l_a80e0cc86c7756c3f9b4ccf338cd146bd) 3605 0 R (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92) 3590 0 R]
+/Limits [(namespace_s_o_i_l_a6cb86f8e799f4d035ef321becf44d6e2) (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92)]
+>>
+endobj
+14337 0 obj
+<<
+/Names [(namespace_s_o_i_l_a863aac9ac9eb4396135f86bd9bc29bad) 3583 0 R (namespace_s_o_i_l_a86cf6d407ececca2487dcbe521978d21) 3595 0 R (namespace_s_o_i_l_a980491413d86c50ced57a8345c8f63ed) 3586 0 R (namespace_s_o_i_l_aa16db0f32c1f6a992261e1747be93097) 3588 0 R (namespace_s_o_i_l_aa5865fafee3cc8f7eeba8269f24c86ec) 3600 0 R (namespace_s_o_i_l_aa97c25e5a3e597eea65e13ac0ce85416) 3585 0 R]
+/Limits [(namespace_s_o_i_l_a863aac9ac9eb4396135f86bd9bc29bad) (namespace_s_o_i_l_aa97c25e5a3e597eea65e13ac0ce85416)]
+>>
+endobj
+14338 0 obj
+<<
+/Names [(namespace_s_o_i_l_aaff67634d006fd7dca3fffb14b28dd8e) 3593 0 R (namespace_s_o_i_l_acc4b84d1cba2fafd495c35ebaeae1b96) 3581 0 R (namespace_s_o_i_l_ad66a788615277edb2f3e7077d89cd942) 3602 0 R (namespace_s_o_i_l_ada5ccc8aa10b097eea146a1b2d720e95) 3594 0 R (namespace_s_o_i_l_adaab1a60ee0b36f8537055549511ba7b) 3606 0 R (namespace_s_o_i_l_adc8de2e2651ccc2e7c03e8289cd64c2b) 3607 0 R]
+/Limits [(namespace_s_o_i_l_aaff67634d006fd7dca3fffb14b28dd8e) (namespace_s_o_i_l_adc8de2e2651ccc2e7c03e8289cd64c2b)]
+>>
+endobj
+14339 0 obj
+<<
+/Names [(namespace_s_o_i_l_aef76c04a3939438dd7454193a3d56384) 3574 0 R (namespace_u_d_p) 3068 0 R (namespacemqtt) 3066 0 R (page.1) 2921 0 R (page.10) 3108 0 R (page.100) 5799 0 R]
+/Limits [(namespace_s_o_i_l_aef76c04a3939438dd7454193a3d56384) (page.100)]
+>>
+endobj
+14340 0 obj
+<<
+/Names [(page.101) 5823 0 R (page.102) 5852 0 R (page.103) 5878 0 R (page.104) 5905 0 R (page.105) 5925 0 R (page.106) 5948 0 R]
+/Limits [(page.101) (page.106)]
+>>
+endobj
+14341 0 obj
+<<
+/Names [(page.107) 5968 0 R (page.108) 5990 0 R (page.109) 6013 0 R (page.11) 3183 0 R (page.110) 6037 0 R (page.111) 6074 0 R]
+/Limits [(page.107) (page.111)]
+>>
+endobj
+14342 0 obj
+<<
+/Names [(page.112) 6106 0 R (page.113) 6135 0 R (page.114) 6191 0 R (page.115) 6214 0 R (page.116) 6244 0 R (page.117) 6273 0 R]
+/Limits [(page.112) (page.117)]
+>>
+endobj
+14343 0 obj
+<<
+/Names [(page.118) 6304 0 R (page.119) 6337 0 R (page.12) 3217 0 R (page.120) 6367 0 R (page.121) 6391 0 R (page.122) 6414 0 R]
+/Limits [(page.118) (page.122)]
+>>
+endobj
+14344 0 obj
+<<
+/Names [(page.123) 6436 0 R (page.124) 6457 0 R (page.125) 6475 0 R (page.126) 6496 0 R (page.127) 6529 0 R (page.128) 6556 0 R]
+/Limits [(page.123) (page.128)]
+>>
+endobj
+14345 0 obj
+<<
+/Names [(page.129) 6579 0 R (page.13) 3304 0 R (page.130) 6591 0 R (page.131) 6608 0 R (page.132) 6654 0 R (page.133) 6708 0 R]
+/Limits [(page.129) (page.133)]
+>>
+endobj
+14346 0 obj
+<<
+/Names [(page.134) 6750 0 R (page.135) 6767 0 R (page.136) 6785 0 R (page.137) 6812 0 R (page.138) 6845 0 R (page.139) 6868 0 R]
+/Limits [(page.134) (page.139)]
+>>
+endobj
+14347 0 obj
+<<
+/Names [(page.14) 3369 0 R (page.140) 6891 0 R (page.141) 6915 0 R (page.142) 6945 0 R (page.143) 6960 0 R (page.144) 6967 0 R]
+/Limits [(page.14) (page.144)]
+>>
+endobj
+14348 0 obj
+<<
+/Names [(page.145) 6994 0 R (page.146) 7011 0 R (page.147) 7109 0 R (page.148) 7188 0 R (page.149) 7246 0 R (page.15) 3411 0 R]
+/Limits [(page.145) (page.15)]
+>>
+endobj
+14349 0 obj
+<<
+/Names [(page.150) 7277 0 R (page.151) 7310 0 R (page.152) 7357 0 R (page.153) 7423 0 R (page.154) 7472 0 R (page.155) 7516 0 R]
+/Limits [(page.150) (page.155)]
+>>
+endobj
+14350 0 obj
+<<
+/Names [(page.156) 7595 0 R (page.157) 7701 0 R (page.158) 7798 0 R (page.159) 7847 0 R (page.16) 3452 0 R (page.160) 7940 0 R]
+/Limits [(page.156) (page.160)]
+>>
+endobj
+14351 0 obj
+<<
+/Names [(page.161) 8050 0 R (page.162) 8173 0 R (page.163) 8229 0 R (page.164) 8310 0 R (page.165) 8386 0 R (page.166) 8434 0 R]
+/Limits [(page.161) (page.166)]
+>>
+endobj
+14352 0 obj
+<<
+/Names [(page.167) 8469 0 R (page.168) 8537 0 R (page.169) 8592 0 R (page.17) 3499 0 R (page.170) 8680 0 R (page.171) 8750 0 R]
+/Limits [(page.167) (page.171)]
+>>
+endobj
+14353 0 obj
+<<
+/Names [(page.172) 8844 0 R (page.173) 8942 0 R (page.174) 9037 0 R (page.175) 9130 0 R (page.176) 9227 0 R (page.177) 9334 0 R]
+/Limits [(page.172) (page.177)]
+>>
+endobj
+14354 0 obj
+<<
+/Names [(page.178) 9413 0 R (page.179) 9519 0 R (page.18) 3570 0 R (page.180) 9625 0 R (page.181) 9683 0 R (page.182) 9759 0 R]
+/Limits [(page.178) (page.182)]
+>>
+endobj
+14355 0 obj
+<<
+/Names [(page.183) 9829 0 R (page.184) 9900 0 R (page.185) 9997 0 R (page.186) 10114 0 R (page.187) 10220 0 R (page.188) 10319 0 R]
+/Limits [(page.183) (page.188)]
+>>
+endobj
+14356 0 obj
+<<
+/Names [(page.189) 10443 0 R (page.19) 3639 0 R (page.190) 10559 0 R (page.191) 10663 0 R (page.192) 10699 0 R (page.193) 10728 0 R]
+/Limits [(page.189) (page.193)]
+>>
+endobj
+14357 0 obj
+<<
+/Names [(page.194) 10843 0 R (page.195) 10899 0 R (page.196) 10995 0 R (page.197) 11081 0 R (page.198) 11186 0 R (page.199) 11266 0 R]
+/Limits [(page.194) (page.199)]
+>>
+endobj
+14358 0 obj
+<<
+/Names [(page.2) 2938 0 R (page.20) 3656 0 R (page.200) 11359 0 R (page.201) 11442 0 R (page.202) 11553 0 R (page.203) 11624 0 R]
+/Limits [(page.2) (page.203)]
+>>
+endobj
+14359 0 obj
+<<
+/Names [(page.204) 11726 0 R (page.205) 11804 0 R (page.206) 11927 0 R (page.207) 11986 0 R (page.208) 12078 0 R (page.209) 12189 0 R]
+/Limits [(page.204) (page.209)]
+>>
+endobj
+14360 0 obj
+<<
+/Names [(page.21) 3688 0 R (page.210) 12295 0 R (page.211) 12390 0 R (page.212) 12435 0 R (page.213) 12520 0 R (page.214) 12594 0 R]
+/Limits [(page.21) (page.214)]
+>>
+endobj
+14361 0 obj
+<<
+/Names [(page.215) 12697 0 R (page.216) 12753 0 R (page.217) 12795 0 R (page.218) 12813 0 R (page.219) 12876 0 R (page.22) 3707 0 R]
+/Limits [(page.215) (page.22)]
+>>
+endobj
+14362 0 obj
+<<
+/Names [(page.220) 12955 0 R (page.221) 13053 0 R (page.222) 13126 0 R (page.223) 13231 0 R (page.224) 13352 0 R (page.225) 13475 0 R]
+/Limits [(page.220) (page.225)]
+>>
+endobj
+14363 0 obj
+<<
+/Names [(page.226) 13538 0 R (page.23) 3726 0 R (page.24) 3754 0 R (page.25) 3767 0 R (page.26) 3796 0 R (page.27) 3807 0 R]
+/Limits [(page.226) (page.27)]
+>>
+endobj
+14364 0 obj
+<<
+/Names [(page.28) 3813 0 R (page.29) 3838 0 R (page.3) 2971 0 R (page.30) 3860 0 R (page.31) 3882 0 R (page.32) 3913 0 R]
+/Limits [(page.28) (page.32)]
+>>
+endobj
+14365 0 obj
+<<
+/Names [(page.33) 3942 0 R (page.34) 3975 0 R (page.35) 3996 0 R (page.36) 4017 0 R (page.37) 4043 0 R (page.38) 4061 0 R]
+/Limits [(page.33) (page.38)]
+>>
+endobj
+14366 0 obj
+<<
+/Names [(page.39) 4082 0 R (page.4) 2976 0 R (page.40) 4115 0 R (page.41) 4133 0 R (page.42) 4149 0 R (page.43) 4170 0 R]
+/Limits [(page.39) (page.43)]
+>>
+endobj
+14367 0 obj
+<<
+/Names [(page.44) 4192 0 R (page.45) 4213 0 R (page.46) 4240 0 R (page.47) 4270 0 R (page.48) 4294 0 R (page.49) 4307 0 R]
+/Limits [(page.44) (page.49)]
+>>
+endobj
+14368 0 obj
+<<
+/Names [(page.5) 3018 0 R (page.50) 4336 0 R (page.51) 4363 0 R (page.52) 4421 0 R (page.53) 4468 0 R (page.54) 4486 0 R]
+/Limits [(page.5) (page.54)]
+>>
+endobj
+14369 0 obj
+<<
+/Names [(page.55) 4507 0 R (page.56) 4525 0 R (page.57) 4542 0 R (page.58) 4557 0 R (page.59) 4582 0 R (page.6) 3049 0 R]
+/Limits [(page.55) (page.6)]
+>>
+endobj
+14370 0 obj
+<<
+/Names [(page.60) 4613 0 R (page.61) 4637 0 R (page.62) 4657 0 R (page.63) 4683 0 R (page.64) 4700 0 R (page.65) 4724 0 R]
+/Limits [(page.60) (page.65)]
+>>
+endobj
+14371 0 obj
+<<
+/Names [(page.66) 4745 0 R (page.67) 4779 0 R (page.68) 4794 0 R (page.69) 4867 0 R (page.7) 3065 0 R (page.70) 4909 0 R]
+/Limits [(page.66) (page.70)]
+>>
+endobj
+14372 0 obj
+<<
+/Names [(page.71) 4930 0 R (page.72) 4954 0 R (page.73) 4979 0 R (page.74) 5005 0 R (page.75) 5039 0 R (page.76) 5077 0 R]
+/Limits [(page.71) (page.76)]
+>>
+endobj
+14373 0 obj
+<<
+/Names [(page.77) 5141 0 R (page.78) 5172 0 R (page.79) 5188 0 R (page.8) 3072 0 R (page.80) 5207 0 R (page.81) 5234 0 R]
+/Limits [(page.77) (page.81)]
+>>
+endobj
+14374 0 obj
+<<
+/Names [(page.82) 5265 0 R (page.83) 5285 0 R (page.84) 5314 0 R (page.85) 5335 0 R (page.86) 5349 0 R (page.87) 5362 0 R]
+/Limits [(page.82) (page.87)]
+>>
+endobj
+14375 0 obj
+<<
+/Names [(page.88) 5391 0 R (page.89) 5430 0 R (page.9) 3103 0 R (page.90) 5472 0 R (page.91) 5499 0 R (page.92) 5528 0 R]
+/Limits [(page.88) (page.92)]
+>>
+endobj
+14376 0 obj
+<<
+/Names [(page.93) 5563 0 R (page.94) 5593 0 R (page.95) 5637 0 R (page.96) 5689 0 R (page.97) 5716 0 R (page.98) 5739 0 R]
+/Limits [(page.93) (page.98)]
+>>
+endobj
+14377 0 obj
+<<
+/Names [(page.99) 5770 0 R (section*.1) 3412 0 R (section*.10) 3915 0 R (section*.100) 8435 0 R (section*.101) 8521 0 R (section*.102) 8538 0 R]
+/Limits [(page.99) (section*.102)]
+>>
+endobj
+14378 0 obj
+<<
+/Names [(section*.103) 8652 0 R (section*.104) 8681 0 R (section*.105) 8682 0 R (section*.106) 8753 0 R (section*.107) 8754 0 R (section*.108) 9626 0 R]
+/Limits [(section*.103) (section*.108)]
+>>
+endobj
+14379 0 obj
+<<
+/Names [(section*.109) 9627 0 R (section*.11) 3943 0 R (section*.110) 9628 0 R (section*.111) 9803 0 R (section*.112) 9804 0 R (section*.113) 9865 0 R]
+/Limits [(section*.109) (section*.113)]
+>>
+endobj
+14380 0 obj
+<<
+/Names [(section*.114) 9998 0 R (section*.115) 9999 0 R (section*.116) 10000 0 R (section*.117) 10462 0 R (section*.118) 10463 0 R (section*.119) 10664 0 R]
+/Limits [(section*.114) (section*.119)]
+>>
+endobj
+14381 0 obj
+<<
+/Names [(section*.12) 4062 0 R (section*.120) 10855 0 R (section*.121) 10856 0 R (section*.122) 11082 0 R (section*.123) 11083 0 R (section*.124) 11187 0 R]
+/Limits [(section*.12) (section*.124)]
+>>
+endobj
+14382 0 obj
+<<
+/Names [(section*.125) 11188 0 R (section*.126) 11559 0 R (section*.127) 11560 0 R (section*.128) 11928 0 R (section*.129) 11929 0 R (section*.13) 4063 0 R]
+/Limits [(section*.125) (section*.13)]
+>>
+endobj
+14383 0 obj
+<<
+/Names [(section*.130) 11930 0 R (section*.131) 11991 0 R (section*.132) 11992 0 R (section*.133) 12399 0 R (section*.134) 12706 0 R (section*.135) 12707 0 R]
+/Limits [(section*.130) (section*.135)]
+>>
+endobj
+14384 0 obj
+<<
+/Names [(section*.136) 12785 0 R (section*.137) 12786 0 R (section*.138) 2278 0 R (section*.14) 4064 0 R (section*.15) 4117 0 R (section*.16) 4134 0 R]
+/Limits [(section*.136) (section*.16)]
+>>
+endobj
+14385 0 obj
+<<
+/Names [(section*.17) 4241 0 R (section*.18) 4242 0 R (section*.19) 4308 0 R (section*.2) 3413 0 R (section*.20) 4309 0 R (section*.22) 4422 0 R]
+/Limits [(section*.17) (section*.22)]
+>>
+endobj
+14386 0 obj
+<<
+/Names [(section*.23) 4423 0 R (section*.24) 4469 0 R (section*.25) 4658 0 R (section*.27) 4747 0 R (section*.29) 4796 0 R (section*.3) 3453 0 R]
+/Limits [(section*.23) (section*.3)]
+>>
+endobj
+14387 0 obj
+<<
+/Names [(section*.31) 4869 0 R (section*.32) 4910 0 R (section*.33) 4911 0 R (section*.34) 4912 0 R (section*.35) 4913 0 R (section*.37) 5142 0 R]
+/Limits [(section*.31) (section*.37)]
+>>
+endobj
+14388 0 obj
+<<
+/Names [(section*.38) 5143 0 R (section*.39) 5144 0 R (section*.4) 3500 0 R (section*.40) 5315 0 R (section*.41) 5336 0 R (section*.42) 5392 0 R]
+/Limits [(section*.38) (section*.42)]
+>>
+endobj
+14389 0 obj
+<<
+/Names [(section*.44) 5473 0 R (section*.45) 5474 0 R (section*.46) 5475 0 R (section*.48) 5690 0 R (section*.49) 5691 0 R (section*.5) 3501 0 R]
+/Limits [(section*.44) (section*.5)]
+>>
+endobj
+14390 0 obj
+<<
+/Names [(section*.50) 5692 0 R (section*.51) 5693 0 R (section*.52) 5717 0 R (section*.53) 5718 0 R (section*.54) 5879 0 R (section*.55) 5992 0 R]
+/Limits [(section*.50) (section*.55)]
+>>
+endobj
+14391 0 obj
+<<
+/Names [(section*.56) 5993 0 R (section*.57) 6075 0 R (section*.58) 6107 0 R (section*.6) 3571 0 R (section*.60) 6193 0 R (section*.61) 6215 0 R]
+/Limits [(section*.56) (section*.61)]
+>>
+endobj
+14392 0 obj
+<<
+/Names [(section*.62) 6216 0 R (section*.63) 6217 0 R (section*.64) 6415 0 R (section*.65) 6476 0 R (section*.66) 6531 0 R (section*.67) 6532 0 R]
+/Limits [(section*.62) (section*.67)]
+>>
+endobj
+14393 0 obj
+<<
+/Names [(section*.68) 6557 0 R (section*.7) 3572 0 R (section*.70) 6709 0 R (section*.71) 6710 0 R (section*.72) 6711 0 R (section*.73) 6751 0 R]
+/Limits [(section*.68) (section*.73)]
+>>
+endobj
+14394 0 obj
+<<
+/Names [(section*.74) 6752 0 R (section*.75) 6753 0 R (section*.76) 6996 0 R (section*.77) 7118 0 R (section*.78) 7189 0 R (section*.79) 7190 0 R]
+/Limits [(section*.74) (section*.79)]
+>>
+endobj
+14395 0 obj
+<<
+/Names [(section*.8) 3808 0 R (section*.80) 7247 0 R (section*.81) 7248 0 R (section*.82) 7266 0 R (section*.83) 7297 0 R (section*.84) 7328 0 R]
+/Limits [(section*.8) (section*.84)]
+>>
+endobj
+14396 0 obj
+<<
+/Names [(section*.85) 7358 0 R (section*.86) 7439 0 R (section*.87) 7440 0 R (section*.88) 7487 0 R (section*.89) 7488 0 R (section*.9) 3839 0 R]
+/Limits [(section*.85) (section*.9)]
+>>
+endobj
+14397 0 obj
+<<
+/Names [(section*.90) 7517 0 R (section*.91) 7820 0 R (section*.92) 7821 0 R (section*.93) 8177 0 R (section*.94) 8178 0 R (section*.95) 8311 0 R]
+/Limits [(section*.90) (section*.95)]
+>>
+endobj
+14398 0 obj
+<<
+/Names [(section*.96) 8312 0 R (section*.97) 8387 0 R (section*.98) 8388 0 R (section*.99) 8400 0 R (section.1.1) 6 0 R (section.1.2) 22 0 R]
+/Limits [(section*.96) (section.1.2)]
+>>
+endobj
+14399 0 obj
+<<
+/Names [(section.1.3) 26 0 R (section.3.1) 38 0 R (section.4.1) 46 0 R (section.5.1) 54 0 R (section.6.1) 62 0 R (section.7.1) 70 0 R]
+/Limits [(section.1.3) (section.7.1)]
+>>
+endobj
+14400 0 obj
+<<
+/Names [(section.7.2) 98 0 R (section.7.3) 102 0 R (section.7.4) 106 0 R (section.7.5) 110 0 R (section.7.6) 262 0 R (section.8.1) 270 0 R]
+/Limits [(section.7.2) (section.8.1)]
+>>
+endobj
+14401 0 obj
+<<
+/Names [(section.8.10) 838 0 R (section.8.11) 858 0 R (section.8.12) 946 0 R (section.8.13) 1014 0 R (section.8.14) 1062 0 R (section.8.15) 1090 0 R]
+/Limits [(section.8.10) (section.8.15)]
+>>
+endobj
+14402 0 obj
+<<
+/Names [(section.8.16) 1150 0 R (section.8.17) 1218 0 R (section.8.18) 1286 0 R (section.8.19) 1326 0 R (section.8.2) 318 0 R (section.8.20) 1366 0 R]
+/Limits [(section.8.16) (section.8.20)]
+>>
+endobj
+14403 0 obj
+<<
+/Names [(section.8.21) 1406 0 R (section.8.22) 1490 0 R (section.8.23) 1530 0 R (section.8.24) 1566 0 R (section.8.25) 1630 0 R (section.8.3) 410 0 R]
+/Limits [(section.8.21) (section.8.3)]
+>>
+endobj
+14404 0 obj
+<<
+/Names [(section.8.4) 450 0 R (section.8.5) 510 0 R (section.8.6) 570 0 R (section.8.7) 630 0 R (section.8.8) 750 0 R (section.8.9) 806 0 R]
+/Limits [(section.8.4) (section.8.9)]
+>>
+endobj
+14405 0 obj
+<<
+/Names [(section.9.1) 1734 0 R (section.9.10) 1786 0 R (section.9.100) 2254 0 R (section.9.101) 2258 0 R (section.9.102) 2262 0 R (section.9.103) 2266 0 R]
+/Limits [(section.9.1) (section.9.103)]
+>>
+endobj
+14406 0 obj
+<<
+/Names [(section.9.104) 2270 0 R (section.9.105) 2274 0 R (section.9.11) 1798 0 R (section.9.12) 1802 0 R (section.9.13) 1814 0 R (section.9.14) 1818 0 R]
+/Limits [(section.9.104) (section.9.14)]
+>>
+endobj
+14407 0 obj
+<<
+/Names [(section.9.15) 1830 0 R (section.9.16) 1834 0 R (section.9.17) 1846 0 R (section.9.18) 1850 0 R (section.9.19) 1854 0 R (section.9.2) 1738 0 R]
+/Limits [(section.9.15) (section.9.2)]
+>>
+endobj
+14408 0 obj
+<<
+/Names [(section.9.20) 1858 0 R (section.9.21) 1862 0 R (section.9.22) 1866 0 R (section.9.23) 1870 0 R (section.9.24) 1874 0 R (section.9.25) 1878 0 R]
+/Limits [(section.9.20) (section.9.25)]
+>>
+endobj
+14409 0 obj
+<<
+/Names [(section.9.26) 1882 0 R (section.9.27) 1894 0 R (section.9.28) 1898 0 R (section.9.29) 1902 0 R (section.9.3) 1750 0 R (section.9.30) 1906 0 R]
+/Limits [(section.9.26) (section.9.30)]
+>>
+endobj
+14410 0 obj
+<<
+/Names [(section.9.31) 1910 0 R (section.9.32) 1914 0 R (section.9.33) 1918 0 R (section.9.34) 1922 0 R (section.9.35) 1926 0 R (section.9.36) 1930 0 R]
+/Limits [(section.9.31) (section.9.36)]
+>>
+endobj
+14411 0 obj
+<<
+/Names [(section.9.37) 1934 0 R (section.9.38) 1938 0 R (section.9.39) 1942 0 R (section.9.4) 1754 0 R (section.9.40) 1946 0 R (section.9.41) 1950 0 R]
+/Limits [(section.9.37) (section.9.41)]
+>>
+endobj
+14412 0 obj
+<<
+/Names [(section.9.42) 1954 0 R (section.9.43) 1958 0 R (section.9.44) 1962 0 R (section.9.45) 1966 0 R (section.9.46) 1970 0 R (section.9.47) 1974 0 R]
+/Limits [(section.9.42) (section.9.47)]
+>>
+endobj
+14413 0 obj
+<<
+/Names [(section.9.48) 1978 0 R (section.9.49) 1994 0 R (section.9.5) 1766 0 R (section.9.50) 1998 0 R (section.9.51) 2002 0 R (section.9.52) 2006 0 R]
+/Limits [(section.9.48) (section.9.52)]
+>>
+endobj
+14414 0 obj
+<<
+/Names [(section.9.53) 2010 0 R (section.9.54) 2014 0 R (section.9.55) 2018 0 R (section.9.56) 2022 0 R (section.9.57) 2026 0 R (section.9.58) 2030 0 R]
+/Limits [(section.9.53) (section.9.58)]
+>>
+endobj
+14415 0 obj
+<<
+/Names [(section.9.59) 2034 0 R (section.9.6) 1770 0 R (section.9.60) 2038 0 R (section.9.61) 2042 0 R (section.9.62) 2046 0 R (section.9.63) 2066 0 R]
+/Limits [(section.9.59) (section.9.63)]
+>>
+endobj
+14416 0 obj
+<<
+/Names [(section.9.64) 2070 0 R (section.9.65) 2074 0 R (section.9.66) 2078 0 R (section.9.67) 2082 0 R (section.9.68) 2086 0 R (section.9.69) 2090 0 R]
+/Limits [(section.9.64) (section.9.69)]
+>>
+endobj
+14417 0 obj
+<<
+/Names [(section.9.7) 1774 0 R (section.9.70) 2094 0 R (section.9.71) 2130 0 R (section.9.72) 2134 0 R (section.9.73) 2138 0 R (section.9.74) 2142 0 R]
+/Limits [(section.9.7) (section.9.74)]
+>>
+endobj
+14418 0 obj
+<<
+/Names [(section.9.75) 2146 0 R (section.9.76) 2150 0 R (section.9.77) 2154 0 R (section.9.78) 2158 0 R (section.9.79) 2162 0 R (section.9.8) 1778 0 R]
+/Limits [(section.9.75) (section.9.8)]
+>>
+endobj
+14419 0 obj
+<<
+/Names [(section.9.80) 2166 0 R (section.9.81) 2170 0 R (section.9.82) 2174 0 R (section.9.83) 2178 0 R (section.9.84) 2182 0 R (section.9.85) 2186 0 R]
+/Limits [(section.9.80) (section.9.85)]
+>>
+endobj
+14420 0 obj
+<<
+/Names [(section.9.86) 2190 0 R (section.9.87) 2194 0 R (section.9.88) 2198 0 R (section.9.89) 2202 0 R (section.9.9) 1782 0 R (section.9.90) 2206 0 R]
+/Limits [(section.9.86) (section.9.90)]
+>>
+endobj
+14421 0 obj
+<<
+/Names [(section.9.91) 2210 0 R (section.9.92) 2214 0 R (section.9.93) 2218 0 R (section.9.94) 2222 0 R (section.9.95) 2226 0 R (section.9.96) 2230 0 R]
+/Limits [(section.9.91) (section.9.96)]
+>>
+endobj
+14422 0 obj
+<<
+/Names [(section.9.97) 2242 0 R (section.9.98) 2246 0 R (section.9.99) 2250 0 R (struct_m_q_t_t_1_1_message_container) 3195 0 R (struct_m_q_t_t_1_1_message_container_a2624104fd87f5343692fba4181c8c1f0) 5394 0 R (struct_m_q_t_t_1_1_message_container_a563ac8f9dd9878dcc56ac46e9df171da) 5393 0 R]
+/Limits [(section.9.97) (struct_m_q_t_t_1_1_message_container_a563ac8f9dd9878dcc56ac46e9df171da)]
+>>
+endobj
+14423 0 obj
+<<
+/Names [(struct_m_q_t_t_1_1_message_container_aaef0655958e79f05f192d205fd1d3c79) 5396 0 R (struct_m_q_t_t_1_1_message_container_af1400f50c4a851e4b991e368c3e9bee9) 5397 0 R (subsection.1.1.1) 10 0 R (subsection.1.1.2) 14 0 R (subsection.1.1.3) 18 0 R (subsection.7.1.1) 74 0 R]
+/Limits [(struct_m_q_t_t_1_1_message_container_aaef0655958e79f05f192d205fd1d3c79) (subsection.7.1.1)]
+>>
+endobj
+14424 0 obj
+<<
+/Names [(subsection.7.5.1) 114 0 R (subsection.7.5.2) 118 0 R (subsection.7.5.3) 150 0 R (subsection.8.1.1) 274 0 R (subsection.8.1.2) 278 0 R (subsection.8.1.3) 290 0 R]
+/Limits [(subsection.7.5.1) (subsection.8.1.3)]
+>>
+endobj
+14425 0 obj
+<<
+/Names [(subsection.8.10.1) 842 0 R (subsection.8.10.2) 846 0 R (subsection.8.11.1) 862 0 R (subsection.8.11.2) 866 0 R (subsection.8.11.3) 878 0 R (subsection.8.11.4) 926 0 R]
+/Limits [(subsection.8.10.1) (subsection.8.11.4)]
+>>
+endobj
+14426 0 obj
+<<
+/Names [(subsection.8.12.1) 950 0 R (subsection.8.12.2) 954 0 R (subsection.8.12.3) 966 0 R (subsection.8.13.1) 1018 0 R (subsection.8.13.2) 1022 0 R (subsection.8.13.3) 1034 0 R]
+/Limits [(subsection.8.12.1) (subsection.8.13.3)]
+>>
+endobj
+14427 0 obj
+<<
+/Names [(subsection.8.14.1) 1066 0 R (subsection.8.14.2) 1070 0 R (subsection.8.15.1) 1094 0 R (subsection.8.15.2) 1098 0 R (subsection.8.15.3) 1110 0 R (subsection.8.16.1) 1154 0 R]
+/Limits [(subsection.8.14.1) (subsection.8.16.1)]
+>>
+endobj
+14428 0 obj
+<<
+/Names [(subsection.8.16.2) 1158 0 R (subsection.8.16.3) 1170 0 R (subsection.8.16.4) 1210 0 R (subsection.8.17.1) 1222 0 R (subsection.8.17.2) 1226 0 R (subsection.8.17.3) 1238 0 R]
+/Limits [(subsection.8.16.2) (subsection.8.17.3)]
+>>
+endobj
+14429 0 obj
+<<
+/Names [(subsection.8.18.1) 1290 0 R (subsection.8.18.2) 1294 0 R (subsection.8.18.3) 1314 0 R (subsection.8.19.1) 1330 0 R (subsection.8.19.2) 1334 0 R (subsection.8.19.3) 1350 0 R]
+/Limits [(subsection.8.18.1) (subsection.8.19.3)]
+>>
+endobj
+14430 0 obj
+<<
+/Names [(subsection.8.2.1) 322 0 R (subsection.8.2.2) 326 0 R (subsection.8.2.3) 342 0 R (subsection.8.2.4) 350 0 R (subsection.8.20.1) 1370 0 R (subsection.8.20.2) 1374 0 R]
+/Limits [(subsection.8.2.1) (subsection.8.20.2)]
+>>
+endobj
+14431 0 obj
+<<
+/Names [(subsection.8.20.3) 1394 0 R (subsection.8.21.1) 1410 0 R (subsection.8.21.2) 1414 0 R (subsection.8.21.3) 1426 0 R (subsection.8.21.4) 1474 0 R (subsection.8.22.1) 1494 0 R]
+/Limits [(subsection.8.20.3) (subsection.8.22.1)]
+>>
+endobj
+14432 0 obj
+<<
+/Names [(subsection.8.22.2) 1498 0 R (subsection.8.22.3) 1510 0 R (subsection.8.23.1) 1534 0 R (subsection.8.23.2) 1538 0 R (subsection.8.23.3) 1550 0 R (subsection.8.24.1) 1570 0 R]
+/Limits [(subsection.8.22.2) (subsection.8.24.1)]
+>>
+endobj
+14433 0 obj
+<<
+/Names [(subsection.8.24.2) 1574 0 R (subsection.8.24.3) 1594 0 R (subsection.8.24.4) 1618 0 R (subsection.8.25.1) 1634 0 R (subsection.8.25.2) 1638 0 R (subsection.8.25.3) 1650 0 R]
+/Limits [(subsection.8.24.2) (subsection.8.25.3)]
+>>
+endobj
+14434 0 obj
+<<
+/Names [(subsection.8.25.4) 1714 0 R (subsection.8.3.1) 414 0 R (subsection.8.3.2) 418 0 R (subsection.8.3.3) 426 0 R (subsection.8.3.4) 442 0 R (subsection.8.4.1) 454 0 R]
+/Limits [(subsection.8.25.4) (subsection.8.4.1)]
+>>
+endobj
+14435 0 obj
+<<
+/Names [(subsection.8.4.2) 458 0 R (subsection.8.4.3) 474 0 R (subsection.8.5.1) 514 0 R (subsection.8.5.2) 518 0 R (subsection.8.5.3) 534 0 R (subsection.8.6.1) 574 0 R]
+/Limits [(subsection.8.4.2) (subsection.8.6.1)]
+>>
+endobj
+14436 0 obj
+<<
+/Names [(subsection.8.6.2) 578 0 R (subsection.8.6.3) 594 0 R (subsection.8.7.1) 634 0 R (subsection.8.7.2) 638 0 R (subsection.8.7.3) 650 0 R (subsection.8.7.4) 714 0 R]
+/Limits [(subsection.8.6.2) (subsection.8.7.4)]
+>>
+endobj
+14437 0 obj
+<<
+/Names [(subsection.8.8.1) 754 0 R (subsection.8.8.2) 758 0 R (subsection.8.8.3) 778 0 R (subsection.8.9.1) 810 0 R (subsection.8.9.2) 814 0 R (subsection.8.9.3) 830 0 R]
+/Limits [(subsection.8.8.1) (subsection.8.9.3)]
+>>
+endobj
+14438 0 obj
+<<
+/Names [(subsection.9.10.1) 1790 0 R (subsection.9.12.1) 1806 0 R (subsection.9.14.1) 1822 0 R (subsection.9.16.1) 1838 0 R (subsection.9.2.1) 1742 0 R (subsection.9.26.1) 1886 0 R]
+/Limits [(subsection.9.10.1) (subsection.9.26.1)]
+>>
+endobj
+14439 0 obj
+<<
+/Names [(subsection.9.4.1) 1758 0 R (subsection.9.48.1) 1982 0 R (subsection.9.62.1) 2050 0 R (subsection.9.70.1) 2098 0 R (subsection.9.96.1) 2234 0 R (subsubsection.7.1.1.1) 78 0 R]
+/Limits [(subsection.9.4.1) (subsubsection.7.1.1.1)]
+>>
+endobj
+14440 0 obj
+<<
+/Names [(subsubsection.7.1.1.2) 82 0 R (subsubsection.7.1.1.3) 86 0 R (subsubsection.7.1.1.4) 90 0 R (subsubsection.7.1.1.5) 94 0 R (subsubsection.7.5.2.1) 122 0 R (subsubsection.7.5.2.2) 126 0 R]
+/Limits [(subsubsection.7.1.1.2) (subsubsection.7.5.2.2)]
+>>
+endobj
+14441 0 obj
+<<
+/Names [(subsubsection.7.5.2.3) 130 0 R (subsubsection.7.5.2.4) 134 0 R (subsubsection.7.5.2.5) 138 0 R (subsubsection.7.5.2.6) 142 0 R (subsubsection.7.5.2.7) 146 0 R (subsubsection.7.5.3.1) 154 0 R]
+/Limits [(subsubsection.7.5.2.3) (subsubsection.7.5.3.1)]
+>>
+endobj
+14442 0 obj
+<<
+/Names [(subsubsection.7.5.3.10) 190 0 R (subsubsection.7.5.3.11) 194 0 R (subsubsection.7.5.3.12) 198 0 R (subsubsection.7.5.3.13) 202 0 R (subsubsection.7.5.3.14) 206 0 R (subsubsection.7.5.3.15) 210 0 R]
+/Limits [(subsubsection.7.5.3.10) (subsubsection.7.5.3.15)]
+>>
+endobj
+14443 0 obj
+<<
+/Names [(subsubsection.7.5.3.16) 214 0 R (subsubsection.7.5.3.17) 218 0 R (subsubsection.7.5.3.18) 222 0 R (subsubsection.7.5.3.19) 226 0 R (subsubsection.7.5.3.2) 158 0 R (subsubsection.7.5.3.20) 230 0 R]
+/Limits [(subsubsection.7.5.3.16) (subsubsection.7.5.3.20)]
+>>
+endobj
+14444 0 obj
+<<
+/Names [(subsubsection.7.5.3.21) 234 0 R (subsubsection.7.5.3.22) 238 0 R (subsubsection.7.5.3.23) 242 0 R (subsubsection.7.5.3.24) 246 0 R (subsubsection.7.5.3.25) 250 0 R (subsubsection.7.5.3.26) 254 0 R]
+/Limits [(subsubsection.7.5.3.21) (subsubsection.7.5.3.26)]
+>>
+endobj
+14445 0 obj
+<<
+/Names [(subsubsection.7.5.3.27) 258 0 R (subsubsection.7.5.3.3) 162 0 R (subsubsection.7.5.3.4) 166 0 R (subsubsection.7.5.3.5) 170 0 R (subsubsection.7.5.3.6) 174 0 R (subsubsection.7.5.3.7) 178 0 R]
+/Limits [(subsubsection.7.5.3.27) (subsubsection.7.5.3.7)]
+>>
+endobj
+14446 0 obj
+<<
+/Names [(subsubsection.7.5.3.8) 182 0 R (subsubsection.7.5.3.9) 186 0 R (subsubsection.8.1.2.1) 282 0 R (subsubsection.8.1.2.2) 286 0 R (subsubsection.8.1.3.1) 294 0 R (subsubsection.8.1.3.2) 298 0 R]
+/Limits [(subsubsection.7.5.3.8) (subsubsection.8.1.3.2)]
+>>
+endobj
+14447 0 obj
+<<
+/Names [(subsubsection.8.1.3.3) 302 0 R (subsubsection.8.1.3.4) 306 0 R (subsubsection.8.1.3.5) 310 0 R (subsubsection.8.1.3.6) 314 0 R (subsubsection.8.10.2.1) 850 0 R (subsubsection.8.10.2.2) 854 0 R]
+/Limits [(subsubsection.8.1.3.3) (subsubsection.8.10.2.2)]
+>>
+endobj
+14448 0 obj
+<<
+/Names [(subsubsection.8.11.2.1) 870 0 R (subsubsection.8.11.2.2) 874 0 R (subsubsection.8.11.3.1) 882 0 R (subsubsection.8.11.3.10) 918 0 R (subsubsection.8.11.3.11) 922 0 R (subsubsection.8.11.3.2) 886 0 R]
+/Limits [(subsubsection.8.11.2.1) (subsubsection.8.11.3.2)]
+>>
+endobj
+14449 0 obj
+<<
+/Names [(subsubsection.8.11.3.3) 890 0 R (subsubsection.8.11.3.4) 894 0 R (subsubsection.8.11.3.5) 898 0 R (subsubsection.8.11.3.6) 902 0 R (subsubsection.8.11.3.7) 906 0 R (subsubsection.8.11.3.8) 910 0 R]
+/Limits [(subsubsection.8.11.3.3) (subsubsection.8.11.3.8)]
+>>
+endobj
+14450 0 obj
+<<
+/Names [(subsubsection.8.11.3.9) 914 0 R (subsubsection.8.11.4.1) 930 0 R (subsubsection.8.11.4.2) 934 0 R (subsubsection.8.11.4.3) 938 0 R (subsubsection.8.11.4.4) 942 0 R (subsubsection.8.12.2.1) 958 0 R]
+/Limits [(subsubsection.8.11.3.9) (subsubsection.8.12.2.1)]
+>>
+endobj
+14451 0 obj
+<<
+/Names [(subsubsection.8.12.2.2) 962 0 R (subsubsection.8.12.3.1) 970 0 R (subsubsection.8.12.3.10) 1006 0 R (subsubsection.8.12.3.11) 1010 0 R (subsubsection.8.12.3.2) 974 0 R (subsubsection.8.12.3.3) 978 0 R]
+/Limits [(subsubsection.8.12.2.2) (subsubsection.8.12.3.3)]
+>>
+endobj
+14452 0 obj
+<<
+/Names [(subsubsection.8.12.3.4) 982 0 R (subsubsection.8.12.3.5) 986 0 R (subsubsection.8.12.3.6) 990 0 R (subsubsection.8.12.3.7) 994 0 R (subsubsection.8.12.3.8) 998 0 R (subsubsection.8.12.3.9) 1002 0 R]
+/Limits [(subsubsection.8.12.3.4) (subsubsection.8.12.3.9)]
+>>
+endobj
+14453 0 obj
+<<
+/Names [(subsubsection.8.13.2.1) 1026 0 R (subsubsection.8.13.2.2) 1030 0 R (subsubsection.8.13.3.1) 1038 0 R (subsubsection.8.13.3.2) 1042 0 R (subsubsection.8.13.3.3) 1046 0 R (subsubsection.8.13.3.4) 1050 0 R]
+/Limits [(subsubsection.8.13.2.1) (subsubsection.8.13.3.4)]
+>>
+endobj
+14454 0 obj
+<<
+/Names [(subsubsection.8.13.3.5) 1054 0 R (subsubsection.8.13.3.6) 1058 0 R (subsubsection.8.14.2.1) 1074 0 R (subsubsection.8.14.2.2) 1078 0 R (subsubsection.8.14.2.3) 1082 0 R (subsubsection.8.14.2.4) 1086 0 R]
+/Limits [(subsubsection.8.13.3.5) (subsubsection.8.14.2.4)]
+>>
+endobj
+14455 0 obj
+<<
+/Names [(subsubsection.8.15.2.1) 1102 0 R (subsubsection.8.15.2.2) 1106 0 R (subsubsection.8.15.3.1) 1114 0 R (subsubsection.8.15.3.2) 1118 0 R (subsubsection.8.15.3.3) 1122 0 R (subsubsection.8.15.3.4) 1126 0 R]
+/Limits [(subsubsection.8.15.2.1) (subsubsection.8.15.3.4)]
+>>
+endobj
+14456 0 obj
+<<
+/Names [(subsubsection.8.15.3.5) 1130 0 R (subsubsection.8.15.3.6) 1134 0 R (subsubsection.8.15.3.7) 1138 0 R (subsubsection.8.15.3.8) 1142 0 R (subsubsection.8.15.3.9) 1146 0 R (subsubsection.8.16.2.1) 1162 0 R]
+/Limits [(subsubsection.8.15.3.5) (subsubsection.8.16.2.1)]
+>>
+endobj
+14457 0 obj
+<<
+/Names [(subsubsection.8.16.2.2) 1166 0 R (subsubsection.8.16.3.1) 1174 0 R (subsubsection.8.16.3.2) 1178 0 R (subsubsection.8.16.3.3) 1182 0 R (subsubsection.8.16.3.4) 1186 0 R (subsubsection.8.16.3.5) 1190 0 R]
+/Limits [(subsubsection.8.16.2.2) (subsubsection.8.16.3.5)]
+>>
+endobj
+14458 0 obj
+<<
+/Names [(subsubsection.8.16.3.6) 1194 0 R (subsubsection.8.16.3.7) 1198 0 R (subsubsection.8.16.3.8) 1202 0 R (subsubsection.8.16.3.9) 1206 0 R (subsubsection.8.16.4.1) 1214 0 R (subsubsection.8.17.2.1) 1230 0 R]
+/Limits [(subsubsection.8.16.3.6) (subsubsection.8.17.2.1)]
+>>
+endobj
+14459 0 obj
+<<
+/Names [(subsubsection.8.17.2.2) 1234 0 R (subsubsection.8.17.3.1) 1242 0 R (subsubsection.8.17.3.10) 1278 0 R (subsubsection.8.17.3.11) 1282 0 R (subsubsection.8.17.3.2) 1246 0 R (subsubsection.8.17.3.3) 1250 0 R]
+/Limits [(subsubsection.8.17.2.2) (subsubsection.8.17.3.3)]
+>>
+endobj
+14460 0 obj
+<<
+/Names [(subsubsection.8.17.3.4) 1254 0 R (subsubsection.8.17.3.5) 1258 0 R (subsubsection.8.17.3.6) 1262 0 R (subsubsection.8.17.3.7) 1266 0 R (subsubsection.8.17.3.8) 1270 0 R (subsubsection.8.17.3.9) 1274 0 R]
+/Limits [(subsubsection.8.17.3.4) (subsubsection.8.17.3.9)]
+>>
+endobj
+14461 0 obj
+<<
+/Names [(subsubsection.8.18.2.1) 1298 0 R (subsubsection.8.18.2.2) 1302 0 R (subsubsection.8.18.2.3) 1306 0 R (subsubsection.8.18.2.4) 1310 0 R (subsubsection.8.18.3.1) 1318 0 R (subsubsection.8.18.3.2) 1322 0 R]
+/Limits [(subsubsection.8.18.2.1) (subsubsection.8.18.3.2)]
+>>
+endobj
+14462 0 obj
+<<
+/Names [(subsubsection.8.19.2.1) 1338 0 R (subsubsection.8.19.2.2) 1342 0 R (subsubsection.8.19.2.3) 1346 0 R (subsubsection.8.19.3.1) 1354 0 R (subsubsection.8.19.3.2) 1358 0 R (subsubsection.8.19.3.3) 1362 0 R]
+/Limits [(subsubsection.8.19.2.1) (subsubsection.8.19.3.3)]
+>>
+endobj
+14463 0 obj
+<<
+/Names [(subsubsection.8.2.2.1) 330 0 R (subsubsection.8.2.2.2) 334 0 R (subsubsection.8.2.2.3) 338 0 R (subsubsection.8.2.3.1) 346 0 R (subsubsection.8.2.4.1) 354 0 R (subsubsection.8.2.4.10) 390 0 R]
+/Limits [(subsubsection.8.2.2.1) (subsubsection.8.2.4.10)]
+>>
+endobj
+14464 0 obj
+<<
+/Names [(subsubsection.8.2.4.11) 394 0 R (subsubsection.8.2.4.12) 398 0 R (subsubsection.8.2.4.13) 402 0 R (subsubsection.8.2.4.14) 406 0 R (subsubsection.8.2.4.2) 358 0 R (subsubsection.8.2.4.3) 362 0 R]
+/Limits [(subsubsection.8.2.4.11) (subsubsection.8.2.4.3)]
+>>
+endobj
+14465 0 obj
+<<
+/Names [(subsubsection.8.2.4.4) 366 0 R (subsubsection.8.2.4.5) 370 0 R (subsubsection.8.2.4.6) 374 0 R (subsubsection.8.2.4.7) 378 0 R (subsubsection.8.2.4.8) 382 0 R (subsubsection.8.2.4.9) 386 0 R]
+/Limits [(subsubsection.8.2.4.4) (subsubsection.8.2.4.9)]
+>>
+endobj
+14466 0 obj
+<<
+/Names [(subsubsection.8.20.2.1) 1378 0 R (subsubsection.8.20.2.2) 1382 0 R (subsubsection.8.20.2.3) 1386 0 R (subsubsection.8.20.2.4) 1390 0 R (subsubsection.8.20.3.1) 1398 0 R (subsubsection.8.20.3.2) 1402 0 R]
+/Limits [(subsubsection.8.20.2.1) (subsubsection.8.20.3.2)]
+>>
+endobj
+14467 0 obj
+<<
+/Names [(subsubsection.8.21.2.1) 1418 0 R (subsubsection.8.21.2.2) 1422 0 R (subsubsection.8.21.3.1) 1430 0 R (subsubsection.8.21.3.10) 1466 0 R (subsubsection.8.21.3.11) 1470 0 R (subsubsection.8.21.3.2) 1434 0 R]
+/Limits [(subsubsection.8.21.2.1) (subsubsection.8.21.3.2)]
+>>
+endobj
+14468 0 obj
+<<
+/Names [(subsubsection.8.21.3.3) 1438 0 R (subsubsection.8.21.3.4) 1442 0 R (subsubsection.8.21.3.5) 1446 0 R (subsubsection.8.21.3.6) 1450 0 R (subsubsection.8.21.3.7) 1454 0 R (subsubsection.8.21.3.8) 1458 0 R]
+/Limits [(subsubsection.8.21.3.3) (subsubsection.8.21.3.8)]
+>>
+endobj
+14469 0 obj
+<<
+/Names [(subsubsection.8.21.3.9) 1462 0 R (subsubsection.8.21.4.1) 1478 0 R (subsubsection.8.21.4.2) 1482 0 R (subsubsection.8.21.4.3) 1486 0 R (subsubsection.8.22.2.1) 1502 0 R (subsubsection.8.22.2.2) 1506 0 R]
+/Limits [(subsubsection.8.21.3.9) (subsubsection.8.22.2.2)]
+>>
+endobj
+14470 0 obj
+<<
+/Names [(subsubsection.8.22.3.1) 1514 0 R (subsubsection.8.22.3.2) 1518 0 R (subsubsection.8.22.3.3) 1522 0 R (subsubsection.8.22.3.4) 1526 0 R (subsubsection.8.23.2.1) 1542 0 R (subsubsection.8.23.2.2) 1546 0 R]
+/Limits [(subsubsection.8.22.3.1) (subsubsection.8.23.2.2)]
+>>
+endobj
+14471 0 obj
+<<
+/Names [(subsubsection.8.23.3.1) 1554 0 R (subsubsection.8.23.3.2) 1558 0 R (subsubsection.8.23.3.3) 1562 0 R (subsubsection.8.24.2.1) 1578 0 R (subsubsection.8.24.2.2) 1582 0 R (subsubsection.8.24.2.3) 1586 0 R]
+/Limits [(subsubsection.8.23.3.1) (subsubsection.8.24.2.3)]
+>>
+endobj
+14472 0 obj
+<<
+/Names [(subsubsection.8.24.2.4) 1590 0 R (subsubsection.8.24.3.1) 1598 0 R (subsubsection.8.24.3.2) 1602 0 R (subsubsection.8.24.3.3) 1606 0 R (subsubsection.8.24.3.4) 1610 0 R (subsubsection.8.24.3.5) 1614 0 R]
+/Limits [(subsubsection.8.24.2.4) (subsubsection.8.24.3.5)]
+>>
+endobj
+14473 0 obj
+<<
+/Names [(subsubsection.8.24.4.1) 1622 0 R (subsubsection.8.24.4.2) 1626 0 R (subsubsection.8.25.2.1) 1642 0 R (subsubsection.8.25.2.2) 1646 0 R (subsubsection.8.25.3.1) 1654 0 R (subsubsection.8.25.3.10) 1690 0 R]
+/Limits [(subsubsection.8.24.4.1) (subsubsection.8.25.3.10)]
+>>
+endobj
+14474 0 obj
+<<
+/Names [(subsubsection.8.25.3.11) 1694 0 R (subsubsection.8.25.3.12) 1698 0 R (subsubsection.8.25.3.13) 1702 0 R (subsubsection.8.25.3.14) 1706 0 R (subsubsection.8.25.3.15) 1710 0 R (subsubsection.8.25.3.2) 1658 0 R]
+/Limits [(subsubsection.8.25.3.11) (subsubsection.8.25.3.2)]
+>>
+endobj
+14475 0 obj
+<<
+/Names [(subsubsection.8.25.3.3) 1662 0 R (subsubsection.8.25.3.4) 1666 0 R (subsubsection.8.25.3.5) 1670 0 R (subsubsection.8.25.3.6) 1674 0 R (subsubsection.8.25.3.7) 1678 0 R (subsubsection.8.25.3.8) 1682 0 R]
+/Limits [(subsubsection.8.25.3.3) (subsubsection.8.25.3.8)]
+>>
+endobj
+14476 0 obj
+<<
+/Names [(subsubsection.8.25.3.9) 1686 0 R (subsubsection.8.25.4.1) 1718 0 R (subsubsection.8.25.4.2) 1722 0 R (subsubsection.8.25.4.3) 1726 0 R (subsubsection.8.3.2.1) 422 0 R (subsubsection.8.3.3.1) 430 0 R]
+/Limits [(subsubsection.8.25.3.9) (subsubsection.8.3.3.1)]
+>>
+endobj
+14477 0 obj
+<<
+/Names [(subsubsection.8.3.3.2) 434 0 R (subsubsection.8.3.3.3) 438 0 R (subsubsection.8.3.4.1) 446 0 R (subsubsection.8.4.2.1) 462 0 R (subsubsection.8.4.2.2) 466 0 R (subsubsection.8.4.2.3) 470 0 R]
+/Limits [(subsubsection.8.3.3.2) (subsubsection.8.4.2.3)]
+>>
+endobj
+14478 0 obj
+<<
+/Names [(subsubsection.8.4.3.1) 478 0 R (subsubsection.8.4.3.2) 482 0 R (subsubsection.8.4.3.3) 486 0 R (subsubsection.8.4.3.4) 490 0 R (subsubsection.8.4.3.5) 494 0 R (subsubsection.8.4.3.6) 498 0 R]
+/Limits [(subsubsection.8.4.3.1) (subsubsection.8.4.3.6)]
+>>
+endobj
+14479 0 obj
+<<
+/Names [(subsubsection.8.4.3.7) 502 0 R (subsubsection.8.4.3.8) 506 0 R (subsubsection.8.5.2.1) 522 0 R (subsubsection.8.5.2.2) 526 0 R (subsubsection.8.5.2.3) 530 0 R (subsubsection.8.5.3.1) 538 0 R]
+/Limits [(subsubsection.8.4.3.7) (subsubsection.8.5.3.1)]
+>>
+endobj
+14480 0 obj
+<<
+/Names [(subsubsection.8.5.3.2) 542 0 R (subsubsection.8.5.3.3) 546 0 R (subsubsection.8.5.3.4) 550 0 R (subsubsection.8.5.3.5) 554 0 R (subsubsection.8.5.3.6) 558 0 R (subsubsection.8.5.3.7) 562 0 R]
+/Limits [(subsubsection.8.5.3.2) (subsubsection.8.5.3.7)]
+>>
+endobj
+14481 0 obj
+<<
+/Names [(subsubsection.8.5.3.8) 566 0 R (subsubsection.8.6.2.1) 582 0 R (subsubsection.8.6.2.2) 586 0 R (subsubsection.8.6.2.3) 590 0 R (subsubsection.8.6.3.1) 598 0 R (subsubsection.8.6.3.2) 602 0 R]
+/Limits [(subsubsection.8.5.3.8) (subsubsection.8.6.3.2)]
+>>
+endobj
+14482 0 obj
+<<
+/Names [(subsubsection.8.6.3.3) 606 0 R (subsubsection.8.6.3.4) 610 0 R (subsubsection.8.6.3.5) 614 0 R (subsubsection.8.6.3.6) 618 0 R (subsubsection.8.6.3.7) 622 0 R (subsubsection.8.6.3.8) 626 0 R]
+/Limits [(subsubsection.8.6.3.3) (subsubsection.8.6.3.8)]
+>>
+endobj
+14483 0 obj
+<<
+/Names [(subsubsection.8.7.2.1) 642 0 R (subsubsection.8.7.2.2) 646 0 R (subsubsection.8.7.3.1) 654 0 R (subsubsection.8.7.3.10) 690 0 R (subsubsection.8.7.3.11) 694 0 R (subsubsection.8.7.3.12) 698 0 R]
+/Limits [(subsubsection.8.7.2.1) (subsubsection.8.7.3.12)]
+>>
+endobj
+14484 0 obj
+<<
+/Names [(subsubsection.8.7.3.13) 702 0 R (subsubsection.8.7.3.14) 706 0 R (subsubsection.8.7.3.15) 710 0 R (subsubsection.8.7.3.2) 658 0 R (subsubsection.8.7.3.3) 662 0 R (subsubsection.8.7.3.4) 666 0 R]
+/Limits [(subsubsection.8.7.3.13) (subsubsection.8.7.3.4)]
+>>
+endobj
+14485 0 obj
+<<
+/Names [(subsubsection.8.7.3.5) 670 0 R (subsubsection.8.7.3.6) 674 0 R (subsubsection.8.7.3.7) 678 0 R (subsubsection.8.7.3.8) 682 0 R (subsubsection.8.7.3.9) 686 0 R (subsubsection.8.7.4.1) 718 0 R]
+/Limits [(subsubsection.8.7.3.5) (subsubsection.8.7.4.1)]
+>>
+endobj
+14486 0 obj
+<<
+/Names [(subsubsection.8.7.4.2) 722 0 R (subsubsection.8.7.4.3) 726 0 R (subsubsection.8.7.4.4) 730 0 R (subsubsection.8.7.4.5) 734 0 R (subsubsection.8.7.4.6) 738 0 R (subsubsection.8.7.4.7) 742 0 R]
+/Limits [(subsubsection.8.7.4.2) (subsubsection.8.7.4.7)]
+>>
+endobj
+14487 0 obj
+<<
+/Names [(subsubsection.8.7.4.8) 746 0 R (subsubsection.8.8.2.1) 762 0 R (subsubsection.8.8.2.2) 766 0 R (subsubsection.8.8.2.3) 770 0 R (subsubsection.8.8.2.4) 774 0 R (subsubsection.8.8.3.1) 782 0 R]
+/Limits [(subsubsection.8.7.4.8) (subsubsection.8.8.3.1)]
+>>
+endobj
+14488 0 obj
+<<
+/Names [(subsubsection.8.8.3.2) 786 0 R (subsubsection.8.8.3.3) 790 0 R (subsubsection.8.8.3.4) 794 0 R (subsubsection.8.8.3.5) 798 0 R (subsubsection.8.8.3.6) 802 0 R (subsubsection.8.9.2.1) 818 0 R]
+/Limits [(subsubsection.8.8.3.2) (subsubsection.8.9.2.1)]
+>>
+endobj
+14489 0 obj
+<<
+/Names [(subsubsection.8.9.2.2) 822 0 R (subsubsection.8.9.2.3) 826 0 R (subsubsection.8.9.3.1) 834 0 R (subsubsection.9.10.1.1) 1794 0 R (subsubsection.9.12.1.1) 1810 0 R (subsubsection.9.14.1.1) 1826 0 R]
+/Limits [(subsubsection.8.9.2.2) (subsubsection.9.14.1.1)]
+>>
+endobj
+14490 0 obj
+<<
+/Names [(subsubsection.9.16.1.1) 1842 0 R (subsubsection.9.2.1.1) 1746 0 R (subsubsection.9.26.1.1) 1890 0 R (subsubsection.9.4.1.1) 1762 0 R (subsubsection.9.48.1.1) 1986 0 R (subsubsection.9.48.1.2) 1990 0 R]
+/Limits [(subsubsection.9.16.1.1) (subsubsection.9.48.1.2)]
+>>
+endobj
+14491 0 obj
+<<
+/Names [(subsubsection.9.62.1.1) 2054 0 R (subsubsection.9.62.1.2) 2058 0 R (subsubsection.9.62.1.3) 2062 0 R (subsubsection.9.70.1.1) 2102 0 R (subsubsection.9.70.1.2) 2106 0 R (subsubsection.9.70.1.3) 2110 0 R]
+/Limits [(subsubsection.9.62.1.1) (subsubsection.9.70.1.3)]
+>>
+endobj
+14492 0 obj
+<<
+/Names [(subsubsection.9.70.1.4) 2114 0 R (subsubsection.9.70.1.5) 2118 0 R (subsubsection.9.70.1.6) 2122 0 R (subsubsection.9.70.1.7) 2126 0 R (subsubsection.9.96.1.1) 2238 0 R (table.7.1) 3657 0 R]
+/Limits [(subsubsection.9.70.1.4) (table.7.1)]
+>>
+endobj
+14493 0 obj
+<<
+/Names [(table.7.2) 3710 0 R (table.7.3) 3711 0 R (table.7.4) 3727 0 R (table.7.5) 3728 0 R (table.7.6) 3729 0 R (table.7.7) 3768 0 R]
+/Limits [(table.7.2) (table.7.7)]
+>>
+endobj
+14494 0 obj
+<<
+/Names [(table.7.8) 3769 0 R (table.8.1) 3861 0 R (table.8.10) 4151 0 R (table.8.100) 6305 0 R (table.8.101) 6306 0 R (table.8.102) 6307 0 R]
+/Limits [(table.7.8) (table.8.102)]
+>>
+endobj
+14495 0 obj
+<<
+/Names [(table.8.103) 6338 0 R (table.8.104) 6339 0 R (table.8.105) 6368 0 R (table.8.106) 6369 0 R (table.8.107) 6392 0 R (table.8.108) 6437 0 R]
+/Limits [(table.8.103) (table.8.108)]
+>>
+endobj
+14496 0 obj
+<<
+/Names [(table.8.109) 6438 0 R (table.8.11) 4152 0 R (table.8.110) 6458 0 R (table.8.111) 6478 0 R (table.8.112) 6530 0 R (table.8.113) 6559 0 R]
+/Limits [(table.8.109) (table.8.113)]
+>>
+endobj
+14497 0 obj
+<<
+/Names [(table.8.114) 6580 0 R (table.8.115) 6609 0 R (table.8.116) 6610 0 R (table.8.117) 6655 0 R (table.8.118) 6754 0 R (table.8.119) 6768 0 R]
+/Limits [(table.8.114) (table.8.119)]
+>>
+endobj
+14498 0 obj
+<<
+/Names [(table.8.12) 4171 0 R (table.8.120) 6786 0 R (table.8.121) 6813 0 R (table.8.122) 6814 0 R (table.8.123) 6846 0 R (table.8.124) 6869 0 R]
+/Limits [(table.8.12) (table.8.124)]
+>>
+endobj
+14499 0 obj
+<<
+/Names [(table.8.125) 6870 0 R (table.8.126) 6871 0 R (table.8.127) 6892 0 R (table.8.128) 6916 0 R (table.8.129) 6946 0 R (table.8.13) 4172 0 R]
+/Limits [(table.8.125) (table.8.13)]
+>>
+endobj
+14500 0 obj
+<<
+/Names [(table.8.14) 4173 0 R (table.8.15) 4214 0 R (table.8.16) 4243 0 R (table.8.17) 4310 0 R (table.8.18) 4470 0 R (table.8.19) 4487 0 R]
+/Limits [(table.8.14) (table.8.19)]
+>>
+endobj
+14501 0 obj
+<<
+/Names [(table.8.2) 3862 0 R (table.8.20) 4488 0 R (table.8.21) 4508 0 R (table.8.22) 4526 0 R (table.8.23) 4527 0 R (table.8.24) 4543 0 R]
+/Limits [(table.8.2) (table.8.24)]
+>>
+endobj
+14502 0 obj
+<<
+/Names [(table.8.25) 4583 0 R (table.8.26) 4584 0 R (table.8.27) 4585 0 R (table.8.28) 4684 0 R (table.8.29) 4685 0 R (table.8.3) 3883 0 R]
+/Limits [(table.8.25) (table.8.3)]
+>>
+endobj
+14503 0 obj
+<<
+/Names [(table.8.30) 4701 0 R (table.8.31) 4702 0 R (table.8.32) 4725 0 R (table.8.33) 4726 0 R (table.8.34) 4727 0 R (table.8.35) 4728 0 R]
+/Limits [(table.8.30) (table.8.35)]
+>>
+endobj
+14504 0 obj
+<<
+/Names [(table.8.36) 4749 0 R (table.8.37) 4780 0 R (table.8.38) 4798 0 R (table.8.39) 4914 0 R (table.8.4) 3884 0 R (table.8.40) 4931 0 R]
+/Limits [(table.8.36) (table.8.40)]
+>>
+endobj
+14505 0 obj
+<<
+/Names [(table.8.41) 4932 0 R (table.8.42) 4955 0 R (table.8.43) 4980 0 R (table.8.44) 4981 0 R (table.8.45) 4982 0 R (table.8.46) 5006 0 R]
+/Limits [(table.8.41) (table.8.46)]
+>>
+endobj
+14506 0 obj
+<<
+/Names [(table.8.47) 5007 0 R (table.8.48) 5008 0 R (table.8.49) 5009 0 R (table.8.5) 3886 0 R (table.8.50) 5173 0 R (table.8.51) 5189 0 R]
+/Limits [(table.8.47) (table.8.51)]
+>>
+endobj
+14507 0 obj
+<<
+/Names [(table.8.52) 5190 0 R (table.8.53) 5191 0 R (table.8.54) 5192 0 R (table.8.55) 5208 0 R (table.8.56) 5209 0 R (table.8.57) 5235 0 R]
+/Limits [(table.8.52) (table.8.57)]
+>>
+endobj
+14508 0 obj
+<<
+/Names [(table.8.58) 5236 0 R (table.8.59) 5237 0 R (table.8.6) 3914 0 R (table.8.60) 5266 0 R (table.8.61) 5267 0 R (table.8.62) 5286 0 R]
+/Limits [(table.8.58) (table.8.62)]
+>>
+endobj
+14509 0 obj
+<<
+/Names [(table.8.63) 5287 0 R (table.8.64) 5288 0 R (table.8.65) 5289 0 R (table.8.66) 5350 0 R (table.8.67) 5363 0 R (table.8.68) 5364 0 R]
+/Limits [(table.8.63) (table.8.68)]
+>>
+endobj
+14510 0 obj
+<<
+/Names [(table.8.69) 5365 0 R (table.8.7) 3976 0 R (table.8.70) 5500 0 R (table.8.71) 5529 0 R (table.8.72) 5530 0 R (table.8.73) 5564 0 R]
+/Limits [(table.8.69) (table.8.73)]
+>>
+endobj
+14511 0 obj
+<<
+/Names [(table.8.74) 5565 0 R (table.8.75) 5594 0 R (table.8.76) 5595 0 R (table.8.77) 5719 0 R (table.8.78) 5740 0 R (table.8.79) 5741 0 R]
+/Limits [(table.8.74) (table.8.79)]
+>>
+endobj
+14512 0 obj
+<<
+/Names [(table.8.8) 4083 0 R (table.8.80) 5771 0 R (table.8.81) 5800 0 R (table.8.82) 5801 0 R (table.8.83) 5824 0 R (table.8.84) 5825 0 R]
+/Limits [(table.8.8) (table.8.84)]
+>>
+endobj
+14513 0 obj
+<<
+/Names [(table.8.85) 5906 0 R (table.8.86) 5907 0 R (table.8.87) 5926 0 R (table.8.88) 5927 0 R (table.8.89) 5949 0 R (table.8.9) 4150 0 R]
+/Limits [(table.8.85) (table.8.9)]
+>>
+endobj
+14514 0 obj
+<<
+/Names [(table.8.90) 5969 0 R (table.8.91) 5970 0 R (table.8.92) 5991 0 R (table.8.93) 6014 0 R (table.8.94) 6015 0 R (table.8.95) 6038 0 R]
+/Limits [(table.8.90) (table.8.95)]
+>>
+endobj
+14515 0 obj
+<<
+/Names [(table.8.96) 6039 0 R (table.8.97) 6245 0 R (table.8.98) 6274 0 R (table.8.99) 6275 0 R (todo) 3019 0 R (todo__todo000001) 3021 0 R]
+/Limits [(table.8.96) (todo__todo000001)]
+>>
+endobj
+14516 0 obj
+<<
+/Names [(todo__todo000002) 3020 0 R (todo__todo000003) 3022 0 R (todo__todo000004) 3023 0 R (todo__todo000005) 3024 0 R (todo__todo000006) 3025 0 R (todo__todo000007) 3026 0 R]
+/Limits [(todo__todo000002) (todo__todo000007)]
+>>
+endobj
+14517 0 obj
+<<
+/Names [(todo__todo000008) 3027 0 R (todo__todo000009) 3028 0 R (todo__todo000011) 3029 0 R (todo__todo000012) 3030 0 R (todo__todo000013) 3031 0 R]
+/Limits [(todo__todo000008) (todo__todo000013)]
+>>
+endobj
+14518 0 obj
+<<
+/Kids [13611 0 R 13612 0 R 13613 0 R 13614 0 R 13615 0 R 13616 0 R]
+/Limits [(Doc-Start) (_broadcast_8cpp_source_l00013)]
+>>
+endobj
+14519 0 obj
+<<
+/Kids [13617 0 R 13618 0 R 13619 0 R 13620 0 R 13621 0 R 13622 0 R]
+/Limits [(_broadcast_8cpp_source_l00014) (_broadcast_8cpp_source_l00049)]
+>>
+endobj
+14520 0 obj
+<<
+/Kids [13623 0 R 13624 0 R 13625 0 R 13626 0 R 13627 0 R 13628 0 R]
+/Limits [(_broadcast_8cpp_source_l00050) (_broadcast_8cpp_source_l00085)]
+>>
+endobj
+14521 0 obj
+<<
+/Kids [13629 0 R 13630 0 R 13631 0 R 13632 0 R 13633 0 R 13634 0 R]
+/Limits [(_broadcast_8cpp_source_l00086) (_broadcast_8cpp_source_l00121)]
+>>
+endobj
+14522 0 obj
+<<
+/Kids [13635 0 R 13636 0 R 13637 0 R 13638 0 R 13639 0 R 13640 0 R]
+/Limits [(_broadcast_8cpp_source_l00122) (_broadcast_8h_source_l00024)]
+>>
+endobj
+14523 0 obj
+<<
+/Kids [13641 0 R 13642 0 R 13643 0 R 13644 0 R 13645 0 R 13646 0 R]
+/Limits [(_broadcast_8h_source_l00031) (_container_8cpp)]
+>>
+endobj
+14524 0 obj
+<<
+/Kids [13647 0 R 13648 0 R 13649 0 R 13650 0 R 13651 0 R 13652 0 R]
+/Limits [(_container_8cpp_source) (_container_8h_source_l00117)]
+>>
+endobj
+14525 0 obj
+<<
+/Kids [13653 0 R 13654 0 R 13655 0 R 13656 0 R 13657 0 R 13658 0 R]
+/Limits [(_container_8h_source_l00118) (_container_8h_source_l00180)]
+>>
+endobj
+14526 0 obj
+<<
+/Kids [13659 0 R 13660 0 R 13661 0 R 13662 0 R 13663 0 R 13664 0 R]
+/Limits [(_container_8h_source_l00181) (_container_8h_source_l00216)]
+>>
+endobj
+14527 0 obj
+<<
+/Kids [13665 0 R 13666 0 R 13667 0 R 13668 0 R 13669 0 R 13670 0 R]
+/Limits [(_container_8h_source_l00217) (_container_8h_source_l00252)]
+>>
+endobj
+14528 0 obj
+<<
+/Kids [13671 0 R 13672 0 R 13673 0 R 13674 0 R 13675 0 R 13676 0 R]
+/Limits [(_container_8h_source_l00253) (_container_8h_source_l00288)]
+>>
+endobj
+14529 0 obj
+<<
+/Kids [13677 0 R 13678 0 R 13679 0 R 13680 0 R 13681 0 R 13682 0 R]
+/Limits [(_container_8h_source_l00289) (_container_8h_source_l00324)]
+>>
+endobj
+14530 0 obj
+<<
+/Kids [13683 0 R 13684 0 R 13685 0 R 13686 0 R 13687 0 R 13688 0 R]
+/Limits [(_container_8h_source_l00325) (_container_8h_source_l00360)]
+>>
+endobj
+14531 0 obj
+<<
+/Kids [13689 0 R 13690 0 R 13691 0 R 13692 0 R 13693 0 R 13694 0 R]
+/Limits [(_container_8h_source_l00361) (_container_8h_source_l00396)]
+>>
+endobj
+14532 0 obj
+<<
+/Kids [13695 0 R 13696 0 R 13697 0 R 13698 0 R 13699 0 R 13700 0 R]
+/Limits [(_container_8h_source_l00397) (_container_8h_source_l00432)]
+>>
+endobj
+14533 0 obj
+<<
+/Kids [13701 0 R 13702 0 R 13703 0 R 13704 0 R 13705 0 R 13706 0 R]
+/Limits [(_container_8h_source_l00433) (_container_8h_source_l00468)]
+>>
+endobj
+14534 0 obj
+<<
+/Kids [13707 0 R 13708 0 R 13709 0 R 13710 0 R 13711 0 R 13712 0 R]
+/Limits [(_container_8h_source_l00469) (_container_8h_source_l00504)]
+>>
+endobj
+14535 0 obj
+<<
+/Kids [13713 0 R 13714 0 R 13715 0 R 13716 0 R 13717 0 R 13718 0 R]
+/Limits [(_container_8h_source_l00505) (_container_8h_source_l00540)]
+>>
+endobj
+14536 0 obj
+<<
+/Kids [13719 0 R 13720 0 R 13721 0 R 13722 0 R 13723 0 R 13724 0 R]
+/Limits [(_container_8h_source_l00541) (_container_8h_source_l00576)]
+>>
+endobj
+14537 0 obj
+<<
+/Kids [13725 0 R 13726 0 R 13727 0 R 13728 0 R 13729 0 R 13730 0 R]
+/Limits [(_container_8h_source_l00577) (_element_8cpp_source_l00007)]
+>>
+endobj
+14538 0 obj
+<<
+/Kids [13731 0 R 13732 0 R 13733 0 R 13734 0 R 13735 0 R 13736 0 R]
+/Limits [(_element_8cpp_source_l00008) (_element_8cpp_source_l00043)]
+>>
+endobj
+14539 0 obj
+<<
+/Kids [13737 0 R 13738 0 R 13739 0 R 13740 0 R 13741 0 R 13742 0 R]
+/Limits [(_element_8cpp_source_l00044) (_element_8cpp_source_l00079)]
+>>
+endobj
+14540 0 obj
+<<
+/Kids [13743 0 R 13744 0 R 13745 0 R 13746 0 R 13747 0 R 13748 0 R]
+/Limits [(_element_8cpp_source_l00080) (_element_8cpp_source_l00115)]
+>>
+endobj
+14541 0 obj
+<<
+/Kids [13749 0 R 13750 0 R 13751 0 R 13752 0 R 13753 0 R 13754 0 R]
+/Limits [(_element_8cpp_source_l00116) (_element_8cpp_source_l00151)]
+>>
+endobj
+14542 0 obj
+<<
+/Kids [13755 0 R 13756 0 R 13757 0 R 13758 0 R 13759 0 R 13760 0 R]
+/Limits [(_element_8cpp_source_l00152) (_element_8h_source_l00001)]
+>>
+endobj
+14543 0 obj
+<<
+/Kids [13761 0 R 13762 0 R 13763 0 R 13764 0 R 13765 0 R 13766 0 R]
+/Limits [(_element_8h_source_l00002) (_element_8h_source_l00106)]
+>>
+endobj
+14544 0 obj
+<<
+/Kids [13767 0 R 13768 0 R 13769 0 R 13770 0 R 13771 0 R 13772 0 R]
+/Limits [(_element_8h_source_l00113) (_element_8h_source_l00267)]
+>>
+endobj
+14545 0 obj
+<<
+/Kids [13773 0 R 13774 0 R 13775 0 R 13776 0 R 13777 0 R 13778 0 R]
+/Limits [(_element_8h_source_l00268) (_enum_8cpp_source_l00029)]
+>>
+endobj
+14546 0 obj
+<<
+/Kids [13779 0 R 13780 0 R 13781 0 R 13782 0 R 13783 0 R 13784 0 R]
+/Limits [(_enum_8cpp_source_l00030) (_enum_8cpp_source_l00065)]
+>>
+endobj
+14547 0 obj
+<<
+/Kids [13785 0 R 13786 0 R 13787 0 R 13788 0 R 13789 0 R 13790 0 R]
+/Limits [(_enum_8cpp_source_l00066) (_enum_8h_source_l00090)]
+>>
+endobj
+14548 0 obj
+<<
+/Kids [13791 0 R 13792 0 R 13793 0 R 13794 0 R 13795 0 R 13796 0 R]
+/Limits [(_enum_8h_source_l00102) (_figure_8cpp)]
+>>
+endobj
+14549 0 obj
+<<
+/Kids [13797 0 R 13798 0 R 13799 0 R 13800 0 R 13801 0 R 13802 0 R]
+/Limits [(_figure_8cpp_a2c60fe17aef5a333bceb59cbcbef54c0) (_figure_8cpp_source_l00032)]
+>>
+endobj
+14550 0 obj
+<<
+/Kids [13803 0 R 13804 0 R 13805 0 R 13806 0 R 13807 0 R 13808 0 R]
+/Limits [(_figure_8cpp_source_l00033) (_figure_8h_source_l00029)]
+>>
+endobj
+14551 0 obj
+<<
+/Kids [13809 0 R 13810 0 R 13811 0 R 13812 0 R 13813 0 R 13814 0 R]
+/Limits [(_figure_8h_source_l00030) (_figure_8h_source_l00156)]
+>>
+endobj
+14552 0 obj
+<<
+/Kids [13815 0 R 13816 0 R 13817 0 R 13818 0 R 13819 0 R 13820 0 R]
+/Limits [(_figure_8h_source_l00163) (_figure_8h_source_l00235)]
+>>
+endobj
+14553 0 obj
+<<
+/Kids [13821 0 R 13822 0 R 13823 0 R 13824 0 R 13825 0 R 13826 0 R]
+/Limits [(_figure_8h_source_l00236) (_figure_8h_source_l00271)]
+>>
+endobj
+14554 0 obj
+<<
+/Kids [13827 0 R 13828 0 R 13829 0 R 13830 0 R 13831 0 R 13832 0 R]
+/Limits [(_figure_8h_source_l00272) (_figure_8h_source_l00307)]
+>>
+endobj
+14555 0 obj
+<<
+/Kids [13833 0 R 13834 0 R 13835 0 R 13836 0 R 13837 0 R 13838 0 R]
+/Limits [(_figure_8h_source_l00308) (_function_8cpp_source_l00019)]
+>>
+endobj
+14556 0 obj
+<<
+/Kids [13839 0 R 13840 0 R 13841 0 R 13842 0 R 13843 0 R 13844 0 R]
+/Limits [(_function_8cpp_source_l00020) (_function_8cpp_source_l00055)]
+>>
+endobj
+14557 0 obj
+<<
+/Kids [13845 0 R 13846 0 R 13847 0 R 13848 0 R 13849 0 R 13850 0 R]
+/Limits [(_function_8cpp_source_l00056) (_function_8cpp_source_l00091)]
+>>
+endobj
+14558 0 obj
+<<
+/Kids [13851 0 R 13852 0 R 13853 0 R 13854 0 R 13855 0 R 13856 0 R]
+/Limits [(_function_8cpp_source_l00092) (_function_8h_source_l00113)]
+>>
+endobj
+14559 0 obj
+<<
+/Kids [13857 0 R 13858 0 R 13859 0 R 13860 0 R 13861 0 R 13862 0 R]
+/Limits [(_function_8h_source_l00114) (_function_8h_source_l00239)]
+>>
+endobj
+14560 0 obj
+<<
+/Kids [13863 0 R 13864 0 R 13865 0 R 13866 0 R 13867 0 R 13868 0 R]
+/Limits [(_function_8h_source_l00240) (_hasher_8cpp_source_l00005)]
+>>
+endobj
+14561 0 obj
+<<
+/Kids [13869 0 R 13870 0 R 13871 0 R 13872 0 R 13873 0 R 13874 0 R]
+/Limits [(_hasher_8cpp_source_l00006) (_hasher_8cpp_source_l00041)]
+>>
+endobj
+14562 0 obj
+<<
+/Kids [13875 0 R 13876 0 R 13877 0 R 13878 0 R 13879 0 R 13880 0 R]
+/Limits [(_hasher_8cpp_source_l00042) (_hasher_8h_source_l00047)]
+>>
+endobj
+14563 0 obj
+<<
+/Kids [13881 0 R 13882 0 R 13883 0 R 13884 0 R 13885 0 R 13886 0 R]
+/Limits [(_hasher_8h_source_l00048) (_local_exception_8cpp_source_l00012)]
+>>
+endobj
+14564 0 obj
+<<
+/Kids [13887 0 R 13888 0 R 13889 0 R 13890 0 R 13891 0 R 13892 0 R]
+/Limits [(_local_exception_8cpp_source_l00013) (_m_q_t_t_2_configuration_8cpp_ab701e3ac61a85b337ec5c1abaad6742d)]
+>>
+endobj
+14565 0 obj
+<<
+/Kids [13893 0 R 13894 0 R 13895 0 R 13896 0 R 13897 0 R 13898 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source) (_m_q_t_t_2_configuration_8cpp_source_l00035)]
+>>
+endobj
+14566 0 obj
+<<
+/Kids [13899 0 R 13900 0 R 13901 0 R 13902 0 R 13903 0 R 13904 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00036) (_m_q_t_t_2_configuration_8cpp_source_l00071)]
+>>
+endobj
+14567 0 obj
+<<
+/Kids [13905 0 R 13906 0 R 13907 0 R 13908 0 R 13909 0 R 13910 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00072) (_m_q_t_t_2_configuration_8h_source_l00040)]
+>>
+endobj
+14568 0 obj
+<<
+/Kids [13911 0 R 13912 0 R 13913 0 R 13914 0 R 13915 0 R 13916 0 R]
+/Limits [(_m_q_t_t_2_configuration_8h_source_l00047) (_m_q_t_t_2constants_8h_source_l00007)]
+>>
+endobj
+14569 0 obj
+<<
+/Kids [13917 0 R 13918 0 R 13919 0 R 13920 0 R 13921 0 R 13922 0 R]
+/Limits [(_m_q_t_t_2constants_8h_source_l00008) (_object_8cpp_source)]
+>>
+endobj
+14570 0 obj
+<<
+/Kids [13923 0 R 13924 0 R 13925 0 R 13926 0 R 13927 0 R 13928 0 R]
+/Limits [(_object_8cpp_source_l00001) (_object_8cpp_source_l00036)]
+>>
+endobj
+14571 0 obj
+<<
+/Kids [13929 0 R 13930 0 R 13931 0 R 13932 0 R 13933 0 R 13934 0 R]
+/Limits [(_object_8cpp_source_l00037) (_object_8cpp_source_l00072)]
+>>
+endobj
+14572 0 obj
+<<
+/Kids [13935 0 R 13936 0 R 13937 0 R 13938 0 R 13939 0 R 13940 0 R]
+/Limits [(_object_8cpp_source_l00073) (_object_8h_source_l00096)]
+>>
+endobj
+14573 0 obj
+<<
+/Kids [13941 0 R 13942 0 R 13943 0 R 13944 0 R 13945 0 R 13946 0 R]
+/Limits [(_object_8h_source_l00108) (_parameter_8h_source_l00038)]
+>>
+endobj
+14574 0 obj
+<<
+/Kids [13947 0 R 13948 0 R 13949 0 R 13950 0 R 13951 0 R 13952 0 R]
+/Limits [(_parameter_8h_source_l00039) (_parameter_8h_source_l00198)]
+>>
+endobj
+14575 0 obj
+<<
+/Kids [13953 0 R 13954 0 R 13955 0 R 13956 0 R 13957 0 R 13958 0 R]
+/Limits [(_parameter_8h_source_l00199) (_parameter_8h_source_l00234)]
+>>
+endobj
+14576 0 obj
+<<
+/Kids [13959 0 R 13960 0 R 13961 0 R 13962 0 R 13963 0 R 13964 0 R]
+/Limits [(_parameter_8h_source_l00235) (_parameter_8h_source_l00270)]
+>>
+endobj
+14577 0 obj
+<<
+/Kids [13965 0 R 13966 0 R 13967 0 R 13968 0 R 13969 0 R 13970 0 R]
+/Limits [(_parameter_8h_source_l00271) (_parameter_8h_source_l00306)]
+>>
+endobj
+14578 0 obj
+<<
+/Kids [13971 0 R 13972 0 R 13973 0 R 13974 0 R 13975 0 R 13976 0 R]
+/Limits [(_parameter_8h_source_l00307) (_publisher_8cpp_source_l00032)]
+>>
+endobj
+14579 0 obj
+<<
+/Kids [13977 0 R 13978 0 R 13979 0 R 13980 0 R 13981 0 R 13982 0 R]
+/Limits [(_publisher_8cpp_source_l00033) (_publisher_8cpp_source_l00068)]
+>>
+endobj
+14580 0 obj
+<<
+/Kids [13983 0 R 13984 0 R 13985 0 R 13986 0 R 13987 0 R 13988 0 R]
+/Limits [(_publisher_8cpp_source_l00069) (_publisher_8cpp_source_l00104)]
+>>
+endobj
+14581 0 obj
+<<
+/Kids [13989 0 R 13990 0 R 13991 0 R 13992 0 R 13993 0 R 13994 0 R]
+/Limits [(_publisher_8cpp_source_l00105) (_publisher_8cpp_source_l00140)]
+>>
+endobj
+14582 0 obj
+<<
+/Kids [13995 0 R 13996 0 R 13997 0 R 13998 0 R 13999 0 R 14000 0 R]
+/Limits [(_publisher_8cpp_source_l00141) (_publisher_8cpp_source_l00176)]
+>>
+endobj
+14583 0 obj
+<<
+/Kids [14001 0 R 14002 0 R 14003 0 R 14004 0 R 14005 0 R 14006 0 R]
+/Limits [(_publisher_8cpp_source_l00177) (_publisher_8cpp_source_l00212)]
+>>
+endobj
+14584 0 obj
+<<
+/Kids [14007 0 R 14008 0 R 14009 0 R 14010 0 R 14011 0 R 14012 0 R]
+/Limits [(_publisher_8cpp_source_l00213) (_publisher_8h_source)]
+>>
+endobj
+14585 0 obj
+<<
+/Kids [14013 0 R 14014 0 R 14015 0 R 14016 0 R 14017 0 R 14018 0 R]
+/Limits [(_publisher_8h_source_l00001) (_publisher_8h_source_l00091)]
+>>
+endobj
+14586 0 obj
+<<
+/Kids [14019 0 R 14020 0 R 14021 0 R 14022 0 R 14023 0 R 14024 0 R]
+/Limits [(_publisher_8h_source_l00092) (_publisher_8h_source_l00241)]
+>>
+endobj
+14587 0 obj
+<<
+/Kids [14025 0 R 14026 0 R 14027 0 R 14028 0 R 14029 0 R 14030 0 R]
+/Limits [(_publisher_8h_source_l00242) (_r_e_s_t_2constants_8h_source_l00006)]
+>>
+endobj
+14588 0 obj
+<<
+/Kids [14031 0 R 14032 0 R 14033 0 R 14034 0 R 14035 0 R 14036 0 R]
+/Limits [(_r_e_s_t_2constants_8h_source_l00007) (_range_8cpp_source_l00018)]
+>>
+endobj
+14589 0 obj
+<<
+/Kids [14037 0 R 14038 0 R 14039 0 R 14040 0 R 14041 0 R 14042 0 R]
+/Limits [(_range_8cpp_source_l00019) (_range_8cpp_source_l00054)]
+>>
+endobj
+14590 0 obj
+<<
+/Kids [14043 0 R 14044 0 R 14045 0 R 14046 0 R 14047 0 R 14048 0 R]
+/Limits [(_range_8cpp_source_l00055) (_range_8cpp_source_l00090)]
+>>
+endobj
+14591 0 obj
+<<
+/Kids [14049 0 R 14050 0 R 14051 0 R 14052 0 R 14053 0 R 14054 0 R]
+/Limits [(_range_8cpp_source_l00091) (_range_8h_source_l00040)]
+>>
+endobj
+14592 0 obj
+<<
+/Kids [14055 0 R 14056 0 R 14057 0 R 14058 0 R 14059 0 R 14060 0 R]
+/Limits [(_range_8h_source_l00047) (_range_8h_source_l00134)]
+>>
+endobj
+14593 0 obj
+<<
+/Kids [14061 0 R 14062 0 R 14063 0 R 14064 0 R 14065 0 R 14066 0 R]
+/Limits [(_range_8h_source_l00135) (_range_8h_source_l00170)]
+>>
+endobj
+14594 0 obj
+<<
+/Kids [14067 0 R 14068 0 R 14069 0 R 14070 0 R 14071 0 R 14072 0 R]
+/Limits [(_range_8h_source_l00171) (_range_8h_source_l00206)]
+>>
+endobj
+14595 0 obj
+<<
+/Kids [14073 0 R 14074 0 R 14075 0 R 14076 0 R 14077 0 R 14078 0 R]
+/Limits [(_range_8h_source_l00207) (_resource_8cpp_source_l00030)]
+>>
+endobj
+14596 0 obj
+<<
+/Kids [14079 0 R 14080 0 R 14081 0 R 14082 0 R 14083 0 R 14084 0 R]
+/Limits [(_resource_8cpp_source_l00031) (_resource_8cpp_source_l00066)]
+>>
+endobj
+14597 0 obj
+<<
+/Kids [14085 0 R 14086 0 R 14087 0 R 14088 0 R 14089 0 R 14090 0 R]
+/Limits [(_resource_8cpp_source_l00067) (_resource_8cpp_source_l00102)]
+>>
+endobj
+14598 0 obj
+<<
+/Kids [14091 0 R 14092 0 R 14093 0 R 14094 0 R 14095 0 R 14096 0 R]
+/Limits [(_resource_8cpp_source_l00103) (_resource_8cpp_source_l00138)]
+>>
+endobj
+14599 0 obj
+<<
+/Kids [14097 0 R 14098 0 R 14099 0 R 14100 0 R 14101 0 R 14102 0 R]
+/Limits [(_resource_8cpp_source_l00139) (_resource_8h_source_l00005)]
+>>
+endobj
+14600 0 obj
+<<
+/Kids [14103 0 R 14104 0 R 14105 0 R 14106 0 R 14107 0 R 14108 0 R]
+/Limits [(_resource_8h_source_l00006) (_resource_8h_source_l00187)]
+>>
+endobj
+14601 0 obj
+<<
+/Kids [14109 0 R 14110 0 R 14111 0 R 14112 0 R 14113 0 R 14114 0 R]
+/Limits [(_resource_8h_source_l00188) (_s_o_i_l_2_types_8h_source_l00012)]
+>>
+endobj
+14602 0 obj
+<<
+/Kids [14115 0 R 14116 0 R 14117 0 R 14118 0 R 14119 0 R 14120 0 R]
+/Limits [(_s_o_i_l_2_types_8h_source_l00018) (_s_o_i_l_2constants_8h_source_l00021)]
+>>
+endobj
+14603 0 obj
+<<
+/Kids [14121 0 R 14122 0 R 14123 0 R 14124 0 R 14125 0 R 14126 0 R]
+/Limits [(_s_o_i_l_2constants_8h_source_l00022) (_server_8cpp_source_l00033)]
+>>
+endobj
+14604 0 obj
+<<
+/Kids [14127 0 R 14128 0 R 14129 0 R 14130 0 R 14131 0 R 14132 0 R]
+/Limits [(_server_8cpp_source_l00034) (_server_8h_source_l00021)]
+>>
+endobj
+14605 0 obj
+<<
+/Kids [14133 0 R 14134 0 R 14135 0 R 14136 0 R 14137 0 R 14138 0 R]
+/Limits [(_server_8h_source_l00022) (_signer_8cpp_source_l00007)]
+>>
+endobj
+14606 0 obj
+<<
+/Kids [14139 0 R 14140 0 R 14141 0 R 14142 0 R 14143 0 R 14144 0 R]
+/Limits [(_signer_8cpp_source_l00008) (_signer_8cpp_source_l00043)]
+>>
+endobj
+14607 0 obj
+<<
+/Kids [14145 0 R 14146 0 R 14147 0 R 14148 0 R 14149 0 R 14150 0 R]
+/Limits [(_signer_8cpp_source_l00044) (_signer_8h_source_l00011)]
+>>
+endobj
+14608 0 obj
+<<
+/Kids [14151 0 R 14152 0 R 14153 0 R 14154 0 R 14155 0 R 14156 0 R]
+/Limits [(_signer_8h_source_l00018) (_time_8cpp_source_l00013)]
+>>
+endobj
+14609 0 obj
+<<
+/Kids [14157 0 R 14158 0 R 14159 0 R 14160 0 R 14161 0 R 14162 0 R]
+/Limits [(_time_8cpp_source_l00014) (_time_8cpp_source_l00049)]
+>>
+endobj
+14610 0 obj
+<<
+/Kids [14163 0 R 14164 0 R 14165 0 R 14166 0 R 14167 0 R 14168 0 R]
+/Limits [(_time_8cpp_source_l00050) (_time_8cpp_source_l00085)]
+>>
+endobj
+14611 0 obj
+<<
+/Kids [14169 0 R 14170 0 R 14171 0 R 14172 0 R 14173 0 R 14174 0 R]
+/Limits [(_time_8cpp_source_l00086) (_time_8cpp_source_l00121)]
+>>
+endobj
+14612 0 obj
+<<
+/Kids [14175 0 R 14176 0 R 14177 0 R 14178 0 R 14179 0 R 14180 0 R]
+/Limits [(_time_8cpp_source_l00122) (_time_8h_source_l00047)]
+>>
+endobj
+14613 0 obj
+<<
+/Kids [14181 0 R 14182 0 R 14183 0 R 14184 0 R 14185 0 R 14186 0 R]
+/Limits [(_time_8h_source_l00058) (_u_d_p_2_configuration_8cpp_source_l00006)]
+>>
+endobj
+14614 0 obj
+<<
+/Kids [14187 0 R 14188 0 R 14189 0 R 14190 0 R 14191 0 R 14192 0 R]
+/Limits [(_u_d_p_2_configuration_8cpp_source_l00007) (_u_d_p_2_configuration_8h_source_l00029)]
+>>
+endobj
+14615 0 obj
+<<
+/Kids [14193 0 R 14194 0 R 14195 0 R 14196 0 R 14197 0 R 14198 0 R]
+/Limits [(_u_d_p_2_configuration_8h_source_l00035) (_variable_8h_source_l00005)]
+>>
+endobj
+14616 0 obj
+<<
+/Kids [14199 0 R 14200 0 R 14201 0 R 14202 0 R 14203 0 R 14204 0 R]
+/Limits [(_variable_8h_source_l00006) (_variable_8h_source_l00158)]
+>>
+endobj
+14617 0 obj
+<<
+/Kids [14205 0 R 14206 0 R 14207 0 R 14208 0 R 14209 0 R 14210 0 R]
+/Limits [(_variable_8h_source_l00173) (_variable_8h_source_l00316)]
+>>
+endobj
+14618 0 obj
+<<
+/Kids [14211 0 R 14212 0 R 14213 0 R 14214 0 R 14215 0 R 14216 0 R]
+/Limits [(_variable_8h_source_l00317) (_variable_8h_source_l00352)]
+>>
+endobj
+14619 0 obj
+<<
+/Kids [14217 0 R 14218 0 R 14219 0 R 14220 0 R 14221 0 R 14222 0 R]
+/Limits [(_variable_8h_source_l00353) (_variable_8h_source_l00388)]
+>>
+endobj
+14620 0 obj
+<<
+/Kids [14223 0 R 14224 0 R 14225 0 R 14226 0 R 14227 0 R 14228 0 R]
+/Limits [(_variable_8h_source_l00389) (_variable_8h_source_l00424)]
+>>
+endobj
+14621 0 obj
+<<
+/Kids [14229 0 R 14230 0 R 14231 0 R 14232 0 R 14233 0 R 14234 0 R]
+/Limits [(_variable_8h_source_l00425) (_variable_8h_source_l00460)]
+>>
+endobj
+14622 0 obj
+<<
+/Kids [14235 0 R 14236 0 R 14237 0 R 14238 0 R 14239 0 R 14240 0 R]
+/Limits [(_variable_8h_source_l00461) (class_h_t_t_p_1_1_resource_a188f4a9d639f416317a9f5a6992e6ec5)]
+>>
+endobj
+14623 0 obj
+<<
+/Kids [14241 0 R 14242 0 R 14243 0 R 14244 0 R 14245 0 R 14246 0 R]
+/Limits [(class_h_t_t_p_1_1_resource_a21b1e78bdca84f9fd04fd026a0c3ea9c) (class_m_q_t_t_1_1_configuration_ac23db9e2e0f174a59f294a4a5139a097)]
+>>
+endobj
+14624 0 obj
+<<
+/Kids [14247 0 R 14248 0 R 14249 0 R 14250 0 R 14251 0 R 14252 0 R]
+/Limits [(class_m_q_t_t_1_1_configuration_ac4b05210a99b650da641d3966266ec04) (class_s_i_g_n_1_1_signer_a6b83d99b55d005f7ae32a3e18a9d5925)]
+>>
+endobj
+14625 0 obj
+<<
+/Kids [14253 0 R 14254 0 R 14255 0 R 14256 0 R 14257 0 R 14258 0 R]
+/Limits [(class_s_i_g_n_1_1_signer_a8fbad2b5e76a6333dfa7fd537a5600e4) (class_s_o_i_l_1_1_container_a8c515f73d9000e53db8478a8836c1d1f)]
+>>
+endobj
+14626 0 obj
+<<
+/Kids [14259 0 R 14260 0 R 14261 0 R 14262 0 R 14263 0 R 14264 0 R]
+/Limits [(class_s_o_i_l_1_1_container_ac329fc28b401a84de21b5f298e9236ce) (class_s_o_i_l_1_1_enum_a8bb7c616cb01a03df35a73a4dd5edd34)]
+>>
+endobj
+14627 0 obj
+<<
+/Kids [14265 0 R 14266 0 R 14267 0 R 14268 0 R 14269 0 R 14270 0 R]
+/Limits [(class_s_o_i_l_1_1_enum_aa02862d7713c094d7ae5819eab23765f) (class_s_o_i_l_1_1_function_add97197a51b3c44f9eb873a23329983e)]
+>>
+endobj
+14628 0 obj
+<<
+/Kids [14271 0 R 14272 0 R 14273 0 R 14274 0 R 14275 0 R 14276 0 R]
+/Limits [(class_s_o_i_l_1_1_object) (class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a280aacb2fb5b4ad22c866a83671967c5)]
+>>
+endobj
+14629 0 obj
+<<
+/Kids [14277 0 R 14278 0 R 14279 0 R 14280 0 R 14281 0 R 14282 0 R]
+/Limits [(class_s_o_i_l_1_1_range_3_01std_1_1string_01_4_a635b0935b69730c81232c9f26267e5ec) (class_s_o_i_l_1_1_variable_a9b112a792be9ae8647bc58fd4e28c5bb)]
+>>
+endobj
+14630 0 obj
+<<
+/Kids [14283 0 R 14284 0 R 14285 0 R 14286 0 R 14287 0 R 14288 0 R]
+/Limits [(class_s_o_i_l_1_1_variable_aaeba9a89d6c0b950246fff61ac221fa7) (index)]
+>>
+endobj
+14631 0 obj
+<<
+/Kids [14289 0 R 14290 0 R 14291 0 R 14292 0 R 14293 0 R 14294 0 R]
+/Limits [(index_autotoc_md1) (json__helpers_8cpp_source_l00020)]
+>>
+endobj
+14632 0 obj
+<<
+/Kids [14295 0 R 14296 0 R 14297 0 R 14298 0 R 14299 0 R 14300 0 R]
+/Limits [(json__helpers_8cpp_source_l00021) (json__helpers_8cpp_source_l00056)]
+>>
+endobj
+14633 0 obj
+<<
+/Kids [14301 0 R 14302 0 R 14303 0 R 14304 0 R 14305 0 R 14306 0 R]
+/Limits [(json__helpers_8cpp_source_l00057) (json__helpers_8cpp_source_l00092)]
+>>
+endobj
+14634 0 obj
+<<
+/Kids [14307 0 R 14308 0 R 14309 0 R 14310 0 R 14311 0 R 14312 0 R]
+/Limits [(json__helpers_8cpp_source_l00093) (json__helpers_8h_source_l00051)]
+>>
+endobj
+14635 0 obj
+<<
+/Kids [14313 0 R 14314 0 R 14315 0 R 14316 0 R 14317 0 R 14318 0 R]
+/Limits [(json__helpers_8h_source_l00052) (main_8cpp_source_l00021)]
+>>
+endobj
+14636 0 obj
+<<
+/Kids [14319 0 R 14320 0 R 14321 0 R 14322 0 R 14323 0 R 14324 0 R]
+/Limits [(main_8cpp_source_l00022) (main_8cpp_source_l00057)]
+>>
+endobj
+14637 0 obj
+<<
+/Kids [14325 0 R 14326 0 R 14327 0 R 14328 0 R 14329 0 R 14330 0 R]
+/Limits [(main_8cpp_source_l00058) (main_8cpp_source_l00093)]
+>>
+endobj
+14638 0 obj
+<<
+/Kids [14331 0 R 14332 0 R 14333 0 R 14334 0 R 14335 0 R 14336 0 R]
+/Limits [(main_8cpp_source_l00094) (namespace_s_o_i_l_a82671406aa31a367c38dcad31d359b92)]
+>>
+endobj
+14639 0 obj
+<<
+/Kids [14337 0 R 14338 0 R 14339 0 R 14340 0 R 14341 0 R 14342 0 R]
+/Limits [(namespace_s_o_i_l_a863aac9ac9eb4396135f86bd9bc29bad) (page.117)]
+>>
+endobj
+14640 0 obj
+<<
+/Kids [14343 0 R 14344 0 R 14345 0 R 14346 0 R 14347 0 R 14348 0 R]
+/Limits [(page.118) (page.15)]
+>>
+endobj
+14641 0 obj
+<<
+/Kids [14349 0 R 14350 0 R 14351 0 R 14352 0 R 14353 0 R 14354 0 R]
+/Limits [(page.150) (page.182)]
+>>
+endobj
+14642 0 obj
+<<
+/Kids [14355 0 R 14356 0 R 14357 0 R 14358 0 R 14359 0 R 14360 0 R]
+/Limits [(page.183) (page.214)]
+>>
+endobj
+14643 0 obj
+<<
+/Kids [14361 0 R 14362 0 R 14363 0 R 14364 0 R 14365 0 R 14366 0 R]
+/Limits [(page.215) (page.43)]
+>>
+endobj
+14644 0 obj
+<<
+/Kids [14367 0 R 14368 0 R 14369 0 R 14370 0 R 14371 0 R 14372 0 R]
+/Limits [(page.44) (page.76)]
+>>
+endobj
+14645 0 obj
+<<
+/Kids [14373 0 R 14374 0 R 14375 0 R 14376 0 R 14377 0 R 14378 0 R]
+/Limits [(page.77) (section*.108)]
+>>
+endobj
+14646 0 obj
+<<
+/Kids [14379 0 R 14380 0 R 14381 0 R 14382 0 R 14383 0 R 14384 0 R]
+/Limits [(section*.109) (section*.16)]
+>>
+endobj
+14647 0 obj
+<<
+/Kids [14385 0 R 14386 0 R 14387 0 R 14388 0 R 14389 0 R 14390 0 R]
+/Limits [(section*.17) (section*.55)]
+>>
+endobj
+14648 0 obj
+<<
+/Kids [14391 0 R 14392 0 R 14393 0 R 14394 0 R 14395 0 R 14396 0 R]
+/Limits [(section*.56) (section*.9)]
+>>
+endobj
+14649 0 obj
+<<
+/Kids [14397 0 R 14398 0 R 14399 0 R 14400 0 R 14401 0 R 14402 0 R]
+/Limits [(section*.90) (section.8.20)]
+>>
+endobj
+14650 0 obj
+<<
+/Kids [14403 0 R 14404 0 R 14405 0 R 14406 0 R 14407 0 R 14408 0 R]
+/Limits [(section.8.21) (section.9.25)]
+>>
+endobj
+14651 0 obj
+<<
+/Kids [14409 0 R 14410 0 R 14411 0 R 14412 0 R 14413 0 R 14414 0 R]
+/Limits [(section.9.26) (section.9.58)]
+>>
+endobj
+14652 0 obj
+<<
+/Kids [14415 0 R 14416 0 R 14417 0 R 14418 0 R 14419 0 R 14420 0 R]
+/Limits [(section.9.59) (section.9.90)]
+>>
+endobj
+14653 0 obj
+<<
+/Kids [14421 0 R 14422 0 R 14423 0 R 14424 0 R 14425 0 R 14426 0 R]
+/Limits [(section.9.91) (subsection.8.13.3)]
+>>
+endobj
+14654 0 obj
+<<
+/Kids [14427 0 R 14428 0 R 14429 0 R 14430 0 R 14431 0 R 14432 0 R]
+/Limits [(subsection.8.14.1) (subsection.8.24.1)]
+>>
+endobj
+14655 0 obj
+<<
+/Kids [14433 0 R 14434 0 R 14435 0 R 14436 0 R 14437 0 R 14438 0 R]
+/Limits [(subsection.8.24.2) (subsection.9.26.1)]
+>>
+endobj
+14656 0 obj
+<<
+/Kids [14439 0 R 14440 0 R 14441 0 R 14442 0 R 14443 0 R 14444 0 R]
+/Limits [(subsection.9.4.1) (subsubsection.7.5.3.26)]
+>>
+endobj
+14657 0 obj
+<<
+/Kids [14445 0 R 14446 0 R 14447 0 R 14448 0 R 14449 0 R 14450 0 R]
+/Limits [(subsubsection.7.5.3.27) (subsubsection.8.12.2.1)]
+>>
+endobj
+14658 0 obj
+<<
+/Kids [14451 0 R 14452 0 R 14453 0 R 14454 0 R 14455 0 R 14456 0 R]
+/Limits [(subsubsection.8.12.2.2) (subsubsection.8.16.2.1)]
+>>
+endobj
+14659 0 obj
+<<
+/Kids [14457 0 R 14458 0 R 14459 0 R 14460 0 R 14461 0 R 14462 0 R]
+/Limits [(subsubsection.8.16.2.2) (subsubsection.8.19.3.3)]
+>>
+endobj
+14660 0 obj
+<<
+/Kids [14463 0 R 14464 0 R 14465 0 R 14466 0 R 14467 0 R 14468 0 R]
+/Limits [(subsubsection.8.2.2.1) (subsubsection.8.21.3.8)]
+>>
+endobj
+14661 0 obj
+<<
+/Kids [14469 0 R 14470 0 R 14471 0 R 14472 0 R 14473 0 R 14474 0 R]
+/Limits [(subsubsection.8.21.3.9) (subsubsection.8.25.3.2)]
+>>
+endobj
+14662 0 obj
+<<
+/Kids [14475 0 R 14476 0 R 14477 0 R 14478 0 R 14479 0 R 14480 0 R]
+/Limits [(subsubsection.8.25.3.3) (subsubsection.8.5.3.7)]
+>>
+endobj
+14663 0 obj
+<<
+/Kids [14481 0 R 14482 0 R 14483 0 R 14484 0 R 14485 0 R 14486 0 R]
+/Limits [(subsubsection.8.5.3.8) (subsubsection.8.7.4.7)]
+>>
+endobj
+14664 0 obj
+<<
+/Kids [14487 0 R 14488 0 R 14489 0 R 14490 0 R 14491 0 R 14492 0 R]
+/Limits [(subsubsection.8.7.4.8) (table.7.1)]
+>>
+endobj
+14665 0 obj
+<<
+/Kids [14493 0 R 14494 0 R 14495 0 R 14496 0 R 14497 0 R 14498 0 R]
+/Limits [(table.7.2) (table.8.124)]
+>>
+endobj
+14666 0 obj
+<<
+/Kids [14499 0 R 14500 0 R 14501 0 R 14502 0 R 14503 0 R 14504 0 R]
+/Limits [(table.8.125) (table.8.40)]
+>>
+endobj
+14667 0 obj
+<<
+/Kids [14505 0 R 14506 0 R 14507 0 R 14508 0 R 14509 0 R 14510 0 R]
+/Limits [(table.8.41) (table.8.73)]
+>>
+endobj
+14668 0 obj
+<<
+/Kids [14511 0 R 14512 0 R 14513 0 R 14514 0 R 14515 0 R 14516 0 R]
+/Limits [(table.8.74) (todo__todo000007)]
+>>
+endobj
+14669 0 obj
+<<
+/Kids [14517 0 R]
+/Limits [(todo__todo000008) (todo__todo000013)]
+>>
+endobj
+14670 0 obj
+<<
+/Kids [14518 0 R 14519 0 R 14520 0 R 14521 0 R 14522 0 R 14523 0 R]
+/Limits [(Doc-Start) (_container_8cpp)]
+>>
+endobj
+14671 0 obj
+<<
+/Kids [14524 0 R 14525 0 R 14526 0 R 14527 0 R 14528 0 R 14529 0 R]
+/Limits [(_container_8cpp_source) (_container_8h_source_l00324)]
+>>
+endobj
+14672 0 obj
+<<
+/Kids [14530 0 R 14531 0 R 14532 0 R 14533 0 R 14534 0 R 14535 0 R]
+/Limits [(_container_8h_source_l00325) (_container_8h_source_l00540)]
+>>
+endobj
+14673 0 obj
+<<
+/Kids [14536 0 R 14537 0 R 14538 0 R 14539 0 R 14540 0 R 14541 0 R]
+/Limits [(_container_8h_source_l00541) (_element_8cpp_source_l00151)]
+>>
+endobj
+14674 0 obj
+<<
+/Kids [14542 0 R 14543 0 R 14544 0 R 14545 0 R 14546 0 R 14547 0 R]
+/Limits [(_element_8cpp_source_l00152) (_enum_8h_source_l00090)]
+>>
+endobj
+14675 0 obj
+<<
+/Kids [14548 0 R 14549 0 R 14550 0 R 14551 0 R 14552 0 R 14553 0 R]
+/Limits [(_enum_8h_source_l00102) (_figure_8h_source_l00271)]
+>>
+endobj
+14676 0 obj
+<<
+/Kids [14554 0 R 14555 0 R 14556 0 R 14557 0 R 14558 0 R 14559 0 R]
+/Limits [(_figure_8h_source_l00272) (_function_8h_source_l00239)]
+>>
+endobj
+14677 0 obj
+<<
+/Kids [14560 0 R 14561 0 R 14562 0 R 14563 0 R 14564 0 R 14565 0 R]
+/Limits [(_function_8h_source_l00240) (_m_q_t_t_2_configuration_8cpp_source_l00035)]
+>>
+endobj
+14678 0 obj
+<<
+/Kids [14566 0 R 14567 0 R 14568 0 R 14569 0 R 14570 0 R 14571 0 R]
+/Limits [(_m_q_t_t_2_configuration_8cpp_source_l00036) (_object_8cpp_source_l00072)]
+>>
+endobj
+14679 0 obj
+<<
+/Kids [14572 0 R 14573 0 R 14574 0 R 14575 0 R 14576 0 R 14577 0 R]
+/Limits [(_object_8cpp_source_l00073) (_parameter_8h_source_l00306)]
+>>
+endobj
+14680 0 obj
+<<
+/Kids [14578 0 R 14579 0 R 14580 0 R 14581 0 R 14582 0 R 14583 0 R]
+/Limits [(_parameter_8h_source_l00307) (_publisher_8cpp_source_l00212)]
+>>
+endobj
+14681 0 obj
+<<
+/Kids [14584 0 R 14585 0 R 14586 0 R 14587 0 R 14588 0 R 14589 0 R]
+/Limits [(_publisher_8cpp_source_l00213) (_range_8cpp_source_l00054)]
+>>
+endobj
+14682 0 obj
+<<
+/Kids [14590 0 R 14591 0 R 14592 0 R 14593 0 R 14594 0 R 14595 0 R]
+/Limits [(_range_8cpp_source_l00055) (_resource_8cpp_source_l00030)]
+>>
+endobj
+14683 0 obj
+<<
+/Kids [14596 0 R 14597 0 R 14598 0 R 14599 0 R 14600 0 R 14601 0 R]
+/Limits [(_resource_8cpp_source_l00031) (_s_o_i_l_2_types_8h_source_l00012)]
+>>
+endobj
+14684 0 obj
+<<
+/Kids [14602 0 R 14603 0 R 14604 0 R 14605 0 R 14606 0 R 14607 0 R]
+/Limits [(_s_o_i_l_2_types_8h_source_l00018) (_signer_8h_source_l00011)]
+>>
+endobj
+14685 0 obj
+<<
+/Kids [14608 0 R 14609 0 R 14610 0 R 14611 0 R 14612 0 R 14613 0 R]
+/Limits [(_signer_8h_source_l00018) (_u_d_p_2_configuration_8cpp_source_l00006)]
+>>
+endobj
+14686 0 obj
+<<
+/Kids [14614 0 R 14615 0 R 14616 0 R 14617 0 R 14618 0 R 14619 0 R]
+/Limits [(_u_d_p_2_configuration_8cpp_source_l00007) (_variable_8h_source_l00388)]
+>>
+endobj
+14687 0 obj
+<<
+/Kids [14620 0 R 14621 0 R 14622 0 R 14623 0 R 14624 0 R 14625 0 R]
+/Limits [(_variable_8h_source_l00389) (class_s_o_i_l_1_1_container_a8c515f73d9000e53db8478a8836c1d1f)]
+>>
+endobj
+14688 0 obj
+<<
+/Kids [14626 0 R 14627 0 R 14628 0 R 14629 0 R 14630 0 R 14631 0 R]
+/Limits [(class_s_o_i_l_1_1_container_ac329fc28b401a84de21b5f298e9236ce) (json__helpers_8cpp_source_l00020)]
+>>
+endobj
+14689 0 obj
+<<
+/Kids [14632 0 R 14633 0 R 14634 0 R 14635 0 R 14636 0 R 14637 0 R]
+/Limits [(json__helpers_8cpp_source_l00021) (main_8cpp_source_l00093)]
+>>
+endobj
+14690 0 obj
+<<
+/Kids [14638 0 R 14639 0 R 14640 0 R 14641 0 R 14642 0 R 14643 0 R]
+/Limits [(main_8cpp_source_l00094) (page.43)]
+>>
+endobj
+14691 0 obj
+<<
+/Kids [14644 0 R 14645 0 R 14646 0 R 14647 0 R 14648 0 R 14649 0 R]
+/Limits [(page.44) (section.8.20)]
+>>
+endobj
+14692 0 obj
+<<
+/Kids [14650 0 R 14651 0 R 14652 0 R 14653 0 R 14654 0 R 14655 0 R]
+/Limits [(section.8.21) (subsection.9.26.1)]
+>>
+endobj
+14693 0 obj
+<<
+/Kids [14656 0 R 14657 0 R 14658 0 R 14659 0 R 14660 0 R 14661 0 R]
+/Limits [(subsection.9.4.1) (subsubsection.8.25.3.2)]
+>>
+endobj
+14694 0 obj
+<<
+/Kids [14662 0 R 14663 0 R 14664 0 R 14665 0 R 14666 0 R 14667 0 R]
+/Limits [(subsubsection.8.25.3.3) (table.8.73)]
+>>
+endobj
+14695 0 obj
+<<
+/Kids [14668 0 R 14669 0 R]
+/Limits [(table.8.74) (todo__todo000013)]
+>>
+endobj
+14696 0 obj
+<<
+/Kids [14670 0 R 14671 0 R 14672 0 R 14673 0 R 14674 0 R 14675 0 R]
+/Limits [(Doc-Start) (_figure_8h_source_l00271)]
+>>
+endobj
+14697 0 obj
+<<
+/Kids [14676 0 R 14677 0 R 14678 0 R 14679 0 R 14680 0 R 14681 0 R]
+/Limits [(_figure_8h_source_l00272) (_range_8cpp_source_l00054)]
+>>
+endobj
+14698 0 obj
+<<
+/Kids [14682 0 R 14683 0 R 14684 0 R 14685 0 R 14686 0 R 14687 0 R]
+/Limits [(_range_8cpp_source_l00055) (class_s_o_i_l_1_1_container_a8c515f73d9000e53db8478a8836c1d1f)]
+>>
+endobj
+14699 0 obj
+<<
+/Kids [14688 0 R 14689 0 R 14690 0 R 14691 0 R 14692 0 R 14693 0 R]
+/Limits [(class_s_o_i_l_1_1_container_ac329fc28b401a84de21b5f298e9236ce) (subsubsection.8.25.3.2)]
+>>
+endobj
+14700 0 obj
+<<
+/Kids [14694 0 R 14695 0 R]
+/Limits [(subsubsection.8.25.3.3) (todo__todo000013)]
+>>
+endobj
+14701 0 obj
+<<
+/Kids [14696 0 R 14697 0 R 14698 0 R 14699 0 R 14700 0 R]
+/Limits [(Doc-Start) (todo__todo000013)]
+>>
+endobj
+14702 0 obj
+<<
+/Dests 14701 0 R
+>>
+endobj
+14703 0 obj
+<<
+/Type /Catalog
+/Pages 13609 0 R
+/Outlines 13610 0 R
+/Names 14702 0 R
+/PageMode/UseOutlines/PageLabels<</Nums[0<</S/a>>2<</S/r>>16<</S/D>>]>>
+/OpenAction 2281 0 R
+>>
+endobj
+14704 0 obj
+<<
+/Producer (MiKTeX pdfTeX-1.40.24)
+/Author()/Title(\376\377\000S\000O\000I\000L\000\040\000C\000+\000+)/Subject(\376\377\000C\000+\000+\000\040\000U\000n\000i\000f\000i\000e\000d\000\040\000D\000e\000v\000i\000c\000e\000\040\000I\000n\000t\000e\000r\000f\000a\000c\000e)/Creator(LaTeX with hyperref)/Keywords()
+/CreationDate (D:20220227230822+01'00')
+/ModDate (D:20220227230822+01'00')
+/Trapped /False
+/PTEX.Fullbanner (This is MiKTeX-pdfTeX 4.10.0 (1.40.24))
+>>
+endobj
+xref
+0 14705
+0000002977 65535 f 
+0000000015 00000 n 
+0000246887 00000 n 
+0002161031 00000 n 
+0000000060 00000 n 
+0000000142 00000 n 
+0000247137 00000 n 
+0002160924 00000 n 
+0000000189 00000 n 
+0000000326 00000 n 
+0000247260 00000 n 
+0002160852 00000 n 
+0000000378 00000 n 
+0000000498 00000 n 
+0000252202 00000 n 
+0002160766 00000 n 
+0000000551 00000 n 
+0000000646 00000 n 
+0000253143 00000 n 
+0002160693 00000 n 
+0000000699 00000 n 
+0000000784 00000 n 
+0000253704 00000 n 
+0002160608 00000 n 
+0000000832 00000 n 
+0000001145 00000 n 
+0000254747 00000 n 
+0002160535 00000 n 
+0000001193 00000 n 
+0000001377 00000 n 
+0000262161 00000 n 
+0002160446 00000 n 
+0000001423 00000 n 
+0000001511 00000 n 
+0000266515 00000 n 
+0002160319 00000 n 
+0000001557 00000 n 
+0000001675 00000 n 
+0000266576 00000 n 
+0002160258 00000 n 
+0000001723 00000 n 
+0000001846 00000 n 
+0000273231 00000 n 
+0002160131 00000 n 
+0000001892 00000 n 
+0000002025 00000 n 
+0000273292 00000 n 
+0002160070 00000 n 
+0000002073 00000 n 
+0000002201 00000 n 
+0000286634 00000 n 
+0002159943 00000 n 
+0000002247 00000 n 
+0000002345 00000 n 
+0000286695 00000 n 
+0002159882 00000 n 
+0000002393 00000 n 
+0000002496 00000 n 
+0000304951 00000 n 
+0002159755 00000 n 
+0000002542 00000 n 
+0000002635 00000 n 
+0000305012 00000 n 
+0002159694 00000 n 
+0000002683 00000 n 
+0000002781 00000 n 
+0000316137 00000 n 
+0002159565 00000 n 
+0000002827 00000 n 
+0000002985 00000 n 
+0000316261 00000 n 
+0002159454 00000 n 
+0000003033 00000 n 
+0000003209 00000 n 
+0000316448 00000 n 
+0002159356 00000 n 
+0000003262 00000 n 
+0000003430 00000 n 
+0000316571 00000 n 
+0002159282 00000 n 
+0000003488 00000 n 
+0000003578 00000 n 
+0000322796 00000 n 
+0002159195 00000 n 
+0000003636 00000 n 
+0000003741 00000 n 
+0000322920 00000 n 
+0002159108 00000 n 
+0000003799 00000 n 
+0000003904 00000 n 
+0000323043 00000 n 
+0002159021 00000 n 
+0000003962 00000 n 
+0000004072 00000 n 
+0000323167 00000 n 
+0002158947 00000 n 
+0000004130 00000 n 
+0000004230 00000 n 
+0000323291 00000 n 
+0002158858 00000 n 
+0000004278 00000 n 
+0000004455 00000 n 
+0000331230 00000 n 
+0002158767 00000 n 
+0000004504 00000 n 
+0000004681 00000 n 
+0000331355 00000 n 
+0002158675 00000 n 
+0000004730 00000 n 
+0000004907 00000 n 
+0000331543 00000 n 
+0002158544 00000 n 
+0000004956 00000 n 
+0000005133 00000 n 
+0000352347 00000 n 
+0002158465 00000 n 
+0000005187 00000 n 
+0000005351 00000 n 
+0000352409 00000 n 
+0002158333 00000 n 
+0000005405 00000 n 
+0000005574 00000 n 
+0000352534 00000 n 
+0002158254 00000 n 
+0000005633 00000 n 
+0000005724 00000 n 
+0000352658 00000 n 
+0002158161 00000 n 
+0000005783 00000 n 
+0000005899 00000 n 
+0000352782 00000 n 
+0002158068 00000 n 
+0000005958 00000 n 
+0000006059 00000 n 
+0000352907 00000 n 
+0002157975 00000 n 
+0000006118 00000 n 
+0000006209 00000 n 
+0000357427 00000 n 
+0002157882 00000 n 
+0000006268 00000 n 
+0000006354 00000 n 
+0000357550 00000 n 
+0002157789 00000 n 
+0000006413 00000 n 
+0000006514 00000 n 
+0000357675 00000 n 
+0002157710 00000 n 
+0000006573 00000 n 
+0000006664 00000 n 
+0000357737 00000 n 
+0002157591 00000 n 
+0000006718 00000 n 
+0000006892 00000 n 
+0000357861 00000 n 
+0002157512 00000 n 
+0000006951 00000 n 
+0000007078 00000 n 
+0000362841 00000 n 
+0002157419 00000 n 
+0000007137 00000 n 
+0000007310 00000 n 
+0000362966 00000 n 
+0002157326 00000 n 
+0000007369 00000 n 
+0000007552 00000 n 
+0000363091 00000 n 
+0002157233 00000 n 
+0000007611 00000 n 
+0000007779 00000 n 
+0000363216 00000 n 
+0002157140 00000 n 
+0000007838 00000 n 
+0000008029 00000 n 
+0000363341 00000 n 
+0002157047 00000 n 
+0000008088 00000 n 
+0000008291 00000 n 
+0000368107 00000 n 
+0002156954 00000 n 
+0000008350 00000 n 
+0000008553 00000 n 
+0000368232 00000 n 
+0002156861 00000 n 
+0000008612 00000 n 
+0000008820 00000 n 
+0000368357 00000 n 
+0002156768 00000 n 
+0000008879 00000 n 
+0000009029 00000 n 
+0000368545 00000 n 
+0002156675 00000 n 
+0000009089 00000 n 
+0000009231 00000 n 
+0000372316 00000 n 
+0002156582 00000 n 
+0000009291 00000 n 
+0000009433 00000 n 
+0000372504 00000 n 
+0002156489 00000 n 
+0000009493 00000 n 
+0000009623 00000 n 
+0000376799 00000 n 
+0002156396 00000 n 
+0000009683 00000 n 
+0000009869 00000 n 
+0000376923 00000 n 
+0002156303 00000 n 
+0000009929 00000 n 
+0000010100 00000 n 
+0000377048 00000 n 
+0002156210 00000 n 
+0000010160 00000 n 
+0000010354 00000 n 
+0000377173 00000 n 
+0002156117 00000 n 
+0000010414 00000 n 
+0000010620 00000 n 
+0000377298 00000 n 
+0002156024 00000 n 
+0000010680 00000 n 
+0000010886 00000 n 
+0000380709 00000 n 
+0002155931 00000 n 
+0000010946 00000 n 
+0000011152 00000 n 
+0000380834 00000 n 
+0002155838 00000 n 
+0000011212 00000 n 
+0000011423 00000 n 
+0000380959 00000 n 
+0002155745 00000 n 
+0000011483 00000 n 
+0000011618 00000 n 
+0000381210 00000 n 
+0002155652 00000 n 
+0000011678 00000 n 
+0000011859 00000 n 
+0000385754 00000 n 
+0002155559 00000 n 
+0000011919 00000 n 
+0000012110 00000 n 
+0000385878 00000 n 
+0002155466 00000 n 
+0000012170 00000 n 
+0000012346 00000 n 
+0000386003 00000 n 
+0002155373 00000 n 
+0000012406 00000 n 
+0000012605 00000 n 
+0000386128 00000 n 
+0002155280 00000 n 
+0000012665 00000 n 
+0000012876 00000 n 
+0000386253 00000 n 
+0002155187 00000 n 
+0000012936 00000 n 
+0000013147 00000 n 
+0000386378 00000 n 
+0002155108 00000 n 
+0000013207 00000 n 
+0000013423 00000 n 
+0000389251 00000 n 
+0002155030 00000 n 
+0000013472 00000 n 
+0000013644 00000 n 
+0000394993 00000 n 
+0002154894 00000 n 
+0000013691 00000 n 
+0000013830 00000 n 
+0000395118 00000 n 
+0002154776 00000 n 
+0000013879 00000 n 
+0000014086 00000 n 
+0000395243 00000 n 
+0002154697 00000 n 
+0000014140 00000 n 
+0000014304 00000 n 
+0000398688 00000 n 
+0002154565 00000 n 
+0000014358 00000 n 
+0000014621 00000 n 
+0000398813 00000 n 
+0002154486 00000 n 
+0000014680 00000 n 
+0000014812 00000 n 
+0000399001 00000 n 
+0002154407 00000 n 
+0000014871 00000 n 
+0000015011 00000 n 
+0000399063 00000 n 
+0002154289 00000 n 
+0000015065 00000 n 
+0000015277 00000 n 
+0000399188 00000 n 
+0002154210 00000 n 
+0000015336 00000 n 
+0000015476 00000 n 
+0000402775 00000 n 
+0002154117 00000 n 
+0000015535 00000 n 
+0000015667 00000 n 
+0000402962 00000 n 
+0002154024 00000 n 
+0000015726 00000 n 
+0000015881 00000 n 
+0000403150 00000 n 
+0002153931 00000 n 
+0000015940 00000 n 
+0000016080 00000 n 
+0000407671 00000 n 
+0002153838 00000 n 
+0000016139 00000 n 
+0000016279 00000 n 
+0000407859 00000 n 
+0002153759 00000 n 
+0000016338 00000 n 
+0000016473 00000 n 
+0000407984 00000 n 
+0002153627 00000 n 
+0000016522 00000 n 
+0000016754 00000 n 
+0000414468 00000 n 
+0002153548 00000 n 
+0000016808 00000 n 
+0000016972 00000 n 
+0000414530 00000 n 
+0002153416 00000 n 
+0000017026 00000 n 
+0000017289 00000 n 
+0000414655 00000 n 
+0002153337 00000 n 
+0000017348 00000 n 
+0000017533 00000 n 
+0000417380 00000 n 
+0002153244 00000 n 
+0000017592 00000 n 
+0000017777 00000 n 
+0000417568 00000 n 
+0002153165 00000 n 
+0000017836 00000 n 
+0000017996 00000 n 
+0000417629 00000 n 
+0002153033 00000 n 
+0000018050 00000 n 
+0000018262 00000 n 
+0000417754 00000 n 
+0002152968 00000 n 
+0000018321 00000 n 
+0000018423 00000 n 
+0000417816 00000 n 
+0002152849 00000 n 
+0000018477 00000 n 
+0000018669 00000 n 
+0000421484 00000 n 
+0002152770 00000 n 
+0000018728 00000 n 
+0000018907 00000 n 
+0000421609 00000 n 
+0002152677 00000 n 
+0000018966 00000 n 
+0000019105 00000 n 
+0000421734 00000 n 
+0002152584 00000 n 
+0000019164 00000 n 
+0000019341 00000 n 
+0000421859 00000 n 
+0002152491 00000 n 
+0000019400 00000 n 
+0000019491 00000 n 
+0000426540 00000 n 
+0002152398 00000 n 
+0000019550 00000 n 
+0000019674 00000 n 
+0000426665 00000 n 
+0002152305 00000 n 
+0000019733 00000 n 
+0000019870 00000 n 
+0000426790 00000 n 
+0002152212 00000 n 
+0000019929 00000 n 
+0000020040 00000 n 
+0000426915 00000 n 
+0002152119 00000 n 
+0000020099 00000 n 
+0000020190 00000 n 
+0000427040 00000 n 
+0002152026 00000 n 
+0000020249 00000 n 
+0000020340 00000 n 
+0000430540 00000 n 
+0002151933 00000 n 
+0000020400 00000 n 
+0000020496 00000 n 
+0000430665 00000 n 
+0002151840 00000 n 
+0000020556 00000 n 
+0000020647 00000 n 
+0000430789 00000 n 
+0002151747 00000 n 
+0000020707 00000 n 
+0000020823 00000 n 
+0000430914 00000 n 
+0002151654 00000 n 
+0000020883 00000 n 
+0000020989 00000 n 
+0000435753 00000 n 
+0002151575 00000 n 
+0000021049 00000 n 
+0000021170 00000 n 
+0000435878 00000 n 
+0002151443 00000 n 
+0000021219 00000 n 
+0000021446 00000 n 
+0000436128 00000 n 
+0002151364 00000 n 
+0000021500 00000 n 
+0000021664 00000 n 
+0000439430 00000 n 
+0002151232 00000 n 
+0000021718 00000 n 
+0000021925 00000 n 
+0000439555 00000 n 
+0002151167 00000 n 
+0000021984 00000 n 
+0000022095 00000 n 
+0000439617 00000 n 
+0002151035 00000 n 
+0000022149 00000 n 
+0000022412 00000 n 
+0000439742 00000 n 
+0002150956 00000 n 
+0000022471 00000 n 
+0000022656 00000 n 
+0000439867 00000 n 
+0002150863 00000 n 
+0000022715 00000 n 
+0000022900 00000 n 
+0000440055 00000 n 
+0002150784 00000 n 
+0000022959 00000 n 
+0000023119 00000 n 
+0000446047 00000 n 
+0002150666 00000 n 
+0000023173 00000 n 
+0000023365 00000 n 
+0000446172 00000 n 
+0002150601 00000 n 
+0000023424 00000 n 
+0000023530 00000 n 
+0000446297 00000 n 
+0002150469 00000 n 
+0000023579 00000 n 
+0000023906 00000 n 
+0000448110 00000 n 
+0002150390 00000 n 
+0000023960 00000 n 
+0000024124 00000 n 
+0000452032 00000 n 
+0002150258 00000 n 
+0000024178 00000 n 
+0000024441 00000 n 
+0000452157 00000 n 
+0002150179 00000 n 
+0000024500 00000 n 
+0000024665 00000 n 
+0000452345 00000 n 
+0002150086 00000 n 
+0000024724 00000 n 
+0000024889 00000 n 
+0000452533 00000 n 
+0002150007 00000 n 
+0000024948 00000 n 
+0000025113 00000 n 
+0000456273 00000 n 
+0002149889 00000 n 
+0000025167 00000 n 
+0000025379 00000 n 
+0000456398 00000 n 
+0002149810 00000 n 
+0000025438 00000 n 
+0000025535 00000 n 
+0000456586 00000 n 
+0002149717 00000 n 
+0000025594 00000 n 
+0000025739 00000 n 
+0000460460 00000 n 
+0002149624 00000 n 
+0000025798 00000 n 
+0000025923 00000 n 
+0000460585 00000 n 
+0002149531 00000 n 
+0000025982 00000 n 
+0000026114 00000 n 
+0000460710 00000 n 
+0002149438 00000 n 
+0000026173 00000 n 
+0000026363 00000 n 
+0000465063 00000 n 
+0002149345 00000 n 
+0000026422 00000 n 
+0000026587 00000 n 
+0000465188 00000 n 
+0002149252 00000 n 
+0000026646 00000 n 
+0000026776 00000 n 
+0000465375 00000 n 
+0002149173 00000 n 
+0000026835 00000 n 
+0000026947 00000 n 
+0000471407 00000 n 
+0002149041 00000 n 
+0000026996 00000 n 
+0000027333 00000 n 
+0000471532 00000 n 
+0002148962 00000 n 
+0000027387 00000 n 
+0000027551 00000 n 
+0000471720 00000 n 
+0002148830 00000 n 
+0000027605 00000 n 
+0000027868 00000 n 
+0000471845 00000 n 
+0002148751 00000 n 
+0000027927 00000 n 
+0000028092 00000 n 
+0000474929 00000 n 
+0002148658 00000 n 
+0000028151 00000 n 
+0000028316 00000 n 
+0000475054 00000 n 
+0002148579 00000 n 
+0000028375 00000 n 
+0000028540 00000 n 
+0000475116 00000 n 
+0002148461 00000 n 
+0000028594 00000 n 
+0000028806 00000 n 
+0000475241 00000 n 
+0002148382 00000 n 
+0000028865 00000 n 
+0000028962 00000 n 
+0000475366 00000 n 
+0002148289 00000 n 
+0000029021 00000 n 
+0000029166 00000 n 
+0000475491 00000 n 
+0002148196 00000 n 
+0000029225 00000 n 
+0000029350 00000 n 
+0000478773 00000 n 
+0002148103 00000 n 
+0000029409 00000 n 
+0000029541 00000 n 
+0000478898 00000 n 
+0002148010 00000 n 
+0000029600 00000 n 
+0000029790 00000 n 
+0000479023 00000 n 
+0002147917 00000 n 
+0000029849 00000 n 
+0000030014 00000 n 
+0000479148 00000 n 
+0002147824 00000 n 
+0000030073 00000 n 
+0000030203 00000 n 
+0000479271 00000 n 
+0002147745 00000 n 
+0000030262 00000 n 
+0000030374 00000 n 
+0000479396 00000 n 
+0002147613 00000 n 
+0000030423 00000 n 
+0000030755 00000 n 
+0000485692 00000 n 
+0002147534 00000 n 
+0000030809 00000 n 
+0000030973 00000 n 
+0000485880 00000 n 
+0002147402 00000 n 
+0000031027 00000 n 
+0000031290 00000 n 
+0000486005 00000 n 
+0002147323 00000 n 
+0000031349 00000 n 
+0000031514 00000 n 
+0000486130 00000 n 
+0002147230 00000 n 
+0000031573 00000 n 
+0000031738 00000 n 
+0000489273 00000 n 
+0002147151 00000 n 
+0000031797 00000 n 
+0000031962 00000 n 
+0000489335 00000 n 
+0002147033 00000 n 
+0000032016 00000 n 
+0000032228 00000 n 
+0000489460 00000 n 
+0002146954 00000 n 
+0000032287 00000 n 
+0000032384 00000 n 
+0000489585 00000 n 
+0002146861 00000 n 
+0000032443 00000 n 
+0000032588 00000 n 
+0000489710 00000 n 
+0002146768 00000 n 
+0000032647 00000 n 
+0000032772 00000 n 
+0000489835 00000 n 
+0002146675 00000 n 
+0000032831 00000 n 
+0000032963 00000 n 
+0000499144 00000 n 
+0002146582 00000 n 
+0000033022 00000 n 
+0000033212 00000 n 
+0000499269 00000 n 
+0002146489 00000 n 
+0000033271 00000 n 
+0000033436 00000 n 
+0000499394 00000 n 
+0002146396 00000 n 
+0000033495 00000 n 
+0000033625 00000 n 
+0000499517 00000 n 
+0002146317 00000 n 
+0000033684 00000 n 
+0000033796 00000 n 
+0000499642 00000 n 
+0002146185 00000 n 
+0000033845 00000 n 
+0000034047 00000 n 
+0000518675 00000 n 
+0002146106 00000 n 
+0000034101 00000 n 
+0000034265 00000 n 
+0000518737 00000 n 
+0002145974 00000 n 
+0000034319 00000 n 
+0000034582 00000 n 
+0000518861 00000 n 
+0002145895 00000 n 
+0000034641 00000 n 
+0000034763 00000 n 
+0000519049 00000 n 
+0002145816 00000 n 
+0000034822 00000 n 
+0000034952 00000 n 
+0000523325 00000 n 
+0002145683 00000 n 
+0000035006 00000 n 
+0000035218 00000 n 
+0000523450 00000 n 
+0002145604 00000 n 
+0000035277 00000 n 
+0000035412 00000 n 
+0000523637 00000 n 
+0002145511 00000 n 
+0000035471 00000 n 
+0000035606 00000 n 
+0000527410 00000 n 
+0002145418 00000 n 
+0000035665 00000 n 
+0000035772 00000 n 
+0000527598 00000 n 
+0002145325 00000 n 
+0000035831 00000 n 
+0000035938 00000 n 
+0000527723 00000 n 
+0002145232 00000 n 
+0000035997 00000 n 
+0000036114 00000 n 
+0000531761 00000 n 
+0002145139 00000 n 
+0000036173 00000 n 
+0000036323 00000 n 
+0000531949 00000 n 
+0002145046 00000 n 
+0000036382 00000 n 
+0000036532 00000 n 
+0000534719 00000 n 
+0002144953 00000 n 
+0000036591 00000 n 
+0000036736 00000 n 
+0000534844 00000 n 
+0002144860 00000 n 
+0000036795 00000 n 
+0000036930 00000 n 
+0000538050 00000 n 
+0002144767 00000 n 
+0000036990 00000 n 
+0000037145 00000 n 
+0000538175 00000 n 
+0002144674 00000 n 
+0000037205 00000 n 
+0000037355 00000 n 
+0000538299 00000 n 
+0002144581 00000 n 
+0000037415 00000 n 
+0000037527 00000 n 
+0000538424 00000 n 
+0002144488 00000 n 
+0000037587 00000 n 
+0000037729 00000 n 
+0000544076 00000 n 
+0002144395 00000 n 
+0000037789 00000 n 
+0000037911 00000 n 
+0000544264 00000 n 
+0002144316 00000 n 
+0000037971 00000 n 
+0000038088 00000 n 
+0000547300 00000 n 
+0002144198 00000 n 
+0000038142 00000 n 
+0000038334 00000 n 
+0000547425 00000 n 
+0002144119 00000 n 
+0000038393 00000 n 
+0000038504 00000 n 
+0000547549 00000 n 
+0002144026 00000 n 
+0000038563 00000 n 
+0000038689 00000 n 
+0000547674 00000 n 
+0002143933 00000 n 
+0000038748 00000 n 
+0000038844 00000 n 
+0000547799 00000 n 
+0002143840 00000 n 
+0000038903 00000 n 
+0000038994 00000 n 
+0000551509 00000 n 
+0002143747 00000 n 
+0000039053 00000 n 
+0000039164 00000 n 
+0000551634 00000 n 
+0002143654 00000 n 
+0000039223 00000 n 
+0000039324 00000 n 
+0000551759 00000 n 
+0002143561 00000 n 
+0000039383 00000 n 
+0000039474 00000 n 
+0000551883 00000 n 
+0002143482 00000 n 
+0000039533 00000 n 
+0000039624 00000 n 
+0000557753 00000 n 
+0002143350 00000 n 
+0000039673 00000 n 
+0000039860 00000 n 
+0000557878 00000 n 
+0002143271 00000 n 
+0000039914 00000 n 
+0000040078 00000 n 
+0000557939 00000 n 
+0002143139 00000 n 
+0000040132 00000 n 
+0000040395 00000 n 
+0000558064 00000 n 
+0002143060 00000 n 
+0000040454 00000 n 
+0000040594 00000 n 
+0000558189 00000 n 
+0002142967 00000 n 
+0000040653 00000 n 
+0000040793 00000 n 
+0000561427 00000 n 
+0002142874 00000 n 
+0000040852 00000 n 
+0000040992 00000 n 
+0000561615 00000 n 
+0002142795 00000 n 
+0000041051 00000 n 
+0000041166 00000 n 
+0000561677 00000 n 
+0002142677 00000 n 
+0000041220 00000 n 
+0000041432 00000 n 
+0000561802 00000 n 
+0002142598 00000 n 
+0000041491 00000 n 
+0000041613 00000 n 
+0000564606 00000 n 
+0002142505 00000 n 
+0000041672 00000 n 
+0000041817 00000 n 
+0000564731 00000 n 
+0002142412 00000 n 
+0000041876 00000 n 
+0000042021 00000 n 
+0000564982 00000 n 
+0002142319 00000 n 
+0000042080 00000 n 
+0000042207 00000 n 
+0000572389 00000 n 
+0002142226 00000 n 
+0000042266 00000 n 
+0000042401 00000 n 
+0000572640 00000 n 
+0002142147 00000 n 
+0000042460 00000 n 
+0000042595 00000 n 
+0000572891 00000 n 
+0002142015 00000 n 
+0000042644 00000 n 
+0000042856 00000 n 
+0000576965 00000 n 
+0002141936 00000 n 
+0000042910 00000 n 
+0000043074 00000 n 
+0000577027 00000 n 
+0002141804 00000 n 
+0000043128 00000 n 
+0000043391 00000 n 
+0000577152 00000 n 
+0002141725 00000 n 
+0000043450 00000 n 
+0000043615 00000 n 
+0000584790 00000 n 
+0002141632 00000 n 
+0000043674 00000 n 
+0000043839 00000 n 
+0000584978 00000 n 
+0002141553 00000 n 
+0000043898 00000 n 
+0000044038 00000 n 
+0000585040 00000 n 
+0002141435 00000 n 
+0000044092 00000 n 
+0000044304 00000 n 
+0000585165 00000 n 
+0002141370 00000 n 
+0000044363 00000 n 
+0000044470 00000 n 
+0000588778 00000 n 
+0002141238 00000 n 
+0000044520 00000 n 
+0000044732 00000 n 
+0000588966 00000 n 
+0002141159 00000 n 
+0000044787 00000 n 
+0000044956 00000 n 
+0000589028 00000 n 
+0002141041 00000 n 
+0000045011 00000 n 
+0000045279 00000 n 
+0000589153 00000 n 
+0002140962 00000 n 
+0000045339 00000 n 
+0000045476 00000 n 
+0000607008 00000 n 
+0002140883 00000 n 
+0000045536 00000 n 
+0000045681 00000 n 
+0000607133 00000 n 
+0002140751 00000 n 
+0000045731 00000 n 
+0000046048 00000 n 
+0000613165 00000 n 
+0002140672 00000 n 
+0000046103 00000 n 
+0000046272 00000 n 
+0000613352 00000 n 
+0002140540 00000 n 
+0000046327 00000 n 
+0000046595 00000 n 
+0000613477 00000 n 
+0002140461 00000 n 
+0000046655 00000 n 
+0000046777 00000 n 
+0000618233 00000 n 
+0002140382 00000 n 
+0000046837 00000 n 
+0000046967 00000 n 
+0000618295 00000 n 
+0002140249 00000 n 
+0000047022 00000 n 
+0000047239 00000 n 
+0000618420 00000 n 
+0002140170 00000 n 
+0000047299 00000 n 
+0000047411 00000 n 
+0000623258 00000 n 
+0002140077 00000 n 
+0000047471 00000 n 
+0000047621 00000 n 
+0000623446 00000 n 
+0002139984 00000 n 
+0000047681 00000 n 
+0000047818 00000 n 
+0000623571 00000 n 
+0002139891 00000 n 
+0000047878 00000 n 
+0000048015 00000 n 
+0000628150 00000 n 
+0002139798 00000 n 
+0000048075 00000 n 
+0000048187 00000 n 
+0000628275 00000 n 
+0002139705 00000 n 
+0000048247 00000 n 
+0000048387 00000 n 
+0000628462 00000 n 
+0002139612 00000 n 
+0000048447 00000 n 
+0000048582 00000 n 
+0000633092 00000 n 
+0002139519 00000 n 
+0000048642 00000 n 
+0000048782 00000 n 
+0000633341 00000 n 
+0002139426 00000 n 
+0000048842 00000 n 
+0000048964 00000 n 
+0000638760 00000 n 
+0002139333 00000 n 
+0000049025 00000 n 
+0000049147 00000 n 
+0000638885 00000 n 
+0002139254 00000 n 
+0000049208 00000 n 
+0000049330 00000 n 
+0000638947 00000 n 
+0002139136 00000 n 
+0000049385 00000 n 
+0000049582 00000 n 
+0000639071 00000 n 
+0002139057 00000 n 
+0000049642 00000 n 
+0000049743 00000 n 
+0000647300 00000 n 
+0002138964 00000 n 
+0000049803 00000 n 
+0000049899 00000 n 
+0000647425 00000 n 
+0002138871 00000 n 
+0000049959 00000 n 
+0000050055 00000 n 
+0000647550 00000 n 
+0002138792 00000 n 
+0000050115 00000 n 
+0000050216 00000 n 
+0000647675 00000 n 
+0002138659 00000 n 
+0000050266 00000 n 
+0000050478 00000 n 
+0000664574 00000 n 
+0002138580 00000 n 
+0000050533 00000 n 
+0000050702 00000 n 
+0000668649 00000 n 
+0002138448 00000 n 
+0000050757 00000 n 
+0000051025 00000 n 
+0000668774 00000 n 
+0002138369 00000 n 
+0000051085 00000 n 
+0000051217 00000 n 
+0000668962 00000 n 
+0002138290 00000 n 
+0000051277 00000 n 
+0000051417 00000 n 
+0000669024 00000 n 
+0002138170 00000 n 
+0000051472 00000 n 
+0000051689 00000 n 
+0000669149 00000 n 
+0002138091 00000 n 
+0000051749 00000 n 
+0000051937 00000 n 
+0000673292 00000 n 
+0002137998 00000 n 
+0000051997 00000 n 
+0000052185 00000 n 
+0000677781 00000 n 
+0002137905 00000 n 
+0000052245 00000 n 
+0000052390 00000 n 
+0000678028 00000 n 
+0002137812 00000 n 
+0000052450 00000 n 
+0000052572 00000 n 
+0000683335 00000 n 
+0002137719 00000 n 
+0000052632 00000 n 
+0000052777 00000 n 
+0000683523 00000 n 
+0002137626 00000 n 
+0000052837 00000 n 
+0000052987 00000 n 
+0000689316 00000 n 
+0002137533 00000 n 
+0000053047 00000 n 
+0000053169 00000 n 
+0000689567 00000 n 
+0002137438 00000 n 
+0000053229 00000 n 
+0000053390 00000 n 
+0000693817 00000 n 
+0002137341 00000 n 
+0000053451 00000 n 
+0000053602 00000 n 
+0000699226 00000 n 
+0002137243 00000 n 
+0000053664 00000 n 
+0000053777 00000 n 
+0000699352 00000 n 
+0002137160 00000 n 
+0000053839 00000 n 
+0000053962 00000 n 
+0000699478 00000 n 
+0002137022 00000 n 
+0000054013 00000 n 
+0000054216 00000 n 
+0000702609 00000 n 
+0002136938 00000 n 
+0000054272 00000 n 
+0000054442 00000 n 
+0000702672 00000 n 
+0002136798 00000 n 
+0000054498 00000 n 
+0000054767 00000 n 
+0000702798 00000 n 
+0002136714 00000 n 
+0000054828 00000 n 
+0000054951 00000 n 
+0000702923 00000 n 
+0002136630 00000 n 
+0000055012 00000 n 
+0000055143 00000 n 
+0000702986 00000 n 
+0002136505 00000 n 
+0000055199 00000 n 
+0000055417 00000 n 
+0000705642 00000 n 
+0002136421 00000 n 
+0000055478 00000 n 
+0000055591 00000 n 
+0000705768 00000 n 
+0002136322 00000 n 
+0000055652 00000 n 
+0000055770 00000 n 
+0000705957 00000 n 
+0002136223 00000 n 
+0000055831 00000 n 
+0000055972 00000 n 
+0000709119 00000 n 
+0002136124 00000 n 
+0000056033 00000 n 
+0000056151 00000 n 
+0000709244 00000 n 
+0002136025 00000 n 
+0000056212 00000 n 
+0000056335 00000 n 
+0000709433 00000 n 
+0002135941 00000 n 
+0000056396 00000 n 
+0000056509 00000 n 
+0000713661 00000 n 
+0002135802 00000 n 
+0000056560 00000 n 
+0000056818 00000 n 
+0000713787 00000 n 
+0002135718 00000 n 
+0000056874 00000 n 
+0000057044 00000 n 
+0000713849 00000 n 
+0002135593 00000 n 
+0000057100 00000 n 
+0000057298 00000 n 
+0000713975 00000 n 
+0002135509 00000 n 
+0000057359 00000 n 
+0000057471 00000 n 
+0000721610 00000 n 
+0002135410 00000 n 
+0000057532 00000 n 
+0000057624 00000 n 
+0000721736 00000 n 
+0002135311 00000 n 
+0000057685 00000 n 
+0000057792 00000 n 
+0000721861 00000 n 
+0002135227 00000 n 
+0000057853 00000 n 
+0000057955 00000 n 
+0000721987 00000 n 
+0002135088 00000 n 
+0000058006 00000 n 
+0000058209 00000 n 
+0000733370 00000 n 
+0002135004 00000 n 
+0000058265 00000 n 
+0000058435 00000 n 
+0000733433 00000 n 
+0002134864 00000 n 
+0000058491 00000 n 
+0000058760 00000 n 
+0000737452 00000 n 
+0002134780 00000 n 
+0000058821 00000 n 
+0000058944 00000 n 
+0000737641 00000 n 
+0002134696 00000 n 
+0000059005 00000 n 
+0000059136 00000 n 
+0000737704 00000 n 
+0002134571 00000 n 
+0000059192 00000 n 
+0000059410 00000 n 
+0000737830 00000 n 
+0002134487 00000 n 
+0000059471 00000 n 
+0000059594 00000 n 
+0000743685 00000 n 
+0002134388 00000 n 
+0000059655 00000 n 
+0000059816 00000 n 
+0000743874 00000 n 
+0002134289 00000 n 
+0000059877 00000 n 
+0000060023 00000 n 
+0000749822 00000 n 
+0002134190 00000 n 
+0000060084 00000 n 
+0000060230 00000 n 
+0000750010 00000 n 
+0002134091 00000 n 
+0000060291 00000 n 
+0000060414 00000 n 
+0000754651 00000 n 
+0002133992 00000 n 
+0000060475 00000 n 
+0000060583 00000 n 
+0000754777 00000 n 
+0002133893 00000 n 
+0000060644 00000 n 
+0000060757 00000 n 
+0000763825 00000 n 
+0002133794 00000 n 
+0000060818 00000 n 
+0000060941 00000 n 
+0000763950 00000 n 
+0002133710 00000 n 
+0000061002 00000 n 
+0000061120 00000 n 
+0000764076 00000 n 
+0002133571 00000 n 
+0000061171 00000 n 
+0000061504 00000 n 
+0000784657 00000 n 
+0002133487 00000 n 
+0000061560 00000 n 
+0000061730 00000 n 
+0000784845 00000 n 
+0002133347 00000 n 
+0000061786 00000 n 
+0000062055 00000 n 
+0000784971 00000 n 
+0002133263 00000 n 
+0000062116 00000 n 
+0000062254 00000 n 
+0000790214 00000 n 
+0002133179 00000 n 
+0000062315 00000 n 
+0000062461 00000 n 
+0000790277 00000 n 
+0002133039 00000 n 
+0000062517 00000 n 
+0000062735 00000 n 
+0000790403 00000 n 
+0002132955 00000 n 
+0000062796 00000 n 
+0000062919 00000 n 
+0000796961 00000 n 
+0002132856 00000 n 
+0000062980 00000 n 
+0000063126 00000 n 
+0000797150 00000 n 
+0002132757 00000 n 
+0000063187 00000 n 
+0000063343 00000 n 
+0000802768 00000 n 
+0002132658 00000 n 
+0000063404 00000 n 
+0000063517 00000 n 
+0000807999 00000 n 
+0002132559 00000 n 
+0000063578 00000 n 
+0000063716 00000 n 
+0000808250 00000 n 
+0002132460 00000 n 
+0000063777 00000 n 
+0000063885 00000 n 
+0000808376 00000 n 
+0002132361 00000 n 
+0000063946 00000 n 
+0000064059 00000 n 
+0000813290 00000 n 
+0002132262 00000 n 
+0000064120 00000 n 
+0000064238 00000 n 
+0000813415 00000 n 
+0002132178 00000 n 
+0000064299 00000 n 
+0000064417 00000 n 
+0000813478 00000 n 
+0002132053 00000 n 
+0000064473 00000 n 
+0000064671 00000 n 
+0000813604 00000 n 
+0002131984 00000 n 
+0000064732 00000 n 
+0000064849 00000 n 
+0000820380 00000 n 
+0002131845 00000 n 
+0000064900 00000 n 
+0000065118 00000 n 
+0000820506 00000 n 
+0002131761 00000 n 
+0000065174 00000 n 
+0000065344 00000 n 
+0000823767 00000 n 
+0002131621 00000 n 
+0000065400 00000 n 
+0000065669 00000 n 
+0000823893 00000 n 
+0002131537 00000 n 
+0000065730 00000 n 
+0000065868 00000 n 
+0000824082 00000 n 
+0002131453 00000 n 
+0000065929 00000 n 
+0000066075 00000 n 
+0000824145 00000 n 
+0002131327 00000 n 
+0000066131 00000 n 
+0000066349 00000 n 
+0000824270 00000 n 
+0002131243 00000 n 
+0000066410 00000 n 
+0000066548 00000 n 
+0000827542 00000 n 
+0002131144 00000 n 
+0000066609 00000 n 
+0000066770 00000 n 
+0000827667 00000 n 
+0002131045 00000 n 
+0000066831 00000 n 
+0000066992 00000 n 
+0000827855 00000 n 
+0002130946 00000 n 
+0000067053 00000 n 
+0000067196 00000 n 
+0000828043 00000 n 
+0002130847 00000 n 
+0000067257 00000 n 
+0000067413 00000 n 
+0000831720 00000 n 
+0002130748 00000 n 
+0000067474 00000 n 
+0000067633 00000 n 
+0000831846 00000 n 
+0002130649 00000 n 
+0000067694 00000 n 
+0000067855 00000 n 
+0000835527 00000 n 
+0002130550 00000 n 
+0000067916 00000 n 
+0000068077 00000 n 
+0000835714 00000 n 
+0002130451 00000 n 
+0000068138 00000 n 
+0000068276 00000 n 
+0000835840 00000 n 
+0002130352 00000 n 
+0000068338 00000 n 
+0000068489 00000 n 
+0000840901 00000 n 
+0002130268 00000 n 
+0000068551 00000 n 
+0000068725 00000 n 
+0000841089 00000 n 
+0002130129 00000 n 
+0000068776 00000 n 
+0000069053 00000 n 
+0000841215 00000 n 
+0002130045 00000 n 
+0000069109 00000 n 
+0000069279 00000 n 
+0000844755 00000 n 
+0002129905 00000 n 
+0000069335 00000 n 
+0000069604 00000 n 
+0000844881 00000 n 
+0002129821 00000 n 
+0000069665 00000 n 
+0000069816 00000 n 
+0000845007 00000 n 
+0002129722 00000 n 
+0000069877 00000 n 
+0000070028 00000 n 
+0000845196 00000 n 
+0002129623 00000 n 
+0000070089 00000 n 
+0000070240 00000 n 
+0000849625 00000 n 
+0002129539 00000 n 
+0000070301 00000 n 
+0000070427 00000 n 
+0000849688 00000 n 
+0002129414 00000 n 
+0000070483 00000 n 
+0000070701 00000 n 
+0000849814 00000 n 
+0002129330 00000 n 
+0000070762 00000 n 
+0000070880 00000 n 
+0000850003 00000 n 
+0002129246 00000 n 
+0000070941 00000 n 
+0000071059 00000 n 
+0000856076 00000 n 
+0002129107 00000 n 
+0000071110 00000 n 
+0000071354 00000 n 
+0000856202 00000 n 
+0002129023 00000 n 
+0000071410 00000 n 
+0000071580 00000 n 
+0000856265 00000 n 
+0002128883 00000 n 
+0000071636 00000 n 
+0000071905 00000 n 
+0000856391 00000 n 
+0002128799 00000 n 
+0000071966 00000 n 
+0000072117 00000 n 
+0000856517 00000 n 
+0002128700 00000 n 
+0000072178 00000 n 
+0000072329 00000 n 
+0000862292 00000 n 
+0002128616 00000 n 
+0000072390 00000 n 
+0000072516 00000 n 
+0000862355 00000 n 
+0002128491 00000 n 
+0000072572 00000 n 
+0000072790 00000 n 
+0000862480 00000 n 
+0002128407 00000 n 
+0000072851 00000 n 
+0000073002 00000 n 
+0000862606 00000 n 
+0002128308 00000 n 
+0000073063 00000 n 
+0000073214 00000 n 
+0000862732 00000 n 
+0002128224 00000 n 
+0000073275 00000 n 
+0000073393 00000 n 
+0000862857 00000 n 
+0002128085 00000 n 
+0000073444 00000 n 
+0000073723 00000 n 
+0000867119 00000 n 
+0002128001 00000 n 
+0000073779 00000 n 
+0000073949 00000 n 
+0000867182 00000 n 
+0002127861 00000 n 
+0000074005 00000 n 
+0000074274 00000 n 
+0000867308 00000 n 
+0002127777 00000 n 
+0000074335 00000 n 
+0000074486 00000 n 
+0000867434 00000 n 
+0002127678 00000 n 
+0000074547 00000 n 
+0000074698 00000 n 
+0000867560 00000 n 
+0002127579 00000 n 
+0000074759 00000 n 
+0000074910 00000 n 
+0000867686 00000 n 
+0002127495 00000 n 
+0000074971 00000 n 
+0000075097 00000 n 
+0000867749 00000 n 
+0002127370 00000 n 
+0000075153 00000 n 
+0000075371 00000 n 
+0000880520 00000 n 
+0002127286 00000 n 
+0000075432 00000 n 
+0000075550 00000 n 
+0000880646 00000 n 
+0002127202 00000 n 
+0000075611 00000 n 
+0000075729 00000 n 
+0000880771 00000 n 
+0002127063 00000 n 
+0000075780 00000 n 
+0000075993 00000 n 
+0000889121 00000 n 
+0002126979 00000 n 
+0000076049 00000 n 
+0000076219 00000 n 
+0000889184 00000 n 
+0002126839 00000 n 
+0000076275 00000 n 
+0000076544 00000 n 
+0000893227 00000 n 
+0002126755 00000 n 
+0000076605 00000 n 
+0000076738 00000 n 
+0000893351 00000 n 
+0002126671 00000 n 
+0000076799 00000 n 
+0000076940 00000 n 
+0000893414 00000 n 
+0002126530 00000 n 
+0000076996 00000 n 
+0000077214 00000 n 
+0000893540 00000 n 
+0002126446 00000 n 
+0000077275 00000 n 
+0000077436 00000 n 
+0000893729 00000 n 
+0002126347 00000 n 
+0000077497 00000 n 
+0000077620 00000 n 
+0000898721 00000 n 
+0002126248 00000 n 
+0000077681 00000 n 
+0000077842 00000 n 
+0000898910 00000 n 
+0002126149 00000 n 
+0000077903 00000 n 
+0000078079 00000 n 
+0000904700 00000 n 
+0002126050 00000 n 
+0000078140 00000 n 
+0000078286 00000 n 
+0000904889 00000 n 
+0002125951 00000 n 
+0000078347 00000 n 
+0000078498 00000 n 
+0000909818 00000 n 
+0002125852 00000 n 
+0000078559 00000 n 
+0000078725 00000 n 
+0000910007 00000 n 
+0002125753 00000 n 
+0000078786 00000 n 
+0000078942 00000 n 
+0000915554 00000 n 
+0002125654 00000 n 
+0000079003 00000 n 
+0000079154 00000 n 
+0000915740 00000 n 
+0002125555 00000 n 
+0000079216 00000 n 
+0000079367 00000 n 
+0000919448 00000 n 
+0002125471 00000 n 
+0000079429 00000 n 
+0000079590 00000 n 
+0000919574 00000 n 
+0002125346 00000 n 
+0000079646 00000 n 
+0000079844 00000 n 
+0000919699 00000 n 
+0002125262 00000 n 
+0000079905 00000 n 
+0000080060 00000 n 
+0000919825 00000 n 
+0002125163 00000 n 
+0000080121 00000 n 
+0000080276 00000 n 
+0000924962 00000 n 
+0002125079 00000 n 
+0000080337 00000 n 
+0000080477 00000 n 
+0000925088 00000 n 
+0002124940 00000 n 
+0000080528 00000 n 
+0000080731 00000 n 
+0000925214 00000 n 
+0002124856 00000 n 
+0000080787 00000 n 
+0000080957 00000 n 
+0000925276 00000 n 
+0002124716 00000 n 
+0000081013 00000 n 
+0000081282 00000 n 
+0000925402 00000 n 
+0002124632 00000 n 
+0000081343 00000 n 
+0000081466 00000 n 
+0000929682 00000 n 
+0002124548 00000 n 
+0000081527 00000 n 
+0000081658 00000 n 
+0000929745 00000 n 
+0002124423 00000 n 
+0000081714 00000 n 
+0000081932 00000 n 
+0000929871 00000 n 
+0002124339 00000 n 
+0000081993 00000 n 
+0000082101 00000 n 
+0000933272 00000 n 
+0002124240 00000 n 
+0000082162 00000 n 
+0000082280 00000 n 
+0000933397 00000 n 
+0002124141 00000 n 
+0000082341 00000 n 
+0000082454 00000 n 
+0000933523 00000 n 
+0002124057 00000 n 
+0000082515 00000 n 
+0000082638 00000 n 
+0000933712 00000 n 
+0002123918 00000 n 
+0000082689 00000 n 
+0000082892 00000 n 
+0000937657 00000 n 
+0002123834 00000 n 
+0000082948 00000 n 
+0000083118 00000 n 
+0000937720 00000 n 
+0002123694 00000 n 
+0000083174 00000 n 
+0000083443 00000 n 
+0000937846 00000 n 
+0002123610 00000 n 
+0000083504 00000 n 
+0000083627 00000 n 
+0000938035 00000 n 
+0002123526 00000 n 
+0000083688 00000 n 
+0000083819 00000 n 
+0000940550 00000 n 
+0002123401 00000 n 
+0000083875 00000 n 
+0000084093 00000 n 
+0000940676 00000 n 
+0002123317 00000 n 
+0000084154 00000 n 
+0000084267 00000 n 
+0000940802 00000 n 
+0002123218 00000 n 
+0000084328 00000 n 
+0000084499 00000 n 
+0000940928 00000 n 
+0002123134 00000 n 
+0000084560 00000 n 
+0000084673 00000 n 
+0000946038 00000 n 
+0002122995 00000 n 
+0000084724 00000 n 
+0000084917 00000 n 
+0000950785 00000 n 
+0002122911 00000 n 
+0000084973 00000 n 
+0000085143 00000 n 
+0000950848 00000 n 
+0002122771 00000 n 
+0000085199 00000 n 
+0000085468 00000 n 
+0000950973 00000 n 
+0002122687 00000 n 
+0000085529 00000 n 
+0000085675 00000 n 
+0000951099 00000 n 
+0002122588 00000 n 
+0000085736 00000 n 
+0000085882 00000 n 
+0000951288 00000 n 
+0002122489 00000 n 
+0000085943 00000 n 
+0000086089 00000 n 
+0000954554 00000 n 
+0002122405 00000 n 
+0000086150 00000 n 
+0000086271 00000 n 
+0000954617 00000 n 
+0002122265 00000 n 
+0000086327 00000 n 
+0000086545 00000 n 
+0000954743 00000 n 
+0002122181 00000 n 
+0000086606 00000 n 
+0000086737 00000 n 
+0000957369 00000 n 
+0002122082 00000 n 
+0000086798 00000 n 
+0000086926 00000 n 
+0000957495 00000 n 
+0002121983 00000 n 
+0000086987 00000 n 
+0000087125 00000 n 
+0000957621 00000 n 
+0002121884 00000 n 
+0000087186 00000 n 
+0000087322 00000 n 
+0000961276 00000 n 
+0002121800 00000 n 
+0000087383 00000 n 
+0000087514 00000 n 
+0000961339 00000 n 
+0002121675 00000 n 
+0000087570 00000 n 
+0000087859 00000 n 
+0000961465 00000 n 
+0002121591 00000 n 
+0000087920 00000 n 
+0000088047 00000 n 
+0000970443 00000 n 
+0002121507 00000 n 
+0000088108 00000 n 
+0000088235 00000 n 
+0000970632 00000 n 
+0002121383 00000 n 
+0000088286 00000 n 
+0000088614 00000 n 
+0000993838 00000 n 
+0002121299 00000 n 
+0000088670 00000 n 
+0000088840 00000 n 
+0000994026 00000 n 
+0002121159 00000 n 
+0000088896 00000 n 
+0000089165 00000 n 
+0000998613 00000 n 
+0002121075 00000 n 
+0000089226 00000 n 
+0000089359 00000 n 
+0000998802 00000 n 
+0002120991 00000 n 
+0000089420 00000 n 
+0000089561 00000 n 
+0000998865 00000 n 
+0002120850 00000 n 
+0000089617 00000 n 
+0000089835 00000 n 
+0001003685 00000 n 
+0002120766 00000 n 
+0000089896 00000 n 
+0000090014 00000 n 
+0001003811 00000 n 
+0002120667 00000 n 
+0000090075 00000 n 
+0000090198 00000 n 
+0001009593 00000 n 
+0002120568 00000 n 
+0000090259 00000 n 
+0000090407 00000 n 
+0001009778 00000 n 
+0002120469 00000 n 
+0000090468 00000 n 
+0000090614 00000 n 
+0001016080 00000 n 
+0002120370 00000 n 
+0000090675 00000 n 
+0000090841 00000 n 
+0001016269 00000 n 
+0002120271 00000 n 
+0000090902 00000 n 
+0000091015 00000 n 
+0001021744 00000 n 
+0002120172 00000 n 
+0000091076 00000 n 
+0000091214 00000 n 
+0001021996 00000 n 
+0002120073 00000 n 
+0000091275 00000 n 
+0000091383 00000 n 
+0001026595 00000 n 
+0002119974 00000 n 
+0000091444 00000 n 
+0000091557 00000 n 
+0001026721 00000 n 
+0002119875 00000 n 
+0000091619 00000 n 
+0000091790 00000 n 
+0001026909 00000 n 
+0002119776 00000 n 
+0000091852 00000 n 
+0000091980 00000 n 
+0001032107 00000 n 
+0002119677 00000 n 
+0000092042 00000 n 
+0000092160 00000 n 
+0001032295 00000 n 
+0002119578 00000 n 
+0000092222 00000 n 
+0000092350 00000 n 
+0001037295 00000 n 
+0002119479 00000 n 
+0000092412 00000 n 
+0000092535 00000 n 
+0001037419 00000 n 
+0002119395 00000 n 
+0000092597 00000 n 
+0000092720 00000 n 
+0001037482 00000 n 
+0002119270 00000 n 
+0000092776 00000 n 
+0000092974 00000 n 
+0001041961 00000 n 
+0002119186 00000 n 
+0000093035 00000 n 
+0000093162 00000 n 
+0001042087 00000 n 
+0002119087 00000 n 
+0000093223 00000 n 
+0000093320 00000 n 
+0001042213 00000 n 
+0002119003 00000 n 
+0000093381 00000 n 
+0000093483 00000 n 
+0001044701 00000 n 
+0002118861 00000 n 
+0000093531 00000 n 
+0000093666 00000 n 
+0001044827 00000 n 
+0002118777 00000 n 
+0000093716 00000 n 
+0000093894 00000 n 
+0001044953 00000 n 
+0002118637 00000 n 
+0000093944 00000 n 
+0000094207 00000 n 
+0001045079 00000 n 
+0002118527 00000 n 
+0000094262 00000 n 
+0000094432 00000 n 
+0001045205 00000 n 
+0002118458 00000 n 
+0000094492 00000 n 
+0000094584 00000 n 
+0001053320 00000 n 
+0002118359 00000 n 
+0000094634 00000 n 
+0000094771 00000 n 
+0001064198 00000 n 
+0002118219 00000 n 
+0000094821 00000 n 
+0000095079 00000 n 
+0001064324 00000 n 
+0002118109 00000 n 
+0000095134 00000 n 
+0000095304 00000 n 
+0001064450 00000 n 
+0002118040 00000 n 
+0000095364 00000 n 
+0000095456 00000 n 
+0001064576 00000 n 
+0002117941 00000 n 
+0000095506 00000 n 
+0000095643 00000 n 
+0001076066 00000 n 
+0002117842 00000 n 
+0000095693 00000 n 
+0000095946 00000 n 
+0001076318 00000 n 
+0002117743 00000 n 
+0000095996 00000 n 
+0000096123 00000 n 
+0001084140 00000 n 
+0002117644 00000 n 
+0000096173 00000 n 
+0000096421 00000 n 
+0001084392 00000 n 
+0002117545 00000 n 
+0000096471 00000 n 
+0000096598 00000 n 
+0001085768 00000 n 
+0002117405 00000 n 
+0000096649 00000 n 
+0000096887 00000 n 
+0001085894 00000 n 
+0002117295 00000 n 
+0000096943 00000 n 
+0000097166 00000 n 
+0001088712 00000 n 
+0002117226 00000 n 
+0000097227 00000 n 
+0000097370 00000 n 
+0001088838 00000 n 
+0002117127 00000 n 
+0000097421 00000 n 
+0000097533 00000 n 
+0001090098 00000 n 
+0002116987 00000 n 
+0000097584 00000 n 
+0000097822 00000 n 
+0001090224 00000 n 
+0002116877 00000 n 
+0000097878 00000 n 
+0000098101 00000 n 
+0001090350 00000 n 
+0002116808 00000 n 
+0000098162 00000 n 
+0000098305 00000 n 
+0001093179 00000 n 
+0002116709 00000 n 
+0000098356 00000 n 
+0000098468 00000 n 
+0001094439 00000 n 
+0002116569 00000 n 
+0000098519 00000 n 
+0000098757 00000 n 
+0001094565 00000 n 
+0002116459 00000 n 
+0000098813 00000 n 
+0000099036 00000 n 
+0001094691 00000 n 
+0002116390 00000 n 
+0000099097 00000 n 
+0000099240 00000 n 
+0001094817 00000 n 
+0002116291 00000 n 
+0000099291 00000 n 
+0000099403 00000 n 
+0001098592 00000 n 
+0002116151 00000 n 
+0000099454 00000 n 
+0000099692 00000 n 
+0001098718 00000 n 
+0002116041 00000 n 
+0000099748 00000 n 
+0000099971 00000 n 
+0001098844 00000 n 
+0002115972 00000 n 
+0000100032 00000 n 
+0000100175 00000 n 
+0001098970 00000 n 
+0002115873 00000 n 
+0000100226 00000 n 
+0000100338 00000 n 
+0001100230 00000 n 
+0002115774 00000 n 
+0000100389 00000 n 
+0000100622 00000 n 
+0001100356 00000 n 
+0002115675 00000 n 
+0000100673 00000 n 
+0000100785 00000 n 
+0001106316 00000 n 
+0002115576 00000 n 
+0000100836 00000 n 
+0000101109 00000 n 
+0001106442 00000 n 
+0002115477 00000 n 
+0000101160 00000 n 
+0000101307 00000 n 
+0001107700 00000 n 
+0002115378 00000 n 
+0000101358 00000 n 
+0000101621 00000 n 
+0001107952 00000 n 
+0002115279 00000 n 
+0000101672 00000 n 
+0000101809 00000 n 
+0001115550 00000 n 
+0002115180 00000 n 
+0000101860 00000 n 
+0000102133 00000 n 
+0001115801 00000 n 
+0002115081 00000 n 
+0000102184 00000 n 
+0000102331 00000 n 
+0001116935 00000 n 
+0002114941 00000 n 
+0000102382 00000 n 
+0000102630 00000 n 
+0001121687 00000 n 
+0002114831 00000 n 
+0000102686 00000 n 
+0000102909 00000 n 
+0001121813 00000 n 
+0002114762 00000 n 
+0000102970 00000 n 
+0000103138 00000 n 
+0001121939 00000 n 
+0002114663 00000 n 
+0000103189 00000 n 
+0000103311 00000 n 
+0001153205 00000 n 
+0002114564 00000 n 
+0000103362 00000 n 
+0000103600 00000 n 
+0001153457 00000 n 
+0002114465 00000 n 
+0000103651 00000 n 
+0000103763 00000 n 
+0001162899 00000 n 
+0002114366 00000 n 
+0000103814 00000 n 
+0000104057 00000 n 
+0001168977 00000 n 
+0002114267 00000 n 
+0000104108 00000 n 
+0000104225 00000 n 
+0001196550 00000 n 
+0002114168 00000 n 
+0000104276 00000 n 
+0000104509 00000 n 
+0001196802 00000 n 
+0002114069 00000 n 
+0000104560 00000 n 
+0000104667 00000 n 
+0001205324 00000 n 
+0002113970 00000 n 
+0000104718 00000 n 
+0000104951 00000 n 
+0001205450 00000 n 
+0002113871 00000 n 
+0000105002 00000 n 
+0000105109 00000 n 
+0001213424 00000 n 
+0002113772 00000 n 
+0000105160 00000 n 
+0000105383 00000 n 
+0001213676 00000 n 
+0002113673 00000 n 
+0000105434 00000 n 
+0000105531 00000 n 
+0001216310 00000 n 
+0002113574 00000 n 
+0000105582 00000 n 
+0000105800 00000 n 
+0001222420 00000 n 
+0002113475 00000 n 
+0000105851 00000 n 
+0000105943 00000 n 
+0001223554 00000 n 
+0002113376 00000 n 
+0000105994 00000 n 
+0000106212 00000 n 
+0001232104 00000 n 
+0002113277 00000 n 
+0000106263 00000 n 
+0000106355 00000 n 
+0001233616 00000 n 
+0002113178 00000 n 
+0000106406 00000 n 
+0000106639 00000 n 
+0001239170 00000 n 
+0002113079 00000 n 
+0000106690 00000 n 
+0000106797 00000 n 
+0001242940 00000 n 
+0002112980 00000 n 
+0000106848 00000 n 
+0000107071 00000 n 
+0001247244 00000 n 
+0002112881 00000 n 
+0000107122 00000 n 
+0000107219 00000 n 
+0001249827 00000 n 
+0002112782 00000 n 
+0000107270 00000 n 
+0000107503 00000 n 
+0001249953 00000 n 
+0002112683 00000 n 
+0000107554 00000 n 
+0000107661 00000 n 
+0001258349 00000 n 
+0002112543 00000 n 
+0000107712 00000 n 
+0000107935 00000 n 
+0001264571 00000 n 
+0002112433 00000 n 
+0000107991 00000 n 
+0000108166 00000 n 
+0001264697 00000 n 
+0002112349 00000 n 
+0000108227 00000 n 
+0000108360 00000 n 
+0001264823 00000 n 
+0002112265 00000 n 
+0000108421 00000 n 
+0000108541 00000 n 
+0001264949 00000 n 
+0002112166 00000 n 
+0000108592 00000 n 
+0000108689 00000 n 
+0001271774 00000 n 
+0002112067 00000 n 
+0000108740 00000 n 
+0000108988 00000 n 
+0001271899 00000 n 
+0002111968 00000 n 
+0000109039 00000 n 
+0000109161 00000 n 
+0001272087 00000 n 
+0002111869 00000 n 
+0000109212 00000 n 
+0000109450 00000 n 
+0001272338 00000 n 
+0002111770 00000 n 
+0000109501 00000 n 
+0000109613 00000 n 
+0001343430 00000 n 
+0002111671 00000 n 
+0000109664 00000 n 
+0000109902 00000 n 
+0001343556 00000 n 
+0002111572 00000 n 
+0000109953 00000 n 
+0000110065 00000 n 
+0001366917 00000 n 
+0002111473 00000 n 
+0000110116 00000 n 
+0000110344 00000 n 
+0001374835 00000 n 
+0002111374 00000 n 
+0000110395 00000 n 
+0000110497 00000 n 
+0001386614 00000 n 
+0002111275 00000 n 
+0000110548 00000 n 
+0000110771 00000 n 
+0001386739 00000 n 
+0002111176 00000 n 
+0000110822 00000 n 
+0000110919 00000 n 
+0001395598 00000 n 
+0002111077 00000 n 
+0000110970 00000 n 
+0000111183 00000 n 
+0001401233 00000 n 
+0002110978 00000 n 
+0000111234 00000 n 
+0000111321 00000 n 
+0001403627 00000 n 
+0002110838 00000 n 
+0000111372 00000 n 
+0000111605 00000 n 
+0001403753 00000 n 
+0002110728 00000 n 
+0000111661 00000 n 
+0000111841 00000 n 
+0001403878 00000 n 
+0002110644 00000 n 
+0000111902 00000 n 
+0000112141 00000 n 
+0001411119 00000 n 
+0002110545 00000 n 
+0000112202 00000 n 
+0000112441 00000 n 
+0001411244 00000 n 
+0002110461 00000 n 
+0000112502 00000 n 
+0000112746 00000 n 
+0001411370 00000 n 
+0002110362 00000 n 
+0000112797 00000 n 
+0000112904 00000 n 
+0001424646 00000 n 
+0002110263 00000 n 
+0000112955 00000 n 
+0000113178 00000 n 
+0001424962 00000 n 
+0002110164 00000 n 
+0000113229 00000 n 
+0000113326 00000 n 
+0001465235 00000 n 
+0002110065 00000 n 
+0000113377 00000 n 
+0000113620 00000 n 
+0001473513 00000 n 
+0002109966 00000 n 
+0000113671 00000 n 
+0000113788 00000 n 
+0001486900 00000 n 
+0002109867 00000 n 
+0000113839 00000 n 
+0000114072 00000 n 
+0001487158 00000 n 
+0002109768 00000 n 
+0000114123 00000 n 
+0000114230 00000 n 
+0001521281 00000 n 
+0002109628 00000 n 
+0000114281 00000 n 
+0000114547 00000 n 
+0001521410 00000 n 
+0002109518 00000 n 
+0000114603 00000 n 
+0000114783 00000 n 
+0001521538 00000 n 
+0002109434 00000 n 
+0000114844 00000 n 
+0000115081 00000 n 
+0001521666 00000 n 
+0002109335 00000 n 
+0000115142 00000 n 
+0000115379 00000 n 
+0001521795 00000 n 
+0002109236 00000 n 
+0000115440 00000 n 
+0000115677 00000 n 
+0001526216 00000 n 
+0002109137 00000 n 
+0000115738 00000 n 
+0000115980 00000 n 
+0001526344 00000 n 
+0002109038 00000 n 
+0000116041 00000 n 
+0000116283 00000 n 
+0001526473 00000 n 
+0002108939 00000 n 
+0000116344 00000 n 
+0000116586 00000 n 
+0001526602 00000 n 
+0002108855 00000 n 
+0000116647 00000 n 
+0000116894 00000 n 
+0001534707 00000 n 
+0002108756 00000 n 
+0000116945 00000 n 
+0000117085 00000 n 
+0001549924 00000 n 
+0002108657 00000 n 
+0000117136 00000 n 
+0000117392 00000 n 
+0001559901 00000 n 
+0002108558 00000 n 
+0000117443 00000 n 
+0000117573 00000 n 
+0001562824 00000 n 
+0002108459 00000 n 
+0000117624 00000 n 
+0000117857 00000 n 
+0001562952 00000 n 
+0002108360 00000 n 
+0000117908 00000 n 
+0000118015 00000 n 
+0001577850 00000 n 
+0002108261 00000 n 
+0000118066 00000 n 
+0000118289 00000 n 
+0001584435 00000 n 
+0002108162 00000 n 
+0000118340 00000 n 
+0000118437 00000 n 
+0001586966 00000 n 
+0002108063 00000 n 
+0000118488 00000 n 
+0000118736 00000 n 
+0001587095 00000 n 
+0002107964 00000 n 
+0000118787 00000 n 
+0000118909 00000 n 
+0001599355 00000 n 
+0002107865 00000 n 
+0000118960 00000 n 
+0000119198 00000 n 
+0001599613 00000 n 
+0002107766 00000 n 
+0000119249 00000 n 
+0000119361 00000 n 
+0001628612 00000 n 
+0002107667 00000 n 
+0000119412 00000 n 
+0000119640 00000 n 
+0001628740 00000 n 
+0002107568 00000 n 
+0000119691 00000 n 
+0000119793 00000 n 
+0001647601 00000 n 
+0002107469 00000 n 
+0000119844 00000 n 
+0000120062 00000 n 
+0001647859 00000 n 
+0002107370 00000 n 
+0000120113 00000 n 
+0000120205 00000 n 
+0001668778 00000 n 
+0002107271 00000 n 
+0000120256 00000 n 
+0000120479 00000 n 
+0001668906 00000 n 
+0002107172 00000 n 
+0000120530 00000 n 
+0000120627 00000 n 
+0001692603 00000 n 
+0002107073 00000 n 
+0000120678 00000 n 
+0000120891 00000 n 
+0001692924 00000 n 
+0002106974 00000 n 
+0000120942 00000 n 
+0000121029 00000 n 
+0001698137 00000 n 
+0002106875 00000 n 
+0000121080 00000 n 
+0000121308 00000 n 
+0001698264 00000 n 
+0002106776 00000 n 
+0000121359 00000 n 
+0000121461 00000 n 
+0001698457 00000 n 
+0002106677 00000 n 
+0000121512 00000 n 
+0000121755 00000 n 
+0001698586 00000 n 
+0002106578 00000 n 
+0000121806 00000 n 
+0000121923 00000 n 
+0001698779 00000 n 
+0002106479 00000 n 
+0000121974 00000 n 
+0000122207 00000 n 
+0001718527 00000 n 
+0002106380 00000 n 
+0000122258 00000 n 
+0000122365 00000 n 
+0001756365 00000 n 
+0002106240 00000 n 
+0000122416 00000 n 
+0000122639 00000 n 
+0001756493 00000 n 
+0002106130 00000 n 
+0000122695 00000 n 
+0000122875 00000 n 
+0001756622 00000 n 
+0002106061 00000 n 
+0000122936 00000 n 
+0000123049 00000 n 
+0001756751 00000 n 
+0002105962 00000 n 
+0000123100 00000 n 
+0000123197 00000 n 
+0001774095 00000 n 
+0002105863 00000 n 
+0000123248 00000 n 
+0000123491 00000 n 
+0001774223 00000 n 
+0002105764 00000 n 
+0000123542 00000 n 
+0000123664 00000 n 
+0001792238 00000 n 
+0002105665 00000 n 
+0000123716 00000 n 
+0000123954 00000 n 
+0001792494 00000 n 
+0002105566 00000 n 
+0000124006 00000 n 
+0000124123 00000 n 
+0001800672 00000 n 
+0002105467 00000 n 
+0000124175 00000 n 
+0000124423 00000 n 
+0001800800 00000 n 
+0002105368 00000 n 
+0000124475 00000 n 
+0000124602 00000 n 
+0001801510 00000 n 
+0002105269 00000 n 
+0000124654 00000 n 
+0000124892 00000 n 
+0001804039 00000 n 
+0002105185 00000 n 
+0000124944 00000 n 
+0000125061 00000 n 
+0001816710 00000 n 
+0002105100 00000 n 
+0000125112 00000 n 
+0000125166 00000 n 
+0000125446 00000 n 
+0000125632 00000 n 
+0000125218 00000 n 
+0000125569 00000 n 
+0002097504 00000 n 
+0002098653 00000 n 
+0000125930 00000 n 
+0000125807 00000 n 
+0000125706 00000 n 
+0000127662 00000 n 
+0000127813 00000 n 
+0000127966 00000 n 
+0000128126 00000 n 
+0000128286 00000 n 
+0000128446 00000 n 
+0000128599 00000 n 
+0000128752 00000 n 
+0000128903 00000 n 
+0000129054 00000 n 
+0000129207 00000 n 
+0000129357 00000 n 
+0000129510 00000 n 
+0000129660 00000 n 
+0000129813 00000 n 
+0000129964 00000 n 
+0000130117 00000 n 
+0000130268 00000 n 
+0000130421 00000 n 
+0000130581 00000 n 
+0000130746 00000 n 
+0000130910 00000 n 
+0000131075 00000 n 
+0000131240 00000 n 
+0000131405 00000 n 
+0000131558 00000 n 
+0000131710 00000 n 
+0000131863 00000 n 
+0000132016 00000 n 
+0000132173 00000 n 
+0000132331 00000 n 
+0000132496 00000 n 
+0000132659 00000 n 
+0000132824 00000 n 
+0000132988 00000 n 
+0000133153 00000 n 
+0000133318 00000 n 
+0000133483 00000 n 
+0000135775 00000 n 
+0000133703 00000 n 
+0000127185 00000 n 
+0000125972 00000 n 
+0002095606 00000 n 
+0000133640 00000 n 
+0000135940 00000 n 
+0000136105 00000 n 
+0000136269 00000 n 
+0000136434 00000 n 
+0000136598 00000 n 
+0000136763 00000 n 
+0000136927 00000 n 
+0000137091 00000 n 
+0000137256 00000 n 
+0000137422 00000 n 
+0000137588 00000 n 
+0000137754 00000 n 
+0000137920 00000 n 
+0000138086 00000 n 
+0000138252 00000 n 
+0000138417 00000 n 
+0000138582 00000 n 
+0000138747 00000 n 
+0000138913 00000 n 
+0000139078 00000 n 
+0000139244 00000 n 
+0000139410 00000 n 
+0000139575 00000 n 
+0000139741 00000 n 
+0000139907 00000 n 
+0000140073 00000 n 
+0000140239 00000 n 
+0000140391 00000 n 
+0000140542 00000 n 
+0000140693 00000 n 
+0000140850 00000 n 
+0000141010 00000 n 
+0000141175 00000 n 
+0000141340 00000 n 
+0000141500 00000 n 
+0000141665 00000 n 
+0000141830 00000 n 
+0000141994 00000 n 
+0000142156 00000 n 
+0000142319 00000 n 
+0000144453 00000 n 
+0000142482 00000 n 
+0000135271 00000 n 
+0000133791 00000 n 
+0002084608 00000 n 
+0002089546 00000 n 
+0002093708 00000 n 
+0000144604 00000 n 
+0000144762 00000 n 
+0000144922 00000 n 
+0000145087 00000 n 
+0000145252 00000 n 
+0000145417 00000 n 
+0000145577 00000 n 
+0000145741 00000 n 
+0000145900 00000 n 
+0000146065 00000 n 
+0000146226 00000 n 
+0000146391 00000 n 
+0000146556 00000 n 
+0000146720 00000 n 
+0000146885 00000 n 
+0000147049 00000 n 
+0000147214 00000 n 
+0000147379 00000 n 
+0000147544 00000 n 
+0000147708 00000 n 
+0000147874 00000 n 
+0000148040 00000 n 
+0000148206 00000 n 
+0000148359 00000 n 
+0000148517 00000 n 
+0000148677 00000 n 
+0000148842 00000 n 
+0000149001 00000 n 
+0000149166 00000 n 
+0000149331 00000 n 
+0000149496 00000 n 
+0000149656 00000 n 
+0000149821 00000 n 
+0000149974 00000 n 
+0000150132 00000 n 
+0000150292 00000 n 
+0000150456 00000 n 
+0000150619 00000 n 
+0000150782 00000 n 
+0000150942 00000 n 
+0000151106 00000 n 
+0000153079 00000 n 
+0000151269 00000 n 
+0000143940 00000 n 
+0000142612 00000 n 
+0000153244 00000 n 
+0000153409 00000 n 
+0000153574 00000 n 
+0000153739 00000 n 
+0000153904 00000 n 
+0000154069 00000 n 
+0000154221 00000 n 
+0000154379 00000 n 
+0000154539 00000 n 
+0000154703 00000 n 
+0000154867 00000 n 
+0000155031 00000 n 
+0000155191 00000 n 
+0000155356 00000 n 
+0000155521 00000 n 
+0000155685 00000 n 
+0000155849 00000 n 
+0000156014 00000 n 
+0000156179 00000 n 
+0000156344 00000 n 
+0000156509 00000 n 
+0000156662 00000 n 
+0000156820 00000 n 
+0000156980 00000 n 
+0000157144 00000 n 
+0000157308 00000 n 
+0000157471 00000 n 
+0000157631 00000 n 
+0000157796 00000 n 
+0000157961 00000 n 
+0000158126 00000 n 
+0000158291 00000 n 
+0000158456 00000 n 
+0000158621 00000 n 
+0000158786 00000 n 
+0000158951 00000 n 
+0000159104 00000 n 
+0000159261 00000 n 
+0000159420 00000 n 
+0000159585 00000 n 
+0000159749 00000 n 
+0000161862 00000 n 
+0000159906 00000 n 
+0000152566 00000 n 
+0000151399 00000 n 
+0000162027 00000 n 
+0000162192 00000 n 
+0000162356 00000 n 
+0000162520 00000 n 
+0000162685 00000 n 
+0000162850 00000 n 
+0000163014 00000 n 
+0000163178 00000 n 
+0000163343 00000 n 
+0000163508 00000 n 
+0000163674 00000 n 
+0000163840 00000 n 
+0000164006 00000 n 
+0000164172 00000 n 
+0000164338 00000 n 
+0000164498 00000 n 
+0000164663 00000 n 
+0000164828 00000 n 
+0000164992 00000 n 
+0000165155 00000 n 
+0000165320 00000 n 
+0000165485 00000 n 
+0000165650 00000 n 
+0000165815 00000 n 
+0000165964 00000 n 
+0000166122 00000 n 
+0000166282 00000 n 
+0000166446 00000 n 
+0000166611 00000 n 
+0000166776 00000 n 
+0000166941 00000 n 
+0000167101 00000 n 
+0000167266 00000 n 
+0000167431 00000 n 
+0000167596 00000 n 
+0000167761 00000 n 
+0000167926 00000 n 
+0000168090 00000 n 
+0000168242 00000 n 
+0000168400 00000 n 
+0000168557 00000 n 
+0000170700 00000 n 
+0000168720 00000 n 
+0000161349 00000 n 
+0000160036 00000 n 
+0002098779 00000 n 
+0000170865 00000 n 
+0000171030 00000 n 
+0000171190 00000 n 
+0000171355 00000 n 
+0000171508 00000 n 
+0000171669 00000 n 
+0000171830 00000 n 
+0000171995 00000 n 
+0000172161 00000 n 
+0000172315 00000 n 
+0000172472 00000 n 
+0000172633 00000 n 
+0000172799 00000 n 
+0000172965 00000 n 
+0000173126 00000 n 
+0000173291 00000 n 
+0000173456 00000 n 
+0000173622 00000 n 
+0000173788 00000 n 
+0000173954 00000 n 
+0000174120 00000 n 
+0000174286 00000 n 
+0000174452 00000 n 
+0000174617 00000 n 
+0000174784 00000 n 
+0000174951 00000 n 
+0000175112 00000 n 
+0000175278 00000 n 
+0000175444 00000 n 
+0000175609 00000 n 
+0000175774 00000 n 
+0000175928 00000 n 
+0000176089 00000 n 
+0000176250 00000 n 
+0000176416 00000 n 
+0000176582 00000 n 
+0000176743 00000 n 
+0000176909 00000 n 
+0000177074 00000 n 
+0000177240 00000 n 
+0000177405 00000 n 
+0000179513 00000 n 
+0000177569 00000 n 
+0000170187 00000 n 
+0000168836 00000 n 
+0000179679 00000 n 
+0000179845 00000 n 
+0000180011 00000 n 
+0000180177 00000 n 
+0000180342 00000 n 
+0000180509 00000 n 
+0000180663 00000 n 
+0000180824 00000 n 
+0000180985 00000 n 
+0000181150 00000 n 
+0000181316 00000 n 
+0000181477 00000 n 
+0000181642 00000 n 
+0000181808 00000 n 
+0000181974 00000 n 
+0000182139 00000 n 
+0000182304 00000 n 
+0000182470 00000 n 
+0000182624 00000 n 
+0000182783 00000 n 
+0000182944 00000 n 
+0000183110 00000 n 
+0000183276 00000 n 
+0000183442 00000 n 
+0000183608 00000 n 
+0000183762 00000 n 
+0000183922 00000 n 
+0000184082 00000 n 
+0000184248 00000 n 
+0000184414 00000 n 
+0000184574 00000 n 
+0000184740 00000 n 
+0000184906 00000 n 
+0000185070 00000 n 
+0000185236 00000 n 
+0000185402 00000 n 
+0000185568 00000 n 
+0000185733 00000 n 
+0000185898 00000 n 
+0000186064 00000 n 
+0000186217 00000 n 
+0000188337 00000 n 
+0000186375 00000 n 
+0000179000 00000 n 
+0000177699 00000 n 
+0000188498 00000 n 
+0000188664 00000 n 
+0000188830 00000 n 
+0000188991 00000 n 
+0000189157 00000 n 
+0000189323 00000 n 
+0000189488 00000 n 
+0000189653 00000 n 
+0000189819 00000 n 
+0000189985 00000 n 
+0000190151 00000 n 
+0000190317 00000 n 
+0000190483 00000 n 
+0000190644 00000 n 
+0000190810 00000 n 
+0000190964 00000 n 
+0000191125 00000 n 
+0000191286 00000 n 
+0000191452 00000 n 
+0000191618 00000 n 
+0000191779 00000 n 
+0000191944 00000 n 
+0000192110 00000 n 
+0000192276 00000 n 
+0000192441 00000 n 
+0000192607 00000 n 
+0000192772 00000 n 
+0000192937 00000 n 
+0000193103 00000 n 
+0000193269 00000 n 
+0000193436 00000 n 
+0000193603 00000 n 
+0000193757 00000 n 
+0000193918 00000 n 
+0000194079 00000 n 
+0000194245 00000 n 
+0000194411 00000 n 
+0000194577 00000 n 
+0000194742 00000 n 
+0000194903 00000 n 
+0000195068 00000 n 
+0000197166 00000 n 
+0000195232 00000 n 
+0000187824 00000 n 
+0000186491 00000 n 
+0000197319 00000 n 
+0000197480 00000 n 
+0000197641 00000 n 
+0000197807 00000 n 
+0000197973 00000 n 
+0000198139 00000 n 
+0000198300 00000 n 
+0000198465 00000 n 
+0000198631 00000 n 
+0000198797 00000 n 
+0000198951 00000 n 
+0000199112 00000 n 
+0000199273 00000 n 
+0000199439 00000 n 
+0000199605 00000 n 
+0000199771 00000 n 
+0000199936 00000 n 
+0000200097 00000 n 
+0000200263 00000 n 
+0000200429 00000 n 
+0000200583 00000 n 
+0000200744 00000 n 
+0000200905 00000 n 
+0000201071 00000 n 
+0000201237 00000 n 
+0000201398 00000 n 
+0000201563 00000 n 
+0000201728 00000 n 
+0000201894 00000 n 
+0000202059 00000 n 
+0000202225 00000 n 
+0000202391 00000 n 
+0000202556 00000 n 
+0000202722 00000 n 
+0000202888 00000 n 
+0000203055 00000 n 
+0000203222 00000 n 
+0000203383 00000 n 
+0000203549 00000 n 
+0000203715 00000 n 
+0000203880 00000 n 
+0000205988 00000 n 
+0000204032 00000 n 
+0000196653 00000 n 
+0000195362 00000 n 
+0000206149 00000 n 
+0000206310 00000 n 
+0000206476 00000 n 
+0000206642 00000 n 
+0000206803 00000 n 
+0000206969 00000 n 
+0000207134 00000 n 
+0000207299 00000 n 
+0000207465 00000 n 
+0000207619 00000 n 
+0000207776 00000 n 
+0000207937 00000 n 
+0000208103 00000 n 
+0000208269 00000 n 
+0000208430 00000 n 
+0000208595 00000 n 
+0000208760 00000 n 
+0000208926 00000 n 
+0000209079 00000 n 
+0000209238 00000 n 
+0000209399 00000 n 
+0000209564 00000 n 
+0000209729 00000 n 
+0000209894 00000 n 
+0000210060 00000 n 
+0000210221 00000 n 
+0000210386 00000 n 
+0000210551 00000 n 
+0000210717 00000 n 
+0000210883 00000 n 
+0000211049 00000 n 
+0000211210 00000 n 
+0000211376 00000 n 
+0000211542 00000 n 
+0000211695 00000 n 
+0000211856 00000 n 
+0000212017 00000 n 
+0000212182 00000 n 
+0000212347 00000 n 
+0000212508 00000 n 
+0000212673 00000 n 
+0000214626 00000 n 
+0000212837 00000 n 
+0000205475 00000 n 
+0000204162 00000 n 
+0000214791 00000 n 
+0000214957 00000 n 
+0000215122 00000 n 
+0000215288 00000 n 
+0000215454 00000 n 
+0000215620 00000 n 
+0000215785 00000 n 
+0000215950 00000 n 
+0000216117 00000 n 
+0000216284 00000 n 
+0000216451 00000 n 
+0000216618 00000 n 
+0000216785 00000 n 
+0000216946 00000 n 
+0000217112 00000 n 
+0000217278 00000 n 
+0000217444 00000 n 
+0000217595 00000 n 
+0000217747 00000 n 
+0000217900 00000 n 
+0000218060 00000 n 
+0000218225 00000 n 
+0000218377 00000 n 
+0000218530 00000 n 
+0000218690 00000 n 
+0000218855 00000 n 
+0000219008 00000 n 
+0000219160 00000 n 
+0000219313 00000 n 
+0000219466 00000 n 
+0000219619 00000 n 
+0000219773 00000 n 
+0000219934 00000 n 
+0000220100 00000 n 
+0000220254 00000 n 
+0000220408 00000 n 
+0000220569 00000 n 
+0000220735 00000 n 
+0000220889 00000 n 
+0000221043 00000 n 
+0000222941 00000 n 
+0000221201 00000 n 
+0000214122 00000 n 
+0000212967 00000 n 
+0002098905 00000 n 
+0000223107 00000 n 
+0000223261 00000 n 
+0000223415 00000 n 
+0000223576 00000 n 
+0000223742 00000 n 
+0000223896 00000 n 
+0000224050 00000 n 
+0000224204 00000 n 
+0000224357 00000 n 
+0000224511 00000 n 
+0000224665 00000 n 
+0000224819 00000 n 
+0000224973 00000 n 
+0000225127 00000 n 
+0000225281 00000 n 
+0000225442 00000 n 
+0000225607 00000 n 
+0000225761 00000 n 
+0000225915 00000 n 
+0000226067 00000 n 
+0000226221 00000 n 
+0000226375 00000 n 
+0000226529 00000 n 
+0000226683 00000 n 
+0000226837 00000 n 
+0000226991 00000 n 
+0000227145 00000 n 
+0000227298 00000 n 
+0000227452 00000 n 
+0000227606 00000 n 
+0000227760 00000 n 
+0000227914 00000 n 
+0000228068 00000 n 
+0000228222 00000 n 
+0000228376 00000 n 
+0000228530 00000 n 
+0000228684 00000 n 
+0000228838 00000 n 
+0000228991 00000 n 
+0000229152 00000 n 
+0000229317 00000 n 
+0000231356 00000 n 
+0000229480 00000 n 
+0000222428 00000 n 
+0000221289 00000 n 
+0000231509 00000 n 
+0000231663 00000 n 
+0000231816 00000 n 
+0000231970 00000 n 
+0000232124 00000 n 
+0000232278 00000 n 
+0000232431 00000 n 
+0000232584 00000 n 
+0000232737 00000 n 
+0000232891 00000 n 
+0000233040 00000 n 
+0000233194 00000 n 
+0000233348 00000 n 
+0000233502 00000 n 
+0000233663 00000 n 
+0000233828 00000 n 
+0000233993 00000 n 
+0000234158 00000 n 
+0000234312 00000 n 
+0000234465 00000 n 
+0000234619 00000 n 
+0000234773 00000 n 
+0000234927 00000 n 
+0000235079 00000 n 
+0000235233 00000 n 
+0000235387 00000 n 
+0000235548 00000 n 
+0000235713 00000 n 
+0000235879 00000 n 
+0000236045 00000 n 
+0000236211 00000 n 
+0000236377 00000 n 
+0000236543 00000 n 
+0000236707 00000 n 
+0000236861 00000 n 
+0000237015 00000 n 
+0000237169 00000 n 
+0000237322 00000 n 
+0000237475 00000 n 
+0000237629 00000 n 
+0000237782 00000 n 
+0000239382 00000 n 
+0000237933 00000 n 
+0000230843 00000 n 
+0000229568 00000 n 
+0000239536 00000 n 
+0000239690 00000 n 
+0000239844 00000 n 
+0000239998 00000 n 
+0000240151 00000 n 
+0000240305 00000 n 
+0000240459 00000 n 
+0000240612 00000 n 
+0000240765 00000 n 
+0000240918 00000 n 
+0000241067 00000 n 
+0000241221 00000 n 
+0000241375 00000 n 
+0000241529 00000 n 
+0000241683 00000 n 
+0000241837 00000 n 
+0000241991 00000 n 
+0000242145 00000 n 
+0000242305 00000 n 
+0000242471 00000 n 
+0000242625 00000 n 
+0000242779 00000 n 
+0000242933 00000 n 
+0000243088 00000 n 
+0000243243 00000 n 
+0000243398 00000 n 
+0000243552 00000 n 
+0000243706 00000 n 
+0000243861 00000 n 
+0000244014 00000 n 
+0000238977 00000 n 
+0000238035 00000 n 
+0000245621 00000 n 
+0000245782 00000 n 
+0000245943 00000 n 
+0000246104 00000 n 
+0000246263 00000 n 
+0000246637 00000 n 
+0000250762 00000 n 
+0000251160 00000 n 
+0000247384 00000 n 
+0000245423 00000 n 
+0000244102 00000 n 
+0000246824 00000 n 
+0002096553 00000 n 
+0000246947 00000 n 
+0000247010 00000 n 
+0000246451 00000 n 
+0000247073 00000 n 
+0000247197 00000 n 
+0000247321 00000 n 
+0000316198 00000 n 
+0000331480 00000 n 
+0000323228 00000 n 
+0000251343 00000 n 
+0000251525 00000 n 
+0000251989 00000 n 
+0000253828 00000 n 
+0000250564 00000 n 
+0000247500 00000 n 
+0000252139 00000 n 
+0000252263 00000 n 
+0002090697 00000 n 
+0002086503 00000 n 
+0000250962 00000 n 
+0000252326 00000 n 
+0000252389 00000 n 
+0000252452 00000 n 
+0000252514 00000 n 
+0000252577 00000 n 
+0000252640 00000 n 
+0002098451 00000 n 
+0000252703 00000 n 
+0000252766 00000 n 
+0000252829 00000 n 
+0000252892 00000 n 
+0000252955 00000 n 
+0000253017 00000 n 
+0000253080 00000 n 
+0000253203 00000 n 
+0000253266 00000 n 
+0000253329 00000 n 
+0000253392 00000 n 
+0000253455 00000 n 
+0000253516 00000 n 
+0000253579 00000 n 
+0000251757 00000 n 
+0000253641 00000 n 
+0000253765 00000 n 
+0001756301 00000 n 
+0000254808 00000 n 
+0000254561 00000 n 
+0000254000 00000 n 
+0000254684 00000 n 
+0002099031 00000 n 
+0000255385 00000 n 
+0000255199 00000 n 
+0000254910 00000 n 
+0000255322 00000 n 
+0000002979 00000 f 
+0000257675 00000 n 
+0000002981 00000 f 
+0000257841 00000 n 
+0000002983 00000 f 
+0000258011 00000 n 
+0000002984 00000 f 
+0000002987 00000 f 
+0000258214 00000 n 
+0000258417 00000 n 
+0000002989 00000 f 
+0000258586 00000 n 
+0000002991 00000 f 
+0000258785 00000 n 
+0000002995 00000 f 
+0000258987 00000 n 
+0000259154 00000 n 
+0000259314 00000 n 
+0000002999 00000 f 
+0000259482 00000 n 
+0000259650 00000 n 
+0000259810 00000 n 
+0000003004 00000 f 
+0000259978 00000 n 
+0000260183 00000 n 
+0000260353 00000 n 
+0000260524 00000 n 
+0000003008 00000 f 
+0000260691 00000 n 
+0000260860 00000 n 
+0000261020 00000 n 
+0000003010 00000 f 
+0000261188 00000 n 
+0000003868 00000 f 
+0000261392 00000 n 
+0000261596 00000 n 
+0000261764 00000 n 
+0000261933 00000 n 
+0000263039 00000 n 
+0000257315 00000 n 
+0000255459 00000 n 
+0000262098 00000 n 
+0000262222 00000 n 
+0000262285 00000 n 
+0000262348 00000 n 
+0000262411 00000 n 
+0000262474 00000 n 
+0000262537 00000 n 
+0000262600 00000 n 
+0000262663 00000 n 
+0000262726 00000 n 
+0000262788 00000 n 
+0000262851 00000 n 
+0000262914 00000 n 
+0000262977 00000 n 
+0000925025 00000 n 
+0000813667 00000 n 
+0000531886 00000 n 
+0000531698 00000 n 
+0000499579 00000 n 
+0000558126 00000 n 
+0000618357 00000 n 
+0000721924 00000 n 
+0000764013 00000 n 
+0000802705 00000 n 
+0000970569 00000 n 
+0000607070 00000 n 
+0001042024 00000 n 
+0001016206 00000 n 
+0000263660 00000 n 
+0000263474 00000 n 
+0000263183 00000 n 
+0000263597 00000 n 
+0000264570 00000 n 
+0000264730 00000 n 
+0000264885 00000 n 
+0000265045 00000 n 
+0000265200 00000 n 
+0000265356 00000 n 
+0000265511 00000 n 
+0000265671 00000 n 
+0000265826 00000 n 
+0000265985 00000 n 
+0000266139 00000 n 
+0000266297 00000 n 
+0000266637 00000 n 
+0000264327 00000 n 
+0000263734 00000 n 
+0000266452 00000 n 
+0000323415 00000 n 
+0000331292 00000 n 
+0000386440 00000 n 
+0000267221 00000 n 
+0000267035 00000 n 
+0000266739 00000 n 
+0000267158 00000 n 
+0000268972 00000 n 
+0000269127 00000 n 
+0000269282 00000 n 
+0000269437 00000 n 
+0000269592 00000 n 
+0000269747 00000 n 
+0000269902 00000 n 
+0000270057 00000 n 
+0000270212 00000 n 
+0000270368 00000 n 
+0000270524 00000 n 
+0000270680 00000 n 
+0000270834 00000 n 
+0000270990 00000 n 
+0000271145 00000 n 
+0000271301 00000 n 
+0000271456 00000 n 
+0000271612 00000 n 
+0000271767 00000 n 
+0000271923 00000 n 
+0000272079 00000 n 
+0000272235 00000 n 
+0000272391 00000 n 
+0000272544 00000 n 
+0000272700 00000 n 
+0000272856 00000 n 
+0000273012 00000 n 
+0000273353 00000 n 
+0000268594 00000 n 
+0000267295 00000 n 
+0000273168 00000 n 
+0002099157 00000 n 
+0000273958 00000 n 
+0000273772 00000 n 
+0000273469 00000 n 
+0000273895 00000 n 
+0000276033 00000 n 
+0000276201 00000 n 
+0000276360 00000 n 
+0000276529 00000 n 
+0000276684 00000 n 
+0000276858 00000 n 
+0000277019 00000 n 
+0000277174 00000 n 
+0000277346 00000 n 
+0000277505 00000 n 
+0000277674 00000 n 
+0000277846 00000 n 
+0000278001 00000 n 
+0000278171 00000 n 
+0000278342 00000 n 
+0000278497 00000 n 
+0000278694 00000 n 
+0000278848 00000 n 
+0000279045 00000 n 
+0000279199 00000 n 
+0000279367 00000 n 
+0000279526 00000 n 
+0000279695 00000 n 
+0000279848 00000 n 
+0000280013 00000 n 
+0000280173 00000 n 
+0000280338 00000 n 
+0000280493 00000 n 
+0000280663 00000 n 
+0000280823 00000 n 
+0000280992 00000 n 
+0000281162 00000 n 
+0000281317 00000 n 
+0000281484 00000 n 
+0000281643 00000 n 
+0000281811 00000 n 
+0000281980 00000 n 
+0000282136 00000 n 
+0000282303 00000 n 
+0000282473 00000 n 
+0000282644 00000 n 
+0000282813 00000 n 
+0000282969 00000 n 
+0000283137 00000 n 
+0000283306 00000 n 
+0000283462 00000 n 
+0000283629 00000 n 
+0000283797 00000 n 
+0000283953 00000 n 
+0000284132 00000 n 
+0000284293 00000 n 
+0000284449 00000 n 
+0000284616 00000 n 
+0000284784 00000 n 
+0000284940 00000 n 
+0000285110 00000 n 
+0000285280 00000 n 
+0000285436 00000 n 
+0000285606 00000 n 
+0000285766 00000 n 
+0000285935 00000 n 
+0000286090 00000 n 
+0000286252 00000 n 
+0000286417 00000 n 
+0000287927 00000 n 
+0000288110 00000 n 
+0000288276 00000 n 
+0000288443 00000 n 
+0000288598 00000 n 
+0000288787 00000 n 
+0000288953 00000 n 
+0000286756 00000 n 
+0000275322 00000 n 
+0000274032 00000 n 
+0000286571 00000 n 
+0000395055 00000 n 
+0000407921 00000 n 
+0000435815 00000 n 
+0000446234 00000 n 
+0000465437 00000 n 
+0000479333 00000 n 
+0000551945 00000 n 
+0000572828 00000 n 
+0000585227 00000 n 
+0000647612 00000 n 
+0000699415 00000 n 
+0000713598 00000 n 
+0000841026 00000 n 
+0000289108 00000 n 
+0000289277 00000 n 
+0000289437 00000 n 
+0000289606 00000 n 
+0000289761 00000 n 
+0000289927 00000 n 
+0000290094 00000 n 
+0000290249 00000 n 
+0000290416 00000 n 
+0000290584 00000 n 
+0000290740 00000 n 
+0000290903 00000 n 
+0000291064 00000 n 
+0000291230 00000 n 
+0000291386 00000 n 
+0000291554 00000 n 
+0000291722 00000 n 
+0000291941 00000 n 
+0000287576 00000 n 
+0000286872 00000 n 
+0000291878 00000 n 
+0000856013 00000 n 
+0000862795 00000 n 
+0000880709 00000 n 
+0000933649 00000 n 
+0000945975 00000 n 
+0000293885 00000 n 
+0000294058 00000 n 
+0000294213 00000 n 
+0000294384 00000 n 
+0000294539 00000 n 
+0000294705 00000 n 
+0000294861 00000 n 
+0000295025 00000 n 
+0000295181 00000 n 
+0000295344 00000 n 
+0000295500 00000 n 
+0000295665 00000 n 
+0000295821 00000 n 
+0000295980 00000 n 
+0000296136 00000 n 
+0000296293 00000 n 
+0000296449 00000 n 
+0000296615 00000 n 
+0000296771 00000 n 
+0000296929 00000 n 
+0000297085 00000 n 
+0000297241 00000 n 
+0000297397 00000 n 
+0000297553 00000 n 
+0000297707 00000 n 
+0000297860 00000 n 
+0000298015 00000 n 
+0000298177 00000 n 
+0000298332 00000 n 
+0000298498 00000 n 
+0000298653 00000 n 
+0000298808 00000 n 
+0000298963 00000 n 
+0000299116 00000 n 
+0000299271 00000 n 
+0000299427 00000 n 
+0000299583 00000 n 
+0000299736 00000 n 
+0000299892 00000 n 
+0000300058 00000 n 
+0000300214 00000 n 
+0000300372 00000 n 
+0000300528 00000 n 
+0000300685 00000 n 
+0000300841 00000 n 
+0000300998 00000 n 
+0000301154 00000 n 
+0000301309 00000 n 
+0000301465 00000 n 
+0000301619 00000 n 
+0000301775 00000 n 
+0000301927 00000 n 
+0000302083 00000 n 
+0000302239 00000 n 
+0000302395 00000 n 
+0000302548 00000 n 
+0000302704 00000 n 
+0000302862 00000 n 
+0000303018 00000 n 
+0000303173 00000 n 
+0000303329 00000 n 
+0000303491 00000 n 
+0000303647 00000 n 
+0000303806 00000 n 
+0000303962 00000 n 
+0000304117 00000 n 
+0000304272 00000 n 
+0000304424 00000 n 
+0000304578 00000 n 
+0000304734 00000 n 
+0000306320 00000 n 
+0000306477 00000 n 
+0000306633 00000 n 
+0000306788 00000 n 
+0000306944 00000 n 
+0000307097 00000 n 
+0000307253 00000 n 
+0000307406 00000 n 
+0000305073 00000 n 
+0000293120 00000 n 
+0000292043 00000 n 
+0000304888 00000 n 
+0001044890 00000 n 
+0001066337 00000 n 
+0001085705 00000 n 
+0001101487 00000 n 
+0001107638 00000 n 
+0001115487 00000 n 
+0001116872 00000 n 
+0001153142 00000 n 
+0001090035 00000 n 
+0001162836 00000 n 
+0001196487 00000 n 
+0001205261 00000 n 
+0001208903 00000 n 
+0001216248 00000 n 
+0001094376 00000 n 
+0001233553 00000 n 
+0001242877 00000 n 
+0001249764 00000 n 
+0001258286 00000 n 
+0001096011 00000 n 
+0001267023 00000 n 
+0001272024 00000 n 
+0001343368 00000 n 
+0001366854 00000 n 
+0001386551 00000 n 
+0001395535 00000 n 
+0001403564 00000 n 
+0001414321 00000 n 
+0001465171 00000 n 
+0001486836 00000 n 
+0001514143 00000 n 
+0001549860 00000 n 
+0001562760 00000 n 
+0001577786 00000 n 
+0001586902 00000 n 
+0000307561 00000 n 
+0000307713 00000 n 
+0000307868 00000 n 
+0000308022 00000 n 
+0000308177 00000 n 
+0000308340 00000 n 
+0000308495 00000 n 
+0000308652 00000 n 
+0000308807 00000 n 
+0000308962 00000 n 
+0000309117 00000 n 
+0000309270 00000 n 
+0000309426 00000 n 
+0000309585 00000 n 
+0000309741 00000 n 
+0000309898 00000 n 
+0000310055 00000 n 
+0000310225 00000 n 
+0000310380 00000 n 
+0000310549 00000 n 
+0000310704 00000 n 
+0000310868 00000 n 
+0000311024 00000 n 
+0000311182 00000 n 
+0000311339 00000 n 
+0000311496 00000 n 
+0000311716 00000 n 
+0000305879 00000 n 
+0000305175 00000 n 
+0000311653 00000 n 
+0001587221 00000 n 
+0001628548 00000 n 
+0001647537 00000 n 
+0001668714 00000 n 
+0001683491 00000 n 
+0001695639 00000 n 
+0001223491 00000 n 
+0001698393 00000 n 
+0001698715 00000 n 
+0001774031 00000 n 
+0001792174 00000 n 
+0001064135 00000 n 
+0001079279 00000 n 
+0001100167 00000 n 
+0001800610 00000 n 
+0001801447 00000 n 
+0000312934 00000 n 
+0000313104 00000 n 
+0000313263 00000 n 
+0000313433 00000 n 
+0000313601 00000 n 
+0000313769 00000 n 
+0000313964 00000 n 
+0000314120 00000 n 
+0000314314 00000 n 
+0000314473 00000 n 
+0000314666 00000 n 
+0000314826 00000 n 
+0000315021 00000 n 
+0000315181 00000 n 
+0000315376 00000 n 
+0000315536 00000 n 
+0000315731 00000 n 
+0000315906 00000 n 
+0000318086 00000 n 
+0000318281 00000 n 
+0000318442 00000 n 
+0000318619 00000 n 
+0000316694 00000 n 
+0000312637 00000 n 
+0000311804 00000 n 
+0000316074 00000 n 
+0000316322 00000 n 
+0000316385 00000 n 
+0000316509 00000 n 
+0000316632 00000 n 
+0002099283 00000 n 
+0000322857 00000 n 
+0000322980 00000 n 
+0000323104 00000 n 
+0001223302 00000 n 
+0001222357 00000 n 
+0000318789 00000 n 
+0000318983 00000 n 
+0000319144 00000 n 
+0000319321 00000 n 
+0000319491 00000 n 
+0000319683 00000 n 
+0000319844 00000 n 
+0000320021 00000 n 
+0000320191 00000 n 
+0000320386 00000 n 
+0000320547 00000 n 
+0000320723 00000 n 
+0000320892 00000 n 
+0000321067 00000 n 
+0000321227 00000 n 
+0000321398 00000 n 
+0000321558 00000 n 
+0000321728 00000 n 
+0000321898 00000 n 
+0000322078 00000 n 
+0000322237 00000 n 
+0000322406 00000 n 
+0000322564 00000 n 
+0000325052 00000 n 
+0000325220 00000 n 
+0000325387 00000 n 
+0000325555 00000 n 
+0000323477 00000 n 
+0000317708 00000 n 
+0000316824 00000 n 
+0000322733 00000 n 
+0000323352 00000 n 
+0001223176 00000 n 
+0001222798 00000 n 
+0001222924 00000 n 
+0001223050 00000 n 
+0000325722 00000 n 
+0000325892 00000 n 
+0000326062 00000 n 
+0000326260 00000 n 
+0000326458 00000 n 
+0000326627 00000 n 
+0000326786 00000 n 
+0000326954 00000 n 
+0000327120 00000 n 
+0000327280 00000 n 
+0000327446 00000 n 
+0000327613 00000 n 
+0000327782 00000 n 
+0000327952 00000 n 
+0000328121 00000 n 
+0000328291 00000 n 
+0000328460 00000 n 
+0000328628 00000 n 
+0000328795 00000 n 
+0000328965 00000 n 
+0000329135 00000 n 
+0000329302 00000 n 
+0000329468 00000 n 
+0000329652 00000 n 
+0000329817 00000 n 
+0000329983 00000 n 
+0000330173 00000 n 
+0000330340 00000 n 
+0000330505 00000 n 
+0000330665 00000 n 
+0000330831 00000 n 
+0000331001 00000 n 
+0000334142 00000 n 
+0000334337 00000 n 
+0000334497 00000 n 
+0000334691 00000 n 
+0000334851 00000 n 
+0000335046 00000 n 
+0000331668 00000 n 
+0000324593 00000 n 
+0000323593 00000 n 
+0000331167 00000 n 
+0000331417 00000 n 
+0000331605 00000 n 
+0000335206 00000 n 
+0000335400 00000 n 
+0000335560 00000 n 
+0000335726 00000 n 
+0000335920 00000 n 
+0000336079 00000 n 
+0000336245 00000 n 
+0000336411 00000 n 
+0000336606 00000 n 
+0000336766 00000 n 
+0000336932 00000 n 
+0000337126 00000 n 
+0000337286 00000 n 
+0000337480 00000 n 
+0000337649 00000 n 
+0000337843 00000 n 
+0000338038 00000 n 
+0000338198 00000 n 
+0000338393 00000 n 
+0000338587 00000 n 
+0000338782 00000 n 
+0000338977 00000 n 
+0000339172 00000 n 
+0000339367 00000 n 
+0000339560 00000 n 
+0000339753 00000 n 
+0000339948 00000 n 
+0000340143 00000 n 
+0000340338 00000 n 
+0000340533 00000 n 
+0000340728 00000 n 
+0000340923 00000 n 
+0000341118 00000 n 
+0000341313 00000 n 
+0000341520 00000 n 
+0000341715 00000 n 
+0000341910 00000 n 
+0000342105 00000 n 
+0000342299 00000 n 
+0000342494 00000 n 
+0000342689 00000 n 
+0000342883 00000 n 
+0000343077 00000 n 
+0000343271 00000 n 
+0000343466 00000 n 
+0000343660 00000 n 
+0000343855 00000 n 
+0000344049 00000 n 
+0000344256 00000 n 
+0000344450 00000 n 
+0000344644 00000 n 
+0000344851 00000 n 
+0000345046 00000 n 
+0000345241 00000 n 
+0000345448 00000 n 
+0000345643 00000 n 
+0000345850 00000 n 
+0000346044 00000 n 
+0000346209 00000 n 
+0000346374 00000 n 
+0000346539 00000 n 
+0000346731 00000 n 
+0000346895 00000 n 
+0000347059 00000 n 
+0000348834 00000 n 
+0000347411 00000 n 
+0000333377 00000 n 
+0000331784 00000 n 
+0000347222 00000 n 
+0000347285 00000 n 
+0000347348 00000 n 
+0002087449 00000 n 
+0000352969 00000 n 
+0000352720 00000 n 
+0000352471 00000 n 
+0000357489 00000 n 
+0000352844 00000 n 
+0000357612 00000 n 
+0000352596 00000 n 
+0000368294 00000 n 
+0000357799 00000 n 
+0000362903 00000 n 
+0000362778 00000 n 
+0000368169 00000 n 
+0000363153 00000 n 
+0000363028 00000 n 
+0000363403 00000 n 
+0000363278 00000 n 
+0000372441 00000 n 
+0000380896 00000 n 
+0001045142 00000 n 
+0000376736 00000 n 
+0000376985 00000 n 
+0000376860 00000 n 
+0000380771 00000 n 
+0000377358 00000 n 
+0000377235 00000 n 
+0000377110 00000 n 
+0000381272 00000 n 
+0000385816 00000 n 
+0000385940 00000 n 
+0000386315 00000 n 
+0000386190 00000 n 
+0000386065 00000 n 
+0000381147 00000 n 
+0000372253 00000 n 
+0000368482 00000 n 
+0000348992 00000 n 
+0000349186 00000 n 
+0000349345 00000 n 
+0000349522 00000 n 
+0000349692 00000 n 
+0000349887 00000 n 
+0000350047 00000 n 
+0000350224 00000 n 
+0000350394 00000 n 
+0000350589 00000 n 
+0000350749 00000 n 
+0000350909 00000 n 
+0000351086 00000 n 
+0000351256 00000 n 
+0000351422 00000 n 
+0000351615 00000 n 
+0000351781 00000 n 
+0000351940 00000 n 
+0000352116 00000 n 
+0000354579 00000 n 
+0000354774 00000 n 
+0000354935 00000 n 
+0000355111 00000 n 
+0000355280 00000 n 
+0000355474 00000 n 
+0000355633 00000 n 
+0000355810 00000 n 
+0000353031 00000 n 
+0000348519 00000 n 
+0000347555 00000 n 
+0000352284 00000 n 
+0001232797 00000 n 
+0001232041 00000 n 
+0001233301 00000 n 
+0001232671 00000 n 
+0001233049 00000 n 
+0000355980 00000 n 
+0000356146 00000 n 
+0000356340 00000 n 
+0000356506 00000 n 
+0000356667 00000 n 
+0000356844 00000 n 
+0000357014 00000 n 
+0000357207 00000 n 
+0000357986 00000 n 
+0000354300 00000 n 
+0000353147 00000 n 
+0000357364 00000 n 
+0000357923 00000 n 
+0001232545 00000 n 
+0001232923 00000 n 
+0001233175 00000 n 
+0000359250 00000 n 
+0000359441 00000 n 
+0000359636 00000 n 
+0000359806 00000 n 
+0000359969 00000 n 
+0000360162 00000 n 
+0000360357 00000 n 
+0000360527 00000 n 
+0000360690 00000 n 
+0000360883 00000 n 
+0000361078 00000 n 
+0000361247 00000 n 
+0000361410 00000 n 
+0000361603 00000 n 
+0000361798 00000 n 
+0000361968 00000 n 
+0000362131 00000 n 
+0000362325 00000 n 
+0000362520 00000 n 
+0000365573 00000 n 
+0000365767 00000 n 
+0000365962 00000 n 
+0000366157 00000 n 
+0000366351 00000 n 
+0000363465 00000 n 
+0000358944 00000 n 
+0000358130 00000 n 
+0000362715 00000 n 
+0002099409 00000 n 
+0001412000 00000 n 
+0001411307 00000 n 
+0001411622 00000 n 
+0001413314 00000 n 
+0001412877 00000 n 
+0000366546 00000 n 
+0000366715 00000 n 
+0000366883 00000 n 
+0000367052 00000 n 
+0000367214 00000 n 
+0000367380 00000 n 
+0000367546 00000 n 
+0000367712 00000 n 
+0000367879 00000 n 
+0000368670 00000 n 
+0000365312 00000 n 
+0000363595 00000 n 
+0000368044 00000 n 
+0002091849 00000 n 
+0002094655 00000 n 
+0000368419 00000 n 
+0000368607 00000 n 
+0001386299 00000 n 
+0001374773 00000 n 
+0000370703 00000 n 
+0000370871 00000 n 
+0000371032 00000 n 
+0000371197 00000 n 
+0000371363 00000 n 
+0000371529 00000 n 
+0000371696 00000 n 
+0000371861 00000 n 
+0000372029 00000 n 
+0000372692 00000 n 
+0000370487 00000 n 
+0000368856 00000 n 
+0000372190 00000 n 
+0000372378 00000 n 
+0000372566 00000 n 
+0000372629 00000 n 
+0001682779 00000 n 
+0001668842 00000 n 
+0001682000 00000 n 
+0000374083 00000 n 
+0000374278 00000 n 
+0000374453 00000 n 
+0000374622 00000 n 
+0000374817 00000 n 
+0000374993 00000 n 
+0000375162 00000 n 
+0000375357 00000 n 
+0000375533 00000 n 
+0000375702 00000 n 
+0000375897 00000 n 
+0000376092 00000 n 
+0000376287 00000 n 
+0000376481 00000 n 
+0000379170 00000 n 
+0000379365 00000 n 
+0000379560 00000 n 
+0000379754 00000 n 
+0000377420 00000 n 
+0000373822 00000 n 
+0000372864 00000 n 
+0000376673 00000 n 
+0001535421 00000 n 
+0001526666 00000 n 
+0001536199 00000 n 
+0001535810 00000 n 
+0000379949 00000 n 
+0000380110 00000 n 
+0000380303 00000 n 
+0000380478 00000 n 
+0000382715 00000 n 
+0000381334 00000 n 
+0000378963 00000 n 
+0000377578 00000 n 
+0000380646 00000 n 
+0000381021 00000 n 
+0000381084 00000 n 
+0001549606 00000 n 
+0000382909 00000 n 
+0000383085 00000 n 
+0000383254 00000 n 
+0000383447 00000 n 
+0000383623 00000 n 
+0000383792 00000 n 
+0000383987 00000 n 
+0000384163 00000 n 
+0000384332 00000 n 
+0000384525 00000 n 
+0000384720 00000 n 
+0000384914 00000 n 
+0000385108 00000 n 
+0000385303 00000 n 
+0000385498 00000 n 
+0000387357 00000 n 
+0000387526 00000 n 
+0000387684 00000 n 
+0000387852 00000 n 
+0000388025 00000 n 
+0000388183 00000 n 
+0000388351 00000 n 
+0000386502 00000 n 
+0000382436 00000 n 
+0000381506 00000 n 
+0000385691 00000 n 
+0001538268 00000 n 
+0001538722 00000 n 
+0001539111 00000 n 
+0000388524 00000 n 
+0000388693 00000 n 
+0000388851 00000 n 
+0000389019 00000 n 
+0000389375 00000 n 
+0000387123 00000 n 
+0000386646 00000 n 
+0000389188 00000 n 
+0000389313 00000 n 
+0002099535 00000 n 
+0000389961 00000 n 
+0000389775 00000 n 
+0000389477 00000 n 
+0000389898 00000 n 
+0000391520 00000 n 
+0000391675 00000 n 
+0000391842 00000 n 
+0000392044 00000 n 
+0000392246 00000 n 
+0000392449 00000 n 
+0000392607 00000 n 
+0000392809 00000 n 
+0000392968 00000 n 
+0000393170 00000 n 
+0000393372 00000 n 
+0000393573 00000 n 
+0000393774 00000 n 
+0000393946 00000 n 
+0000394115 00000 n 
+0000394271 00000 n 
+0000394439 00000 n 
+0000394599 00000 n 
+0000394768 00000 n 
+0000397129 00000 n 
+0000397286 00000 n 
+0000395305 00000 n 
+0000391214 00000 n 
+0000390035 00000 n 
+0000394930 00000 n 
+0000395180 00000 n 
+0000398750 00000 n 
+0000398938 00000 n 
+0000399125 00000 n 
+0000402899 00000 n 
+0000403087 00000 n 
+0000403274 00000 n 
+0000407796 00000 n 
+0000402712 00000 n 
+0001793468 00000 n 
+0001792430 00000 n 
+0000397453 00000 n 
+0000397626 00000 n 
+0000397792 00000 n 
+0000397965 00000 n 
+0000398131 00000 n 
+0000398290 00000 n 
+0000398461 00000 n 
+0000399313 00000 n 
+0000396913 00000 n 
+0000395463 00000 n 
+0000398625 00000 n 
+0000398875 00000 n 
+0000399250 00000 n 
+0001774546 00000 n 
+0001774159 00000 n 
+0001775708 00000 n 
+0001776812 00000 n 
+0000400970 00000 n 
+0000003869 00000 f 
+0000004164 00000 f 
+0000401143 00000 n 
+0000401316 00000 n 
+0000401489 00000 n 
+0000401655 00000 n 
+0000401814 00000 n 
+0000401986 00000 n 
+0000402152 00000 n 
+0000402311 00000 n 
+0000402483 00000 n 
+0000403336 00000 n 
+0000400745 00000 n 
+0000399485 00000 n 
+0000402649 00000 n 
+0000402837 00000 n 
+0000403024 00000 n 
+0002092763 00000 n 
+0000403211 00000 n 
+0001791723 00000 n 
+0001782398 00000 n 
+0001785387 00000 n 
+0000405160 00000 n 
+0000405319 00000 n 
+0000405491 00000 n 
+0000405656 00000 n 
+0000405814 00000 n 
+0000405972 00000 n 
+0000406143 00000 n 
+0000406307 00000 n 
+0000406464 00000 n 
+0000406623 00000 n 
+0000406781 00000 n 
+0000406988 00000 n 
+0000407195 00000 n 
+0000407402 00000 n 
+0000409891 00000 n 
+0000410098 00000 n 
+0000410257 00000 n 
+0000410465 00000 n 
+0000410626 00000 n 
+0000410835 00000 n 
+0000408109 00000 n 
+0000404899 00000 n 
+0000403494 00000 n 
+0000407608 00000 n 
+0000407733 00000 n 
+0000408046 00000 n 
+0001785711 00000 n 
+0001800221 00000 n 
+0000414592 00000 n 
+0000414717 00000 n 
+0000417505 00000 n 
+0000417691 00000 n 
+0000410996 00000 n 
+0000411205 00000 n 
+0000411366 00000 n 
+0000411575 00000 n 
+0000411784 00000 n 
+0000411943 00000 n 
+0000412152 00000 n 
+0000412361 00000 n 
+0000412570 00000 n 
+0000412779 00000 n 
+0000412988 00000 n 
+0000413197 00000 n 
+0000413406 00000 n 
+0000413615 00000 n 
+0000413800 00000 n 
+0000413978 00000 n 
+0000414164 00000 n 
+0000414779 00000 n 
+0000409549 00000 n 
+0000408309 00000 n 
+0000414342 00000 n 
+0000414405 00000 n 
+0002099661 00000 n 
+0000421796 00000 n 
+0000426977 00000 n 
+0000430726 00000 n 
+0000426727 00000 n 
+0000421546 00000 n 
+0000427102 00000 n 
+0000421921 00000 n 
+0000426602 00000 n 
+0000421671 00000 n 
+0000430602 00000 n 
+0000430851 00000 n 
+0000430976 00000 n 
+0000426852 00000 n 
+0000417877 00000 n 
+0001076759 00000 n 
+0001076255 00000 n 
+0001053824 00000 n 
+0001045268 00000 n 
+0000416217 00000 n 
+0000416404 00000 n 
+0000416584 00000 n 
+0000416771 00000 n 
+0000416951 00000 n 
+0000417137 00000 n 
+0000419488 00000 n 
+0000419649 00000 n 
+0000419834 00000 n 
+0000417940 00000 n 
+0000416028 00000 n 
+0000414909 00000 n 
+0000417317 00000 n 
+0000417442 00000 n 
+0001055021 00000 n 
+0001056399 00000 n 
+0001056649 00000 n 
+0000420011 00000 n 
+0000420172 00000 n 
+0000420357 00000 n 
+0000420535 00000 n 
+0000420720 00000 n 
+0000420898 00000 n 
+0000421058 00000 n 
+0000421243 00000 n 
+0000423703 00000 n 
+0000423864 00000 n 
+0000424049 00000 n 
+0000424227 00000 n 
+0000424412 00000 n 
+0000421984 00000 n 
+0000419254 00000 n 
+0000418126 00000 n 
+0000421421 00000 n 
+0001078586 00000 n 
+0001077452 00000 n 
+0001077956 00000 n 
+0001076948 00000 n 
+0000424590 00000 n 
+0000424750 00000 n 
+0000424935 00000 n 
+0000425113 00000 n 
+0000425298 00000 n 
+0000425475 00000 n 
+0000425634 00000 n 
+0000425795 00000 n 
+0000425956 00000 n 
+0000426117 00000 n 
+0000426300 00000 n 
+0000428705 00000 n 
+0000428889 00000 n 
+0000427164 00000 n 
+0000423424 00000 n 
+0000422100 00000 n 
+0000426477 00000 n 
+0001077704 00000 n 
+0001077830 00000 n 
+0001077326 00000 n 
+0001078460 00000 n 
+0001077074 00000 n 
+0000429067 00000 n 
+0000429228 00000 n 
+0000429413 00000 n 
+0000429591 00000 n 
+0000429752 00000 n 
+0000429937 00000 n 
+0000430115 00000 n 
+0000430300 00000 n 
+0000432788 00000 n 
+0000432949 00000 n 
+0000433133 00000 n 
+0000433310 00000 n 
+0000433480 00000 n 
+0000433653 00000 n 
+0000433808 00000 n 
+0000433975 00000 n 
+0000434147 00000 n 
+0000431039 00000 n 
+0000428480 00000 n 
+0000427280 00000 n 
+0000430477 00000 n 
+0001077578 00000 n 
+0001078082 00000 n 
+0001077200 00000 n 
+0001078208 00000 n 
+0000434354 00000 n 
+0000434559 00000 n 
+0000434765 00000 n 
+0000434969 00000 n 
+0000435176 00000 n 
+0000435335 00000 n 
+0000435516 00000 n 
+0000437721 00000 n 
+0000437926 00000 n 
+0000438109 00000 n 
+0000436190 00000 n 
+0000432509 00000 n 
+0000431155 00000 n 
+0000435690 00000 n 
+0000435939 00000 n 
+0000436002 00000 n 
+0000436065 00000 n 
+0001078334 00000 n 
+0000439492 00000 n 
+0000439679 00000 n 
+0000439804 00000 n 
+0000439992 00000 n 
+0000446109 00000 n 
+0001084833 00000 n 
+0001084329 00000 n 
+0000438285 00000 n 
+0000438469 00000 n 
+0000438647 00000 n 
+0000438832 00000 n 
+0000439009 00000 n 
+0000439191 00000 n 
+0000440117 00000 n 
+0000437505 00000 n 
+0000436334 00000 n 
+0000439367 00000 n 
+0000439929 00000 n 
+0002099787 00000 n 
+0001085020 00000 n 
+0001065017 00000 n 
+0001064513 00000 n 
+0001065332 00000 n 
+0001066088 00000 n 
+0000442107 00000 n 
+0000442290 00000 n 
+0000442466 00000 n 
+0000442634 00000 n 
+0000442805 00000 n 
+0000442974 00000 n 
+0000443178 00000 n 
+0000443382 00000 n 
+0000443586 00000 n 
+0000443781 00000 n 
+0000443988 00000 n 
+0000444193 00000 n 
+0000444398 00000 n 
+0000444602 00000 n 
+0000444796 00000 n 
+0000445001 00000 n 
+0000445205 00000 n 
+0000445372 00000 n 
+0000445576 00000 n 
+0000445781 00000 n 
+0000447720 00000 n 
+0000447889 00000 n 
+0000446422 00000 n 
+0000441792 00000 n 
+0000440317 00000 n 
+0000445984 00000 n 
+0002085556 00000 n 
+0000446359 00000 n 
+0001085144 00000 n 
+0000452094 00000 n 
+0000452282 00000 n 
+0000452470 00000 n 
+0000460522 00000 n 
+0000460397 00000 n 
+0000465125 00000 n 
+0000465312 00000 n 
+0000456523 00000 n 
+0000456335 00000 n 
+0000460771 00000 n 
+0000460647 00000 n 
+0000448235 00000 n 
+0000447567 00000 n 
+0000446595 00000 n 
+0000448047 00000 n 
+0000448172 00000 n 
+0000450204 00000 n 
+0000450375 00000 n 
+0000450538 00000 n 
+0000450707 00000 n 
+0000450878 00000 n 
+0000451042 00000 n 
+0000451211 00000 n 
+0000451382 00000 n 
+0000451546 00000 n 
+0000451713 00000 n 
+0000454645 00000 n 
+0000452595 00000 n 
+0000449979 00000 n 
+0000448365 00000 n 
+0000451906 00000 n 
+0000451969 00000 n 
+0000452219 00000 n 
+0000452407 00000 n 
+0001272905 00000 n 
+0001272276 00000 n 
+0001298250 00000 n 
+0001299132 00000 n 
+0000454805 00000 n 
+0000454976 00000 n 
+0000455140 00000 n 
+0000455310 00000 n 
+0000455481 00000 n 
+0000455645 00000 n 
+0000455814 00000 n 
+0000004165 00000 f 
+0000004501 00000 f 
+0000455981 00000 n 
+0000456711 00000 n 
+0000454429 00000 n 
+0000452767 00000 n 
+0000456147 00000 n 
+0000456210 00000 n 
+0000456460 00000 n 
+0000456648 00000 n 
+0001305633 00000 n 
+0001314284 00000 n 
+0000458320 00000 n 
+0000458491 00000 n 
+0000458655 00000 n 
+0000458824 00000 n 
+0000458992 00000 n 
+0000459163 00000 n 
+0000459326 00000 n 
+0000459496 00000 n 
+0000459667 00000 n 
+0000459831 00000 n 
+0000460002 00000 n 
+0000460171 00000 n 
+0000462764 00000 n 
+0000460833 00000 n 
+0000458077 00000 n 
+0000456883 00000 n 
+0000460334 00000 n 
+0001309538 00000 n 
+0001294480 00000 n 
+0001307648 00000 n 
+0001316608 00000 n 
+0000462935 00000 n 
+0000463106 00000 n 
+0000463270 00000 n 
+0000463438 00000 n 
+0000463606 00000 n 
+0000463777 00000 n 
+0000463941 00000 n 
+0000464134 00000 n 
+0000464305 00000 n 
+0000464510 00000 n 
+0000464681 00000 n 
+0000464845 00000 n 
+0000467525 00000 n 
+0000465499 00000 n 
+0000462512 00000 n 
+0000460991 00000 n 
+0000465000 00000 n 
+0000465249 00000 n 
+0002099913 00000 n 
+0001314907 00000 n 
+0001294604 00000 n 
+0001308026 00000 n 
+0000467757 00000 n 
+0000467987 00000 n 
+0000468219 00000 n 
+0000468414 00000 n 
+0000468621 00000 n 
+0000468854 00000 n 
+0000469086 00000 n 
+0000469319 00000 n 
+0000469513 00000 n 
+0000469746 00000 n 
+0000469977 00000 n 
+0000470143 00000 n 
+0000470374 00000 n 
+0000470607 00000 n 
+0000470840 00000 n 
+0000471011 00000 n 
+0000471175 00000 n 
+0000473327 00000 n 
+0000471970 00000 n 
+0000467228 00000 n 
+0000465671 00000 n 
+0000471344 00000 n 
+0000471469 00000 n 
+0000471594 00000 n 
+0000471657 00000 n 
+0000471782 00000 n 
+0000471907 00000 n 
+0000474991 00000 n 
+0000475552 00000 n 
+0000475428 00000 n 
+0000479085 00000 n 
+0000479209 00000 n 
+0000475303 00000 n 
+0000475178 00000 n 
+0000478960 00000 n 
+0000478835 00000 n 
+0001296864 00000 n 
+0000473496 00000 n 
+0000473665 00000 n 
+0000473858 00000 n 
+0000474028 00000 n 
+0000474197 00000 n 
+0000474363 00000 n 
+0000474531 00000 n 
+0000474702 00000 n 
+0000477175 00000 n 
+0000477345 00000 n 
+0000477516 00000 n 
+0000475615 00000 n 
+0000473111 00000 n 
+0000472171 00000 n 
+0000474866 00000 n 
+0001297494 00000 n 
+0000477686 00000 n 
+0000477854 00000 n 
+0000478025 00000 n 
+0000478189 00000 n 
+0000478382 00000 n 
+0000478553 00000 n 
+0000481588 00000 n 
+0000481819 00000 n 
+0000482049 00000 n 
+0000482280 00000 n 
+0000482475 00000 n 
+0000482682 00000 n 
+0000482914 00000 n 
+0000483145 00000 n 
+0000483377 00000 n 
+0000483571 00000 n 
+0000483803 00000 n 
+0000484034 00000 n 
+0000484201 00000 n 
+0000479458 00000 n 
+0000476959 00000 n 
+0000475773 00000 n 
+0000478710 00000 n 
+0001297557 00000 n 
+0000484431 00000 n 
+0000484663 00000 n 
+0000484895 00000 n 
+0000485066 00000 n 
+0000485229 00000 n 
+0000485397 00000 n 
+0000487667 00000 n 
+0000487836 00000 n 
+0000486254 00000 n 
+0000481282 00000 n 
+0000479645 00000 n 
+0000485566 00000 n 
+0000485629 00000 n 
+0000485754 00000 n 
+0000485817 00000 n 
+0000485942 00000 n 
+0000486067 00000 n 
+0000486192 00000 n 
+0000489772 00000 n 
+0000489647 00000 n 
+0000499331 00000 n 
+0000499456 00000 n 
+0000489522 00000 n 
+0000489397 00000 n 
+0000499206 00000 n 
+0000489897 00000 n 
+0001295541 00000 n 
+0000488031 00000 n 
+0000488201 00000 n 
+0000488370 00000 n 
+0000488537 00000 n 
+0000488706 00000 n 
+0000488876 00000 n 
+0000489039 00000 n 
+0000497392 00000 n 
+0000497563 00000 n 
+0000497734 00000 n 
+0000489960 00000 n 
+0000487451 00000 n 
+0000486454 00000 n 
+0000489210 00000 n 
+0001296171 00000 n 
+0000497902 00000 n 
+0000498073 00000 n 
+0000498237 00000 n 
+0000498428 00000 n 
+0000498599 00000 n 
+0000498755 00000 n 
+0000498912 00000 n 
+0000490132 00000 n 
+0000491195 00000 n 
+0000491383 00000 n 
+0000491431 00000 n 
+0000491854 00000 n 
+0000492198 00000 n 
+0000502104 00000 n 
+0000502306 00000 n 
+0000502475 00000 n 
+0000502677 00000 n 
+0000502880 00000 n 
+0000503083 00000 n 
+0000503285 00000 n 
+0000503487 00000 n 
+0000503688 00000 n 
+0000499766 00000 n 
+0000497167 00000 n 
+0000496046 00000 n 
+0000499081 00000 n 
+0000499704 00000 n 
+0002100039 00000 n 
+0001296234 00000 n 
+0000503891 00000 n 
+0000504058 00000 n 
+0000504261 00000 n 
+0000504462 00000 n 
+0000504631 00000 n 
+0000504834 00000 n 
+0000505037 00000 n 
+0000505205 00000 n 
+0000505374 00000 n 
+0000505543 00000 n 
+0000505746 00000 n 
+0000505949 00000 n 
+0000506118 00000 n 
+0000506286 00000 n 
+0000506489 00000 n 
+0000506691 00000 n 
+0000506860 00000 n 
+0000507028 00000 n 
+0000507231 00000 n 
+0000507433 00000 n 
+0000507602 00000 n 
+0000507770 00000 n 
+0000507973 00000 n 
+0000508176 00000 n 
+0000508379 00000 n 
+0000508582 00000 n 
+0000508750 00000 n 
+0000508953 00000 n 
+0000509123 00000 n 
+0000509326 00000 n 
+0000509496 00000 n 
+0000509699 00000 n 
+0000509870 00000 n 
+0000510064 00000 n 
+0000510267 00000 n 
+0000510427 00000 n 
+0000510630 00000 n 
+0000510823 00000 n 
+0000511025 00000 n 
+0000511219 00000 n 
+0000511379 00000 n 
+0000511548 00000 n 
+0000511749 00000 n 
+0000511918 00000 n 
+0000512121 00000 n 
+0000512289 00000 n 
+0000512492 00000 n 
+0000512693 00000 n 
+0000515440 00000 n 
+0000515642 00000 n 
+0000515845 00000 n 
+0000513083 00000 n 
+0000501456 00000 n 
+0000499939 00000 n 
+0000512894 00000 n 
+0000512957 00000 n 
+0000513020 00000 n 
+0000518798 00000 n 
+0000551571 00000 n 
+0000551821 00000 n 
+0000547736 00000 n 
+0000547487 00000 n 
+0000547861 00000 n 
+0000518986 00000 n 
+0000527535 00000 n 
+0000538361 00000 n 
+0000523575 00000 n 
+0000523387 00000 n 
+0000544013 00000 n 
+0000527347 00000 n 
+0000534781 00000 n 
+0000538112 00000 n 
+0000534656 00000 n 
+0000534906 00000 n 
+0000544201 00000 n 
+0000538237 00000 n 
+0000527660 00000 n 
+0000547362 00000 n 
+0000551696 00000 n 
+0000516046 00000 n 
+0000516214 00000 n 
+0000516380 00000 n 
+0000516548 00000 n 
+0000516718 00000 n 
+0000516888 00000 n 
+0000517058 00000 n 
+0000517217 00000 n 
+0000517385 00000 n 
+0000517553 00000 n 
+0000517722 00000 n 
+0000517884 00000 n 
+0000518053 00000 n 
+0000518214 00000 n 
+0000518385 00000 n 
+0000521262 00000 n 
+0000521431 00000 n 
+0000521599 00000 n 
+0000521765 00000 n 
+0000519111 00000 n 
+0000515143 00000 n 
+0000513255 00000 n 
+0000518549 00000 n 
+0000518612 00000 n 
+0000518923 00000 n 
+0000547611 00000 n 
+0001375711 00000 n 
+0001343871 00000 n 
+0001343493 00000 n 
+0000521926 00000 n 
+0000522096 00000 n 
+0000522260 00000 n 
+0000522427 00000 n 
+0000522595 00000 n 
+0000522765 00000 n 
+0000522928 00000 n 
+0000523094 00000 n 
+0000523762 00000 n 
+0000521019 00000 n 
+0000519297 00000 n 
+0000523262 00000 n 
+0000523512 00000 n 
+0000523699 00000 n 
+0001344753 00000 n 
+0001354126 00000 n 
+0000525570 00000 n 
+0000525741 00000 n 
+0000525905 00000 n 
+0000526074 00000 n 
+0000526236 00000 n 
+0000526406 00000 n 
+0000526569 00000 n 
+0000526762 00000 n 
+0000526957 00000 n 
+0000527116 00000 n 
+0000004502 00000 f 
+0000004969 00000 f 
+0000529729 00000 n 
+0000527785 00000 n 
+0000525345 00000 n 
+0000523948 00000 n 
+0000527284 00000 n 
+0000527472 00000 n 
+0001353685 00000 n 
+0001385984 00000 n 
+0001350356 00000 n 
+0000529890 00000 n 
+0000530048 00000 n 
+0000530252 00000 n 
+0000530423 00000 n 
+0000530587 00000 n 
+0000530756 00000 n 
+0000530913 00000 n 
+0000531084 00000 n 
+0000531248 00000 n 
+0000531417 00000 n 
+0000532011 00000 n 
+0000529495 00000 n 
+0000527957 00000 n 
+0000531572 00000 n 
+0000531635 00000 n 
+0000531823 00000 n 
+0000893666 00000 n 
+0001364964 00000 n 
+0001354882 00000 n 
+0000533525 00000 n 
+0000533696 00000 n 
+0000533860 00000 n 
+0000534031 00000 n 
+0000534195 00000 n 
+0000534366 00000 n 
+0000536612 00000 n 
+0000536782 00000 n 
+0000534969 00000 n 
+0000533336 00000 n 
+0000532197 00000 n 
+0000534530 00000 n 
+0000534593 00000 n 
+0002100165 00000 n 
+0001354441 00000 n 
+0001362763 00000 n 
+0001362139 00000 n 
+0000536946 00000 n 
+0000537117 00000 n 
+0000537281 00000 n 
+0000537484 00000 n 
+0000537655 00000 n 
+0000537819 00000 n 
+0000538485 00000 n 
+0000536405 00000 n 
+0000535099 00000 n 
+0000537987 00000 n 
+0001363074 00000 n 
+0001362454 00000 n 
+0001364523 00000 n 
+0000540580 00000 n 
+0000540751 00000 n 
+0000540915 00000 n 
+0000541086 00000 n 
+0000541250 00000 n 
+0000541443 00000 n 
+0000541603 00000 n 
+0000541771 00000 n 
+0000541941 00000 n 
+0000542112 00000 n 
+0000542282 00000 n 
+0000542485 00000 n 
+0000542686 00000 n 
+0000542887 00000 n 
+0000543088 00000 n 
+0000543292 00000 n 
+0000543493 00000 n 
+0000543662 00000 n 
+0000544326 00000 n 
+0000540283 00000 n 
+0000538629 00000 n 
+0000543824 00000 n 
+0000543887 00000 n 
+0000543950 00000 n 
+0000544138 00000 n 
+0001351102 00000 n 
+0001355197 00000 n 
+0000699289 00000 n 
+0000763888 00000 n 
+0000638697 00000 n 
+0000808439 00000 n 
+0001037232 00000 n 
+0001363389 00000 n 
+0000545587 00000 n 
+0000545756 00000 n 
+0000545924 00000 n 
+0000546085 00000 n 
+0000546254 00000 n 
+0000546416 00000 n 
+0000546577 00000 n 
+0000546746 00000 n 
+0000546908 00000 n 
+0000547076 00000 n 
+0000549313 00000 n 
+0000549474 00000 n 
+0000549643 00000 n 
+0000549805 00000 n 
+0000549974 00000 n 
+0000550143 00000 n 
+0000547922 00000 n 
+0000545362 00000 n 
+0000544484 00000 n 
+0000547237 00000 n 
+0001375963 00000 n 
+0001376593 00000 n 
+0001376845 00000 n 
+0001376467 00000 n 
+0000550305 00000 n 
+0000550474 00000 n 
+0000550642 00000 n 
+0000550803 00000 n 
+0000550972 00000 n 
+0000551134 00000 n 
+0000551289 00000 n 
+0000553868 00000 n 
+0000554026 00000 n 
+0000554191 00000 n 
+0000554390 00000 n 
+0000554588 00000 n 
+0000554787 00000 n 
+0000554987 00000 n 
+0000555158 00000 n 
+0000555357 00000 n 
+0000552007 00000 n 
+0000549061 00000 n 
+0000548038 00000 n 
+0000551446 00000 n 
+0001376719 00000 n 
+0001376089 00000 n 
+0001376215 00000 n 
+0001376341 00000 n 
+0000555556 00000 n 
+0000555756 00000 n 
+0000555955 00000 n 
+0000556154 00000 n 
+0000556354 00000 n 
+0000556554 00000 n 
+0000556715 00000 n 
+0000556881 00000 n 
+0000557047 00000 n 
+0000557206 00000 n 
+0000557374 00000 n 
+0000557535 00000 n 
+0000558251 00000 n 
+0000553544 00000 n 
+0000552137 00000 n 
+0000557690 00000 n 
+0000557815 00000 n 
+0000558001 00000 n 
+0000561364 00000 n 
+0000561739 00000 n 
+0000561552 00000 n 
+0000564919 00000 n 
+0000561864 00000 n 
+0000564668 00000 n 
+0000565044 00000 n 
+0000572577 00000 n 
+0001401800 00000 n 
+0001395787 00000 n 
+0001386991 00000 n 
+0001386677 00000 n 
+0000559927 00000 n 
+0000560095 00000 n 
+0000560256 00000 n 
+0000560424 00000 n 
+0000560584 00000 n 
+0000560752 00000 n 
+0000560913 00000 n 
+0000561079 00000 n 
+0000561926 00000 n 
+0000559720 00000 n 
+0000558423 00000 n 
+0000561238 00000 n 
+0000561301 00000 n 
+0000561489 00000 n 
+0002100291 00000 n 
+0001387243 00000 n 
+0001387495 00000 n 
+0001387810 00000 n 
+0001392710 00000 n 
+0000563561 00000 n 
+0000563729 00000 n 
+0000563890 00000 n 
+0000564058 00000 n 
+0000564218 00000 n 
+0000564384 00000 n 
+0000565106 00000 n 
+0000563372 00000 n 
+0000562126 00000 n 
+0000564543 00000 n 
+0000564793 00000 n 
+0000564856 00000 n 
+0001393023 00000 n 
+0001393771 00000 n 
+0001388061 00000 n 
+0000570868 00000 n 
+0000571036 00000 n 
+0000571197 00000 n 
+0000571365 00000 n 
+0000571526 00000 n 
+0000571678 00000 n 
+0000571830 00000 n 
+0000571986 00000 n 
+0000572156 00000 n 
+0000565264 00000 n 
+0000565854 00000 n 
+0000566042 00000 n 
+0000566090 00000 n 
+0000566427 00000 n 
+0000566722 00000 n 
+0000572953 00000 n 
+0000570652 00000 n 
+0000569260 00000 n 
+0000572326 00000 n 
+0000572451 00000 n 
+0000572514 00000 n 
+0000572702 00000 n 
+0000572765 00000 n 
+0001394527 00000 n 
+0001395283 00000 n 
+0000574733 00000 n 
+0000574935 00000 n 
+0000575139 00000 n 
+0000575342 00000 n 
+0000575546 00000 n 
+0000575748 00000 n 
+0000575908 00000 n 
+0000576078 00000 n 
+0000576255 00000 n 
+0000576425 00000 n 
+0000576604 00000 n 
+0000577340 00000 n 
+0000574499 00000 n 
+0000573125 00000 n 
+0000576776 00000 n 
+0000576839 00000 n 
+0000576902 00000 n 
+0000577089 00000 n 
+0000577214 00000 n 
+0000577277 00000 n 
+0000585102 00000 n 
+0000584915 00000 n 
+0001108456 00000 n 
+0001107889 00000 n 
+0001106756 00000 n 
+0001106379 00000 n 
+0000583026 00000 n 
+0000583187 00000 n 
+0000583355 00000 n 
+0000583534 00000 n 
+0000583705 00000 n 
+0000583884 00000 n 
+0000584056 00000 n 
+0000584233 00000 n 
+0000584402 00000 n 
+0000584565 00000 n 
+0000586983 00000 n 
+0000587137 00000 n 
+0000587303 00000 n 
+0000577555 00000 n 
+0000578160 00000 n 
+0000578348 00000 n 
+0000578396 00000 n 
+0000578733 00000 n 
+0000579028 00000 n 
+0000585289 00000 n 
+0000582801 00000 n 
+0000581586 00000 n 
+0000584727 00000 n 
+0000584852 00000 n 
+0001107008 00000 n 
+0001107323 00000 n 
+0001115116 00000 n 
+0000587471 00000 n 
+0000587672 00000 n 
+0000587874 00000 n 
+0000588042 00000 n 
+0000588213 00000 n 
+0000588377 00000 n 
+0000588549 00000 n 
+0000589341 00000 n 
+0000586758 00000 n 
+0000585475 00000 n 
+0000588715 00000 n 
+0000588840 00000 n 
+0000588903 00000 n 
+0000589090 00000 n 
+0000589215 00000 n 
+0000589278 00000 n 
+0001804428 00000 n 
+0001801703 00000 n 
+0001800994 00000 n 
+0001800736 00000 n 
+0000597028 00000 n 
+0000597201 00000 n 
+0000597367 00000 n 
+0000597524 00000 n 
+0000597683 00000 n 
+0000597853 00000 n 
+0000598023 00000 n 
+0000589556 00000 n 
+0000590249 00000 n 
+0000590437 00000 n 
+0000590485 00000 n 
+0000590896 00000 n 
+0000591219 00000 n 
+0000598192 00000 n 
+0000598392 00000 n 
+0000598560 00000 n 
+0000598763 00000 n 
+0000598965 00000 n 
+0000599167 00000 n 
+0000599368 00000 n 
+0000599570 00000 n 
+0000599772 00000 n 
+0000599939 00000 n 
+0000600141 00000 n 
+0000600308 00000 n 
+0000600502 00000 n 
+0000600702 00000 n 
+0000600897 00000 n 
+0000601098 00000 n 
+0000601264 00000 n 
+0000601466 00000 n 
+0000601637 00000 n 
+0000601838 00000 n 
+0000602008 00000 n 
+0000602210 00000 n 
+0000602411 00000 n 
+0000602581 00000 n 
+0000602783 00000 n 
+0000602985 00000 n 
+0000603151 00000 n 
+0000603353 00000 n 
+0000603520 00000 n 
+0000603721 00000 n 
+0000603915 00000 n 
+0000604116 00000 n 
+0000604282 00000 n 
+0000604484 00000 n 
+0000604654 00000 n 
+0000604856 00000 n 
+0000605050 00000 n 
+0000605252 00000 n 
+0000605412 00000 n 
+0000605582 00000 n 
+0000605784 00000 n 
+0000605985 00000 n 
+0000606185 00000 n 
+0000606354 00000 n 
+0000606554 00000 n 
+0000606745 00000 n 
+0000609668 00000 n 
+0000607321 00000 n 
+0000596416 00000 n 
+0000594544 00000 n 
+0000606945 00000 n 
+0000607195 00000 n 
+0000607258 00000 n 
+0002100417 00000 n 
+0001801253 00000 n 
+0000613414 00000 n 
+0000647362 00000 n 
+0000639008 00000 n 
+0000639132 00000 n 
+0000618171 00000 n 
+0000623508 00000 n 
+0000647487 00000 n 
+0000623383 00000 n 
+0000623195 00000 n 
+0000628212 00000 n 
+0000628399 00000 n 
+0000633029 00000 n 
+0000633278 00000 n 
+0000609870 00000 n 
+0000610071 00000 n 
+0000610265 00000 n 
+0000610467 00000 n 
+0000610669 00000 n 
+0000610839 00000 n 
+0000611041 00000 n 
+0000611206 00000 n 
+0000611407 00000 n 
+0000611573 00000 n 
+0000611743 00000 n 
+0000611913 00000 n 
+0000612082 00000 n 
+0000612253 00000 n 
+0000612421 00000 n 
+0000612582 00000 n 
+0000612746 00000 n 
+0000615996 00000 n 
+0000616163 00000 n 
+0000616330 00000 n 
+0000616524 00000 n 
+0000613539 00000 n 
+0000609371 00000 n 
+0000607551 00000 n 
+0000612913 00000 n 
+0000612976 00000 n 
+0000613039 00000 n 
+0000613102 00000 n 
+0000613227 00000 n 
+0000613290 00000 n 
+0000628087 00000 n 
+0000638822 00000 n 
+0001447712 00000 n 
+0001424899 00000 n 
+0000616718 00000 n 
+0000616885 00000 n 
+0000617045 00000 n 
+0000617211 00000 n 
+0000617379 00000 n 
+0000617547 00000 n 
+0000617708 00000 n 
+0000617877 00000 n 
+0000618544 00000 n 
+0000615753 00000 n 
+0000613711 00000 n 
+0000618045 00000 n 
+0000618108 00000 n 
+0000618482 00000 n 
+0001450752 00000 n 
+0001451076 00000 n 
+0000620474 00000 n 
+0000620643 00000 n 
+0000620800 00000 n 
+0000620968 00000 n 
+0000621129 00000 n 
+0000621294 00000 n 
+0000621465 00000 n 
+0000621633 00000 n 
+0000621801 00000 n 
+0000621962 00000 n 
+0000622131 00000 n 
+0000622299 00000 n 
+0000622467 00000 n 
+0000622628 00000 n 
+0000622794 00000 n 
+0000622961 00000 n 
+0000623633 00000 n 
+0000620195 00000 n 
+0000618744 00000 n 
+0000623132 00000 n 
+0000623320 00000 n 
+0001460315 00000 n 
+0001462251 00000 n 
+0001461797 00000 n 
+0000625670 00000 n 
+0000625838 00000 n 
+0000626006 00000 n 
+0000626167 00000 n 
+0000626333 00000 n 
+0000626538 00000 n 
+0000626742 00000 n 
+0000626909 00000 n 
+0000627070 00000 n 
+0000627236 00000 n 
+0000004970 00000 f 
+0000004988 00000 f 
+0000627403 00000 n 
+0000627569 00000 n 
+0000627737 00000 n 
+0000630526 00000 n 
+0000630692 00000 n 
+0000628524 00000 n 
+0000625418 00000 n 
+0000623819 00000 n 
+0000627898 00000 n 
+0000627961 00000 n 
+0000628024 00000 n 
+0000628336 00000 n 
+0001461022 00000 n 
+0000808313 00000 n 
+0001026532 00000 n 
+0001460704 00000 n 
+0001462640 00000 n 
+0000004989 00000 f 
+0000005177 00000 f 
+0000630886 00000 n 
+0000631051 00000 n 
+0000631219 00000 n 
+0000631380 00000 n 
+0000631546 00000 n 
+0000631717 00000 n 
+0000631885 00000 n 
+0000632046 00000 n 
+0000632212 00000 n 
+0000632383 00000 n 
+0000632578 00000 n 
+0000632744 00000 n 
+0000633466 00000 n 
+0000630265 00000 n 
+0000628696 00000 n 
+0000632903 00000 n 
+0000632966 00000 n 
+0000633154 00000 n 
+0000633215 00000 n 
+0000633403 00000 n 
+0001463094 00000 n 
+0001463548 00000 n 
+0001464197 00000 n 
+0000635477 00000 n 
+0000635669 00000 n 
+0000635836 00000 n 
+0000635994 00000 n 
+0000636160 00000 n 
+0000636329 00000 n 
+0000636499 00000 n 
+0000636699 00000 n 
+0000636901 00000 n 
+0000637068 00000 n 
+0000637229 00000 n 
+0000637397 00000 n 
+0000637602 00000 n 
+0000637806 00000 n 
+0000637970 00000 n 
+0000638138 00000 n 
+0000638305 00000 n 
+0000638473 00000 n 
+0000645068 00000 n 
+0000645260 00000 n 
+0000645425 00000 n 
+0000645593 00000 n 
+0000645754 00000 n 
+0000639195 00000 n 
+0000635180 00000 n 
+0000633624 00000 n 
+0000638634 00000 n 
+0002100543 00000 n 
+0001451465 00000 n 
+0000813353 00000 n 
+0001037358 00000 n 
+0001448284 00000 n 
+0000645922 00000 n 
+0000646090 00000 n 
+0000646251 00000 n 
+0000646419 00000 n 
+0000646586 00000 n 
+0000646754 00000 n 
+0000646915 00000 n 
+0000647069 00000 n 
+0000639339 00000 n 
+0000640018 00000 n 
+0000640206 00000 n 
+0000640254 00000 n 
+0000640591 00000 n 
+0000640885 00000 n 
+0000650879 00000 n 
+0000651082 00000 n 
+0000651251 00000 n 
+0000651454 00000 n 
+0000651657 00000 n 
+0000651860 00000 n 
+0000652063 00000 n 
+0000652266 00000 n 
+0000652468 00000 n 
+0000652672 00000 n 
+0000652875 00000 n 
+0000653078 00000 n 
+0000653280 00000 n 
+0000653447 00000 n 
+0000653614 00000 n 
+0000647800 00000 n 
+0000644816 00000 n 
+0000643615 00000 n 
+0000647237 00000 n 
+0000647737 00000 n 
+0001447904 00000 n 
+0001448030 00000 n 
+0001448157 00000 n 
+0000653817 00000 n 
+0000654021 00000 n 
+0000654224 00000 n 
+0000654427 00000 n 
+0000654629 00000 n 
+0000654796 00000 n 
+0000654966 00000 n 
+0000655168 00000 n 
+0000655372 00000 n 
+0000655575 00000 n 
+0000655776 00000 n 
+0000655978 00000 n 
+0000656145 00000 n 
+0000656310 00000 n 
+0000656512 00000 n 
+0000656706 00000 n 
+0000656910 00000 n 
+0000657113 00000 n 
+0000657283 00000 n 
+0000657453 00000 n 
+0000657656 00000 n 
+0000657858 00000 n 
+0000658052 00000 n 
+0000658247 00000 n 
+0000658451 00000 n 
+0000658611 00000 n 
+0000658806 00000 n 
+0000659010 00000 n 
+0000659205 00000 n 
+0000659364 00000 n 
+0000659559 00000 n 
+0000659763 00000 n 
+0000659958 00000 n 
+0000660117 00000 n 
+0000660312 00000 n 
+0000660515 00000 n 
+0000660710 00000 n 
+0000660879 00000 n 
+0000661083 00000 n 
+0000661253 00000 n 
+0000661456 00000 n 
+0000661624 00000 n 
+0000661826 00000 n 
+0000662029 00000 n 
+0000662231 00000 n 
+0000662433 00000 n 
+0000662636 00000 n 
+0000662805 00000 n 
+0000662966 00000 n 
+0000663132 00000 n 
+0000663334 00000 n 
+0000663505 00000 n 
+0000663675 00000 n 
+0000663836 00000 n 
+0000663995 00000 n 
+0000664162 00000 n 
+0000664636 00000 n 
+0000650105 00000 n 
+0000647959 00000 n 
+0000664323 00000 n 
+0000664386 00000 n 
+0000664449 00000 n 
+0000664511 00000 n 
+0000668711 00000 n 
+0000668899 00000 n 
+0000673229 00000 n 
+0000669086 00000 n 
+0000677718 00000 n 
+0000693755 00000 n 
+0000689504 00000 n 
+0000683272 00000 n 
+0000683460 00000 n 
+0000689253 00000 n 
+0000694006 00000 n 
+0000677965 00000 n 
+0001487806 00000 n 
+0001487094 00000 n 
+0000666900 00000 n 
+0000667069 00000 n 
+0000667238 00000 n 
+0000667406 00000 n 
+0000667578 00000 n 
+0000667743 00000 n 
+0000667915 00000 n 
+0000668080 00000 n 
+0000668246 00000 n 
+0000668417 00000 n 
+0000669210 00000 n 
+0000666675 00000 n 
+0000664794 00000 n 
+0000668586 00000 n 
+0000668836 00000 n 
+0001473772 00000 n 
+0001465299 00000 n 
+0001474421 00000 n 
+0000005178 00000 f 
+0000005217 00000 f 
+0000672035 00000 n 
+0000672205 00000 n 
+0000672375 00000 n 
+0000672538 00000 n 
+0000672704 00000 n 
+0000672871 00000 n 
+0000673479 00000 n 
+0000671846 00000 n 
+0000669410 00000 n 
+0000673040 00000 n 
+0000673103 00000 n 
+0000673166 00000 n 
+0000673354 00000 n 
+0000673416 00000 n 
+0001511873 00000 n 
+0000675979 00000 n 
+0000676149 00000 n 
+0000676312 00000 n 
+0000676478 00000 n 
+0000676645 00000 n 
+0000676815 00000 n 
+0000676985 00000 n 
+0000677148 00000 n 
+0000677317 00000 n 
+0000677485 00000 n 
+0000678089 00000 n 
+0000675754 00000 n 
+0000673651 00000 n 
+0000677655 00000 n 
+0000677839 00000 n 
+0000677902 00000 n 
+0001511549 00000 n 
+0001512457 00000 n 
+0000680496 00000 n 
+0000680668 00000 n 
+0000680833 00000 n 
+0000681026 00000 n 
+0000681220 00000 n 
+0000005218 00000 f 
+0000005228 00000 f 
+0000681380 00000 n 
+0000681540 00000 n 
+0000681699 00000 n 
+0000681903 00000 n 
+0000682075 00000 n 
+0000682239 00000 n 
+0000682432 00000 n 
+0000682627 00000 n 
+0000682785 00000 n 
+0000005229 00000 f 
+0000005252 00000 f 
+0000682989 00000 n 
+0000683648 00000 n 
+0000680226 00000 n 
+0000678247 00000 n 
+0000683146 00000 n 
+0000683209 00000 n 
+0000683397 00000 n 
+0000683585 00000 n 
+0002100669 00000 n 
+0001474680 00000 n 
+0000904638 00000 n 
+0001476490 00000 n 
+0000686005 00000 n 
+0000686165 00000 n 
+0000686369 00000 n 
+0000686541 00000 n 
+0000686706 00000 n 
+0000686901 00000 n 
+0000687095 00000 n 
+0000687290 00000 n 
+0000687485 00000 n 
+0000687646 00000 n 
+0000005253 00000 f 
+0000005510 00000 f 
+0000687807 00000 n 
+0000687968 00000 n 
+0000688128 00000 n 
+0000688300 00000 n 
+0000688465 00000 n 
+0000688633 00000 n 
+0000688828 00000 n 
+0000688988 00000 n 
+0000689629 00000 n 
+0000685708 00000 n 
+0000683792 00000 n 
+0000689190 00000 n 
+0000689378 00000 n 
+0000689441 00000 n 
+0000915491 00000 n 
+0001477007 00000 n 
+0001486577 00000 n 
+0000691832 00000 n 
+0000692002 00000 n 
+0000692171 00000 n 
+0000692333 00000 n 
+0000692526 00000 n 
+0000692697 00000 n 
+0000692868 00000 n 
+0000693072 00000 n 
+0000693233 00000 n 
+0000693403 00000 n 
+0000695908 00000 n 
+0000694068 00000 n 
+0000691607 00000 n 
+0000689787 00000 n 
+0000693566 00000 n 
+0000693629 00000 n 
+0000693692 00000 n 
+0000693880 00000 n 
+0000693943 00000 n 
+0001513300 00000 n 
+0001512781 00000 n 
+0000696078 00000 n 
+0000696248 00000 n 
+0000696418 00000 n 
+0000696581 00000 n 
+0000696774 00000 n 
+0000696934 00000 n 
+0000697137 00000 n 
+0000697309 00000 n 
+0000697474 00000 n 
+0000697630 00000 n 
+0000697788 00000 n 
+0000697955 00000 n 
+0000698156 00000 n 
+0000698357 00000 n 
+0000698559 00000 n 
+0000698761 00000 n 
+0000698963 00000 n 
+0000701086 00000 n 
+0000701288 00000 n 
+0000699603 00000 n 
+0000695611 00000 n 
+0000694226 00000 n 
+0000699163 00000 n 
+0000699541 00000 n 
+0001511160 00000 n 
+0001475069 00000 n 
+0000702735 00000 n 
+0000702860 00000 n 
+0000705894 00000 n 
+0000703049 00000 n 
+0000709056 00000 n 
+0000709370 00000 n 
+0000701489 00000 n 
+0000701657 00000 n 
+0000701818 00000 n 
+0000701988 00000 n 
+0000702150 00000 n 
+0000702320 00000 n 
+0000704916 00000 n 
+0000705084 00000 n 
+0000703112 00000 n 
+0000700879 00000 n 
+0000699775 00000 n 
+0000702483 00000 n 
+0000702546 00000 n 
+0000705705 00000 n 
+0000709182 00000 n 
+0001247748 00000 n 
+0001247181 00000 n 
+0001240361 00000 n 
+0001233679 00000 n 
+0001240672 00000 n 
+0000705247 00000 n 
+0000705417 00000 n 
+0000706020 00000 n 
+0000704745 00000 n 
+0000703270 00000 n 
+0000705579 00000 n 
+0000705831 00000 n 
+0001240924 00000 n 
+0001241869 00000 n 
+0000707877 00000 n 
+0000708045 00000 n 
+0000708206 00000 n 
+0000708374 00000 n 
+0000708535 00000 n 
+0000708704 00000 n 
+0000709496 00000 n 
+0000707688 00000 n 
+0000706178 00000 n 
+0000708867 00000 n 
+0000708930 00000 n 
+0000708993 00000 n 
+0000709307 00000 n 
+0002100795 00000 n 
+0001249197 00000 n 
+0001241239 00000 n 
+0001239674 00000 n 
+0000711016 00000 n 
+0000711186 00000 n 
+0000711349 00000 n 
+0000711503 00000 n 
+0000711659 00000 n 
+0000711820 00000 n 
+0000712034 00000 n 
+0000712247 00000 n 
+0000712461 00000 n 
+0000712675 00000 n 
+0000712836 00000 n 
+0000713014 00000 n 
+0000713186 00000 n 
+0000713364 00000 n 
+0000719846 00000 n 
+0000720004 00000 n 
+0000720165 00000 n 
+0000720343 00000 n 
+0000714100 00000 n 
+0000710755 00000 n 
+0000709668 00000 n 
+0000713535 00000 n 
+0000713724 00000 n 
+0000713912 00000 n 
+0000714038 00000 n 
+0001241554 00000 n 
+0000721798 00000 n 
+0000721673 00000 n 
+0001116116 00000 n 
+0001115739 00000 n 
+0001116368 00000 n 
+0000720515 00000 n 
+0000720694 00000 n 
+0000720866 00000 n 
+0000721045 00000 n 
+0000721217 00000 n 
+0000721382 00000 n 
+0000714244 00000 n 
+0000714919 00000 n 
+0000715107 00000 n 
+0000715155 00000 n 
+0000715492 00000 n 
+0000715786 00000 n 
+0000724547 00000 n 
+0000724748 00000 n 
+0000724917 00000 n 
+0000725119 00000 n 
+0000725322 00000 n 
+0000725525 00000 n 
+0000725728 00000 n 
+0000725930 00000 n 
+0000726130 00000 n 
+0000726332 00000 n 
+0000726492 00000 n 
+0000726692 00000 n 
+0000726886 00000 n 
+0000727088 00000 n 
+0000722112 00000 n 
+0000719621 00000 n 
+0000718577 00000 n 
+0000721547 00000 n 
+0000722050 00000 n 
+0001116494 00000 n 
+0001116620 00000 n 
+0001116242 00000 n 
+0000727282 00000 n 
+0000727483 00000 n 
+0000727677 00000 n 
+0000727879 00000 n 
+0000728074 00000 n 
+0000728234 00000 n 
+0000728428 00000 n 
+0000728630 00000 n 
+0000728825 00000 n 
+0000728984 00000 n 
+0000729178 00000 n 
+0000729379 00000 n 
+0000729574 00000 n 
+0000729734 00000 n 
+0000729902 00000 n 
+0000730104 00000 n 
+0000730268 00000 n 
+0000730468 00000 n 
+0000730636 00000 n 
+0000730839 00000 n 
+0000731041 00000 n 
+0000731243 00000 n 
+0000731444 00000 n 
+0000731647 00000 n 
+0000731815 00000 n 
+0000731976 00000 n 
+0000732144 00000 n 
+0000732304 00000 n 
+0000732461 00000 n 
+0000732622 00000 n 
+0000732790 00000 n 
+0000732958 00000 n 
+0000735725 00000 n 
+0000735894 00000 n 
+0000733558 00000 n 
+0000723998 00000 n 
+0000722257 00000 n 
+0000733118 00000 n 
+0000733181 00000 n 
+0000733244 00000 n 
+0000733307 00000 n 
+0000733496 00000 n 
+0000737578 00000 n 
+0000754714 00000 n 
+0000749947 00000 n 
+0000754840 00000 n 
+0000743811 00000 n 
+0000749759 00000 n 
+0000743622 00000 n 
+0000754588 00000 n 
+0000737767 00000 n 
+0001584889 00000 n 
+0001584371 00000 n 
+0000736054 00000 n 
+0000736224 00000 n 
+0000736387 00000 n 
+0000736554 00000 n 
+0000736723 00000 n 
+0000736886 00000 n 
+0000737053 00000 n 
+0000737222 00000 n 
+0000737893 00000 n 
+0000735500 00000 n 
+0000733716 00000 n 
+0000737389 00000 n 
+0000737515 00000 n 
+0001563209 00000 n 
+0001562888 00000 n 
+0001563857 00000 n 
+0000740644 00000 n 
+0000740814 00000 n 
+0000740977 00000 n 
+0000741170 00000 n 
+0000741365 00000 n 
+0000741525 00000 n 
+0000005511 00000 f 
+0000005522 00000 f 
+0000741726 00000 n 
+0000741887 00000 n 
+0000742047 00000 n 
+0000742251 00000 n 
+0000742421 00000 n 
+0000742584 00000 n 
+0000742777 00000 n 
+0000742971 00000 n 
+0000743132 00000 n 
+0000743297 00000 n 
+0000005523 00000 f 
+0000005543 00000 f 
+0000746264 00000 n 
+0000743937 00000 n 
+0000740365 00000 n 
+0000738079 00000 n 
+0000743496 00000 n 
+0000743559 00000 n 
+0000743748 00000 n 
+0001573579 00000 n 
+0000898658 00000 n 
+0001577267 00000 n 
+0000746425 00000 n 
+0000746583 00000 n 
+0000746787 00000 n 
+0000746957 00000 n 
+0000747120 00000 n 
+0000747313 00000 n 
+0000747508 00000 n 
+0000747668 00000 n 
+0000747862 00000 n 
+0000005544 00000 f 
+0000005554 00000 f 
+0000748062 00000 n 
+0000748223 00000 n 
+0000748382 00000 n 
+0000748586 00000 n 
+0000748756 00000 n 
+0000748919 00000 n 
+0000749112 00000 n 
+0000749307 00000 n 
+0000749474 00000 n 
+0000005555 00000 f 
+0000005556 00000 f 
+0000005557 00000 f 
+0000005570 00000 f 
+0000751946 00000 n 
+0000752106 00000 n 
+0000750073 00000 n 
+0000745958 00000 n 
+0000744081 00000 n 
+0000749633 00000 n 
+0000749696 00000 n 
+0000749885 00000 n 
+0002100921 00000 n 
+0001575904 00000 n 
+0000915679 00000 n 
+0001576488 00000 n 
+0000005571 00000 f 
+0000005752 00000 f 
+0000752265 00000 n 
+0000752425 00000 n 
+0000752584 00000 n 
+0000752752 00000 n 
+0000752911 00000 n 
+0000753081 00000 n 
+0000753244 00000 n 
+0000753411 00000 n 
+0000753579 00000 n 
+0000753747 00000 n 
+0000753906 00000 n 
+0000754066 00000 n 
+0000754236 00000 n 
+0000761906 00000 n 
+0000762067 00000 n 
+0000762236 00000 n 
+0000762399 00000 n 
+0000762590 00000 n 
+0000754903 00000 n 
+0000751676 00000 n 
+0000750217 00000 n 
+0000754399 00000 n 
+0000754462 00000 n 
+0000754525 00000 n 
+0001575256 00000 n 
+0001586448 00000 n 
+0001574997 00000 n 
+0000762750 00000 n 
+0000762952 00000 n 
+0000763122 00000 n 
+0000763285 00000 n 
+0000763438 00000 n 
+0000763594 00000 n 
+0000755047 00000 n 
+0000755840 00000 n 
+0000756028 00000 n 
+0000756076 00000 n 
+0000756493 00000 n 
+0000756829 00000 n 
+0000766558 00000 n 
+0000766762 00000 n 
+0000766930 00000 n 
+0000767132 00000 n 
+0000767335 00000 n 
+0000767538 00000 n 
+0000767741 00000 n 
+0000767942 00000 n 
+0000768147 00000 n 
+0000768349 00000 n 
+0000768515 00000 n 
+0000768716 00000 n 
+0000768882 00000 n 
+0000769076 00000 n 
+0000769277 00000 n 
+0000769471 00000 n 
+0000769674 00000 n 
+0000769843 00000 n 
+0000770047 00000 n 
+0000770217 00000 n 
+0000770418 00000 n 
+0000770612 00000 n 
+0000770816 00000 n 
+0000764201 00000 n 
+0000761672 00000 n 
+0000760403 00000 n 
+0000763762 00000 n 
+0000764139 00000 n 
+0001575580 00000 n 
+0001573965 00000 n 
+0000770976 00000 n 
+0000771170 00000 n 
+0000771375 00000 n 
+0000771570 00000 n 
+0000771730 00000 n 
+0000771923 00000 n 
+0000772127 00000 n 
+0000772321 00000 n 
+0000772481 00000 n 
+0000772652 00000 n 
+0000772857 00000 n 
+0000773062 00000 n 
+0000773233 00000 n 
+0000773392 00000 n 
+0000773562 00000 n 
+0000773767 00000 n 
+0000773936 00000 n 
+0000774139 00000 n 
+0000774342 00000 n 
+0000774544 00000 n 
+0000774747 00000 n 
+0000774948 00000 n 
+0000775152 00000 n 
+0000775355 00000 n 
+0000775521 00000 n 
+0000775723 00000 n 
+0000775890 00000 n 
+0000776085 00000 n 
+0000776287 00000 n 
+0000776481 00000 n 
+0000776652 00000 n 
+0000776857 00000 n 
+0000777062 00000 n 
+0000780572 00000 n 
+0000780732 00000 n 
+0000780903 00000 n 
+0000781074 00000 n 
+0000781244 00000 n 
+0000781412 00000 n 
+0000781617 00000 n 
+0000781821 00000 n 
+0000781982 00000 n 
+0000782143 00000 n 
+0000782311 00000 n 
+0000782482 00000 n 
+0000777580 00000 n 
+0000765919 00000 n 
+0000764375 00000 n 
+0000777265 00000 n 
+0000777328 00000 n 
+0000777391 00000 n 
+0000777454 00000 n 
+0000777517 00000 n 
+0000784908 00000 n 
+0000813541 00000 n 
+0000790151 00000 n 
+0000802894 00000 n 
+0000796898 00000 n 
+0000797087 00000 n 
+0000808187 00000 n 
+0000790340 00000 n 
+0000782653 00000 n 
+0000782809 00000 n 
+0000782970 00000 n 
+0000783138 00000 n 
+0000783309 00000 n 
+0000783471 00000 n 
+0000783640 00000 n 
+0000783809 00000 n 
+0000783976 00000 n 
+0000784143 00000 n 
+0000784338 00000 n 
+0000785034 00000 n 
+0000780230 00000 n 
+0000777738 00000 n 
+0000784531 00000 n 
+0000784594 00000 n 
+0000784720 00000 n 
+0000784783 00000 n 
+0001600514 00000 n 
+0001599549 00000 n 
+0000787616 00000 n 
+0000787787 00000 n 
+0000787951 00000 n 
+0000788120 00000 n 
+0000788291 00000 n 
+0000788462 00000 n 
+0000788626 00000 n 
+0000788796 00000 n 
+0000788967 00000 n 
+0000789135 00000 n 
+0000789302 00000 n 
+0000789469 00000 n 
+0000789663 00000 n 
+0000789855 00000 n 
+0000790528 00000 n 
+0000787355 00000 n 
+0000785206 00000 n 
+0000790025 00000 n 
+0000790088 00000 n 
+0000790466 00000 n 
+0001615509 00000 n 
+0001616223 00000 n 
+0000793625 00000 n 
+0000793796 00000 n 
+0000793960 00000 n 
+0000794153 00000 n 
+0000794324 00000 n 
+0000794519 00000 n 
+0000794679 00000 n 
+0000794848 00000 n 
+0000005753 00000 f 
+0000005764 00000 f 
+0000795053 00000 n 
+0000795214 00000 n 
+0000795374 00000 n 
+0000795578 00000 n 
+0000795749 00000 n 
+0000795912 00000 n 
+0000796105 00000 n 
+0000796276 00000 n 
+0000796471 00000 n 
+0000796632 00000 n 
+0000005765 00000 f 
+0000005784 00000 f 
+0000799730 00000 n 
+0000797212 00000 n 
+0000793328 00000 n 
+0000790714 00000 n 
+0000796835 00000 n 
+0000797024 00000 n 
+0002101047 00000 n 
+0001616547 00000 n 
+0001618882 00000 n 
+0000799891 00000 n 
+0000800049 00000 n 
+0000800253 00000 n 
+0000800424 00000 n 
+0000800588 00000 n 
+0000800757 00000 n 
+0000800928 00000 n 
+0000801089 00000 n 
+0000801250 00000 n 
+0000005785 00000 f 
+0000005915 00000 f 
+0000801421 00000 n 
+0000801582 00000 n 
+0000801739 00000 n 
+0000801909 00000 n 
+0000802080 00000 n 
+0000802246 00000 n 
+0000802416 00000 n 
+0000805206 00000 n 
+0000805375 00000 n 
+0000805546 00000 n 
+0000802956 00000 n 
+0000799442 00000 n 
+0000797384 00000 n 
+0000802579 00000 n 
+0000802642 00000 n 
+0000802831 00000 n 
+0000909944 00000 n 
+0001625957 00000 n 
+0001628029 00000 n 
+0000805717 00000 n 
+0000805885 00000 n 
+0000806056 00000 n 
+0000806227 00000 n 
+0000806391 00000 n 
+0000806561 00000 n 
+0000806732 00000 n 
+0000806903 00000 n 
+0000807073 00000 n 
+0000807236 00000 n 
+0000807405 00000 n 
+0000807605 00000 n 
+0000807774 00000 n 
+0000810468 00000 n 
+0000810661 00000 n 
+0000808501 00000 n 
+0000804927 00000 n 
+0000803114 00000 n 
+0000807936 00000 n 
+0000808062 00000 n 
+0000808124 00000 n 
+0001617001 00000 n 
+0001614544 00000 n 
+0001618169 00000 n 
+0000810832 00000 n 
+0000810991 00000 n 
+0000811161 00000 n 
+0000811329 00000 n 
+0000811532 00000 n 
+0000811702 00000 n 
+0000811865 00000 n 
+0000812034 00000 n 
+0000812234 00000 n 
+0000812405 00000 n 
+0000812569 00000 n 
+0000812738 00000 n 
+0000812909 00000 n 
+0000813072 00000 n 
+0000815850 00000 n 
+0000816008 00000 n 
+0000816177 00000 n 
+0000816381 00000 n 
+0000816583 00000 n 
+0000816788 00000 n 
+0000813729 00000 n 
+0000810189 00000 n 
+0000808673 00000 n 
+0000813227 00000 n 
+0001617520 00000 n 
+0001618493 00000 n 
+0001600968 00000 n 
+0000816949 00000 n 
+0000817154 00000 n 
+0000817315 00000 n 
+0000817519 00000 n 
+0000817693 00000 n 
+0000817898 00000 n 
+0000818103 00000 n 
+0000818307 00000 n 
+0000818512 00000 n 
+0000818716 00000 n 
+0000818921 00000 n 
+0000819126 00000 n 
+0000819330 00000 n 
+0000819505 00000 n 
+0000819665 00000 n 
+0000819826 00000 n 
+0000819982 00000 n 
+0000820153 00000 n 
+0000822357 00000 n 
+0000820569 00000 n 
+0000815499 00000 n 
+0000813873 00000 n 
+0000820317 00000 n 
+0000820443 00000 n 
+0000823830 00000 n 
+0000824019 00000 n 
+0000831783 00000 n 
+0000831972 00000 n 
+0000827605 00000 n 
+0000827479 00000 n 
+0000835652 00000 n 
+0000827793 00000 n 
+0000840838 00000 n 
+0000835777 00000 n 
+0000827981 00000 n 
+0000831657 00000 n 
+0000824207 00000 n 
+0001158813 00000 n 
+0001153394 00000 n 
+0000822518 00000 n 
+0000822691 00000 n 
+0000822857 00000 n 
+0000823030 00000 n 
+0000823196 00000 n 
+0000823371 00000 n 
+0000823542 00000 n 
+0000824396 00000 n 
+0000822150 00000 n 
+0000820713 00000 n 
+0000823704 00000 n 
+0000823956 00000 n 
+0000824333 00000 n 
+0001132465 00000 n 
+0001121876 00000 n 
+0001133471 00000 n 
+0001146670 00000 n 
+0000826058 00000 n 
+0000826230 00000 n 
+0000826393 00000 n 
+0000005916 00000 f 
+0000005937 00000 f 
+0000826567 00000 n 
+0000826742 00000 n 
+0000826914 00000 n 
+0000827079 00000 n 
+0000827252 00000 n 
+0000828106 00000 n 
+0000825851 00000 n 
+0000824568 00000 n 
+0000827416 00000 n 
+0000827730 00000 n 
+0000827918 00000 n 
+0002101173 00000 n 
+0001136621 00000 n 
+0001134164 00000 n 
+0001144213 00000 n 
+0000830106 00000 n 
+0000830279 00000 n 
+0000830443 00000 n 
+0000830614 00000 n 
+0000830778 00000 n 
+0000005938 00000 f 
+0000005939 00000 f 
+0000005940 00000 f 
+0000005953 00000 f 
+0000830939 00000 n 
+0000831100 00000 n 
+0000831261 00000 n 
+0000831432 00000 n 
+0000832034 00000 n 
+0000829890 00000 n 
+0000828264 00000 n 
+0000831594 00000 n 
+0000831909 00000 n 
+0001145914 00000 n 
+0001162269 00000 n 
+0001147363 00000 n 
+0000005954 00000 f 
+0000005955 00000 f 
+0000005956 00000 f 
+0000006238 00000 f 
+0000834142 00000 n 
+0000834301 00000 n 
+0000834460 00000 n 
+0000834632 00000 n 
+0000834795 00000 n 
+0000834968 00000 n 
+0000835131 00000 n 
+0000835302 00000 n 
+0000835966 00000 n 
+0000833935 00000 n 
+0000832192 00000 n 
+0000835464 00000 n 
+0000835590 00000 n 
+0000835903 00000 n 
+0001148434 00000 n 
+0001136998 00000 n 
+0001145599 00000 n 
+0000838402 00000 n 
+0000838575 00000 n 
+0000838739 00000 n 
+0000838896 00000 n 
+0000839055 00000 n 
+0000839219 00000 n 
+0000839419 00000 n 
+0000839619 00000 n 
+0000839819 00000 n 
+0000840019 00000 n 
+0000840213 00000 n 
+0000840414 00000 n 
+0000840574 00000 n 
+0000841341 00000 n 
+0000838150 00000 n 
+0000836138 00000 n 
+0000840775 00000 n 
+0000840964 00000 n 
+0000841152 00000 n 
+0000841278 00000 n 
+0001144969 00000 n 
+0000844818 00000 n 
+0000844944 00000 n 
+0000845133 00000 n 
+0000849562 00000 n 
+0000849940 00000 n 
+0000849751 00000 n 
+0000843150 00000 n 
+0000843317 00000 n 
+0000843477 00000 n 
+0000843641 00000 n 
+0000843810 00000 n 
+0000843972 00000 n 
+0000844137 00000 n 
+0000844304 00000 n 
+0000844464 00000 n 
+0000845259 00000 n 
+0000842934 00000 n 
+0000841528 00000 n 
+0000844629 00000 n 
+0000844692 00000 n 
+0000845070 00000 n 
+0001648508 00000 n 
+0001647795 00000 n 
+0001637731 00000 n 
+0001628676 00000 n 
+0001661073 00000 n 
+0000847270 00000 n 
+0000847437 00000 n 
+0000847597 00000 n 
+0000847762 00000 n 
+0000847929 00000 n 
+0000848098 00000 n 
+0000848260 00000 n 
+0000848425 00000 n 
+0000848593 00000 n 
+0000848754 00000 n 
+0000848947 00000 n 
+0000849112 00000 n 
+0000849271 00000 n 
+0000850066 00000 n 
+0000847018 00000 n 
+0000845445 00000 n 
+0000849436 00000 n 
+0000849499 00000 n 
+0000849877 00000 n 
+0001661397 00000 n 
+0001638380 00000 n 
+0001639483 00000 n 
+0000851907 00000 n 
+0000852074 00000 n 
+0000852243 00000 n 
+0000852405 00000 n 
+0000852557 00000 n 
+0000852712 00000 n 
+0000852875 00000 n 
+0000853039 00000 n 
+0000853257 00000 n 
+0000853475 00000 n 
+0000853692 00000 n 
+0000853886 00000 n 
+0000854105 00000 n 
+0000854324 00000 n 
+0000854543 00000 n 
+0000854738 00000 n 
+0000854904 00000 n 
+0000855071 00000 n 
+0000855231 00000 n 
+0000855396 00000 n 
+0000855591 00000 n 
+0000855756 00000 n 
+0000858389 00000 n 
+0000858554 00000 n 
+0000858749 00000 n 
+0000858916 00000 n 
+0000859081 00000 n 
+0000859276 00000 n 
+0000856641 00000 n 
+0000851574 00000 n 
+0000850266 00000 n 
+0000855950 00000 n 
+0000856139 00000 n 
+0000856328 00000 n 
+0000856454 00000 n 
+0000856579 00000 n 
+0002101299 00000 n 
+0001638639 00000 n 
+0000862669 00000 n 
+0000862543 00000 n 
+0000862417 00000 n 
+0001659774 00000 n 
+0000859470 00000 n 
+0000859634 00000 n 
+0000859829 00000 n 
+0000860022 00000 n 
+0000860189 00000 n 
+0000860384 00000 n 
+0000860537 00000 n 
+0000860702 00000 n 
+0000860925 00000 n 
+0000861148 00000 n 
+0000861371 00000 n 
+0000861593 00000 n 
+0000861785 00000 n 
+0000862007 00000 n 
+0000864416 00000 n 
+0000864583 00000 n 
+0000864750 00000 n 
+0000864910 00000 n 
+0000862982 00000 n 
+0000858074 00000 n 
+0000856842 00000 n 
+0000862229 00000 n 
+0000862919 00000 n 
+0000867245 00000 n 
+0000867371 00000 n 
+0000867497 00000 n 
+0000867623 00000 n 
+0000880583 00000 n 
+0000867811 00000 n 
+0000865074 00000 n 
+0000865243 00000 n 
+0000865405 00000 n 
+0000865570 00000 n 
+0000865738 00000 n 
+0000865899 00000 n 
+0000866064 00000 n 
+0000866233 00000 n 
+0000866395 00000 n 
+0000866559 00000 n 
+0000866725 00000 n 
+0000866894 00000 n 
+0000875585 00000 n 
+0000875750 00000 n 
+0000875919 00000 n 
+0000876081 00000 n 
+0000876247 00000 n 
+0000876416 00000 n 
+0000867873 00000 n 
+0000864137 00000 n 
+0000863183 00000 n 
+0000867056 00000 n 
+0001658745 00000 n 
+0001628934 00000 n 
+0001629193 00000 n 
+0001629452 00000 n 
+0001635852 00000 n 
+0000876578 00000 n 
+0000876730 00000 n 
+0000876885 00000 n 
+0000877042 00000 n 
+0000868059 00000 n 
+0000869122 00000 n 
+0000869310 00000 n 
+0000869358 00000 n 
+0000869781 00000 n 
+0000870125 00000 n 
+0000877211 00000 n 
+0000877414 00000 n 
+0000877617 00000 n 
+0000877811 00000 n 
+0000878015 00000 n 
+0000878210 00000 n 
+0000878369 00000 n 
+0000878563 00000 n 
+0000878767 00000 n 
+0000878962 00000 n 
+0000879122 00000 n 
+0000879315 00000 n 
+0000879518 00000 n 
+0000879712 00000 n 
+0000879870 00000 n 
+0000880062 00000 n 
+0000880264 00000 n 
+0000883046 00000 n 
+0000883206 00000 n 
+0000883400 00000 n 
+0000883604 00000 n 
+0000883799 00000 n 
+0000883959 00000 n 
+0000884153 00000 n 
+0000884357 00000 n 
+0000884551 00000 n 
+0000884711 00000 n 
+0000884905 00000 n 
+0000885107 00000 n 
+0000885302 00000 n 
+0000885462 00000 n 
+0000885655 00000 n 
+0000885859 00000 n 
+0000886052 00000 n 
+0000886212 00000 n 
+0000886407 00000 n 
+0000886611 00000 n 
+0000880960 00000 n 
+0000875207 00000 n 
+0000873973 00000 n 
+0000880457 00000 n 
+0000880834 00000 n 
+0000880897 00000 n 
+0001636822 00000 n 
+0001636108 00000 n 
+0000889247 00000 n 
+0000893290 00000 n 
+0000886806 00000 n 
+0000886966 00000 n 
+0000887170 00000 n 
+0000887364 00000 n 
+0000887568 00000 n 
+0000887763 00000 n 
+0000887967 00000 n 
+0000888171 00000 n 
+0000888375 00000 n 
+0000888536 00000 n 
+0000888706 00000 n 
+0000891093 00000 n 
+0000891264 00000 n 
+0000889310 00000 n 
+0000882632 00000 n 
+0000881161 00000 n 
+0000888869 00000 n 
+0000888932 00000 n 
+0000888995 00000 n 
+0000889058 00000 n 
+0000909755 00000 n 
+0000904826 00000 n 
+0000898847 00000 n 
+0000915866 00000 n 
+0000893477 00000 n 
+0000919637 00000 n 
+0000919888 00000 n 
+0000919762 00000 n 
+0001197423 00000 n 
+0001196739 00000 n 
+0000891428 00000 n 
+0000891600 00000 n 
+0000891765 00000 n 
+0000891959 00000 n 
+0000892120 00000 n 
+0000892292 00000 n 
+0000892457 00000 n 
+0000892650 00000 n 
+0000892845 00000 n 
+0000893005 00000 n 
+0000006239 00000 f 
+0000006257 00000 f 
+0000895720 00000 n 
+0000893792 00000 n 
+0000890850 00000 n 
+0000889454 00000 n 
+0000893164 00000 n 
+0000893603 00000 n 
+0001173188 00000 n 
+0001162962 00000 n 
+0001173629 00000 n 
+0001172117 00000 n 
+0000895881 00000 n 
+0000896039 00000 n 
+0000896242 00000 n 
+0000896414 00000 n 
+0000896579 00000 n 
+0000896772 00000 n 
+0000896967 00000 n 
+0000006258 00000 f 
+0000006267 00000 f 
+0000897127 00000 n 
+0000897288 00000 n 
+0000897448 00000 n 
+0000897650 00000 n 
+0000897822 00000 n 
+0000897987 00000 n 
+0000898179 00000 n 
+0000898374 00000 n 
+0000006268 00000 f 
+0000006285 00000 f 
+0000901134 00000 n 
+0000898973 00000 n 
+0000895441 00000 n 
+0000893964 00000 n 
+0000898532 00000 n 
+0000898595 00000 n 
+0000898784 00000 n 
+0002101425 00000 n 
+0001173879 00000 n 
+0001186059 00000 n 
+0000901295 00000 n 
+0000901455 00000 n 
+0000901626 00000 n 
+0000901790 00000 n 
+0000901983 00000 n 
+0000902178 00000 n 
+0000006286 00000 f 
+0000006298 00000 f 
+0000902337 00000 n 
+0000902498 00000 n 
+0000902658 00000 n 
+0000902860 00000 n 
+0000903065 00000 n 
+0000903268 00000 n 
+0000903470 00000 n 
+0000903641 00000 n 
+0000903806 00000 n 
+0000903998 00000 n 
+0000904193 00000 n 
+0000006299 00000 f 
+0000006317 00000 f 
+0000904354 00000 n 
+0000905014 00000 n 
+0000900828 00000 n 
+0000899117 00000 n 
+0000904512 00000 n 
+0000904575 00000 n 
+0000904763 00000 n 
+0000904952 00000 n 
+0001187445 00000 n 
+0001009715 00000 n 
+0001185051 00000 n 
+0000906919 00000 n 
+0000907079 00000 n 
+0000907251 00000 n 
+0000907416 00000 n 
+0000907609 00000 n 
+0000907804 00000 n 
+0000006318 00000 f 
+0000006327 00000 f 
+0000907965 00000 n 
+0000908126 00000 n 
+0000908285 00000 n 
+0000908489 00000 n 
+0000908661 00000 n 
+0000908826 00000 n 
+0000909019 00000 n 
+0000909214 00000 n 
+0000006328 00000 f 
+0000006346 00000 f 
+0000909373 00000 n 
+0000909534 00000 n 
+0000912076 00000 n 
+0000912281 00000 n 
+0000912453 00000 n 
+0000910133 00000 n 
+0000906640 00000 n 
+0000905172 00000 n 
+0000909692 00000 n 
+0000909881 00000 n 
+0000910070 00000 n 
+0001187130 00000 n 
+0001016017 00000 n 
+0001186815 00000 n 
+0000912618 00000 n 
+0000912811 00000 n 
+0000913006 00000 n 
+0000006347 00000 f 
+0000006356 00000 f 
+0000913167 00000 n 
+0000913326 00000 n 
+0000913486 00000 n 
+0000913690 00000 n 
+0000913861 00000 n 
+0000914025 00000 n 
+0000914218 00000 n 
+0000914412 00000 n 
+0000006357 00000 f 
+0000006373 00000 f 
+0000914573 00000 n 
+0000914734 00000 n 
+0000914894 00000 n 
+0000915095 00000 n 
+0000915265 00000 n 
+0000917866 00000 n 
+0000915928 00000 n 
+0000911770 00000 n 
+0000910291 00000 n 
+0000915428 00000 n 
+0000915616 00000 n 
+0000915803 00000 n 
+0001185681 00000 n 
+0001185366 00000 n 
+0001186437 00000 n 
+0000006374 00000 f 
+0000006408 00000 f 
+0000918061 00000 n 
+0000918222 00000 n 
+0000918394 00000 n 
+0000918559 00000 n 
+0000918720 00000 n 
+0000918890 00000 n 
+0000919053 00000 n 
+0000919223 00000 n 
+0000921892 00000 n 
+0000922062 00000 n 
+0000922225 00000 n 
+0000922381 00000 n 
+0000922539 00000 n 
+0000919950 00000 n 
+0000917650 00000 n 
+0000916086 00000 n 
+0000919385 00000 n 
+0000919511 00000 n 
+0001169166 00000 n 
+0001197738 00000 n 
+0001197990 00000 n 
+0000922706 00000 n 
+0000922906 00000 n 
+0000923107 00000 n 
+0000923309 00000 n 
+0000923511 00000 n 
+0000923713 00000 n 
+0000923883 00000 n 
+0000924085 00000 n 
+0000924245 00000 n 
+0000924413 00000 n 
+0000924570 00000 n 
+0000924738 00000 n 
+0000006409 00000 f 
+0000006550 00000 f 
+0000927999 00000 n 
+0000925465 00000 n 
+0000921604 00000 n 
+0000920122 00000 n 
+0000924899 00000 n 
+0000925151 00000 n 
+0000925339 00000 n 
+0001197864 00000 n 
+0000929619 00000 n 
+0000933335 00000 n 
+0000933209 00000 n 
+0000929808 00000 n 
+0000933460 00000 n 
+0001214494 00000 n 
+0001213613 00000 n 
+0000928169 00000 n 
+0000928330 00000 n 
+0000928500 00000 n 
+0000928663 00000 n 
+0000928833 00000 n 
+0000928995 00000 n 
+0000929164 00000 n 
+0000929332 00000 n 
+0000929997 00000 n 
+0000927783 00000 n 
+0000925623 00000 n 
+0000929493 00000 n 
+0000929556 00000 n 
+0000929934 00000 n 
+0002101551 00000 n 
+0001206017 00000 n 
+0001205387 00000 n 
+0001206388 00000 n 
+0001207897 00000 n 
+0000931683 00000 n 
+0000931850 00000 n 
+0000932011 00000 n 
+0000932179 00000 n 
+0000932340 00000 n 
+0000932510 00000 n 
+0000932673 00000 n 
+0000932827 00000 n 
+0000932983 00000 n 
+0000935533 00000 n 
+0000933775 00000 n 
+0000931467 00000 n 
+0000930183 00000 n 
+0000933146 00000 n 
+0000933586 00000 n 
+0001215681 00000 n 
+0001215555 00000 n 
+0001208212 00000 n 
+0000935734 00000 n 
+0000935934 00000 n 
+0000936136 00000 n 
+0000936338 00000 n 
+0000936539 00000 n 
+0000936707 00000 n 
+0000936868 00000 n 
+0000937038 00000 n 
+0000937201 00000 n 
+0000937370 00000 n 
+0000938098 00000 n 
+0000935299 00000 n 
+0000933947 00000 n 
+0000937531 00000 n 
+0000937594 00000 n 
+0000937783 00000 n 
+0000937909 00000 n 
+0000937972 00000 n 
+0000940865 00000 n 
+0000940739 00000 n 
+0000940613 00000 n 
+0001265703 00000 n 
+0001264886 00000 n 
+0001254891 00000 n 
+0001249890 00000 n 
+0001256459 00000 n 
+0000939659 00000 n 
+0000939827 00000 n 
+0000939988 00000 n 
+0000940158 00000 n 
+0000940321 00000 n 
+0000940991 00000 n 
+0000939479 00000 n 
+0000938284 00000 n 
+0000940487 00000 n 
+0001266774 00000 n 
+0001258034 00000 n 
+0000942757 00000 n 
+0000942926 00000 n 
+0000943089 00000 n 
+0000943242 00000 n 
+0000943398 00000 n 
+0000943556 00000 n 
+0000943721 00000 n 
+0000943921 00000 n 
+0000944121 00000 n 
+0000944321 00000 n 
+0000944521 00000 n 
+0000944686 00000 n 
+0000944886 00000 n 
+0000945086 00000 n 
+0000945286 00000 n 
+0000945485 00000 n 
+0000945685 00000 n 
+0000947965 00000 n 
+0000948163 00000 n 
+0000948329 00000 n 
+0000948495 00000 n 
+0000948694 00000 n 
+0000948859 00000 n 
+0000949024 00000 n 
+0000949189 00000 n 
+0000949348 00000 n 
+0000949514 00000 n 
+0000946227 00000 n 
+0000942469 00000 n 
+0000941135 00000 n 
+0000945849 00000 n 
+0000945912 00000 n 
+0000946101 00000 n 
+0000946164 00000 n 
+0001256774 00000 n 
+0000954806 00000 n 
+0000950911 00000 n 
+0000951036 00000 n 
+0000951225 00000 n 
+0000954491 00000 n 
+0000954680 00000 n 
+0000957558 00000 n 
+0000957432 00000 n 
+0000961213 00000 n 
+0000949673 00000 n 
+0000949838 00000 n 
+0000950006 00000 n 
+0000950166 00000 n 
+0000950331 00000 n 
+0000950499 00000 n 
+0000952887 00000 n 
+0000006551 00000 f 
+0000006794 00000 f 
+0000953052 00000 n 
+0000951351 00000 n 
+0000947686 00000 n 
+0000946385 00000 n 
+0000950659 00000 n 
+0000950722 00000 n 
+0002088395 00000 n 
+0000951162 00000 n 
+0000961591 00000 n 
+0000961402 00000 n 
+0001693375 00000 n 
+0001692860 00000 n 
+0001670651 00000 n 
+0001670910 00000 n 
+0000953218 00000 n 
+0000953385 00000 n 
+0000953545 00000 n 
+0000953713 00000 n 
+0000953872 00000 n 
+0000954040 00000 n 
+0000954206 00000 n 
+0000956322 00000 n 
+0000956483 00000 n 
+0000956651 00000 n 
+0000954869 00000 n 
+0000952671 00000 n 
+0000951538 00000 n 
+0000954365 00000 n 
+0000954428 00000 n 
+0002101677 00000 n 
+0001671884 00000 n 
+0001677918 00000 n 
+0001694474 00000 n 
+0000956812 00000 n 
+0000956980 00000 n 
+0000957140 00000 n 
+0000957684 00000 n 
+0000956133 00000 n 
+0000955027 00000 n 
+0000957306 00000 n 
+0001669295 00000 n 
+0001678498 00000 n 
+0000959608 00000 n 
+0000959774 00000 n 
+0000959933 00000 n 
+0000960101 00000 n 
+0000960261 00000 n 
+0000960427 00000 n 
+0000960593 00000 n 
+0000960759 00000 n 
+0000960926 00000 n 
+0000969079 00000 n 
+0000969245 00000 n 
+0000961653 00000 n 
+0000959392 00000 n 
+0000957828 00000 n 
+0000961087 00000 n 
+0000961150 00000 n 
+0000961528 00000 n 
+0001694603 00000 n 
+0001678177 00000 n 
+0000969411 00000 n 
+0000969576 00000 n 
+0000969742 00000 n 
+0000969906 00000 n 
+0000970058 00000 n 
+0000970212 00000 n 
+0000961825 00000 n 
+0000962630 00000 n 
+0000962818 00000 n 
+0000962866 00000 n 
+0000963287 00000 n 
+0000963627 00000 n 
+0000973638 00000 n 
+0000973841 00000 n 
+0000974010 00000 n 
+0000974212 00000 n 
+0000974415 00000 n 
+0000974617 00000 n 
+0000974819 00000 n 
+0000975020 00000 n 
+0000975222 00000 n 
+0000975388 00000 n 
+0000975588 00000 n 
+0000975753 00000 n 
+0000975947 00000 n 
+0000976148 00000 n 
+0000976341 00000 n 
+0000976544 00000 n 
+0000976746 00000 n 
+0000976914 00000 n 
+0000977118 00000 n 
+0000977288 00000 n 
+0000977489 00000 n 
+0000977683 00000 n 
+0000977886 00000 n 
+0000978046 00000 n 
+0000978240 00000 n 
+0000978444 00000 n 
+0000970758 00000 n 
+0000968872 00000 n 
+0000967380 00000 n 
+0000970380 00000 n 
+0000970506 00000 n 
+0000970695 00000 n 
+0000978639 00000 n 
+0000978799 00000 n 
+0000978992 00000 n 
+0000979195 00000 n 
+0000979389 00000 n 
+0000979549 00000 n 
+0000979751 00000 n 
+0000979922 00000 n 
+0000980124 00000 n 
+0000980319 00000 n 
+0000980521 00000 n 
+0000980725 00000 n 
+0000980928 00000 n 
+0000981099 00000 n 
+0000981303 00000 n 
+0000981507 00000 n 
+0000981711 00000 n 
+0000981915 00000 n 
+0000982083 00000 n 
+0000982286 00000 n 
+0000982453 00000 n 
+0000982621 00000 n 
+0000982825 00000 n 
+0000983028 00000 n 
+0000983199 00000 n 
+0000983360 00000 n 
+0000983529 00000 n 
+0000983732 00000 n 
+0000983901 00000 n 
+0000984104 00000 n 
+0000984307 00000 n 
+0000984509 00000 n 
+0000984712 00000 n 
+0000984914 00000 n 
+0000985117 00000 n 
+0000985283 00000 n 
+0000985484 00000 n 
+0000985650 00000 n 
+0000985844 00000 n 
+0000986046 00000 n 
+0000986241 00000 n 
+0000986445 00000 n 
+0000986615 00000 n 
+0000986819 00000 n 
+0000990182 00000 n 
+0000990386 00000 n 
+0000990589 00000 n 
+0000990758 00000 n 
+0000987273 00000 n 
+0000972873 00000 n 
+0000970974 00000 n 
+0000987022 00000 n 
+0000987085 00000 n 
+0000987148 00000 n 
+0000987210 00000 n 
+0000994089 00000 n 
+0001042150 00000 n 
+0000998739 00000 n 
+0001021681 00000 n 
+0001032233 00000 n 
+0001026658 00000 n 
+0001037545 00000 n 
+0000998928 00000 n 
+0001026846 00000 n 
+0001032044 00000 n 
+0001009530 00000 n 
+0001021933 00000 n 
+0001003748 00000 n 
+0000990961 00000 n 
+0000991122 00000 n 
+0000991291 00000 n 
+0000991462 00000 n 
+0000991632 00000 n 
+0000991799 00000 n 
+0000992002 00000 n 
+0000992163 00000 n 
+0000992324 00000 n 
+0000992492 00000 n 
+0000992663 00000 n 
+0000992834 00000 n 
+0000992991 00000 n 
+0000993152 00000 n 
+0000993320 00000 n 
+0000993489 00000 n 
+0000996490 00000 n 
+0000996658 00000 n 
+0000996827 00000 n 
+0000996994 00000 n 
+0000997161 00000 n 
+0000997355 00000 n 
+0000994151 00000 n 
+0000989867 00000 n 
+0000987431 00000 n 
+0000993651 00000 n 
+0000993714 00000 n 
+0000993777 00000 n 
+0000993901 00000 n 
+0000993964 00000 n 
+0001719631 00000 n 
+0001698972 00000 n 
+0000997547 00000 n 
+0000997717 00000 n 
+0000997880 00000 n 
+0000998048 00000 n 
+0000998217 00000 n 
+0000998387 00000 n 
+0001001725 00000 n 
+0000998991 00000 n 
+0000996247 00000 n 
+0000994295 00000 n 
+0000998550 00000 n 
+0000998676 00000 n 
+0002101803 00000 n 
+0001723257 00000 n 
+0001734330 00000 n 
+0001001893 00000 n 
+0001002063 00000 n 
+0001002226 00000 n 
+0001002395 00000 n 
+0001002565 00000 n 
+0001002733 00000 n 
+0001002900 00000 n 
+0001003067 00000 n 
+0001003261 00000 n 
+0001003453 00000 n 
+0001003936 00000 n 
+0001001491 00000 n 
+0000999191 00000 n 
+0001003622 00000 n 
+0001003874 00000 n 
+0001738478 00000 n 
+0001006510 00000 n 
+0001006680 00000 n 
+0001006843 00000 n 
+0001007010 00000 n 
+0001007178 00000 n 
+0001007346 00000 n 
+0000006795 00000 f 
+0000006806 00000 f 
+0001007514 00000 n 
+0001007682 00000 n 
+0001007851 00000 n 
+0001008014 00000 n 
+0001008207 00000 n 
+0001008377 00000 n 
+0001008571 00000 n 
+0001008732 00000 n 
+0001008899 00000 n 
+0001009102 00000 n 
+0000006807 00000 f 
+0000006827 00000 f 
+0001009306 00000 n 
+0001009904 00000 n 
+0001006222 00000 n 
+0001004094 00000 n 
+0001009467 00000 n 
+0001009652 00000 n 
+0001009841 00000 n 
+0001734649 00000 n 
+0001748612 00000 n 
+0001012480 00000 n 
+0001012640 00000 n 
+0001012844 00000 n 
+0001013014 00000 n 
+0001013177 00000 n 
+0001013370 00000 n 
+0001013540 00000 n 
+0001013735 00000 n 
+0001013895 00000 n 
+0001014063 00000 n 
+0000006828 00000 f 
+0000006839 00000 f 
+0001014267 00000 n 
+0001014428 00000 n 
+0001014588 00000 n 
+0001014791 00000 n 
+0001014961 00000 n 
+0001015124 00000 n 
+0001015292 00000 n 
+0001015463 00000 n 
+0001015624 00000 n 
+0001015785 00000 n 
+0000006840 00000 f 
+0000006904 00000 f 
+0001018715 00000 n 
+0001016332 00000 n 
+0001012165 00000 n 
+0001010076 00000 n 
+0001015954 00000 n 
+0001016143 00000 n 
+0001750429 00000 n 
+0001751208 00000 n 
+0001018876 00000 n 
+0001019032 00000 n 
+0001019201 00000 n 
+0001019371 00000 n 
+0001019538 00000 n 
+0001019708 00000 n 
+0001019871 00000 n 
+0001020039 00000 n 
+0001020209 00000 n 
+0001020380 00000 n 
+0001020546 00000 n 
+0001020716 00000 n 
+0001020886 00000 n 
+0001021049 00000 n 
+0001021217 00000 n 
+0001021386 00000 n 
+0001022059 00000 n 
+0001018427 00000 n 
+0001016490 00000 n 
+0001021555 00000 n 
+0001021618 00000 n 
+0001021807 00000 n 
+0001021870 00000 n 
+0001749910 00000 n 
+0001735103 00000 n 
+0001024239 00000 n 
+0001024409 00000 n 
+0001024572 00000 n 
+0001024739 00000 n 
+0001024897 00000 n 
+0001025097 00000 n 
+0001025266 00000 n 
+0001025429 00000 n 
+0001025597 00000 n 
+0001025768 00000 n 
+0001025970 00000 n 
+0001026140 00000 n 
+0001026303 00000 n 
+0001029331 00000 n 
+0001026972 00000 n 
+0001023987 00000 n 
+0001022231 00000 n 
+0001026469 00000 n 
+0001026784 00000 n 
+0001722348 00000 n 
+0001737376 00000 n 
+0001738024 00000 n 
+0001029535 00000 n 
+0001029705 00000 n 
+0001029868 00000 n 
+0001030036 00000 n 
+0001030203 00000 n 
+0001030371 00000 n 
+0001030575 00000 n 
+0001030779 00000 n 
+0000006905 00000 f 
+0000000000 00000 f 
+0001030947 00000 n 
+0001031115 00000 n 
+0001031285 00000 n 
+0001031448 00000 n 
+0001031616 00000 n 
+0001031786 00000 n 
+0001032358 00000 n 
+0001029061 00000 n 
+0001027144 00000 n 
+0001031981 00000 n 
+0001032170 00000 n 
+0002101929 00000 n 
+0001748158 00000 n 
+0001749001 00000 n 
+0001034306 00000 n 
+0001034476 00000 n 
+0001034639 00000 n 
+0001034832 00000 n 
+0001035002 00000 n 
+0001035161 00000 n 
+0001035332 00000 n 
+0001035499 00000 n 
+0001035702 00000 n 
+0001035871 00000 n 
+0001036033 00000 n 
+0001036201 00000 n 
+0001036405 00000 n 
+0001036573 00000 n 
+0001036773 00000 n 
+0001036943 00000 n 
+0001039739 00000 n 
+0001039908 00000 n 
+0001040077 00000 n 
+0001040248 00000 n 
+0001040418 00000 n 
+0001040581 00000 n 
+0001037607 00000 n 
+0001034027 00000 n 
+0001032530 00000 n 
+0001037106 00000 n 
+0001037169 00000 n 
+0001751857 00000 n 
+0001735622 00000 n 
+0001737700 00000 n 
+0001040751 00000 n 
+0001040908 00000 n 
+0001041078 00000 n 
+0001041241 00000 n 
+0001041411 00000 n 
+0001041581 00000 n 
+0001041743 00000 n 
+0001042276 00000 n 
+0001039487 00000 n 
+0001037765 00000 n 
+0001041898 00000 n 
+0001720148 00000 n 
+0001720019 00000 n 
+0001719890 00000 n 
+0001042903 00000 n 
+0001042717 00000 n 
+0001042420 00000 n 
+0001042840 00000 n 
+0001043859 00000 n 
+0001044066 00000 n 
+0001044271 00000 n 
+0001044458 00000 n 
+0001047318 00000 n 
+0001047489 00000 n 
+0001047658 00000 n 
+0001047860 00000 n 
+0001048066 00000 n 
+0001048272 00000 n 
+0001048476 00000 n 
+0001048683 00000 n 
+0001048890 00000 n 
+0001049099 00000 n 
+0001049306 00000 n 
+0001049512 00000 n 
+0001049720 00000 n 
+0001049929 00000 n 
+0001050138 00000 n 
+0001050347 00000 n 
+0001050554 00000 n 
+0001050762 00000 n 
+0001050971 00000 n 
+0001045331 00000 n 
+0001043688 00000 n 
+0001042977 00000 n 
+0001044638 00000 n 
+0001044764 00000 n 
+0001045016 00000 n 
+0001053698 00000 n 
+0001051180 00000 n 
+0001051389 00000 n 
+0001051598 00000 n 
+0001051807 00000 n 
+0001052013 00000 n 
+0001052221 00000 n 
+0001052428 00000 n 
+0001052634 00000 n 
+0001052842 00000 n 
+0001053048 00000 n 
+0001058536 00000 n 
+0001046922 00000 n 
+0001045461 00000 n 
+0001053257 00000 n 
+0001053383 00000 n 
+0001053446 00000 n 
+0001053509 00000 n 
+0001053572 00000 n 
+0001053635 00000 n 
+0001053761 00000 n 
+0001053887 00000 n 
+0001053950 00000 n 
+0001054013 00000 n 
+0001054076 00000 n 
+0001054139 00000 n 
+0001054202 00000 n 
+0001054265 00000 n 
+0001054328 00000 n 
+0001054391 00000 n 
+0001054454 00000 n 
+0001054517 00000 n 
+0001054580 00000 n 
+0001054643 00000 n 
+0001054706 00000 n 
+0001054769 00000 n 
+0001054832 00000 n 
+0001054895 00000 n 
+0001054958 00000 n 
+0001055084 00000 n 
+0001055147 00000 n 
+0001055210 00000 n 
+0001055273 00000 n 
+0001055336 00000 n 
+0001055399 00000 n 
+0001055462 00000 n 
+0001055525 00000 n 
+0001055588 00000 n 
+0001055651 00000 n 
+0001055714 00000 n 
+0001055777 00000 n 
+0001055840 00000 n 
+0001055903 00000 n 
+0001055966 00000 n 
+0001056028 00000 n 
+0001056090 00000 n 
+0001056152 00000 n 
+0001056214 00000 n 
+0001056275 00000 n 
+0001056337 00000 n 
+0001056461 00000 n 
+0001056523 00000 n 
+0001056586 00000 n 
+0001056712 00000 n 
+0001056775 00000 n 
+0001056838 00000 n 
+0001056901 00000 n 
+0001056964 00000 n 
+0001057027 00000 n 
+0001057090 00000 n 
+0001057153 00000 n 
+0001057216 00000 n 
+0001057279 00000 n 
+0001057342 00000 n 
+0001057405 00000 n 
+0001057468 00000 n 
+0001057531 00000 n 
+0001057594 00000 n 
+0001057657 00000 n 
+0001057720 00000 n 
+0001057783 00000 n 
+0001057846 00000 n 
+0001057909 00000 n 
+0001057972 00000 n 
+0001058035 00000 n 
+0001058098 00000 n 
+0001058161 00000 n 
+0001058224 00000 n 
+0001058287 00000 n 
+0001058350 00000 n 
+0001058412 00000 n 
+0001058474 00000 n 
+0001060203 00000 n 
+0001060408 00000 n 
+0001060614 00000 n 
+0001060799 00000 n 
+0001060977 00000 n 
+0001061145 00000 n 
+0001061314 00000 n 
+0001061516 00000 n 
+0001061723 00000 n 
+0001061930 00000 n 
+0001062134 00000 n 
+0001062339 00000 n 
+0001062546 00000 n 
+0001062750 00000 n 
+0001062955 00000 n 
+0001063162 00000 n 
+0001063365 00000 n 
+0001066399 00000 n 
+0001059915 00000 n 
+0001058638 00000 n 
+0001063570 00000 n 
+0001063633 00000 n 
+0001063696 00000 n 
+0001063759 00000 n 
+0001063822 00000 n 
+0001063885 00000 n 
+0001063948 00000 n 
+0001064011 00000 n 
+0001064073 00000 n 
+0001064261 00000 n 
+0001064387 00000 n 
+0001064639 00000 n 
+0001064702 00000 n 
+0001064765 00000 n 
+0001064828 00000 n 
+0001064891 00000 n 
+0001064954 00000 n 
+0001065080 00000 n 
+0001065143 00000 n 
+0001065206 00000 n 
+0001065269 00000 n 
+0001065395 00000 n 
+0001065458 00000 n 
+0001065521 00000 n 
+0001065584 00000 n 
+0001065647 00000 n 
+0001065710 00000 n 
+0001065773 00000 n 
+0001065836 00000 n 
+0001065899 00000 n 
+0001065962 00000 n 
+0001066025 00000 n 
+0001066151 00000 n 
+0001066213 00000 n 
+0001066275 00000 n 
+0002102055 00000 n 
+0001068195 00000 n 
+0001068369 00000 n 
+0001068529 00000 n 
+0001068690 00000 n 
+0001068859 00000 n 
+0001069023 00000 n 
+0001069181 00000 n 
+0001069342 00000 n 
+0001069514 00000 n 
+0001069689 00000 n 
+0001069895 00000 n 
+0001070104 00000 n 
+0001070310 00000 n 
+0001070519 00000 n 
+0001070725 00000 n 
+0001070934 00000 n 
+0001071139 00000 n 
+0001071348 00000 n 
+0001071552 00000 n 
+0001071759 00000 n 
+0001071963 00000 n 
+0001072171 00000 n 
+0001072375 00000 n 
+0001072583 00000 n 
+0001072788 00000 n 
+0001072996 00000 n 
+0001073201 00000 n 
+0001073407 00000 n 
+0001073613 00000 n 
+0001073822 00000 n 
+0001074028 00000 n 
+0001074236 00000 n 
+0001074442 00000 n 
+0001074651 00000 n 
+0001074857 00000 n 
+0001075066 00000 n 
+0001075272 00000 n 
+0001075481 00000 n 
+0001075655 00000 n 
+0001075829 00000 n 
+0001079342 00000 n 
+0001067700 00000 n 
+0001066515 00000 n 
+0001076003 00000 n 
+0001076129 00000 n 
+0001076192 00000 n 
+0001076381 00000 n 
+0001076444 00000 n 
+0001076507 00000 n 
+0001076570 00000 n 
+0001076633 00000 n 
+0001076696 00000 n 
+0001076822 00000 n 
+0001076885 00000 n 
+0001077011 00000 n 
+0001077137 00000 n 
+0001077263 00000 n 
+0001077389 00000 n 
+0001077515 00000 n 
+0001077641 00000 n 
+0001077767 00000 n 
+0001077893 00000 n 
+0001078019 00000 n 
+0001078145 00000 n 
+0001078271 00000 n 
+0001078397 00000 n 
+0001078523 00000 n 
+0001078649 00000 n 
+0001078712 00000 n 
+0001078775 00000 n 
+0001078838 00000 n 
+0001078901 00000 n 
+0001078964 00000 n 
+0001079027 00000 n 
+0001079090 00000 n 
+0001079153 00000 n 
+0001079216 00000 n 
+0001080878 00000 n 
+0001081051 00000 n 
+0001081208 00000 n 
+0001081376 00000 n 
+0001081548 00000 n 
+0001081707 00000 n 
+0001081874 00000 n 
+0001082038 00000 n 
+0001082197 00000 n 
+0001082367 00000 n 
+0001082539 00000 n 
+0001082743 00000 n 
+0001082950 00000 n 
+0001083154 00000 n 
+0001083361 00000 n 
+0001083533 00000 n 
+0001083705 00000 n 
+0001083877 00000 n 
+0001087386 00000 n 
+0001087565 00000 n 
+0001087737 00000 n 
+0001086020 00000 n 
+0001080581 00000 n 
+0001079472 00000 n 
+0001084077 00000 n 
+0001084203 00000 n 
+0001084266 00000 n 
+0001084455 00000 n 
+0001084518 00000 n 
+0001084581 00000 n 
+0001084644 00000 n 
+0001084707 00000 n 
+0001084770 00000 n 
+0001084896 00000 n 
+0001084958 00000 n 
+0001085082 00000 n 
+0001085206 00000 n 
+0001085268 00000 n 
+0001085330 00000 n 
+0001085391 00000 n 
+0001085453 00000 n 
+0001085516 00000 n 
+0001085579 00000 n 
+0001085642 00000 n 
+0001085831 00000 n 
+0001085957 00000 n 
+0001087900 00000 n 
+0001088097 00000 n 
+0001088297 00000 n 
+0001088477 00000 n 
+0001091843 00000 n 
+0001092007 00000 n 
+0001090476 00000 n 
+0001087188 00000 n 
+0001086150 00000 n 
+0001088649 00000 n 
+0001088775 00000 n 
+0001088901 00000 n 
+0001088964 00000 n 
+0001089027 00000 n 
+0001089090 00000 n 
+0001089153 00000 n 
+0001089216 00000 n 
+0001089279 00000 n 
+0001089342 00000 n 
+0001089405 00000 n 
+0001089468 00000 n 
+0001089531 00000 n 
+0001089594 00000 n 
+0001089657 00000 n 
+0001089720 00000 n 
+0001089783 00000 n 
+0001089846 00000 n 
+0001089909 00000 n 
+0001089972 00000 n 
+0001090161 00000 n 
+0001090287 00000 n 
+0001090413 00000 n 
+0001094124 00000 n 
+0001092204 00000 n 
+0001092403 00000 n 
+0001092583 00000 n 
+0001092756 00000 n 
+0001092920 00000 n 
+0001097458 00000 n 
+0001096073 00000 n 
+0001091645 00000 n 
+0001090592 00000 n 
+0001093116 00000 n 
+0001093242 00000 n 
+0001093305 00000 n 
+0001093368 00000 n 
+0001093431 00000 n 
+0001093494 00000 n 
+0001093557 00000 n 
+0001093620 00000 n 
+0001093683 00000 n 
+0001093746 00000 n 
+0001093809 00000 n 
+0001093872 00000 n 
+0001093935 00000 n 
+0001093998 00000 n 
+0001094061 00000 n 
+0001094187 00000 n 
+0001094250 00000 n 
+0001094313 00000 n 
+0001094502 00000 n 
+0001094628 00000 n 
+0001094754 00000 n 
+0001094880 00000 n 
+0001094943 00000 n 
+0001095006 00000 n 
+0001095069 00000 n 
+0001095132 00000 n 
+0001095195 00000 n 
+0001095258 00000 n 
+0001095321 00000 n 
+0001095384 00000 n 
+0001095447 00000 n 
+0001095510 00000 n 
+0001095573 00000 n 
+0001095636 00000 n 
+0001095699 00000 n 
+0001095762 00000 n 
+0001095825 00000 n 
+0001095887 00000 n 
+0001095949 00000 n 
+0001097657 00000 n 
+0001097836 00000 n 
+0001098008 00000 n 
+0001098172 00000 n 
+0001098367 00000 n 
+0001101549 00000 n 
+0001097269 00000 n 
+0001096189 00000 n 
+0001098529 00000 n 
+0001098655 00000 n 
+0001098781 00000 n 
+0001098907 00000 n 
+0001099033 00000 n 
+0001099096 00000 n 
+0001099159 00000 n 
+0001099222 00000 n 
+0001099285 00000 n 
+0001099348 00000 n 
+0001099411 00000 n 
+0001099474 00000 n 
+0001099537 00000 n 
+0001099600 00000 n 
+0001099663 00000 n 
+0001099726 00000 n 
+0001099789 00000 n 
+0001099852 00000 n 
+0001099915 00000 n 
+0001099978 00000 n 
+0001100041 00000 n 
+0001100104 00000 n 
+0001100293 00000 n 
+0001100419 00000 n 
+0001100482 00000 n 
+0001100545 00000 n 
+0001100608 00000 n 
+0001100671 00000 n 
+0001100734 00000 n 
+0001100797 00000 n 
+0001100860 00000 n 
+0001100923 00000 n 
+0001100986 00000 n 
+0001101049 00000 n 
+0001101112 00000 n 
+0001101175 00000 n 
+0001101238 00000 n 
+0001101301 00000 n 
+0001101363 00000 n 
+0001101425 00000 n 
+0001103057 00000 n 
+0001103219 00000 n 
+0001103381 00000 n 
+0001103583 00000 n 
+0001103786 00000 n 
+0001103988 00000 n 
+0001104191 00000 n 
+0001104393 00000 n 
+0001104597 00000 n 
+0001104768 00000 n 
+0001104928 00000 n 
+0001105099 00000 n 
+0001105269 00000 n 
+0001105430 00000 n 
+0001105591 00000 n 
+0001105755 00000 n 
+0001105916 00000 n 
+0001106083 00000 n 
+0001110533 00000 n 
+0001110702 00000 n 
+0001110871 00000 n 
+0001111039 00000 n 
+0001111241 00000 n 
+0001108705 00000 n 
+0001102760 00000 n 
+0001101665 00000 n 
+0001106253 00000 n 
+0001106505 00000 n 
+0001106567 00000 n 
+0001106630 00000 n 
+0001106693 00000 n 
+0001106819 00000 n 
+0001106882 00000 n 
+0001106945 00000 n 
+0001107071 00000 n 
+0001107134 00000 n 
+0001107197 00000 n 
+0001107260 00000 n 
+0001107386 00000 n 
+0001107449 00000 n 
+0001107512 00000 n 
+0001107575 00000 n 
+0001107763 00000 n 
+0001107826 00000 n 
+0001108015 00000 n 
+0001108078 00000 n 
+0001108141 00000 n 
+0001108204 00000 n 
+0001108267 00000 n 
+0001108330 00000 n 
+0001108393 00000 n 
+0001108519 00000 n 
+0001108581 00000 n 
+0001108643 00000 n 
+0002102181 00000 n 
+0001111446 00000 n 
+0001111625 00000 n 
+0001111785 00000 n 
+0001111946 00000 n 
+0001112109 00000 n 
+0001112273 00000 n 
+0001112433 00000 n 
+0001112610 00000 n 
+0001112790 00000 n 
+0001113001 00000 n 
+0001113215 00000 n 
+0001113426 00000 n 
+0001113640 00000 n 
+0001113851 00000 n 
+0001114065 00000 n 
+0001114276 00000 n 
+0001118910 00000 n 
+0001116998 00000 n 
+0001110209 00000 n 
+0001108835 00000 n 
+0001114489 00000 n 
+0001114552 00000 n 
+0001114615 00000 n 
+0001114678 00000 n 
+0001114741 00000 n 
+0001114804 00000 n 
+0001114867 00000 n 
+0001114930 00000 n 
+0001114992 00000 n 
+0001115054 00000 n 
+0001115177 00000 n 
+0001115239 00000 n 
+0001115301 00000 n 
+0001115363 00000 n 
+0001115425 00000 n 
+0001115613 00000 n 
+0001115676 00000 n 
+0001115864 00000 n 
+0001115927 00000 n 
+0001115990 00000 n 
+0001116053 00000 n 
+0001116179 00000 n 
+0001116305 00000 n 
+0001116431 00000 n 
+0001116557 00000 n 
+0001116683 00000 n 
+0001116746 00000 n 
+0001116809 00000 n 
+0001119103 00000 n 
+0001119276 00000 n 
+0001119441 00000 n 
+0001119598 00000 n 
+0001119760 00000 n 
+0001119917 00000 n 
+0001120107 00000 n 
+0001120285 00000 n 
+0001120492 00000 n 
+0001120706 00000 n 
+0001120920 00000 n 
+0001121134 00000 n 
+0001121348 00000 n 
+0001125267 00000 n 
+0001118649 00000 n 
+0001117128 00000 n 
+0001121561 00000 n 
+0001121624 00000 n 
+0001121750 00000 n 
+0001122002 00000 n 
+0001122065 00000 n 
+0001122128 00000 n 
+0001122191 00000 n 
+0001122254 00000 n 
+0001122317 00000 n 
+0001122380 00000 n 
+0001122443 00000 n 
+0001122506 00000 n 
+0001122569 00000 n 
+0001122632 00000 n 
+0001122695 00000 n 
+0001122758 00000 n 
+0001122821 00000 n 
+0001122884 00000 n 
+0001122947 00000 n 
+0001123009 00000 n 
+0001123071 00000 n 
+0001123133 00000 n 
+0001123195 00000 n 
+0001123257 00000 n 
+0001123319 00000 n 
+0001123381 00000 n 
+0001123443 00000 n 
+0001123506 00000 n 
+0001123569 00000 n 
+0001123632 00000 n 
+0001123695 00000 n 
+0001123758 00000 n 
+0001123821 00000 n 
+0001123884 00000 n 
+0001123947 00000 n 
+0001124010 00000 n 
+0001124073 00000 n 
+0001124136 00000 n 
+0001124199 00000 n 
+0001124262 00000 n 
+0001124325 00000 n 
+0001124388 00000 n 
+0001124451 00000 n 
+0001124514 00000 n 
+0001124577 00000 n 
+0001124640 00000 n 
+0001124703 00000 n 
+0001124766 00000 n 
+0001124829 00000 n 
+0001124892 00000 n 
+0001124955 00000 n 
+0001125018 00000 n 
+0001125081 00000 n 
+0001125143 00000 n 
+0001125205 00000 n 
+0001127336 00000 n 
+0001127538 00000 n 
+0001127741 00000 n 
+0001127943 00000 n 
+0001128147 00000 n 
+0001128349 00000 n 
+0001128554 00000 n 
+0001128729 00000 n 
+0001128938 00000 n 
+0001129147 00000 n 
+0001129356 00000 n 
+0001129565 00000 n 
+0001129774 00000 n 
+0001129983 00000 n 
+0001130192 00000 n 
+0001130401 00000 n 
+0001130610 00000 n 
+0001130781 00000 n 
+0001130983 00000 n 
+0001131188 00000 n 
+0001131388 00000 n 
+0001137122 00000 n 
+0001127012 00000 n 
+0001125369 00000 n 
+0001131591 00000 n 
+0001131654 00000 n 
+0001131717 00000 n 
+0001131780 00000 n 
+0001131843 00000 n 
+0001131906 00000 n 
+0001131969 00000 n 
+0001132032 00000 n 
+0001132094 00000 n 
+0001132156 00000 n 
+0001132218 00000 n 
+0001132279 00000 n 
+0001132341 00000 n 
+0001132403 00000 n 
+0001132527 00000 n 
+0001132589 00000 n 
+0001132652 00000 n 
+0001132715 00000 n 
+0001132778 00000 n 
+0001132841 00000 n 
+0001132904 00000 n 
+0001132967 00000 n 
+0001133030 00000 n 
+0001133093 00000 n 
+0001133156 00000 n 
+0001133219 00000 n 
+0001133282 00000 n 
+0001133345 00000 n 
+0001133408 00000 n 
+0001133534 00000 n 
+0001133597 00000 n 
+0001133660 00000 n 
+0001133723 00000 n 
+0001133786 00000 n 
+0001133849 00000 n 
+0001133912 00000 n 
+0001133975 00000 n 
+0001134038 00000 n 
+0001134101 00000 n 
+0001134227 00000 n 
+0001134290 00000 n 
+0001134353 00000 n 
+0001134416 00000 n 
+0001134479 00000 n 
+0001134542 00000 n 
+0001134605 00000 n 
+0001134668 00000 n 
+0001134731 00000 n 
+0001134794 00000 n 
+0001134857 00000 n 
+0001134920 00000 n 
+0001134983 00000 n 
+0001135046 00000 n 
+0001135109 00000 n 
+0001135172 00000 n 
+0001135235 00000 n 
+0001135298 00000 n 
+0001135361 00000 n 
+0001135424 00000 n 
+0001135487 00000 n 
+0001135550 00000 n 
+0001135613 00000 n 
+0001135676 00000 n 
+0001135739 00000 n 
+0001135802 00000 n 
+0001135865 00000 n 
+0001135928 00000 n 
+0001135991 00000 n 
+0001136054 00000 n 
+0001136117 00000 n 
+0001136180 00000 n 
+0001136243 00000 n 
+0001136306 00000 n 
+0001136369 00000 n 
+0001136432 00000 n 
+0001136495 00000 n 
+0001136558 00000 n 
+0001136684 00000 n 
+0001136747 00000 n 
+0001136810 00000 n 
+0001136873 00000 n 
+0001136936 00000 n 
+0001137060 00000 n 
+0001139133 00000 n 
+0001139304 00000 n 
+0001139506 00000 n 
+0001139711 00000 n 
+0001139913 00000 n 
+0001140118 00000 n 
+0001140320 00000 n 
+0001140525 00000 n 
+0001140727 00000 n 
+0001140932 00000 n 
+0001141103 00000 n 
+0001141304 00000 n 
+0001141509 00000 n 
+0001141684 00000 n 
+0001141892 00000 n 
+0001142100 00000 n 
+0001142302 00000 n 
+0001142507 00000 n 
+0001142686 00000 n 
+0001142886 00000 n 
+0001148558 00000 n 
+0001138818 00000 n 
+0001137210 00000 n 
+0001143089 00000 n 
+0001143152 00000 n 
+0001143215 00000 n 
+0001143278 00000 n 
+0001143341 00000 n 
+0001143404 00000 n 
+0001143467 00000 n 
+0001143530 00000 n 
+0001143592 00000 n 
+0001143654 00000 n 
+0001143716 00000 n 
+0001143777 00000 n 
+0001143839 00000 n 
+0001143901 00000 n 
+0001143963 00000 n 
+0001144025 00000 n 
+0001144087 00000 n 
+0001144150 00000 n 
+0001144276 00000 n 
+0001144339 00000 n 
+0001144402 00000 n 
+0001144465 00000 n 
+0001144528 00000 n 
+0001144591 00000 n 
+0001144654 00000 n 
+0001144717 00000 n 
+0001144780 00000 n 
+0001144843 00000 n 
+0001144906 00000 n 
+0001145032 00000 n 
+0001145095 00000 n 
+0001145158 00000 n 
+0001145221 00000 n 
+0001145284 00000 n 
+0001145347 00000 n 
+0001145410 00000 n 
+0001145473 00000 n 
+0001145536 00000 n 
+0001145662 00000 n 
+0001145725 00000 n 
+0001145788 00000 n 
+0001145851 00000 n 
+0001145977 00000 n 
+0001146040 00000 n 
+0001146103 00000 n 
+0001146166 00000 n 
+0001146229 00000 n 
+0001146292 00000 n 
+0001146355 00000 n 
+0001146418 00000 n 
+0001146481 00000 n 
+0001146544 00000 n 
+0001146607 00000 n 
+0001146733 00000 n 
+0001146796 00000 n 
+0001146859 00000 n 
+0001146922 00000 n 
+0001146985 00000 n 
+0001147048 00000 n 
+0001147111 00000 n 
+0001147174 00000 n 
+0001147237 00000 n 
+0001147300 00000 n 
+0001147426 00000 n 
+0001147489 00000 n 
+0001147552 00000 n 
+0001147615 00000 n 
+0001147678 00000 n 
+0001147741 00000 n 
+0001147804 00000 n 
+0001147867 00000 n 
+0001147930 00000 n 
+0001147993 00000 n 
+0001148056 00000 n 
+0001148119 00000 n 
+0001148182 00000 n 
+0001148245 00000 n 
+0001148308 00000 n 
+0001148371 00000 n 
+0001148496 00000 n 
+0001150293 00000 n 
+0001150464 00000 n 
+0001150624 00000 n 
+0001150795 00000 n 
+0001150952 00000 n 
+0001151113 00000 n 
+0001151268 00000 n 
+0001151432 00000 n 
+0001151601 00000 n 
+0001156029 00000 n 
+0001156183 00000 n 
+0001156340 00000 n 
+0001156500 00000 n 
+0001156668 00000 n 
+0001154335 00000 n 
+0001150077 00000 n 
+0001148646 00000 n 
+0001151766 00000 n 
+0001151829 00000 n 
+0001151892 00000 n 
+0001151955 00000 n 
+0001152018 00000 n 
+0001152081 00000 n 
+0001152144 00000 n 
+0001152207 00000 n 
+0001152269 00000 n 
+0001152331 00000 n 
+0001152393 00000 n 
+0001152454 00000 n 
+0001152516 00000 n 
+0001152578 00000 n 
+0001152640 00000 n 
+0001152702 00000 n 
+0001152764 00000 n 
+0001152827 00000 n 
+0001152890 00000 n 
+0001152953 00000 n 
+0001153016 00000 n 
+0001153079 00000 n 
+0001153268 00000 n 
+0001153331 00000 n 
+0001153519 00000 n 
+0001153582 00000 n 
+0001153645 00000 n 
+0001153708 00000 n 
+0001153771 00000 n 
+0001153834 00000 n 
+0001153897 00000 n 
+0001153960 00000 n 
+0001154023 00000 n 
+0001154086 00000 n 
+0001154149 00000 n 
+0001154211 00000 n 
+0001154273 00000 n 
+0001156839 00000 n 
+0001157013 00000 n 
+0001157183 00000 n 
+0001157353 00000 n 
+0001157527 00000 n 
+0001157726 00000 n 
+0001157929 00000 n 
+0001158136 00000 n 
+0001165234 00000 n 
+0001163025 00000 n 
+0001155777 00000 n 
+0001154465 00000 n 
+0001158310 00000 n 
+0001158373 00000 n 
+0001158436 00000 n 
+0001158499 00000 n 
+0001158562 00000 n 
+0001158625 00000 n 
+0001158688 00000 n 
+0001158751 00000 n 
+0001158875 00000 n 
+0001158937 00000 n 
+0001158998 00000 n 
+0001159060 00000 n 
+0001159122 00000 n 
+0001159184 00000 n 
+0001159246 00000 n 
+0001159308 00000 n 
+0001159371 00000 n 
+0001159434 00000 n 
+0001159497 00000 n 
+0001159560 00000 n 
+0001159623 00000 n 
+0001159686 00000 n 
+0001159749 00000 n 
+0001159812 00000 n 
+0001159875 00000 n 
+0001159938 00000 n 
+0001160001 00000 n 
+0001160064 00000 n 
+0001160127 00000 n 
+0001160190 00000 n 
+0001160253 00000 n 
+0001160316 00000 n 
+0001160379 00000 n 
+0001160442 00000 n 
+0001160505 00000 n 
+0001160568 00000 n 
+0001160631 00000 n 
+0001160694 00000 n 
+0001160757 00000 n 
+0001160820 00000 n 
+0001160883 00000 n 
+0001160946 00000 n 
+0001161009 00000 n 
+0001161072 00000 n 
+0001161135 00000 n 
+0001161198 00000 n 
+0001161261 00000 n 
+0001161324 00000 n 
+0001161387 00000 n 
+0001161450 00000 n 
+0001161513 00000 n 
+0001161576 00000 n 
+0001161639 00000 n 
+0001161702 00000 n 
+0001161765 00000 n 
+0001161828 00000 n 
+0001161891 00000 n 
+0001161954 00000 n 
+0001162017 00000 n 
+0001162080 00000 n 
+0001162143 00000 n 
+0001162206 00000 n 
+0001162332 00000 n 
+0001162395 00000 n 
+0001162458 00000 n 
+0001162521 00000 n 
+0001162584 00000 n 
+0001162647 00000 n 
+0001162710 00000 n 
+0001162773 00000 n 
+0002102307 00000 n 
+0001165390 00000 n 
+0001165546 00000 n 
+0001165746 00000 n 
+0001165950 00000 n 
+0001166145 00000 n 
+0001166338 00000 n 
+0001166532 00000 n 
+0001166724 00000 n 
+0001166925 00000 n 
+0001167129 00000 n 
+0001167324 00000 n 
+0001167525 00000 n 
+0001167728 00000 n 
+0001167929 00000 n 
+0001168131 00000 n 
+0001168330 00000 n 
+0001168521 00000 n 
+0001168722 00000 n 
+0001175693 00000 n 
+0001173941 00000 n 
+0001164928 00000 n 
+0001163113 00000 n 
+0001168914 00000 n 
+0001169040 00000 n 
+0001169103 00000 n 
+0001169229 00000 n 
+0001169292 00000 n 
+0001169355 00000 n 
+0001169418 00000 n 
+0001169481 00000 n 
+0001169544 00000 n 
+0001169607 00000 n 
+0001169670 00000 n 
+0001169733 00000 n 
+0001169796 00000 n 
+0001169859 00000 n 
+0001169922 00000 n 
+0001169985 00000 n 
+0001170048 00000 n 
+0001170111 00000 n 
+0001170174 00000 n 
+0001170237 00000 n 
+0001170300 00000 n 
+0001170363 00000 n 
+0001170426 00000 n 
+0001170489 00000 n 
+0001170552 00000 n 
+0001170615 00000 n 
+0001170678 00000 n 
+0001170741 00000 n 
+0001170804 00000 n 
+0001170867 00000 n 
+0001170930 00000 n 
+0001170993 00000 n 
+0001171056 00000 n 
+0001171119 00000 n 
+0001171182 00000 n 
+0001171245 00000 n 
+0001171308 00000 n 
+0001171371 00000 n 
+0001171434 00000 n 
+0001171497 00000 n 
+0001171560 00000 n 
+0001171622 00000 n 
+0001171684 00000 n 
+0001171746 00000 n 
+0001171808 00000 n 
+0001171869 00000 n 
+0001171931 00000 n 
+0001171993 00000 n 
+0001172055 00000 n 
+0001172180 00000 n 
+0001172243 00000 n 
+0001172306 00000 n 
+0001172369 00000 n 
+0001172432 00000 n 
+0001172495 00000 n 
+0001172558 00000 n 
+0001172621 00000 n 
+0001172684 00000 n 
+0001172747 00000 n 
+0001172810 00000 n 
+0001172873 00000 n 
+0001172936 00000 n 
+0001172999 00000 n 
+0001173062 00000 n 
+0001173125 00000 n 
+0001173251 00000 n 
+0001173314 00000 n 
+0001173377 00000 n 
+0001173440 00000 n 
+0001173503 00000 n 
+0001173566 00000 n 
+0001173692 00000 n 
+0001173755 00000 n 
+0001173817 00000 n 
+0001175887 00000 n 
+0001176088 00000 n 
+0001176282 00000 n 
+0001176485 00000 n 
+0001176680 00000 n 
+0001176881 00000 n 
+0001177074 00000 n 
+0001177277 00000 n 
+0001177471 00000 n 
+0001177672 00000 n 
+0001177866 00000 n 
+0001178069 00000 n 
+0001178264 00000 n 
+0001178464 00000 n 
+0001178658 00000 n 
+0001178861 00000 n 
+0001179056 00000 n 
+0001179254 00000 n 
+0001179448 00000 n 
+0001179649 00000 n 
+0001179844 00000 n 
+0001180045 00000 n 
+0001180239 00000 n 
+0001180442 00000 n 
+0001180637 00000 n 
+0001180838 00000 n 
+0001181032 00000 n 
+0001181235 00000 n 
+0001181430 00000 n 
+0001181631 00000 n 
+0001181825 00000 n 
+0001182028 00000 n 
+0001182223 00000 n 
+0001187883 00000 n 
+0001175252 00000 n 
+0001174043 00000 n 
+0001182415 00000 n 
+0001182478 00000 n 
+0001182541 00000 n 
+0001182604 00000 n 
+0001182667 00000 n 
+0001182730 00000 n 
+0001182793 00000 n 
+0001182856 00000 n 
+0001182918 00000 n 
+0001182980 00000 n 
+0001183042 00000 n 
+0001183103 00000 n 
+0001183165 00000 n 
+0001183227 00000 n 
+0001183289 00000 n 
+0001183351 00000 n 
+0001183413 00000 n 
+0001183476 00000 n 
+0001183539 00000 n 
+0001183602 00000 n 
+0001183665 00000 n 
+0001183728 00000 n 
+0001183791 00000 n 
+0001183854 00000 n 
+0001183917 00000 n 
+0001183980 00000 n 
+0001184043 00000 n 
+0001184106 00000 n 
+0001184169 00000 n 
+0001184232 00000 n 
+0001184295 00000 n 
+0001184358 00000 n 
+0001184421 00000 n 
+0001184484 00000 n 
+0001184547 00000 n 
+0001184610 00000 n 
+0001184673 00000 n 
+0001184736 00000 n 
+0001184799 00000 n 
+0001184862 00000 n 
+0001184925 00000 n 
+0001184988 00000 n 
+0001185114 00000 n 
+0001185177 00000 n 
+0001185240 00000 n 
+0001185303 00000 n 
+0001185429 00000 n 
+0001185492 00000 n 
+0001185555 00000 n 
+0001185618 00000 n 
+0001185744 00000 n 
+0001185807 00000 n 
+0001185870 00000 n 
+0001185933 00000 n 
+0001185996 00000 n 
+0001186122 00000 n 
+0001186185 00000 n 
+0001186248 00000 n 
+0001186311 00000 n 
+0001186374 00000 n 
+0001186500 00000 n 
+0001186563 00000 n 
+0001186626 00000 n 
+0001186689 00000 n 
+0001186752 00000 n 
+0001186878 00000 n 
+0001186941 00000 n 
+0001187004 00000 n 
+0001187067 00000 n 
+0001187193 00000 n 
+0001187256 00000 n 
+0001187319 00000 n 
+0001187382 00000 n 
+0001187508 00000 n 
+0001187571 00000 n 
+0001187634 00000 n 
+0001187697 00000 n 
+0001187759 00000 n 
+0001187821 00000 n 
+0001189778 00000 n 
+0001189948 00000 n 
+0001190108 00000 n 
+0001190278 00000 n 
+0001190439 00000 n 
+0001190592 00000 n 
+0001190756 00000 n 
+0001190918 00000 n 
+0001191076 00000 n 
+0001191237 00000 n 
+0001191404 00000 n 
+0001191574 00000 n 
+0001191768 00000 n 
+0001191962 00000 n 
+0001192163 00000 n 
+0001192367 00000 n 
+0001192568 00000 n 
+0001192772 00000 n 
+0001192973 00000 n 
+0001193177 00000 n 
+0001193372 00000 n 
+0001193541 00000 n 
+0001193710 00000 n 
+0001193905 00000 n 
+0001194100 00000 n 
+0001194295 00000 n 
+0001194490 00000 n 
+0001194685 00000 n 
+0001194880 00000 n 
+0001195075 00000 n 
+0001195270 00000 n 
+0001195465 00000 n 
+0001195658 00000 n 
+0001195851 00000 n 
+0001196043 00000 n 
+0001201171 00000 n 
+0001201366 00000 n 
+0001201561 00000 n 
+0001201755 00000 n 
+0001201949 00000 n 
+0001202143 00000 n 
+0001199310 00000 n 
+0001189328 00000 n 
+0001187971 00000 n 
+0001196235 00000 n 
+0001196298 00000 n 
+0001196361 00000 n 
+0001196424 00000 n 
+0001196613 00000 n 
+0001196676 00000 n 
+0001196864 00000 n 
+0001196927 00000 n 
+0001196989 00000 n 
+0001197051 00000 n 
+0001197113 00000 n 
+0001197175 00000 n 
+0001197237 00000 n 
+0001197299 00000 n 
+0001197361 00000 n 
+0001197486 00000 n 
+0001197549 00000 n 
+0001197612 00000 n 
+0001197675 00000 n 
+0001197801 00000 n 
+0001197927 00000 n 
+0001198053 00000 n 
+0001198116 00000 n 
+0001198179 00000 n 
+0001198242 00000 n 
+0001198305 00000 n 
+0001198368 00000 n 
+0001198431 00000 n 
+0001198494 00000 n 
+0001198557 00000 n 
+0001198620 00000 n 
+0001198683 00000 n 
+0001198746 00000 n 
+0001198809 00000 n 
+0001198872 00000 n 
+0001198935 00000 n 
+0001198998 00000 n 
+0001199061 00000 n 
+0001199124 00000 n 
+0001199186 00000 n 
+0001199248 00000 n 
+0001202337 00000 n 
+0001202491 00000 n 
+0001202645 00000 n 
+0001202844 00000 n 
+0001203044 00000 n 
+0001203243 00000 n 
+0001203444 00000 n 
+0001203639 00000 n 
+0001203833 00000 n 
+0001204032 00000 n 
+0001204234 00000 n 
+0001204433 00000 n 
+0001208965 00000 n 
+0001200874 00000 n 
+0001199440 00000 n 
+0001204635 00000 n 
+0001204698 00000 n 
+0001204761 00000 n 
+0001204824 00000 n 
+0001204887 00000 n 
+0001204950 00000 n 
+0001205013 00000 n 
+0001205076 00000 n 
+0001205138 00000 n 
+0001205200 00000 n 
+0001205513 00000 n 
+0001205576 00000 n 
+0001205639 00000 n 
+0001205702 00000 n 
+0001205765 00000 n 
+0001205828 00000 n 
+0001205891 00000 n 
+0001205954 00000 n 
+0001206079 00000 n 
+0001206141 00000 n 
+0001206203 00000 n 
+0001206265 00000 n 
+0001206326 00000 n 
+0001206450 00000 n 
+0001206512 00000 n 
+0001206574 00000 n 
+0001206637 00000 n 
+0001206700 00000 n 
+0001206763 00000 n 
+0001206826 00000 n 
+0001206889 00000 n 
+0001206952 00000 n 
+0001207015 00000 n 
+0001207078 00000 n 
+0001207141 00000 n 
+0001207204 00000 n 
+0001207267 00000 n 
+0001207330 00000 n 
+0001207393 00000 n 
+0001207456 00000 n 
+0001207519 00000 n 
+0001207582 00000 n 
+0001207645 00000 n 
+0001207708 00000 n 
+0001207771 00000 n 
+0001207834 00000 n 
+0001207960 00000 n 
+0001208023 00000 n 
+0001208086 00000 n 
+0001208149 00000 n 
+0001208275 00000 n 
+0001208338 00000 n 
+0001208401 00000 n 
+0001208464 00000 n 
+0001208527 00000 n 
+0001208590 00000 n 
+0001208653 00000 n 
+0001208716 00000 n 
+0001208779 00000 n 
+0001208841 00000 n 
+0001210595 00000 n 
+0001210763 00000 n 
+0001210930 00000 n 
+0001211091 00000 n 
+0001211243 00000 n 
+0001211407 00000 n 
+0001211563 00000 n 
+0001211724 00000 n 
+0001211889 00000 n 
+0001212056 00000 n 
+0001212225 00000 n 
+0001212392 00000 n 
+0001212559 00000 n 
+0001212758 00000 n 
+0001212960 00000 n 
+0001213159 00000 n 
+0001217823 00000 n 
+0001217984 00000 n 
+0001216373 00000 n 
+0001210316 00000 n 
+0001209067 00000 n 
+0001213361 00000 n 
+0001213487 00000 n 
+0001213550 00000 n 
+0001213738 00000 n 
+0001213801 00000 n 
+0001213864 00000 n 
+0001213927 00000 n 
+0001213990 00000 n 
+0001214053 00000 n 
+0001214116 00000 n 
+0001214179 00000 n 
+0001214242 00000 n 
+0001214305 00000 n 
+0001214368 00000 n 
+0001214431 00000 n 
+0001214557 00000 n 
+0001214620 00000 n 
+0001214683 00000 n 
+0001214745 00000 n 
+0001214806 00000 n 
+0001214868 00000 n 
+0001214930 00000 n 
+0001214992 00000 n 
+0001215054 00000 n 
+0001215116 00000 n 
+0001215178 00000 n 
+0001215240 00000 n 
+0001215303 00000 n 
+0001215366 00000 n 
+0001215429 00000 n 
+0001215492 00000 n 
+0001215618 00000 n 
+0001215744 00000 n 
+0001215807 00000 n 
+0001215870 00000 n 
+0001215933 00000 n 
+0001215996 00000 n 
+0001216059 00000 n 
+0001216122 00000 n 
+0001216185 00000 n 
+0001218179 00000 n 
+0001218339 00000 n 
+0001218533 00000 n 
+0001218693 00000 n 
+0001218887 00000 n 
+0001219047 00000 n 
+0001219241 00000 n 
+0001219400 00000 n 
+0001219593 00000 n 
+0001219753 00000 n 
+0001219914 00000 n 
+0001220075 00000 n 
+0001220266 00000 n 
+0001220461 00000 n 
+0001220652 00000 n 
+0001220847 00000 n 
+0001221039 00000 n 
+0001221234 00000 n 
+0001221426 00000 n 
+0001221621 00000 n 
+0001221813 00000 n 
+0001222007 00000 n 
+0001225438 00000 n 
+0001225633 00000 n 
+0001225793 00000 n 
+0001225988 00000 n 
+0001226147 00000 n 
+0001226341 00000 n 
+0001226501 00000 n 
+0001226696 00000 n 
+0001226856 00000 n 
+0001227050 00000 n 
+0001227210 00000 n 
+0001223679 00000 n 
+0001217472 00000 n 
+0001216503 00000 n 
+0001222168 00000 n 
+0001222231 00000 n 
+0001222294 00000 n 
+0001222483 00000 n 
+0001222546 00000 n 
+0001222609 00000 n 
+0001222672 00000 n 
+0001222735 00000 n 
+0001222861 00000 n 
+0001222987 00000 n 
+0001223113 00000 n 
+0001223239 00000 n 
+0001223365 00000 n 
+0001223428 00000 n 
+0001223617 00000 n 
+0002102433 00000 n 
+0001227376 00000 n 
+0001227571 00000 n 
+0001227731 00000 n 
+0001227897 00000 n 
+0001228092 00000 n 
+0001228252 00000 n 
+0001228413 00000 n 
+0001228565 00000 n 
+0001228717 00000 n 
+0001228878 00000 n 
+0001229070 00000 n 
+0001229265 00000 n 
+0001229457 00000 n 
+0001229652 00000 n 
+0001229844 00000 n 
+0001230039 00000 n 
+0001230231 00000 n 
+0001230426 00000 n 
+0001230618 00000 n 
+0001230783 00000 n 
+0001230977 00000 n 
+0001231169 00000 n 
+0001231335 00000 n 
+0001231528 00000 n 
+0001231720 00000 n 
+0001235662 00000 n 
+0001235816 00000 n 
+0001235970 00000 n 
+0001236169 00000 n 
+0001233742 00000 n 
+0001224979 00000 n 
+0001223795 00000 n 
+0001231915 00000 n 
+0001231978 00000 n 
+0001232167 00000 n 
+0001232230 00000 n 
+0001232293 00000 n 
+0001232356 00000 n 
+0001232419 00000 n 
+0001232482 00000 n 
+0001232608 00000 n 
+0001232734 00000 n 
+0001232860 00000 n 
+0001232986 00000 n 
+0001233112 00000 n 
+0001233238 00000 n 
+0001233364 00000 n 
+0001233427 00000 n 
+0001233490 00000 n 
+0001236371 00000 n 
+0001236570 00000 n 
+0001236771 00000 n 
+0001236970 00000 n 
+0001237171 00000 n 
+0001237370 00000 n 
+0001237572 00000 n 
+0001237771 00000 n 
+0001237973 00000 n 
+0001238172 00000 n 
+0001238374 00000 n 
+0001238573 00000 n 
+0001238775 00000 n 
+0001238941 00000 n 
+0001244898 00000 n 
+0001243064 00000 n 
+0001235365 00000 n 
+0001233872 00000 n 
+0001239107 00000 n 
+0001239233 00000 n 
+0001239296 00000 n 
+0001239359 00000 n 
+0001239422 00000 n 
+0001239485 00000 n 
+0001239548 00000 n 
+0001239611 00000 n 
+0001239737 00000 n 
+0001239800 00000 n 
+0001239863 00000 n 
+0001239926 00000 n 
+0001239989 00000 n 
+0001240052 00000 n 
+0001240114 00000 n 
+0001240175 00000 n 
+0001240237 00000 n 
+0001240299 00000 n 
+0001240423 00000 n 
+0001240485 00000 n 
+0001240547 00000 n 
+0001240609 00000 n 
+0001240735 00000 n 
+0001240798 00000 n 
+0001240861 00000 n 
+0001240987 00000 n 
+0001241050 00000 n 
+0001241113 00000 n 
+0001241176 00000 n 
+0001241302 00000 n 
+0001241365 00000 n 
+0001241428 00000 n 
+0001241491 00000 n 
+0001241617 00000 n 
+0001241680 00000 n 
+0001241743 00000 n 
+0001241806 00000 n 
+0001241932 00000 n 
+0001241995 00000 n 
+0001242058 00000 n 
+0001242121 00000 n 
+0001242184 00000 n 
+0001242247 00000 n 
+0001242310 00000 n 
+0001242373 00000 n 
+0001242436 00000 n 
+0001242499 00000 n 
+0001242562 00000 n 
+0001242625 00000 n 
+0001242688 00000 n 
+0001242751 00000 n 
+0001242814 00000 n 
+0001243003 00000 n 
+0001245058 00000 n 
+0001245210 00000 n 
+0001245372 00000 n 
+0001245528 00000 n 
+0001245688 00000 n 
+0001245851 00000 n 
+0001246017 00000 n 
+0001246184 00000 n 
+0001246351 00000 n 
+0001246550 00000 n 
+0001246751 00000 n 
+0001246903 00000 n 
+0001250078 00000 n 
+0001244646 00000 n 
+0001243194 00000 n 
+0001247055 00000 n 
+0001247118 00000 n 
+0001247307 00000 n 
+0001247370 00000 n 
+0001247433 00000 n 
+0001247496 00000 n 
+0001247559 00000 n 
+0001247622 00000 n 
+0001247685 00000 n 
+0001247811 00000 n 
+0001247874 00000 n 
+0001247937 00000 n 
+0001248000 00000 n 
+0001248063 00000 n 
+0001248126 00000 n 
+0001248189 00000 n 
+0001248252 00000 n 
+0001248315 00000 n 
+0001248378 00000 n 
+0001248441 00000 n 
+0001248504 00000 n 
+0001248567 00000 n 
+0001248630 00000 n 
+0001248693 00000 n 
+0001248756 00000 n 
+0001248819 00000 n 
+0001248882 00000 n 
+0001248945 00000 n 
+0001249008 00000 n 
+0001249071 00000 n 
+0001249134 00000 n 
+0001249260 00000 n 
+0001249323 00000 n 
+0001249386 00000 n 
+0001249449 00000 n 
+0001249512 00000 n 
+0001249575 00000 n 
+0001249638 00000 n 
+0001249701 00000 n 
+0001250016 00000 n 
+0001252133 00000 n 
+0001252332 00000 n 
+0001252532 00000 n 
+0001252734 00000 n 
+0001252933 00000 n 
+0001253134 00000 n 
+0001253333 00000 n 
+0001253535 00000 n 
+0001253732 00000 n 
+0001253933 00000 n 
+0001254099 00000 n 
+0001260154 00000 n 
+0001258474 00000 n 
+0001251899 00000 n 
+0001250194 00000 n 
+0001254264 00000 n 
+0001254327 00000 n 
+0001254390 00000 n 
+0001254453 00000 n 
+0001254516 00000 n 
+0001254579 00000 n 
+0001254642 00000 n 
+0001254705 00000 n 
+0001254767 00000 n 
+0001254829 00000 n 
+0001254952 00000 n 
+0001255014 00000 n 
+0001255076 00000 n 
+0001255138 00000 n 
+0001255200 00000 n 
+0001255262 00000 n 
+0001255325 00000 n 
+0001255388 00000 n 
+0001255451 00000 n 
+0001255514 00000 n 
+0001255577 00000 n 
+0001255640 00000 n 
+0001255703 00000 n 
+0001255766 00000 n 
+0001255829 00000 n 
+0001255892 00000 n 
+0001255955 00000 n 
+0001256018 00000 n 
+0001256081 00000 n 
+0001256144 00000 n 
+0001256207 00000 n 
+0001256270 00000 n 
+0001256333 00000 n 
+0001256396 00000 n 
+0001256522 00000 n 
+0001256585 00000 n 
+0001256648 00000 n 
+0001256711 00000 n 
+0001256837 00000 n 
+0001256900 00000 n 
+0001256963 00000 n 
+0001257026 00000 n 
+0001257089 00000 n 
+0001257152 00000 n 
+0001257215 00000 n 
+0001257278 00000 n 
+0001257341 00000 n 
+0001257404 00000 n 
+0001257467 00000 n 
+0001257530 00000 n 
+0001257593 00000 n 
+0001257656 00000 n 
+0001257719 00000 n 
+0001257782 00000 n 
+0001257845 00000 n 
+0001257908 00000 n 
+0001257971 00000 n 
+0001258097 00000 n 
+0001258160 00000 n 
+0001258223 00000 n 
+0001258412 00000 n 
+0001260314 00000 n 
+0001260500 00000 n 
+0001260688 00000 n 
+0001260875 00000 n 
+0001261043 00000 n 
+0001261204 00000 n 
+0001261392 00000 n 
+0001261560 00000 n 
+0001261721 00000 n 
+0001261872 00000 n 
+0001262036 00000 n 
+0001262221 00000 n 
+0001262409 00000 n 
+0001262594 00000 n 
+0001262782 00000 n 
+0001262943 00000 n 
+0001263108 00000 n 
+0001263276 00000 n 
+0001263463 00000 n 
+0001263650 00000 n 
+0001263817 00000 n 
+0001263984 00000 n 
+0001264182 00000 n 
+0001268647 00000 n 
+0001267085 00000 n 
+0001259803 00000 n 
+0001258604 00000 n 
+0001264382 00000 n 
+0001264445 00000 n 
+0001264508 00000 n 
+0001264634 00000 n 
+0001264760 00000 n 
+0001265012 00000 n 
+0001265074 00000 n 
+0001265136 00000 n 
+0001265199 00000 n 
+0001265262 00000 n 
+0001265325 00000 n 
+0001265388 00000 n 
+0001265451 00000 n 
+0001265514 00000 n 
+0001265577 00000 n 
+0001265640 00000 n 
+0001265766 00000 n 
+0001265829 00000 n 
+0001265892 00000 n 
+0001265955 00000 n 
+0001266018 00000 n 
+0001266081 00000 n 
+0001266144 00000 n 
+0001266207 00000 n 
+0001266270 00000 n 
+0001266333 00000 n 
+0001266396 00000 n 
+0001266459 00000 n 
+0001266522 00000 n 
+0001266585 00000 n 
+0001266648 00000 n 
+0001266711 00000 n 
+0001266837 00000 n 
+0001266899 00000 n 
+0001266961 00000 n 
+0001268802 00000 n 
+0001268959 00000 n 
+0001269130 00000 n 
+0001269300 00000 n 
+0001269498 00000 n 
+0001269696 00000 n 
+0001269857 00000 n 
+0001270012 00000 n 
+0001270176 00000 n 
+0001270339 00000 n 
+0001270499 00000 n 
+0001270652 00000 n 
+0001270810 00000 n 
+0001270971 00000 n 
+0001271139 00000 n 
+0001271309 00000 n 
+0001271509 00000 n 
+0001276040 00000 n 
+0001276242 00000 n 
+0001276446 00000 n 
+0001276648 00000 n 
+0001276852 00000 n 
+0001277047 00000 n 
+0001277253 00000 n 
+0001277455 00000 n 
+0001277659 00000 n 
+0001277861 00000 n 
+0001278066 00000 n 
+0001278268 00000 n 
+0001278473 00000 n 
+0001278675 00000 n 
+0001278869 00000 n 
+0001273469 00000 n 
+0001268350 00000 n 
+0001267187 00000 n 
+0001271711 00000 n 
+0001271837 00000 n 
+0001271962 00000 n 
+0001272150 00000 n 
+0001272213 00000 n 
+0001272401 00000 n 
+0001272464 00000 n 
+0001272527 00000 n 
+0001272590 00000 n 
+0001272653 00000 n 
+0001272716 00000 n 
+0001272779 00000 n 
+0001272842 00000 n 
+0001272968 00000 n 
+0001273031 00000 n 
+0001273094 00000 n 
+0001273157 00000 n 
+0001273220 00000 n 
+0001273283 00000 n 
+0001273345 00000 n 
+0001273407 00000 n 
+0002102559 00000 n 
+0001279073 00000 n 
+0001279275 00000 n 
+0001279480 00000 n 
+0001279646 00000 n 
+0001279848 00000 n 
+0001280053 00000 n 
+0001280255 00000 n 
+0001280460 00000 n 
+0001280662 00000 n 
+0001280867 00000 n 
+0001281062 00000 n 
+0001281232 00000 n 
+0001281461 00000 n 
+0001281692 00000 n 
+0001281921 00000 n 
+0001282152 00000 n 
+0001282381 00000 n 
+0001282612 00000 n 
+0001282807 00000 n 
+0001283013 00000 n 
+0001283242 00000 n 
+0001283474 00000 n 
+0001283703 00000 n 
+0001283935 00000 n 
+0001284164 00000 n 
+0001284396 00000 n 
+0001284625 00000 n 
+0001284819 00000 n 
+0001285051 00000 n 
+0001285280 00000 n 
+0001285512 00000 n 
+0001285678 00000 n 
+0001285907 00000 n 
+0001286139 00000 n 
+0001286368 00000 n 
+0001286600 00000 n 
+0001286829 00000 n 
+0001287061 00000 n 
+0001287257 00000 n 
+0001287427 00000 n 
+0001287657 00000 n 
+0001287889 00000 n 
+0001288119 00000 n 
+0001288351 00000 n 
+0001288581 00000 n 
+0001288813 00000 n 
+0001289008 00000 n 
+0001289214 00000 n 
+0001289444 00000 n 
+0001289676 00000 n 
+0001289906 00000 n 
+0001290139 00000 n 
+0001290367 00000 n 
+0001290600 00000 n 
+0001290829 00000 n 
+0001291022 00000 n 
+0001291255 00000 n 
+0001291484 00000 n 
+0001291717 00000 n 
+0001291883 00000 n 
+0001292111 00000 n 
+0001292343 00000 n 
+0001292571 00000 n 
+0001292803 00000 n 
+0001293031 00000 n 
+0001293263 00000 n 
+0001293464 00000 n 
+0001293667 00000 n 
+0001293869 00000 n 
+0001299570 00000 n 
+0001275149 00000 n 
+0001273599 00000 n 
+0001294039 00000 n 
+0001294102 00000 n 
+0001294165 00000 n 
+0001294228 00000 n 
+0001294291 00000 n 
+0001294354 00000 n 
+0001294417 00000 n 
+0001294542 00000 n 
+0001294666 00000 n 
+0001294727 00000 n 
+0001294789 00000 n 
+0001294851 00000 n 
+0001294913 00000 n 
+0001294975 00000 n 
+0001295037 00000 n 
+0001295100 00000 n 
+0001295163 00000 n 
+0001295226 00000 n 
+0001295289 00000 n 
+0001295352 00000 n 
+0001295415 00000 n 
+0001295478 00000 n 
+0001295604 00000 n 
+0001295667 00000 n 
+0001295730 00000 n 
+0001295793 00000 n 
+0001295856 00000 n 
+0001295919 00000 n 
+0001295982 00000 n 
+0001296045 00000 n 
+0001296108 00000 n 
+0001296297 00000 n 
+0001296360 00000 n 
+0001296423 00000 n 
+0001296486 00000 n 
+0001296549 00000 n 
+0001296612 00000 n 
+0001296675 00000 n 
+0001296738 00000 n 
+0001296801 00000 n 
+0001296927 00000 n 
+0001296990 00000 n 
+0001297053 00000 n 
+0001297116 00000 n 
+0001297179 00000 n 
+0001297242 00000 n 
+0001297305 00000 n 
+0001297368 00000 n 
+0001297431 00000 n 
+0001297620 00000 n 
+0001297683 00000 n 
+0001297746 00000 n 
+0001297809 00000 n 
+0001297872 00000 n 
+0001297935 00000 n 
+0001297998 00000 n 
+0001298061 00000 n 
+0001298124 00000 n 
+0001298187 00000 n 
+0001298313 00000 n 
+0001298376 00000 n 
+0001298439 00000 n 
+0001298502 00000 n 
+0001298565 00000 n 
+0001298628 00000 n 
+0001298691 00000 n 
+0001298754 00000 n 
+0001298817 00000 n 
+0001298880 00000 n 
+0001298943 00000 n 
+0001299006 00000 n 
+0001299069 00000 n 
+0001299195 00000 n 
+0001299258 00000 n 
+0001299321 00000 n 
+0001299384 00000 n 
+0001299446 00000 n 
+0001299508 00000 n 
+0001301446 00000 n 
+0001301648 00000 n 
+0001301818 00000 n 
+0001302013 00000 n 
+0001302220 00000 n 
+0001302427 00000 n 
+0001302631 00000 n 
+0001302833 00000 n 
+0001303004 00000 n 
+0001303206 00000 n 
+0001303401 00000 n 
+0001303570 00000 n 
+0001303764 00000 n 
+0001303959 00000 n 
+0001304161 00000 n 
+0001304331 00000 n 
+0001304498 00000 n 
+0001310228 00000 n 
+0001301158 00000 n 
+0001299658 00000 n 
+0001304697 00000 n 
+0001304760 00000 n 
+0001304823 00000 n 
+0001304886 00000 n 
+0001304949 00000 n 
+0001305012 00000 n 
+0001305075 00000 n 
+0001305138 00000 n 
+0001305200 00000 n 
+0001305262 00000 n 
+0001305324 00000 n 
+0001305385 00000 n 
+0001305447 00000 n 
+0001305509 00000 n 
+0001305571 00000 n 
+0001305695 00000 n 
+0001305758 00000 n 
+0001305821 00000 n 
+0001305884 00000 n 
+0001305947 00000 n 
+0001306010 00000 n 
+0001306073 00000 n 
+0001306136 00000 n 
+0001306199 00000 n 
+0001306262 00000 n 
+0001306325 00000 n 
+0001306388 00000 n 
+0001306451 00000 n 
+0001306514 00000 n 
+0001306577 00000 n 
+0001306640 00000 n 
+0001306703 00000 n 
+0001306766 00000 n 
+0001306829 00000 n 
+0001306892 00000 n 
+0001306955 00000 n 
+0001307018 00000 n 
+0001307081 00000 n 
+0001307144 00000 n 
+0001307207 00000 n 
+0001307270 00000 n 
+0001307333 00000 n 
+0001307396 00000 n 
+0001307459 00000 n 
+0001307522 00000 n 
+0001307585 00000 n 
+0001307711 00000 n 
+0001307774 00000 n 
+0001307837 00000 n 
+0001307900 00000 n 
+0001307963 00000 n 
+0001308089 00000 n 
+0001308152 00000 n 
+0001308215 00000 n 
+0001308278 00000 n 
+0001308341 00000 n 
+0001308404 00000 n 
+0001308467 00000 n 
+0001308530 00000 n 
+0001308593 00000 n 
+0001308656 00000 n 
+0001308719 00000 n 
+0001308782 00000 n 
+0001308845 00000 n 
+0001308908 00000 n 
+0001308971 00000 n 
+0001309034 00000 n 
+0001309097 00000 n 
+0001309160 00000 n 
+0001309223 00000 n 
+0001309286 00000 n 
+0001309349 00000 n 
+0001309412 00000 n 
+0001309475 00000 n 
+0001309601 00000 n 
+0001309664 00000 n 
+0001309727 00000 n 
+0001309790 00000 n 
+0001309853 00000 n 
+0001309916 00000 n 
+0001309979 00000 n 
+0001310042 00000 n 
+0001310104 00000 n 
+0001310166 00000 n 
+0001312165 00000 n 
+0001312367 00000 n 
+0001312537 00000 n 
+0001312739 00000 n 
+0001312910 00000 n 
+0001313112 00000 n 
+0001313283 00000 n 
+0001313486 00000 n 
+0001319125 00000 n 
+0001311958 00000 n 
+0001310316 00000 n 
+0001313657 00000 n 
+0001313720 00000 n 
+0001313783 00000 n 
+0001313846 00000 n 
+0001313909 00000 n 
+0001313972 00000 n 
+0001314035 00000 n 
+0001314098 00000 n 
+0001314160 00000 n 
+0001314222 00000 n 
+0001314345 00000 n 
+0001314407 00000 n 
+0001314469 00000 n 
+0001314531 00000 n 
+0001314593 00000 n 
+0001314655 00000 n 
+0001314718 00000 n 
+0001314781 00000 n 
+0001314844 00000 n 
+0001314970 00000 n 
+0001315033 00000 n 
+0001315096 00000 n 
+0001315159 00000 n 
+0001315222 00000 n 
+0001315285 00000 n 
+0001315348 00000 n 
+0001315411 00000 n 
+0001315474 00000 n 
+0001315537 00000 n 
+0001315600 00000 n 
+0001315663 00000 n 
+0001315726 00000 n 
+0001315789 00000 n 
+0001315852 00000 n 
+0001315915 00000 n 
+0001315978 00000 n 
+0001316041 00000 n 
+0001316104 00000 n 
+0001316167 00000 n 
+0001316230 00000 n 
+0001316293 00000 n 
+0001316356 00000 n 
+0001316419 00000 n 
+0001316482 00000 n 
+0001316545 00000 n 
+0001316671 00000 n 
+0001316734 00000 n 
+0001316797 00000 n 
+0001316860 00000 n 
+0001316923 00000 n 
+0001316986 00000 n 
+0001317049 00000 n 
+0001317112 00000 n 
+0001317175 00000 n 
+0001317238 00000 n 
+0001317301 00000 n 
+0001317364 00000 n 
+0001317427 00000 n 
+0001317490 00000 n 
+0001317553 00000 n 
+0001317616 00000 n 
+0001317679 00000 n 
+0001317742 00000 n 
+0001317805 00000 n 
+0001317868 00000 n 
+0001317931 00000 n 
+0001317994 00000 n 
+0001318057 00000 n 
+0001318120 00000 n 
+0001318183 00000 n 
+0001318246 00000 n 
+0001318309 00000 n 
+0001318372 00000 n 
+0001318435 00000 n 
+0001318498 00000 n 
+0001318561 00000 n 
+0001318624 00000 n 
+0001318687 00000 n 
+0001318750 00000 n 
+0001318813 00000 n 
+0001318876 00000 n 
+0001318939 00000 n 
+0001319001 00000 n 
+0001319063 00000 n 
+0001320890 00000 n 
+0001321085 00000 n 
+0001321291 00000 n 
+0001321498 00000 n 
+0001321693 00000 n 
+0001321887 00000 n 
+0001327613 00000 n 
+0001320701 00000 n 
+0001319213 00000 n 
+0001322082 00000 n 
+0001322145 00000 n 
+0001322208 00000 n 
+0001322271 00000 n 
+0001322334 00000 n 
+0001322397 00000 n 
+0001322460 00000 n 
+0001322523 00000 n 
+0001322585 00000 n 
+0001322647 00000 n 
+0001322709 00000 n 
+0001322770 00000 n 
+0001322832 00000 n 
+0001322894 00000 n 
+0001322956 00000 n 
+0001323018 00000 n 
+0001323080 00000 n 
+0001323143 00000 n 
+0001323206 00000 n 
+0001323269 00000 n 
+0001323332 00000 n 
+0001323395 00000 n 
+0001323458 00000 n 
+0001323521 00000 n 
+0001323584 00000 n 
+0001323647 00000 n 
+0001323710 00000 n 
+0001323773 00000 n 
+0001323836 00000 n 
+0001323899 00000 n 
+0001323962 00000 n 
+0001324025 00000 n 
+0001324088 00000 n 
+0001324151 00000 n 
+0001324214 00000 n 
+0001324277 00000 n 
+0001324340 00000 n 
+0001324403 00000 n 
+0001324466 00000 n 
+0001324529 00000 n 
+0001324592 00000 n 
+0001324655 00000 n 
+0001324718 00000 n 
+0001324781 00000 n 
+0001324844 00000 n 
+0001324907 00000 n 
+0001324970 00000 n 
+0001325033 00000 n 
+0001325096 00000 n 
+0001325159 00000 n 
+0001325222 00000 n 
+0001325285 00000 n 
+0001325348 00000 n 
+0001325411 00000 n 
+0001325474 00000 n 
+0001325537 00000 n 
+0001325600 00000 n 
+0001325663 00000 n 
+0001325726 00000 n 
+0001325789 00000 n 
+0001325852 00000 n 
+0001325915 00000 n 
+0001325978 00000 n 
+0001326041 00000 n 
+0001326104 00000 n 
+0001326167 00000 n 
+0001326230 00000 n 
+0001326293 00000 n 
+0001326356 00000 n 
+0001326419 00000 n 
+0001326482 00000 n 
+0001326545 00000 n 
+0001326608 00000 n 
+0001326671 00000 n 
+0001326734 00000 n 
+0001326797 00000 n 
+0001326860 00000 n 
+0001326923 00000 n 
+0001326986 00000 n 
+0001327049 00000 n 
+0001327112 00000 n 
+0001327175 00000 n 
+0001327238 00000 n 
+0001327301 00000 n 
+0001327364 00000 n 
+0001327427 00000 n 
+0001327489 00000 n 
+0001327551 00000 n 
+0001329485 00000 n 
+0001329679 00000 n 
+0001329886 00000 n 
+0001330093 00000 n 
+0001330287 00000 n 
+0001330480 00000 n 
+0001336205 00000 n 
+0001329296 00000 n 
+0001327701 00000 n 
+0001330674 00000 n 
+0001330737 00000 n 
+0001330800 00000 n 
+0001330863 00000 n 
+0001330926 00000 n 
+0001330989 00000 n 
+0001331052 00000 n 
+0001331115 00000 n 
+0001331177 00000 n 
+0001331239 00000 n 
+0001331301 00000 n 
+0001331362 00000 n 
+0001331424 00000 n 
+0001331486 00000 n 
+0001331548 00000 n 
+0001331610 00000 n 
+0001331672 00000 n 
+0001331735 00000 n 
+0001331798 00000 n 
+0001331861 00000 n 
+0001331924 00000 n 
+0001331987 00000 n 
+0001332050 00000 n 
+0001332113 00000 n 
+0001332176 00000 n 
+0001332239 00000 n 
+0001332302 00000 n 
+0001332365 00000 n 
+0001332428 00000 n 
+0001332491 00000 n 
+0001332554 00000 n 
+0001332617 00000 n 
+0001332680 00000 n 
+0001332743 00000 n 
+0001332806 00000 n 
+0001332869 00000 n 
+0001332932 00000 n 
+0001332995 00000 n 
+0001333058 00000 n 
+0001333121 00000 n 
+0001333184 00000 n 
+0001333247 00000 n 
+0001333310 00000 n 
+0001333373 00000 n 
+0001333436 00000 n 
+0001333499 00000 n 
+0001333562 00000 n 
+0001333625 00000 n 
+0001333688 00000 n 
+0001333751 00000 n 
+0001333814 00000 n 
+0001333877 00000 n 
+0001333940 00000 n 
+0001334003 00000 n 
+0001334066 00000 n 
+0001334129 00000 n 
+0001334192 00000 n 
+0001334255 00000 n 
+0001334318 00000 n 
+0001334381 00000 n 
+0001334444 00000 n 
+0001334507 00000 n 
+0001334570 00000 n 
+0001334633 00000 n 
+0001334696 00000 n 
+0001334759 00000 n 
+0001334822 00000 n 
+0001334885 00000 n 
+0001334948 00000 n 
+0001335011 00000 n 
+0001335074 00000 n 
+0001335137 00000 n 
+0001335200 00000 n 
+0001335263 00000 n 
+0001335326 00000 n 
+0001335389 00000 n 
+0001335452 00000 n 
+0001335515 00000 n 
+0001335578 00000 n 
+0001335641 00000 n 
+0001335704 00000 n 
+0001335767 00000 n 
+0001335830 00000 n 
+0001335893 00000 n 
+0001335956 00000 n 
+0001336019 00000 n 
+0001336081 00000 n 
+0001336143 00000 n 
+0001338118 00000 n 
+0001338272 00000 n 
+0001338426 00000 n 
+0001338586 00000 n 
+0001338786 00000 n 
+0001338988 00000 n 
+0001339190 00000 n 
+0001339392 00000 n 
+0001339595 00000 n 
+0001339796 00000 n 
+0001339999 00000 n 
+0001340200 00000 n 
+0001340395 00000 n 
+0001340594 00000 n 
+0001346954 00000 n 
+0001347154 00000 n 
+0001345002 00000 n 
+0001337857 00000 n 
+0001336293 00000 n 
+0001340795 00000 n 
+0001340858 00000 n 
+0001340921 00000 n 
+0001340984 00000 n 
+0001341047 00000 n 
+0001341110 00000 n 
+0001341173 00000 n 
+0001341236 00000 n 
+0001341298 00000 n 
+0001341360 00000 n 
+0001341422 00000 n 
+0001341483 00000 n 
+0001341545 00000 n 
+0001341607 00000 n 
+0001341669 00000 n 
+0001341731 00000 n 
+0001341793 00000 n 
+0001341856 00000 n 
+0001341919 00000 n 
+0001341982 00000 n 
+0001342045 00000 n 
+0001342108 00000 n 
+0001342171 00000 n 
+0001342234 00000 n 
+0001342297 00000 n 
+0001342360 00000 n 
+0001342423 00000 n 
+0001342486 00000 n 
+0001342549 00000 n 
+0001342612 00000 n 
+0001342675 00000 n 
+0001342738 00000 n 
+0001342801 00000 n 
+0001342864 00000 n 
+0001342927 00000 n 
+0001342990 00000 n 
+0001343053 00000 n 
+0001343116 00000 n 
+0001343179 00000 n 
+0001343242 00000 n 
+0001343305 00000 n 
+0001343619 00000 n 
+0001343682 00000 n 
+0001343745 00000 n 
+0001343808 00000 n 
+0001343934 00000 n 
+0001343997 00000 n 
+0001344060 00000 n 
+0001344123 00000 n 
+0001344186 00000 n 
+0001344249 00000 n 
+0001344312 00000 n 
+0001344375 00000 n 
+0001344438 00000 n 
+0001344501 00000 n 
+0001344564 00000 n 
+0001344627 00000 n 
+0001344690 00000 n 
+0001344816 00000 n 
+0001344878 00000 n 
+0001344940 00000 n 
+0002102685 00000 n 
+0001347356 00000 n 
+0001347556 00000 n 
+0001347759 00000 n 
+0001347958 00000 n 
+0001348160 00000 n 
+0001348359 00000 n 
+0001348561 00000 n 
+0001348729 00000 n 
+0001348929 00000 n 
+0001349131 00000 n 
+0001349331 00000 n 
+0001349533 00000 n 
+0001349702 00000 n 
+0001349902 00000 n 
+0001355572 00000 n 
+0001346675 00000 n 
+0001345104 00000 n 
+0001350104 00000 n 
+0001350167 00000 n 
+0001350230 00000 n 
+0001350293 00000 n 
+0001350419 00000 n 
+0001350482 00000 n 
+0001350545 00000 n 
+0001350607 00000 n 
+0001350669 00000 n 
+0001350731 00000 n 
+0001350792 00000 n 
+0001350854 00000 n 
+0001350916 00000 n 
+0001350978 00000 n 
+0001351040 00000 n 
+0001351165 00000 n 
+0001351228 00000 n 
+0001351291 00000 n 
+0001351354 00000 n 
+0001351417 00000 n 
+0001351480 00000 n 
+0001351543 00000 n 
+0001351606 00000 n 
+0001351669 00000 n 
+0001351732 00000 n 
+0001351795 00000 n 
+0001351858 00000 n 
+0001351921 00000 n 
+0001351984 00000 n 
+0001352047 00000 n 
+0001352110 00000 n 
+0001352173 00000 n 
+0001352236 00000 n 
+0001352299 00000 n 
+0001352362 00000 n 
+0001352425 00000 n 
+0001352488 00000 n 
+0001352551 00000 n 
+0001352614 00000 n 
+0001352677 00000 n 
+0001352740 00000 n 
+0001352803 00000 n 
+0001352866 00000 n 
+0001352929 00000 n 
+0001352992 00000 n 
+0001353055 00000 n 
+0001353118 00000 n 
+0001353181 00000 n 
+0001353244 00000 n 
+0001353307 00000 n 
+0001353370 00000 n 
+0001353433 00000 n 
+0001353496 00000 n 
+0001353559 00000 n 
+0001353622 00000 n 
+0001353748 00000 n 
+0001353811 00000 n 
+0001353874 00000 n 
+0001353937 00000 n 
+0001354000 00000 n 
+0001354063 00000 n 
+0001354189 00000 n 
+0001354252 00000 n 
+0001354315 00000 n 
+0001354378 00000 n 
+0001354504 00000 n 
+0001354567 00000 n 
+0001354630 00000 n 
+0001354693 00000 n 
+0001354756 00000 n 
+0001354819 00000 n 
+0001354945 00000 n 
+0001355008 00000 n 
+0001355071 00000 n 
+0001355134 00000 n 
+0001355260 00000 n 
+0001355323 00000 n 
+0001355386 00000 n 
+0001355448 00000 n 
+0001355510 00000 n 
+0001357444 00000 n 
+0001357644 00000 n 
+0001357847 00000 n 
+0001358047 00000 n 
+0001358250 00000 n 
+0001358450 00000 n 
+0001358653 00000 n 
+0001358853 00000 n 
+0001359056 00000 n 
+0001359256 00000 n 
+0001359450 00000 n 
+0001359653 00000 n 
+0001359848 00000 n 
+0001360042 00000 n 
+0001360236 00000 n 
+0001360431 00000 n 
+0001360626 00000 n 
+0001360826 00000 n 
+0001361029 00000 n 
+0001361224 00000 n 
+0001361424 00000 n 
+0001361617 00000 n 
+0001361819 00000 n 
+0001366980 00000 n 
+0001357102 00000 n 
+0001355660 00000 n 
+0001362013 00000 n 
+0001362076 00000 n 
+0001362202 00000 n 
+0001362265 00000 n 
+0001362328 00000 n 
+0001362391 00000 n 
+0001362516 00000 n 
+0001362578 00000 n 
+0001362640 00000 n 
+0001362701 00000 n 
+0001362825 00000 n 
+0001362887 00000 n 
+0001362949 00000 n 
+0001363011 00000 n 
+0001363137 00000 n 
+0001363200 00000 n 
+0001363263 00000 n 
+0001363326 00000 n 
+0001363452 00000 n 
+0001363515 00000 n 
+0001363578 00000 n 
+0001363641 00000 n 
+0001363704 00000 n 
+0001363767 00000 n 
+0001363830 00000 n 
+0001363893 00000 n 
+0001363956 00000 n 
+0001364019 00000 n 
+0001364082 00000 n 
+0001364145 00000 n 
+0001364208 00000 n 
+0001364271 00000 n 
+0001364334 00000 n 
+0001364397 00000 n 
+0001364460 00000 n 
+0001364586 00000 n 
+0001364649 00000 n 
+0001364712 00000 n 
+0001364775 00000 n 
+0001364838 00000 n 
+0001364901 00000 n 
+0001365027 00000 n 
+0001365090 00000 n 
+0001365153 00000 n 
+0001365216 00000 n 
+0001365279 00000 n 
+0001365342 00000 n 
+0001365405 00000 n 
+0001365468 00000 n 
+0001365531 00000 n 
+0001365594 00000 n 
+0001365657 00000 n 
+0001365720 00000 n 
+0001365783 00000 n 
+0001365846 00000 n 
+0001365909 00000 n 
+0001365972 00000 n 
+0001366035 00000 n 
+0001366098 00000 n 
+0001366161 00000 n 
+0001366224 00000 n 
+0001366287 00000 n 
+0001366350 00000 n 
+0001366413 00000 n 
+0001366476 00000 n 
+0001366539 00000 n 
+0001366602 00000 n 
+0001366665 00000 n 
+0001366728 00000 n 
+0001366791 00000 n 
+0001368806 00000 n 
+0001368975 00000 n 
+0001369135 00000 n 
+0001369304 00000 n 
+0001369465 00000 n 
+0001369660 00000 n 
+0001369829 00000 n 
+0001369981 00000 n 
+0001370145 00000 n 
+0001370310 00000 n 
+0001370466 00000 n 
+0001370627 00000 n 
+0001370793 00000 n 
+0001370962 00000 n 
+0001371132 00000 n 
+0001371332 00000 n 
+0001371535 00000 n 
+0001371735 00000 n 
+0001371938 00000 n 
+0001372138 00000 n 
+0001372341 00000 n 
+0001372541 00000 n 
+0001372744 00000 n 
+0001372944 00000 n 
+0001373147 00000 n 
+0001373347 00000 n 
+0001373550 00000 n 
+0001373750 00000 n 
+0001373953 00000 n 
+0001374153 00000 n 
+0001374356 00000 n 
+0001379050 00000 n 
+0001379219 00000 n 
+0001377095 00000 n 
+0001368392 00000 n 
+0001367068 00000 n 
+0001374522 00000 n 
+0001374585 00000 n 
+0001374648 00000 n 
+0001374711 00000 n 
+0001374898 00000 n 
+0001374960 00000 n 
+0001375022 00000 n 
+0001375084 00000 n 
+0001375146 00000 n 
+0001375208 00000 n 
+0001375270 00000 n 
+0001375333 00000 n 
+0001375396 00000 n 
+0001375459 00000 n 
+0001375522 00000 n 
+0001375585 00000 n 
+0001375648 00000 n 
+0001375774 00000 n 
+0001375837 00000 n 
+0001375900 00000 n 
+0001376026 00000 n 
+0001376152 00000 n 
+0001376278 00000 n 
+0001376404 00000 n 
+0001376530 00000 n 
+0001376656 00000 n 
+0001376782 00000 n 
+0001376908 00000 n 
+0001376971 00000 n 
+0001377033 00000 n 
+0001379388 00000 n 
+0001379557 00000 n 
+0001379751 00000 n 
+0001379958 00000 n 
+0001380152 00000 n 
+0001380347 00000 n 
+0001380547 00000 n 
+0001380750 00000 n 
+0001380953 00000 n 
+0001381145 00000 n 
+0001381340 00000 n 
+0001381509 00000 n 
+0001381660 00000 n 
+0001381812 00000 n 
+0001382009 00000 n 
+0001382208 00000 n 
+0001382405 00000 n 
+0001382604 00000 n 
+0001382801 00000 n 
+0001383000 00000 n 
+0001383197 00000 n 
+0001383396 00000 n 
+0001383591 00000 n 
+0001389820 00000 n 
+0001390017 00000 n 
+0001388185 00000 n 
+0001378690 00000 n 
+0001377239 00000 n 
+0001383789 00000 n 
+0001383852 00000 n 
+0001383915 00000 n 
+0001383978 00000 n 
+0001384041 00000 n 
+0001384104 00000 n 
+0001384167 00000 n 
+0001384230 00000 n 
+0001384292 00000 n 
+0001384354 00000 n 
+0001384416 00000 n 
+0001384477 00000 n 
+0001384539 00000 n 
+0001384601 00000 n 
+0001384663 00000 n 
+0001384725 00000 n 
+0001384787 00000 n 
+0001384850 00000 n 
+0001384913 00000 n 
+0001384976 00000 n 
+0001385039 00000 n 
+0001385102 00000 n 
+0001385165 00000 n 
+0001385228 00000 n 
+0001385291 00000 n 
+0001385354 00000 n 
+0001385417 00000 n 
+0001385480 00000 n 
+0001385543 00000 n 
+0001385606 00000 n 
+0001385669 00000 n 
+0001385732 00000 n 
+0001385795 00000 n 
+0001385858 00000 n 
+0001385921 00000 n 
+0001386047 00000 n 
+0001386110 00000 n 
+0001386173 00000 n 
+0001386236 00000 n 
+0001386362 00000 n 
+0001386425 00000 n 
+0001386488 00000 n 
+0001386802 00000 n 
+0001386865 00000 n 
+0001386928 00000 n 
+0001387054 00000 n 
+0001387117 00000 n 
+0001387180 00000 n 
+0001387306 00000 n 
+0001387369 00000 n 
+0001387432 00000 n 
+0001387558 00000 n 
+0001387621 00000 n 
+0001387684 00000 n 
+0001387747 00000 n 
+0001387873 00000 n 
+0001387936 00000 n 
+0001387999 00000 n 
+0001388123 00000 n 
+0001390217 00000 n 
+0001390414 00000 n 
+0001390614 00000 n 
+0001390811 00000 n 
+0001391011 00000 n 
+0001391208 00000 n 
+0001391408 00000 n 
+0001391605 00000 n 
+0001391805 00000 n 
+0001391971 00000 n 
+0001392131 00000 n 
+0001392297 00000 n 
+0001397647 00000 n 
+0001397796 00000 n 
+0001395849 00000 n 
+0001389559 00000 n 
+0001388287 00000 n 
+0001392458 00000 n 
+0001392521 00000 n 
+0001392584 00000 n 
+0001392647 00000 n 
+0001392773 00000 n 
+0001392836 00000 n 
+0001392899 00000 n 
+0001392961 00000 n 
+0001393085 00000 n 
+0001393146 00000 n 
+0001393208 00000 n 
+0001393270 00000 n 
+0001393332 00000 n 
+0001393394 00000 n 
+0001393456 00000 n 
+0001393519 00000 n 
+0001393582 00000 n 
+0001393645 00000 n 
+0001393708 00000 n 
+0001393834 00000 n 
+0001393897 00000 n 
+0001393960 00000 n 
+0001394023 00000 n 
+0001394086 00000 n 
+0001394149 00000 n 
+0001394212 00000 n 
+0001394275 00000 n 
+0001394338 00000 n 
+0001394401 00000 n 
+0001394464 00000 n 
+0001394590 00000 n 
+0001394653 00000 n 
+0001394716 00000 n 
+0001394779 00000 n 
+0001394842 00000 n 
+0001394905 00000 n 
+0001394968 00000 n 
+0001395031 00000 n 
+0001395094 00000 n 
+0001395157 00000 n 
+0001395220 00000 n 
+0001395346 00000 n 
+0001395409 00000 n 
+0001395472 00000 n 
+0001395661 00000 n 
+0001395724 00000 n 
+0001397960 00000 n 
+0001398121 00000 n 
+0001398284 00000 n 
+0001398450 00000 n 
+0001398614 00000 n 
+0001398778 00000 n 
+0001398942 00000 n 
+0001399107 00000 n 
+0001399302 00000 n 
+0001399491 00000 n 
+0001399686 00000 n 
+0001399876 00000 n 
+0001400070 00000 n 
+0001400260 00000 n 
+0001400453 00000 n 
+0001400647 00000 n 
+0001400841 00000 n 
+0001401009 00000 n 
+0001405649 00000 n 
+0001405842 00000 n 
+0001406037 00000 n 
+0001404003 00000 n 
+0001397332 00000 n 
+0001395979 00000 n 
+0001401170 00000 n 
+0001401296 00000 n 
+0001401359 00000 n 
+0001401422 00000 n 
+0001401485 00000 n 
+0001401548 00000 n 
+0001401611 00000 n 
+0001401674 00000 n 
+0001401737 00000 n 
+0001401863 00000 n 
+0001401926 00000 n 
+0001401989 00000 n 
+0001402052 00000 n 
+0001402115 00000 n 
+0001402178 00000 n 
+0001402241 00000 n 
+0001402304 00000 n 
+0001402367 00000 n 
+0001402430 00000 n 
+0001402493 00000 n 
+0001402556 00000 n 
+0001402619 00000 n 
+0001402682 00000 n 
+0001402745 00000 n 
+0001402808 00000 n 
+0001402871 00000 n 
+0001402934 00000 n 
+0001402997 00000 n 
+0001403060 00000 n 
+0001403123 00000 n 
+0001403186 00000 n 
+0001403249 00000 n 
+0001403312 00000 n 
+0001403375 00000 n 
+0001403438 00000 n 
+0001403501 00000 n 
+0001403690 00000 n 
+0001403815 00000 n 
+0001403941 00000 n 
+0002102811 00000 n 
+0001411182 00000 n 
+0001414070 00000 n 
+0001406231 00000 n 
+0001406400 00000 n 
+0001406562 00000 n 
+0001406755 00000 n 
+0001406950 00000 n 
+0001407120 00000 n 
+0001407283 00000 n 
+0001407437 00000 n 
+0001407591 00000 n 
+0001407783 00000 n 
+0001407977 00000 n 
+0001408171 00000 n 
+0001408363 00000 n 
+0001408557 00000 n 
+0001408752 00000 n 
+0001408939 00000 n 
+0001409133 00000 n 
+0001409325 00000 n 
+0001409519 00000 n 
+0001409713 00000 n 
+0001409905 00000 n 
+0001410099 00000 n 
+0001410294 00000 n 
+0001410481 00000 n 
+0001410675 00000 n 
+0001410862 00000 n 
+0001414381 00000 n 
+0001405253 00000 n 
+0001404133 00000 n 
+0001411056 00000 n 
+0001411433 00000 n 
+0001411496 00000 n 
+0001411559 00000 n 
+0001411685 00000 n 
+0001411748 00000 n 
+0001411811 00000 n 
+0001411874 00000 n 
+0001411937 00000 n 
+0001412063 00000 n 
+0001412126 00000 n 
+0001412189 00000 n 
+0001412252 00000 n 
+0001412315 00000 n 
+0001412378 00000 n 
+0001412441 00000 n 
+0001412504 00000 n 
+0001412567 00000 n 
+0001412629 00000 n 
+0001412691 00000 n 
+0001412753 00000 n 
+0001412815 00000 n 
+0001412939 00000 n 
+0001413001 00000 n 
+0001413063 00000 n 
+0001413125 00000 n 
+0001413188 00000 n 
+0001413251 00000 n 
+0001413377 00000 n 
+0001413440 00000 n 
+0001413503 00000 n 
+0001413566 00000 n 
+0001413629 00000 n 
+0001413692 00000 n 
+0001413755 00000 n 
+0001413818 00000 n 
+0001413881 00000 n 
+0001413944 00000 n 
+0001414007 00000 n 
+0001414133 00000 n 
+0001414196 00000 n 
+0001414259 00000 n 
+0001416472 00000 n 
+0001416640 00000 n 
+0001416809 00000 n 
+0001416979 00000 n 
+0001417148 00000 n 
+0001417309 00000 n 
+0001417503 00000 n 
+0001417698 00000 n 
+0001417858 00000 n 
+0001418053 00000 n 
+0001418248 00000 n 
+0001418442 00000 n 
+0001418637 00000 n 
+0001418832 00000 n 
+0001419026 00000 n 
+0001419221 00000 n 
+0001419416 00000 n 
+0001419611 00000 n 
+0001419805 00000 n 
+0001419998 00000 n 
+0001420193 00000 n 
+0001420388 00000 n 
+0001420582 00000 n 
+0001420732 00000 n 
+0001420896 00000 n 
+0001421059 00000 n 
+0001421213 00000 n 
+0001421370 00000 n 
+0001421523 00000 n 
+0001421684 00000 n 
+0001421876 00000 n 
+0001422071 00000 n 
+0001422265 00000 n 
+0001422459 00000 n 
+0001422654 00000 n 
+0001422848 00000 n 
+0001423042 00000 n 
+0001423234 00000 n 
+0001423428 00000 n 
+0001423622 00000 n 
+0001423817 00000 n 
+0001424009 00000 n 
+0001424202 00000 n 
+0001424392 00000 n 
+0001429404 00000 n 
+0001429596 00000 n 
+0001429790 00000 n 
+0001429955 00000 n 
+0001430122 00000 n 
+0001430290 00000 n 
+0001430489 00000 n 
+0001430653 00000 n 
+0001426430 00000 n 
+0001415941 00000 n 
+0001414511 00000 n 
+0001424583 00000 n 
+0001424709 00000 n 
+0001424772 00000 n 
+0001424835 00000 n 
+0001425025 00000 n 
+0001425089 00000 n 
+0001425153 00000 n 
+0001425217 00000 n 
+0001425281 00000 n 
+0001425345 00000 n 
+0001425409 00000 n 
+0001425473 00000 n 
+0001425537 00000 n 
+0001425601 00000 n 
+0001425665 00000 n 
+0001425729 00000 n 
+0001425793 00000 n 
+0001425857 00000 n 
+0001425921 00000 n 
+0001425985 00000 n 
+0001426049 00000 n 
+0001426113 00000 n 
+0001426177 00000 n 
+0001426241 00000 n 
+0001426304 00000 n 
+0001426367 00000 n 
+0001430855 00000 n 
+0001431055 00000 n 
+0001431258 00000 n 
+0001431458 00000 n 
+0001431628 00000 n 
+0001431830 00000 n 
+0001432030 00000 n 
+0001432197 00000 n 
+0001432400 00000 n 
+0001432600 00000 n 
+0001432803 00000 n 
+0001433003 00000 n 
+0001433205 00000 n 
+0001433405 00000 n 
+0001433607 00000 n 
+0001433811 00000 n 
+0001434015 00000 n 
+0001434219 00000 n 
+0001434420 00000 n 
+0001434623 00000 n 
+0001434827 00000 n 
+0001434995 00000 n 
+0001435198 00000 n 
+0001435366 00000 n 
+0001435533 00000 n 
+0001435733 00000 n 
+0001435926 00000 n 
+0001436126 00000 n 
+0001436328 00000 n 
+0001436528 00000 n 
+0001436696 00000 n 
+0001436899 00000 n 
+0001437071 00000 n 
+0001437274 00000 n 
+0001437474 00000 n 
+0001437644 00000 n 
+0001437847 00000 n 
+0001438047 00000 n 
+0001438250 00000 n 
+0001438422 00000 n 
+0001438625 00000 n 
+0001438825 00000 n 
+0001439028 00000 n 
+0001439196 00000 n 
+0001439399 00000 n 
+0001439599 00000 n 
+0001439802 00000 n 
+0001439967 00000 n 
+0001440170 00000 n 
+0001440370 00000 n 
+0001440573 00000 n 
+0001440745 00000 n 
+0001440948 00000 n 
+0001441148 00000 n 
+0001441343 00000 n 
+0001441546 00000 n 
+0001441746 00000 n 
+0001441916 00000 n 
+0001442118 00000 n 
+0001442321 00000 n 
+0001442521 00000 n 
+0001442724 00000 n 
+0001442896 00000 n 
+0001443099 00000 n 
+0001443264 00000 n 
+0001443465 00000 n 
+0001443665 00000 n 
+0001443867 00000 n 
+0001444034 00000 n 
+0001444199 00000 n 
+0001444357 00000 n 
+0001444526 00000 n 
+0001444724 00000 n 
+0001444925 00000 n 
+0001445125 00000 n 
+0001445320 00000 n 
+0001445523 00000 n 
+0001445719 00000 n 
+0001445923 00000 n 
+0001446122 00000 n 
+0001446323 00000 n 
+0001446523 00000 n 
+0001446725 00000 n 
+0001446920 00000 n 
+0001447116 00000 n 
+0001454554 00000 n 
+0001454754 00000 n 
+0001454925 00000 n 
+0001452696 00000 n 
+0001428344 00000 n 
+0001426574 00000 n 
+0001447322 00000 n 
+0001447387 00000 n 
+0001447452 00000 n 
+0001447517 00000 n 
+0001447582 00000 n 
+0001447647 00000 n 
+0001447776 00000 n 
+0001447840 00000 n 
+0001447967 00000 n 
+0001448093 00000 n 
+0001448220 00000 n 
+0001448347 00000 n 
+0001448412 00000 n 
+0001448477 00000 n 
+0001448542 00000 n 
+0001448607 00000 n 
+0001448672 00000 n 
+0001448737 00000 n 
+0001448802 00000 n 
+0001448867 00000 n 
+0001448932 00000 n 
+0001448997 00000 n 
+0001449062 00000 n 
+0001449127 00000 n 
+0001449192 00000 n 
+0001449257 00000 n 
+0001449322 00000 n 
+0001449387 00000 n 
+0001449452 00000 n 
+0001449517 00000 n 
+0001449582 00000 n 
+0001449647 00000 n 
+0001449712 00000 n 
+0001449777 00000 n 
+0001449842 00000 n 
+0001449907 00000 n 
+0001449972 00000 n 
+0001450037 00000 n 
+0001450102 00000 n 
+0001450167 00000 n 
+0001450232 00000 n 
+0001450297 00000 n 
+0001450362 00000 n 
+0001450427 00000 n 
+0001450492 00000 n 
+0001450557 00000 n 
+0001450622 00000 n 
+0001450687 00000 n 
+0001450816 00000 n 
+0001450881 00000 n 
+0001450946 00000 n 
+0001451011 00000 n 
+0001451140 00000 n 
+0001451205 00000 n 
+0001451270 00000 n 
+0001451335 00000 n 
+0001451400 00000 n 
+0001451529 00000 n 
+0001451594 00000 n 
+0001451659 00000 n 
+0001451724 00000 n 
+0001451789 00000 n 
+0001451854 00000 n 
+0001451919 00000 n 
+0001451984 00000 n 
+0001452049 00000 n 
+0001452114 00000 n 
+0001452179 00000 n 
+0001452244 00000 n 
+0001452309 00000 n 
+0001452374 00000 n 
+0001452439 00000 n 
+0001452504 00000 n 
+0001452568 00000 n 
+0001452632 00000 n 
+0001455129 00000 n 
+0001455301 00000 n 
+0001455501 00000 n 
+0001455703 00000 n 
+0001455903 00000 n 
+0001456070 00000 n 
+0001456272 00000 n 
+0001456443 00000 n 
+0001456643 00000 n 
+0001456814 00000 n 
+0001457017 00000 n 
+0001457217 00000 n 
+0001457420 00000 n 
+0001457592 00000 n 
+0001457798 00000 n 
+0001457998 00000 n 
+0001458201 00000 n 
+0001458369 00000 n 
+0001458569 00000 n 
+0001458772 00000 n 
+0001458937 00000 n 
+0001459137 00000 n 
+0001459340 00000 n 
+0001459512 00000 n 
+0001459710 00000 n 
+0001459912 00000 n 
+0001460083 00000 n 
+0001467620 00000 n 
+0001465362 00000 n 
+0001454116 00000 n 
+0001452785 00000 n 
+0001460250 00000 n 
+0001460379 00000 n 
+0001460444 00000 n 
+0001460509 00000 n 
+0001460574 00000 n 
+0001460639 00000 n 
+0001460767 00000 n 
+0001460831 00000 n 
+0001460895 00000 n 
+0001460958 00000 n 
+0001461085 00000 n 
+0001461149 00000 n 
+0001461213 00000 n 
+0001461277 00000 n 
+0001461342 00000 n 
+0001461407 00000 n 
+0001461472 00000 n 
+0001461537 00000 n 
+0001461602 00000 n 
+0001461667 00000 n 
+0001461732 00000 n 
+0001461861 00000 n 
+0001461926 00000 n 
+0001461991 00000 n 
+0001462056 00000 n 
+0001462121 00000 n 
+0001462186 00000 n 
+0001462315 00000 n 
+0001462380 00000 n 
+0001462445 00000 n 
+0001462510 00000 n 
+0001462575 00000 n 
+0001462704 00000 n 
+0001462769 00000 n 
+0001462834 00000 n 
+0001462899 00000 n 
+0001462964 00000 n 
+0001463029 00000 n 
+0001463158 00000 n 
+0001463223 00000 n 
+0001463288 00000 n 
+0001463353 00000 n 
+0001463418 00000 n 
+0001463483 00000 n 
+0001463612 00000 n 
+0001463677 00000 n 
+0001463742 00000 n 
+0001463807 00000 n 
+0001463872 00000 n 
+0001463937 00000 n 
+0001464002 00000 n 
+0001464067 00000 n 
+0001464132 00000 n 
+0001464261 00000 n 
+0001464326 00000 n 
+0001464391 00000 n 
+0001464456 00000 n 
+0001464521 00000 n 
+0001464586 00000 n 
+0001464651 00000 n 
+0001464716 00000 n 
+0001464781 00000 n 
+0001464846 00000 n 
+0001464911 00000 n 
+0001464976 00000 n 
+0001465041 00000 n 
+0001465106 00000 n 
+0001467777 00000 n 
+0001467934 00000 n 
+0001468135 00000 n 
+0001468338 00000 n 
+0001468505 00000 n 
+0001468705 00000 n 
+0001468906 00000 n 
+0001469108 00000 n 
+0001469312 00000 n 
+0001469514 00000 n 
+0001469719 00000 n 
+0001469889 00000 n 
+0001470060 00000 n 
+0001470265 00000 n 
+0001470467 00000 n 
+0001470662 00000 n 
+0001470867 00000 n 
+0001471063 00000 n 
+0001471267 00000 n 
+0001471469 00000 n 
+0001471664 00000 n 
+0001471868 00000 n 
+0001472064 00000 n 
+0001472260 00000 n 
+0001472462 00000 n 
+0001472657 00000 n 
+0001472861 00000 n 
+0001473057 00000 n 
+0001473253 00000 n 
+0001478693 00000 n 
+0001467182 00000 n 
+0001465451 00000 n 
+0001473448 00000 n 
+0001473577 00000 n 
+0001473642 00000 n 
+0001473707 00000 n 
+0001473836 00000 n 
+0001473901 00000 n 
+0001473966 00000 n 
+0001474031 00000 n 
+0001474096 00000 n 
+0001474161 00000 n 
+0001474226 00000 n 
+0001474291 00000 n 
+0001474356 00000 n 
+0001474485 00000 n 
+0001474550 00000 n 
+0001474615 00000 n 
+0001474744 00000 n 
+0001474809 00000 n 
+0001474874 00000 n 
+0001474939 00000 n 
+0001475004 00000 n 
+0001475133 00000 n 
+0001475198 00000 n 
+0001475263 00000 n 
+0001475328 00000 n 
+0001475393 00000 n 
+0001475458 00000 n 
+0001475523 00000 n 
+0001475588 00000 n 
+0001475653 00000 n 
+0001475718 00000 n 
+0001475783 00000 n 
+0001475848 00000 n 
+0001475913 00000 n 
+0001475978 00000 n 
+0001476043 00000 n 
+0001476107 00000 n 
+0001476171 00000 n 
+0001476235 00000 n 
+0001476299 00000 n 
+0001476362 00000 n 
+0001476426 00000 n 
+0001476553 00000 n 
+0001476617 00000 n 
+0001476682 00000 n 
+0001476747 00000 n 
+0001476812 00000 n 
+0001476877 00000 n 
+0001476942 00000 n 
+0001477071 00000 n 
+0001477136 00000 n 
+0001477201 00000 n 
+0001477266 00000 n 
+0001477331 00000 n 
+0001477396 00000 n 
+0001477461 00000 n 
+0001477526 00000 n 
+0001477591 00000 n 
+0001477656 00000 n 
+0001477721 00000 n 
+0001477786 00000 n 
+0001477851 00000 n 
+0001477916 00000 n 
+0001477981 00000 n 
+0001478046 00000 n 
+0001478111 00000 n 
+0001478176 00000 n 
+0001478241 00000 n 
+0001478306 00000 n 
+0001478371 00000 n 
+0001478436 00000 n 
+0001478501 00000 n 
+0001478565 00000 n 
+0001478629 00000 n 
+0001480601 00000 n 
+0001480797 00000 n 
+0001481002 00000 n 
+0001481209 00000 n 
+0001481404 00000 n 
+0001481609 00000 n 
+0001481811 00000 n 
+0001482016 00000 n 
+0001482187 00000 n 
+0001482357 00000 n 
+0001482519 00000 n 
+0001482674 00000 n 
+0001482839 00000 n 
+0001482994 00000 n 
+0001483152 00000 n 
+0001483306 00000 n 
+0001483464 00000 n 
+0001483626 00000 n 
+0001483794 00000 n 
+0001483965 00000 n 
+0001484134 00000 n 
+0001484338 00000 n 
+0001484540 00000 n 
+0001484741 00000 n 
+0001484943 00000 n 
+0001485142 00000 n 
+0001485344 00000 n 
+0001491443 00000 n 
+0001491648 00000 n 
+0001491851 00000 n 
+0001492055 00000 n 
+0001492259 00000 n 
+0001492463 00000 n 
+0001492667 00000 n 
+0001492871 00000 n 
+0001493075 00000 n 
+0001493279 00000 n 
+0001493482 00000 n 
+0001493649 00000 n 
+0001493816 00000 n 
+0001494019 00000 n 
+0001494223 00000 n 
+0001494427 00000 n 
+0001494631 00000 n 
+0001494834 00000 n 
+0001495001 00000 n 
+0001495172 00000 n 
+0001488518 00000 n 
+0001480192 00000 n 
+0001478796 00000 n 
+0001485547 00000 n 
+0001485612 00000 n 
+0001485677 00000 n 
+0001485742 00000 n 
+0001485807 00000 n 
+0001485872 00000 n 
+0001485937 00000 n 
+0001486002 00000 n 
+0001486066 00000 n 
+0001486130 00000 n 
+0001486194 00000 n 
+0001486257 00000 n 
+0001486321 00000 n 
+0001486385 00000 n 
+0001486449 00000 n 
+0001486513 00000 n 
+0001486641 00000 n 
+0001486706 00000 n 
+0001486771 00000 n 
+0001486964 00000 n 
+0001487029 00000 n 
+0001487221 00000 n 
+0001487286 00000 n 
+0001487351 00000 n 
+0001487416 00000 n 
+0001487481 00000 n 
+0001487546 00000 n 
+0001487611 00000 n 
+0001487676 00000 n 
+0001487741 00000 n 
+0001487870 00000 n 
+0001487935 00000 n 
+0001488000 00000 n 
+0001488065 00000 n 
+0001488130 00000 n 
+0001488195 00000 n 
+0001488260 00000 n 
+0001488325 00000 n 
+0001488390 00000 n 
+0001488454 00000 n 
+0002102940 00000 n 
+0001495375 00000 n 
+0001495580 00000 n 
+0001495783 00000 n 
+0001495987 00000 n 
+0001496191 00000 n 
+0001496357 00000 n 
+0001496525 00000 n 
+0001496729 00000 n 
+0001496924 00000 n 
+0001497129 00000 n 
+0001497333 00000 n 
+0001497505 00000 n 
+0001497675 00000 n 
+0001497879 00000 n 
+0001498083 00000 n 
+0001498278 00000 n 
+0001498474 00000 n 
+0001498679 00000 n 
+0001498875 00000 n 
+0001499080 00000 n 
+0001499276 00000 n 
+0001499472 00000 n 
+0001499677 00000 n 
+0001499873 00000 n 
+0001500078 00000 n 
+0001500280 00000 n 
+0001500485 00000 n 
+0001500689 00000 n 
+0001500891 00000 n 
+0001501096 00000 n 
+0001501263 00000 n 
+0001501467 00000 n 
+0001501637 00000 n 
+0001501841 00000 n 
+0001502045 00000 n 
+0001502249 00000 n 
+0001502451 00000 n 
+0001502654 00000 n 
+0001502856 00000 n 
+0001503061 00000 n 
+0001503229 00000 n 
+0001503401 00000 n 
+0001503570 00000 n 
+0001503741 00000 n 
+0001503944 00000 n 
+0001504148 00000 n 
+0001504352 00000 n 
+0001504556 00000 n 
+0001504759 00000 n 
+0001504963 00000 n 
+0001505164 00000 n 
+0001505369 00000 n 
+0001505537 00000 n 
+0001505739 00000 n 
+0001505911 00000 n 
+0001506113 00000 n 
+0001506313 00000 n 
+0001506516 00000 n 
+0001506719 00000 n 
+0001506921 00000 n 
+0001507122 00000 n 
+0001507318 00000 n 
+0001507521 00000 n 
+0001507692 00000 n 
+0001507887 00000 n 
+0001508090 00000 n 
+0001508292 00000 n 
+0001508464 00000 n 
+0001508669 00000 n 
+0001508865 00000 n 
+0001509069 00000 n 
+0001509241 00000 n 
+0001514206 00000 n 
+0001490384 00000 n 
+0001488635 00000 n 
+0001509411 00000 n 
+0001509476 00000 n 
+0001509541 00000 n 
+0001509606 00000 n 
+0001509671 00000 n 
+0001509736 00000 n 
+0001509801 00000 n 
+0001509865 00000 n 
+0001509929 00000 n 
+0001509993 00000 n 
+0001510057 00000 n 
+0001510121 00000 n 
+0001510185 00000 n 
+0001510250 00000 n 
+0001510315 00000 n 
+0001510380 00000 n 
+0001510445 00000 n 
+0001510510 00000 n 
+0001510575 00000 n 
+0001510640 00000 n 
+0001510705 00000 n 
+0001510770 00000 n 
+0001510835 00000 n 
+0001510900 00000 n 
+0001510965 00000 n 
+0001511030 00000 n 
+0001511095 00000 n 
+0001511224 00000 n 
+0001511289 00000 n 
+0001511354 00000 n 
+0001511419 00000 n 
+0001511484 00000 n 
+0001511613 00000 n 
+0001511678 00000 n 
+0001511743 00000 n 
+0001511808 00000 n 
+0001511937 00000 n 
+0001512002 00000 n 
+0001512067 00000 n 
+0001512132 00000 n 
+0001512197 00000 n 
+0001512262 00000 n 
+0001512327 00000 n 
+0001512392 00000 n 
+0001512521 00000 n 
+0001512586 00000 n 
+0001512651 00000 n 
+0001512716 00000 n 
+0001512845 00000 n 
+0001512910 00000 n 
+0001512975 00000 n 
+0001513040 00000 n 
+0001513105 00000 n 
+0001513170 00000 n 
+0001513235 00000 n 
+0001513364 00000 n 
+0001513429 00000 n 
+0001513494 00000 n 
+0001513559 00000 n 
+0001513624 00000 n 
+0001513689 00000 n 
+0001513754 00000 n 
+0001513819 00000 n 
+0001513884 00000 n 
+0001513949 00000 n 
+0001514014 00000 n 
+0001514079 00000 n 
+0001515833 00000 n 
+0001516030 00000 n 
+0001516227 00000 n 
+0001516422 00000 n 
+0001516619 00000 n 
+0001516815 00000 n 
+0001517012 00000 n 
+0001517209 00000 n 
+0001517417 00000 n 
+0001517613 00000 n 
+0001517810 00000 n 
+0001518018 00000 n 
+0001518213 00000 n 
+0001518409 00000 n 
+0001518615 00000 n 
+0001518810 00000 n 
+0001519006 00000 n 
+0001519182 00000 n 
+0001519351 00000 n 
+0001519547 00000 n 
+0001519743 00000 n 
+0001519938 00000 n 
+0001520115 00000 n 
+0001520285 00000 n 
+0001520481 00000 n 
+0001520676 00000 n 
+0001520871 00000 n 
+0001521047 00000 n 
+0001523204 00000 n 
+0001523400 00000 n 
+0001523576 00000 n 
+0001523745 00000 n 
+0001523939 00000 n 
+0001524135 00000 n 
+0001521923 00000 n 
+0001515414 00000 n 
+0001514295 00000 n 
+0001521216 00000 n 
+0001521345 00000 n 
+0001521474 00000 n 
+0001521601 00000 n 
+0001521730 00000 n 
+0001521859 00000 n 
+0001526537 00000 n 
+0001526408 00000 n 
+0001526280 00000 n 
+0001537752 00000 n 
+0001537368 00000 n 
+0001536978 00000 n 
+0001524330 00000 n 
+0001524507 00000 n 
+0001524677 00000 n 
+0001524871 00000 n 
+0001525067 00000 n 
+0001525262 00000 n 
+0001525439 00000 n 
+0001525609 00000 n 
+0001525805 00000 n 
+0001525981 00000 n 
+0001528548 00000 n 
+0001528709 00000 n 
+0001528870 00000 n 
+0001529034 00000 n 
+0001529229 00000 n 
+0001529421 00000 n 
+0001529616 00000 n 
+0001529809 00000 n 
+0001530005 00000 n 
+0001530198 00000 n 
+0001530394 00000 n 
+0001526730 00000 n 
+0001522905 00000 n 
+0001522068 00000 n 
+0001526151 00000 n 
+0001536588 00000 n 
+0001549219 00000 n 
+0001539890 00000 n 
+0001539500 00000 n 
+0001530588 00000 n 
+0001530782 00000 n 
+0001530948 00000 n 
+0001531149 00000 n 
+0001531343 00000 n 
+0001531509 00000 n 
+0001531710 00000 n 
+0001531904 00000 n 
+0001532097 00000 n 
+0001532293 00000 n 
+0001532486 00000 n 
+0001532682 00000 n 
+0001532875 00000 n 
+0001533070 00000 n 
+0001533264 00000 n 
+0001533472 00000 n 
+0001533680 00000 n 
+0001533872 00000 n 
+0001534036 00000 n 
+0001534242 00000 n 
+0001534436 00000 n 
+0001540082 00000 n 
+0001528089 00000 n 
+0001526875 00000 n 
+0001534642 00000 n 
+0001534771 00000 n 
+0001534836 00000 n 
+0001534901 00000 n 
+0001534966 00000 n 
+0001535031 00000 n 
+0001535096 00000 n 
+0001535161 00000 n 
+0001535226 00000 n 
+0001535291 00000 n 
+0001535356 00000 n 
+0001535485 00000 n 
+0001535550 00000 n 
+0001535615 00000 n 
+0001535680 00000 n 
+0001535745 00000 n 
+0001535874 00000 n 
+0001535939 00000 n 
+0001536004 00000 n 
+0001536069 00000 n 
+0001536134 00000 n 
+0001536263 00000 n 
+0001536328 00000 n 
+0001536393 00000 n 
+0001536458 00000 n 
+0001536523 00000 n 
+0001536653 00000 n 
+0001536718 00000 n 
+0001536783 00000 n 
+0001536848 00000 n 
+0001536913 00000 n 
+0001537043 00000 n 
+0001537108 00000 n 
+0001537173 00000 n 
+0001537238 00000 n 
+0001537303 00000 n 
+0001537433 00000 n 
+0001537497 00000 n 
+0001537561 00000 n 
+0001537625 00000 n 
+0001537689 00000 n 
+0001537816 00000 n 
+0001537880 00000 n 
+0001537944 00000 n 
+0001538008 00000 n 
+0001538073 00000 n 
+0001538138 00000 n 
+0001538203 00000 n 
+0001538332 00000 n 
+0001538397 00000 n 
+0001538462 00000 n 
+0001538527 00000 n 
+0001538592 00000 n 
+0001538657 00000 n 
+0001538786 00000 n 
+0001538851 00000 n 
+0001538916 00000 n 
+0001538981 00000 n 
+0001539046 00000 n 
+0001539175 00000 n 
+0001539240 00000 n 
+0001539305 00000 n 
+0001539370 00000 n 
+0001539435 00000 n 
+0001539565 00000 n 
+0001539630 00000 n 
+0001539695 00000 n 
+0001539760 00000 n 
+0001539825 00000 n 
+0001539954 00000 n 
+0001540018 00000 n 
+0001542076 00000 n 
+0001542270 00000 n 
+0001542434 00000 n 
+0001542641 00000 n 
+0001542836 00000 n 
+0001543043 00000 n 
+0001543236 00000 n 
+0001543432 00000 n 
+0001543639 00000 n 
+0001543846 00000 n 
+0001544008 00000 n 
+0001544204 00000 n 
+0001544400 00000 n 
+0001544608 00000 n 
+0001544804 00000 n 
+0001544999 00000 n 
+0001545195 00000 n 
+0001545391 00000 n 
+0001545586 00000 n 
+0001545781 00000 n 
+0001545977 00000 n 
+0001546173 00000 n 
+0001546369 00000 n 
+0001546565 00000 n 
+0001546760 00000 n 
+0001546955 00000 n 
+0001547151 00000 n 
+0001547359 00000 n 
+0001547553 00000 n 
+0001547747 00000 n 
+0001547955 00000 n 
+0001548151 00000 n 
+0001548347 00000 n 
+0001548555 00000 n 
+0001548751 00000 n 
+0001552305 00000 n 
+0001552464 00000 n 
+0001552629 00000 n 
+0001552793 00000 n 
+0001552955 00000 n 
+0001553148 00000 n 
+0001550182 00000 n 
+0001541587 00000 n 
+0001540185 00000 n 
+0001548959 00000 n 
+0001549024 00000 n 
+0001549089 00000 n 
+0001549154 00000 n 
+0001549284 00000 n 
+0001549349 00000 n 
+0001549414 00000 n 
+0001549478 00000 n 
+0001549542 00000 n 
+0001549668 00000 n 
+0001549732 00000 n 
+0001549796 00000 n 
+0001549987 00000 n 
+0001550052 00000 n 
+0001550117 00000 n 
+0001553344 00000 n 
+0001553537 00000 n 
+0001553733 00000 n 
+0001553940 00000 n 
+0001554134 00000 n 
+0001554329 00000 n 
+0001554524 00000 n 
+0001554715 00000 n 
+0001554907 00000 n 
+0001555074 00000 n 
+0001555267 00000 n 
+0001555434 00000 n 
+0001555627 00000 n 
+0001555821 00000 n 
+0001556017 00000 n 
+0001556212 00000 n 
+0001556405 00000 n 
+0001556612 00000 n 
+0001556805 00000 n 
+0001556971 00000 n 
+0001557179 00000 n 
+0001557372 00000 n 
+0001557538 00000 n 
+0001557746 00000 n 
+0001557942 00000 n 
+0001558150 00000 n 
+0001558305 00000 n 
+0001558460 00000 n 
+0001558660 00000 n 
+0001558862 00000 n 
+0001559032 00000 n 
+0001559234 00000 n 
+0001559438 00000 n 
+0001559636 00000 n 
+0001566089 00000 n 
+0001566289 00000 n 
+0001566492 00000 n 
+0001566660 00000 n 
+0001563984 00000 n 
+0001551766 00000 n 
+0001550327 00000 n 
+0001559836 00000 n 
+0001559965 00000 n 
+0001560030 00000 n 
+0001560095 00000 n 
+0001560160 00000 n 
+0001560225 00000 n 
+0001560290 00000 n 
+0001560355 00000 n 
+0001560420 00000 n 
+0001560485 00000 n 
+0001560550 00000 n 
+0001560615 00000 n 
+0001560680 00000 n 
+0001560745 00000 n 
+0001560810 00000 n 
+0001560875 00000 n 
+0001560940 00000 n 
+0001561005 00000 n 
+0001561070 00000 n 
+0001561135 00000 n 
+0001561200 00000 n 
+0001561265 00000 n 
+0001561330 00000 n 
+0001561395 00000 n 
+0001561460 00000 n 
+0001561525 00000 n 
+0001561590 00000 n 
+0001561655 00000 n 
+0001561720 00000 n 
+0001561785 00000 n 
+0001561850 00000 n 
+0001561915 00000 n 
+0001561980 00000 n 
+0001562045 00000 n 
+0001562110 00000 n 
+0001562175 00000 n 
+0001562240 00000 n 
+0001562305 00000 n 
+0001562370 00000 n 
+0001562435 00000 n 
+0001562500 00000 n 
+0001562565 00000 n 
+0001562630 00000 n 
+0001562695 00000 n 
+0001563014 00000 n 
+0001563079 00000 n 
+0001563144 00000 n 
+0001563273 00000 n 
+0001563338 00000 n 
+0001563403 00000 n 
+0001563468 00000 n 
+0001563533 00000 n 
+0001563598 00000 n 
+0001563663 00000 n 
+0001563728 00000 n 
+0001563793 00000 n 
+0001563920 00000 n 
+0002103073 00000 n 
+0001566828 00000 n 
+0001567028 00000 n 
+0001567223 00000 n 
+0001567425 00000 n 
+0001567621 00000 n 
+0001567825 00000 n 
+0001568021 00000 n 
+0001568221 00000 n 
+0001568424 00000 n 
+0001568624 00000 n 
+0001568819 00000 n 
+0001569022 00000 n 
+0001569218 00000 n 
+0001569418 00000 n 
+0001569621 00000 n 
+0001569821 00000 n 
+0001570016 00000 n 
+0001570218 00000 n 
+0001570414 00000 n 
+0001570609 00000 n 
+0001570809 00000 n 
+0001571003 00000 n 
+0001571205 00000 n 
+0001571400 00000 n 
+0001571596 00000 n 
+0001571790 00000 n 
+0001571996 00000 n 
+0001572192 00000 n 
+0001572398 00000 n 
+0001572596 00000 n 
+0001572791 00000 n 
+0001572992 00000 n 
+0001573188 00000 n 
+0001579732 00000 n 
+0001579901 00000 n 
+0001577914 00000 n 
+0001565580 00000 n 
+0001564087 00000 n 
+0001573384 00000 n 
+0001573449 00000 n 
+0001573514 00000 n 
+0001573643 00000 n 
+0001573708 00000 n 
+0001573773 00000 n 
+0001573837 00000 n 
+0001573901 00000 n 
+0001574027 00000 n 
+0001574091 00000 n 
+0001574155 00000 n 
+0001574219 00000 n 
+0001574283 00000 n 
+0001574347 00000 n 
+0001574412 00000 n 
+0001574477 00000 n 
+0001574542 00000 n 
+0001574607 00000 n 
+0001574672 00000 n 
+0001574737 00000 n 
+0001574802 00000 n 
+0001574867 00000 n 
+0001574932 00000 n 
+0001575061 00000 n 
+0001575126 00000 n 
+0001575191 00000 n 
+0001575320 00000 n 
+0001575385 00000 n 
+0001575450 00000 n 
+0001575515 00000 n 
+0001575644 00000 n 
+0001575709 00000 n 
+0001575774 00000 n 
+0001575839 00000 n 
+0001575968 00000 n 
+0001576033 00000 n 
+0001576098 00000 n 
+0001576163 00000 n 
+0001576228 00000 n 
+0001576293 00000 n 
+0001576358 00000 n 
+0001576423 00000 n 
+0001576552 00000 n 
+0001576617 00000 n 
+0001576682 00000 n 
+0001576747 00000 n 
+0001576812 00000 n 
+0001576877 00000 n 
+0001576942 00000 n 
+0001577007 00000 n 
+0001577072 00000 n 
+0001577137 00000 n 
+0001577202 00000 n 
+0001577331 00000 n 
+0001577396 00000 n 
+0001577461 00000 n 
+0001577526 00000 n 
+0001577591 00000 n 
+0001577656 00000 n 
+0001577721 00000 n 
+0001580069 00000 n 
+0001580231 00000 n 
+0001580383 00000 n 
+0001580548 00000 n 
+0001580703 00000 n 
+0001580865 00000 n 
+0001581031 00000 n 
+0001581200 00000 n 
+0001581369 00000 n 
+0001581537 00000 n 
+0001581705 00000 n 
+0001581898 00000 n 
+0001582092 00000 n 
+0001582286 00000 n 
+0001582481 00000 n 
+0001582675 00000 n 
+0001582870 00000 n 
+0001583064 00000 n 
+0001583259 00000 n 
+0001583459 00000 n 
+0001583662 00000 n 
+0001583864 00000 n 
+0001584020 00000 n 
+0001587284 00000 n 
+0001579343 00000 n 
+0001578003 00000 n 
+0001584176 00000 n 
+0001584241 00000 n 
+0001584306 00000 n 
+0001584499 00000 n 
+0001584564 00000 n 
+0001584629 00000 n 
+0001584694 00000 n 
+0001584759 00000 n 
+0001584824 00000 n 
+0001584953 00000 n 
+0001585018 00000 n 
+0001585083 00000 n 
+0001585148 00000 n 
+0001585213 00000 n 
+0001585278 00000 n 
+0001585343 00000 n 
+0001585408 00000 n 
+0001585473 00000 n 
+0001585538 00000 n 
+0001585603 00000 n 
+0001585668 00000 n 
+0001585733 00000 n 
+0001585798 00000 n 
+0001585863 00000 n 
+0001585928 00000 n 
+0001585993 00000 n 
+0001586058 00000 n 
+0001586123 00000 n 
+0001586188 00000 n 
+0001586253 00000 n 
+0001586318 00000 n 
+0001586383 00000 n 
+0001586512 00000 n 
+0001586577 00000 n 
+0001586642 00000 n 
+0001586707 00000 n 
+0001586772 00000 n 
+0001586837 00000 n 
+0001587030 00000 n 
+0001587157 00000 n 
+0001589619 00000 n 
+0001589791 00000 n 
+0001589962 00000 n 
+0001590124 00000 n 
+0001590280 00000 n 
+0001590445 00000 n 
+0001590608 00000 n 
+0001590763 00000 n 
+0001590921 00000 n 
+0001591074 00000 n 
+0001591228 00000 n 
+0001591385 00000 n 
+0001591547 00000 n 
+0001591716 00000 n 
+0001591887 00000 n 
+0001592056 00000 n 
+0001592259 00000 n 
+0001592465 00000 n 
+0001592671 00000 n 
+0001592876 00000 n 
+0001593081 00000 n 
+0001593285 00000 n 
+0001593489 00000 n 
+0001593693 00000 n 
+0001593894 00000 n 
+0001594097 00000 n 
+0001594303 00000 n 
+0001594507 00000 n 
+0001594675 00000 n 
+0001594878 00000 n 
+0001595044 00000 n 
+0001595211 00000 n 
+0001595414 00000 n 
+0001595610 00000 n 
+0001595815 00000 n 
+0001596021 00000 n 
+0001596225 00000 n 
+0001596426 00000 n 
+0001596630 00000 n 
+0001596834 00000 n 
+0001597037 00000 n 
+0001597243 00000 n 
+0001597445 00000 n 
+0001597613 00000 n 
+0001597816 00000 n 
+0001597984 00000 n 
+0001598150 00000 n 
+0001598353 00000 n 
+0001598548 00000 n 
+0001598716 00000 n 
+0001598920 00000 n 
+0001599090 00000 n 
+0001604548 00000 n 
+0001604743 00000 n 
+0001604949 00000 n 
+0001605144 00000 n 
+0001605349 00000 n 
+0001605545 00000 n 
+0001605739 00000 n 
+0001605944 00000 n 
+0001606139 00000 n 
+0001606342 00000 n 
+0001602004 00000 n 
+0001588960 00000 n 
+0001587401 00000 n 
+0001599290 00000 n 
+0001599419 00000 n 
+0001599484 00000 n 
+0001599677 00000 n 
+0001599742 00000 n 
+0001599807 00000 n 
+0001599871 00000 n 
+0001599935 00000 n 
+0001599999 00000 n 
+0001600063 00000 n 
+0001600127 00000 n 
+0001600191 00000 n 
+0001600255 00000 n 
+0001600319 00000 n 
+0001600384 00000 n 
+0001600449 00000 n 
+0001600578 00000 n 
+0001600643 00000 n 
+0001600708 00000 n 
+0001600773 00000 n 
+0001600838 00000 n 
+0001600903 00000 n 
+0001601032 00000 n 
+0001601097 00000 n 
+0001601162 00000 n 
+0001601227 00000 n 
+0001601292 00000 n 
+0001601357 00000 n 
+0001601422 00000 n 
+0001601487 00000 n 
+0001601552 00000 n 
+0001601617 00000 n 
+0001601682 00000 n 
+0001601747 00000 n 
+0001601812 00000 n 
+0001601876 00000 n 
+0001601940 00000 n 
+0001606546 00000 n 
+0001606750 00000 n 
+0001606956 00000 n 
+0001607159 00000 n 
+0001607364 00000 n 
+0001607530 00000 n 
+0001607697 00000 n 
+0001607858 00000 n 
+0001608027 00000 n 
+0001608229 00000 n 
+0001608434 00000 n 
+0001608637 00000 n 
+0001608842 00000 n 
+0001609045 00000 n 
+0001609248 00000 n 
+0001609415 00000 n 
+0001609580 00000 n 
+0001609751 00000 n 
+0001609922 00000 n 
+0001610126 00000 n 
+0001610329 00000 n 
+0001610501 00000 n 
+0001610707 00000 n 
+0001610879 00000 n 
+0001611082 00000 n 
+0001611283 00000 n 
+0001611477 00000 n 
+0001611681 00000 n 
+0001611882 00000 n 
+0001612078 00000 n 
+0001612280 00000 n 
+0001612483 00000 n 
+0001612688 00000 n 
+0001612891 00000 n 
+0001613097 00000 n 
+0001613300 00000 n 
+0001613496 00000 n 
+0001613701 00000 n 
+0001613896 00000 n 
+0001621191 00000 n 
+0001619203 00000 n 
+0001603919 00000 n 
+0001602135 00000 n 
+0001614090 00000 n 
+0001614155 00000 n 
+0001614220 00000 n 
+0001614285 00000 n 
+0001614350 00000 n 
+0001614415 00000 n 
+0001614480 00000 n 
+0001614607 00000 n 
+0001614671 00000 n 
+0001614734 00000 n 
+0001614798 00000 n 
+0001614862 00000 n 
+0001614926 00000 n 
+0001614990 00000 n 
+0001615054 00000 n 
+0001615119 00000 n 
+0001615184 00000 n 
+0001615249 00000 n 
+0001615314 00000 n 
+0001615379 00000 n 
+0001615444 00000 n 
+0001615573 00000 n 
+0001615638 00000 n 
+0001615703 00000 n 
+0001615768 00000 n 
+0001615833 00000 n 
+0001615898 00000 n 
+0001615963 00000 n 
+0001616028 00000 n 
+0001616093 00000 n 
+0001616158 00000 n 
+0001616287 00000 n 
+0001616352 00000 n 
+0001616417 00000 n 
+0001616482 00000 n 
+0001616611 00000 n 
+0001616676 00000 n 
+0001616741 00000 n 
+0001616806 00000 n 
+0001616871 00000 n 
+0001616936 00000 n 
+0001617065 00000 n 
+0001617130 00000 n 
+0001617195 00000 n 
+0001617260 00000 n 
+0001617325 00000 n 
+0001617390 00000 n 
+0001617455 00000 n 
+0001617584 00000 n 
+0001617649 00000 n 
+0001617714 00000 n 
+0001617779 00000 n 
+0001617844 00000 n 
+0001617909 00000 n 
+0001617974 00000 n 
+0001618039 00000 n 
+0001618104 00000 n 
+0001618233 00000 n 
+0001618298 00000 n 
+0001618363 00000 n 
+0001618428 00000 n 
+0001618557 00000 n 
+0001618622 00000 n 
+0001618687 00000 n 
+0001618752 00000 n 
+0001618817 00000 n 
+0001618946 00000 n 
+0001619011 00000 n 
+0001619075 00000 n 
+0001619139 00000 n 
+0001621387 00000 n 
+0001621590 00000 n 
+0001621785 00000 n 
+0001621989 00000 n 
+0001622184 00000 n 
+0001622380 00000 n 
+0001622547 00000 n 
+0001622748 00000 n 
+0001622920 00000 n 
+0001623116 00000 n 
+0001623319 00000 n 
+0001623525 00000 n 
+0001623733 00000 n 
+0001623887 00000 n 
+0001624041 00000 n 
+0001624263 00000 n 
+0001624464 00000 n 
+0001624686 00000 n 
+0001624887 00000 n 
+0001625109 00000 n 
+0001629838 00000 n 
+0001620842 00000 n 
+0001619292 00000 n 
+0001625310 00000 n 
+0001625375 00000 n 
+0001625440 00000 n 
+0001625505 00000 n 
+0001625570 00000 n 
+0001625635 00000 n 
+0001625700 00000 n 
+0001625765 00000 n 
+0001625829 00000 n 
+0001625893 00000 n 
+0001626019 00000 n 
+0001626083 00000 n 
+0001626147 00000 n 
+0001626211 00000 n 
+0001626275 00000 n 
+0001626339 00000 n 
+0001626404 00000 n 
+0001626469 00000 n 
+0001626534 00000 n 
+0001626599 00000 n 
+0001626664 00000 n 
+0001626729 00000 n 
+0001626794 00000 n 
+0001626859 00000 n 
+0001626924 00000 n 
+0001626989 00000 n 
+0001627054 00000 n 
+0001627119 00000 n 
+0001627184 00000 n 
+0001627249 00000 n 
+0001627314 00000 n 
+0001627379 00000 n 
+0001627444 00000 n 
+0001627509 00000 n 
+0001627574 00000 n 
+0001627639 00000 n 
+0001627704 00000 n 
+0001627769 00000 n 
+0001627834 00000 n 
+0001627899 00000 n 
+0001627964 00000 n 
+0001628093 00000 n 
+0001628158 00000 n 
+0001628223 00000 n 
+0001628288 00000 n 
+0001628353 00000 n 
+0001628418 00000 n 
+0001628483 00000 n 
+0001628804 00000 n 
+0001628869 00000 n 
+0001628998 00000 n 
+0001629063 00000 n 
+0001629128 00000 n 
+0001629257 00000 n 
+0001629322 00000 n 
+0001629387 00000 n 
+0001629516 00000 n 
+0001629581 00000 n 
+0001629646 00000 n 
+0001629710 00000 n 
+0001629774 00000 n 
+0001631550 00000 n 
+0001631772 00000 n 
+0001631973 00000 n 
+0001632195 00000 n 
+0001632397 00000 n 
+0001632593 00000 n 
+0001632789 00000 n 
+0001633011 00000 n 
+0001633213 00000 n 
+0001633412 00000 n 
+0001633613 00000 n 
+0001633814 00000 n 
+0001634013 00000 n 
+0001634214 00000 n 
+0001634411 00000 n 
+0001634613 00000 n 
+0001634812 00000 n 
+0001642509 00000 n 
+0001642711 00000 n 
+0001640714 00000 n 
+0001631241 00000 n 
+0001629941 00000 n 
+0001635014 00000 n 
+0001635079 00000 n 
+0001635144 00000 n 
+0001635209 00000 n 
+0001635274 00000 n 
+0001635339 00000 n 
+0001635404 00000 n 
+0001635469 00000 n 
+0001635533 00000 n 
+0001635597 00000 n 
+0001635661 00000 n 
+0001635724 00000 n 
+0001635788 00000 n 
+0001635915 00000 n 
+0001635979 00000 n 
+0001636043 00000 n 
+0001636172 00000 n 
+0001636237 00000 n 
+0001636302 00000 n 
+0001636367 00000 n 
+0001636432 00000 n 
+0001636497 00000 n 
+0001636562 00000 n 
+0001636627 00000 n 
+0001636692 00000 n 
+0001636757 00000 n 
+0001636886 00000 n 
+0001636951 00000 n 
+0001637016 00000 n 
+0001637081 00000 n 
+0001637146 00000 n 
+0001637211 00000 n 
+0001637276 00000 n 
+0001637341 00000 n 
+0001637406 00000 n 
+0001637471 00000 n 
+0001637536 00000 n 
+0001637601 00000 n 
+0001637666 00000 n 
+0001637795 00000 n 
+0001637860 00000 n 
+0001637925 00000 n 
+0001637990 00000 n 
+0001638055 00000 n 
+0001638120 00000 n 
+0001638185 00000 n 
+0001638250 00000 n 
+0001638315 00000 n 
+0001638444 00000 n 
+0001638509 00000 n 
+0001638574 00000 n 
+0001638703 00000 n 
+0001638768 00000 n 
+0001638833 00000 n 
+0001638898 00000 n 
+0001638963 00000 n 
+0001639028 00000 n 
+0001639093 00000 n 
+0001639158 00000 n 
+0001639223 00000 n 
+0001639288 00000 n 
+0001639353 00000 n 
+0001639418 00000 n 
+0001639547 00000 n 
+0001639612 00000 n 
+0001639677 00000 n 
+0001639742 00000 n 
+0001639807 00000 n 
+0001639872 00000 n 
+0001639937 00000 n 
+0001640002 00000 n 
+0001640067 00000 n 
+0001640132 00000 n 
+0001640197 00000 n 
+0001640262 00000 n 
+0001640327 00000 n 
+0001640392 00000 n 
+0001640457 00000 n 
+0001640522 00000 n 
+0001640586 00000 n 
+0001640650 00000 n 
+0002103206 00000 n 
+0001642877 00000 n 
+0001643078 00000 n 
+0001643245 00000 n 
+0001643412 00000 n 
+0001643602 00000 n 
+0001643770 00000 n 
+0001643956 00000 n 
+0001644121 00000 n 
+0001644288 00000 n 
+0001644450 00000 n 
+0001644601 00000 n 
+0001644766 00000 n 
+0001644927 00000 n 
+0001645091 00000 n 
+0001645255 00000 n 
+0001645417 00000 n 
+0001645582 00000 n 
+0001645750 00000 n 
+0001645951 00000 n 
+0001646152 00000 n 
+0001646353 00000 n 
+0001646554 00000 n 
+0001646747 00000 n 
+0001646947 00000 n 
+0001651776 00000 n 
+0001651964 00000 n 
+0001649804 00000 n 
+0001642110 00000 n 
+0001640803 00000 n 
+0001647147 00000 n 
+0001647212 00000 n 
+0001647277 00000 n 
+0001647342 00000 n 
+0001647407 00000 n 
+0001647472 00000 n 
+0001647665 00000 n 
+0001647730 00000 n 
+0001647923 00000 n 
+0001647988 00000 n 
+0001648053 00000 n 
+0001648118 00000 n 
+0001648183 00000 n 
+0001648248 00000 n 
+0001648313 00000 n 
+0001648378 00000 n 
+0001648443 00000 n 
+0001648572 00000 n 
+0001648637 00000 n 
+0001648702 00000 n 
+0001648767 00000 n 
+0001648832 00000 n 
+0001648897 00000 n 
+0001648962 00000 n 
+0001649027 00000 n 
+0001649092 00000 n 
+0001649157 00000 n 
+0001649222 00000 n 
+0001649287 00000 n 
+0001649352 00000 n 
+0001649417 00000 n 
+0001649482 00000 n 
+0001649547 00000 n 
+0001649612 00000 n 
+0001649676 00000 n 
+0001649740 00000 n 
+0001652130 00000 n 
+0001652296 00000 n 
+0001652462 00000 n 
+0001652629 00000 n 
+0001652796 00000 n 
+0001652991 00000 n 
+0001653174 00000 n 
+0001653341 00000 n 
+0001653508 00000 n 
+0001653725 00000 n 
+0001653944 00000 n 
+0001654161 00000 n 
+0001654380 00000 n 
+0001654597 00000 n 
+0001654816 00000 n 
+0001655033 00000 n 
+0001655228 00000 n 
+0001655448 00000 n 
+0001655665 00000 n 
+0001655885 00000 n 
+0001656102 00000 n 
+0001656322 00000 n 
+0001656489 00000 n 
+0001656690 00000 n 
+0001656889 00000 n 
+0001657090 00000 n 
+0001657289 00000 n 
+0001657489 00000 n 
+0001657691 00000 n 
+0001657887 00000 n 
+0001658088 00000 n 
+0001658283 00000 n 
+0001664188 00000 n 
+0001651297 00000 n 
+0001649935 00000 n 
+0001658485 00000 n 
+0001658550 00000 n 
+0001658615 00000 n 
+0001658680 00000 n 
+0001658809 00000 n 
+0001658874 00000 n 
+0001658939 00000 n 
+0001659003 00000 n 
+0001659067 00000 n 
+0001659131 00000 n 
+0001659194 00000 n 
+0001659258 00000 n 
+0001659322 00000 n 
+0001659386 00000 n 
+0001659450 00000 n 
+0001659514 00000 n 
+0001659579 00000 n 
+0001659644 00000 n 
+0001659709 00000 n 
+0001659838 00000 n 
+0001659903 00000 n 
+0001659968 00000 n 
+0001660033 00000 n 
+0001660098 00000 n 
+0001660163 00000 n 
+0001660228 00000 n 
+0001660293 00000 n 
+0001660358 00000 n 
+0001660423 00000 n 
+0001660488 00000 n 
+0001660553 00000 n 
+0001660618 00000 n 
+0001660683 00000 n 
+0001660748 00000 n 
+0001660813 00000 n 
+0001660878 00000 n 
+0001660943 00000 n 
+0001661008 00000 n 
+0001661137 00000 n 
+0001661202 00000 n 
+0001661267 00000 n 
+0001661332 00000 n 
+0001661461 00000 n 
+0001661526 00000 n 
+0001661591 00000 n 
+0001661656 00000 n 
+0001661721 00000 n 
+0001661786 00000 n 
+0001661851 00000 n 
+0001661916 00000 n 
+0001661981 00000 n 
+0001662046 00000 n 
+0001662111 00000 n 
+0001662176 00000 n 
+0001662241 00000 n 
+0001662306 00000 n 
+0001662371 00000 n 
+0001662436 00000 n 
+0001662501 00000 n 
+0001662566 00000 n 
+0001662631 00000 n 
+0001662696 00000 n 
+0001662761 00000 n 
+0001662826 00000 n 
+0001662891 00000 n 
+0001662956 00000 n 
+0001663021 00000 n 
+0001663086 00000 n 
+0001663151 00000 n 
+0001663216 00000 n 
+0001663281 00000 n 
+0001663346 00000 n 
+0001663411 00000 n 
+0001663476 00000 n 
+0001663541 00000 n 
+0001663606 00000 n 
+0001663671 00000 n 
+0001663736 00000 n 
+0001663801 00000 n 
+0001663866 00000 n 
+0001663931 00000 n 
+0001663996 00000 n 
+0001664060 00000 n 
+0001664124 00000 n 
+0001665777 00000 n 
+0001665930 00000 n 
+0001666083 00000 n 
+0001666281 00000 n 
+0001666482 00000 n 
+0001666682 00000 n 
+0001666880 00000 n 
+0001667080 00000 n 
+0001667278 00000 n 
+0001667478 00000 n 
+0001667676 00000 n 
+0001674420 00000 n 
+0001674618 00000 n 
+0001674818 00000 n 
+0001675016 00000 n 
+0001672335 00000 n 
+0001665528 00000 n 
+0001664277 00000 n 
+0001667876 00000 n 
+0001667941 00000 n 
+0001668006 00000 n 
+0001668071 00000 n 
+0001668136 00000 n 
+0001668201 00000 n 
+0001668266 00000 n 
+0001668331 00000 n 
+0001668395 00000 n 
+0001668459 00000 n 
+0001668523 00000 n 
+0001668586 00000 n 
+0001668650 00000 n 
+0001668970 00000 n 
+0001669035 00000 n 
+0001669100 00000 n 
+0001669165 00000 n 
+0001669230 00000 n 
+0001669359 00000 n 
+0001669424 00000 n 
+0001669489 00000 n 
+0001669554 00000 n 
+0001669619 00000 n 
+0001669684 00000 n 
+0001669749 00000 n 
+0001669814 00000 n 
+0001669879 00000 n 
+0001669943 00000 n 
+0001670007 00000 n 
+0001670071 00000 n 
+0001670135 00000 n 
+0001670199 00000 n 
+0001670263 00000 n 
+0001670327 00000 n 
+0001670391 00000 n 
+0001670456 00000 n 
+0001670521 00000 n 
+0001670586 00000 n 
+0001670715 00000 n 
+0001670780 00000 n 
+0001670845 00000 n 
+0001670974 00000 n 
+0001671039 00000 n 
+0001671104 00000 n 
+0001671169 00000 n 
+0001671234 00000 n 
+0001671299 00000 n 
+0001671364 00000 n 
+0001671429 00000 n 
+0001671494 00000 n 
+0001671559 00000 n 
+0001671624 00000 n 
+0001671689 00000 n 
+0001671754 00000 n 
+0001671819 00000 n 
+0001671948 00000 n 
+0001672013 00000 n 
+0001672078 00000 n 
+0001672143 00000 n 
+0001672207 00000 n 
+0001672271 00000 n 
+0001675217 00000 n 
+0001675415 00000 n 
+0001675616 00000 n 
+0001675806 00000 n 
+0001676002 00000 n 
+0001676166 00000 n 
+0001676330 00000 n 
+0001676529 00000 n 
+0001676728 00000 n 
+0001676921 00000 n 
+0001677117 00000 n 
+0001677284 00000 n 
+0001677451 00000 n 
+0001677652 00000 n 
+0001683554 00000 n 
+0001674101 00000 n 
+0001672452 00000 n 
+0001677853 00000 n 
+0001677982 00000 n 
+0001678047 00000 n 
+0001678112 00000 n 
+0001678241 00000 n 
+0001678306 00000 n 
+0001678370 00000 n 
+0001678434 00000 n 
+0001678560 00000 n 
+0001678624 00000 n 
+0001678688 00000 n 
+0001678752 00000 n 
+0001678816 00000 n 
+0001678880 00000 n 
+0001678945 00000 n 
+0001679010 00000 n 
+0001679075 00000 n 
+0001679140 00000 n 
+0001679205 00000 n 
+0001679270 00000 n 
+0001679335 00000 n 
+0001679400 00000 n 
+0001679465 00000 n 
+0001679530 00000 n 
+0001679595 00000 n 
+0001679660 00000 n 
+0001679725 00000 n 
+0001679790 00000 n 
+0001679855 00000 n 
+0001679920 00000 n 
+0001679985 00000 n 
+0001680050 00000 n 
+0001680115 00000 n 
+0001680180 00000 n 
+0001680245 00000 n 
+0001680310 00000 n 
+0001680375 00000 n 
+0001680440 00000 n 
+0001680505 00000 n 
+0001680570 00000 n 
+0001680635 00000 n 
+0001680700 00000 n 
+0001680765 00000 n 
+0001680830 00000 n 
+0001680895 00000 n 
+0001680960 00000 n 
+0001681025 00000 n 
+0001681090 00000 n 
+0001681155 00000 n 
+0001681220 00000 n 
+0001681285 00000 n 
+0001681350 00000 n 
+0001681415 00000 n 
+0001681480 00000 n 
+0001681545 00000 n 
+0001681610 00000 n 
+0001681675 00000 n 
+0001681740 00000 n 
+0001681805 00000 n 
+0001681870 00000 n 
+0001681935 00000 n 
+0001682064 00000 n 
+0001682129 00000 n 
+0001682194 00000 n 
+0001682259 00000 n 
+0001682324 00000 n 
+0001682389 00000 n 
+0001682454 00000 n 
+0001682519 00000 n 
+0001682584 00000 n 
+0001682649 00000 n 
+0001682714 00000 n 
+0001682843 00000 n 
+0001682908 00000 n 
+0001682973 00000 n 
+0001683038 00000 n 
+0001683103 00000 n 
+0001683168 00000 n 
+0001683233 00000 n 
+0001683298 00000 n 
+0001683363 00000 n 
+0001683427 00000 n 
+0001685623 00000 n 
+0001685790 00000 n 
+0001685951 00000 n 
+0001686118 00000 n 
+0001686280 00000 n 
+0001686476 00000 n 
+0001686643 00000 n 
+0001686839 00000 n 
+0001687005 00000 n 
+0001687156 00000 n 
+0001687321 00000 n 
+0001687483 00000 n 
+0001687647 00000 n 
+0001687814 00000 n 
+0001688015 00000 n 
+0001688216 00000 n 
+0001688417 00000 n 
+0001688618 00000 n 
+0001688819 00000 n 
+0001689017 00000 n 
+0001689218 00000 n 
+0001689416 00000 n 
+0001689617 00000 n 
+0001689818 00000 n 
+0001690016 00000 n 
+0001690217 00000 n 
+0001690384 00000 n 
+0001690551 00000 n 
+0001690749 00000 n 
+0001690950 00000 n 
+0001691117 00000 n 
+0001691284 00000 n 
+0001691485 00000 n 
+0001691681 00000 n 
+0001691848 00000 n 
+0001692015 00000 n 
+0001692208 00000 n 
+0001692373 00000 n 
+0001695702 00000 n 
+0001685104 00000 n 
+0001683643 00000 n 
+0001692538 00000 n 
+0001692667 00000 n 
+0001692732 00000 n 
+0001692797 00000 n 
+0001692988 00000 n 
+0001693053 00000 n 
+0001693118 00000 n 
+0001693183 00000 n 
+0001693247 00000 n 
+0001693311 00000 n 
+0001693438 00000 n 
+0001693502 00000 n 
+0001693566 00000 n 
+0001693630 00000 n 
+0001693694 00000 n 
+0001693759 00000 n 
+0001693824 00000 n 
+0001693889 00000 n 
+0001693954 00000 n 
+0001694019 00000 n 
+0001694084 00000 n 
+0001694149 00000 n 
+0001694214 00000 n 
+0001694279 00000 n 
+0001694344 00000 n 
+0001694409 00000 n 
+0001694538 00000 n 
+0001694667 00000 n 
+0001694732 00000 n 
+0001694797 00000 n 
+0001694862 00000 n 
+0001694927 00000 n 
+0001694992 00000 n 
+0001695057 00000 n 
+0001695122 00000 n 
+0001695187 00000 n 
+0001695252 00000 n 
+0001695317 00000 n 
+0001695382 00000 n 
+0001695447 00000 n 
+0001695511 00000 n 
+0001695575 00000 n 
+0001696941 00000 n 
+0001697095 00000 n 
+0001697259 00000 n 
+0001697416 00000 n 
+0001697571 00000 n 
+0001697742 00000 n 
+0001697912 00000 n 
+0001702008 00000 n 
+0001702163 00000 n 
+0001702327 00000 n 
+0001702491 00000 n 
+0001702645 00000 n 
+0001702800 00000 n 
+0001702953 00000 n 
+0001699035 00000 n 
+0001696732 00000 n 
+0001695833 00000 n 
+0001698072 00000 n 
+0001698201 00000 n 
+0001698328 00000 n 
+0001698521 00000 n 
+0001698650 00000 n 
+0001698843 00000 n 
+0001698907 00000 n 
+0002103339 00000 n 
+0001703107 00000 n 
+0001703261 00000 n 
+0001703415 00000 n 
+0001703571 00000 n 
+0001703733 00000 n 
+0001703901 00000 n 
+0001704072 00000 n 
+0001704241 00000 n 
+0001704443 00000 n 
+0001704648 00000 n 
+0001704850 00000 n 
+0001705055 00000 n 
+0001705257 00000 n 
+0001705427 00000 n 
+0001705632 00000 n 
+0001705837 00000 n 
+0001706041 00000 n 
+0001706245 00000 n 
+0001706449 00000 n 
+0001706653 00000 n 
+0001706855 00000 n 
+0001707056 00000 n 
+0001707259 00000 n 
+0001707463 00000 n 
+0001707630 00000 n 
+0001707833 00000 n 
+0001708000 00000 n 
+0001708167 00000 n 
+0001708370 00000 n 
+0001708563 00000 n 
+0001708767 00000 n 
+0001708971 00000 n 
+0001709176 00000 n 
+0001709379 00000 n 
+0001709583 00000 n 
+0001709787 00000 n 
+0001709990 00000 n 
+0001710193 00000 n 
+0001710396 00000 n 
+0001710563 00000 n 
+0001710763 00000 n 
+0001710930 00000 n 
+0001711097 00000 n 
+0001711300 00000 n 
+0001711496 00000 n 
+0001711701 00000 n 
+0001711870 00000 n 
+0001712074 00000 n 
+0001712245 00000 n 
+0001712448 00000 n 
+0001712643 00000 n 
+0001712846 00000 n 
+0001713040 00000 n 
+0001713243 00000 n 
+0001713438 00000 n 
+0001713633 00000 n 
+0001713838 00000 n 
+0001714034 00000 n 
+0001714238 00000 n 
+0001714410 00000 n 
+0001714613 00000 n 
+0001714780 00000 n 
+0001714983 00000 n 
+0001715188 00000 n 
+0001715393 00000 n 
+0001715565 00000 n 
+0001715770 00000 n 
+0001715975 00000 n 
+0001716180 00000 n 
+0001716384 00000 n 
+0001716589 00000 n 
+0001716791 00000 n 
+0001716996 00000 n 
+0001717200 00000 n 
+0001717405 00000 n 
+0001717607 00000 n 
+0001717810 00000 n 
+0001717974 00000 n 
+0001718137 00000 n 
+0001718295 00000 n 
+0001725924 00000 n 
+0001723385 00000 n 
+0001700999 00000 n 
+0001699166 00000 n 
+0001718462 00000 n 
+0001718591 00000 n 
+0001718656 00000 n 
+0001718721 00000 n 
+0001718786 00000 n 
+0001718851 00000 n 
+0001718916 00000 n 
+0001718981 00000 n 
+0001719046 00000 n 
+0001719111 00000 n 
+0001719176 00000 n 
+0001719241 00000 n 
+0001719306 00000 n 
+0001719371 00000 n 
+0001719436 00000 n 
+0001719501 00000 n 
+0001719566 00000 n 
+0001719695 00000 n 
+0001719760 00000 n 
+0001719825 00000 n 
+0001719954 00000 n 
+0001720083 00000 n 
+0001720212 00000 n 
+0001720277 00000 n 
+0001720342 00000 n 
+0001720407 00000 n 
+0001720472 00000 n 
+0001720537 00000 n 
+0001720602 00000 n 
+0001720667 00000 n 
+0001720732 00000 n 
+0001720797 00000 n 
+0001720862 00000 n 
+0001720927 00000 n 
+0001720992 00000 n 
+0001721056 00000 n 
+0001721120 00000 n 
+0001721184 00000 n 
+0001721248 00000 n 
+0001721311 00000 n 
+0001721375 00000 n 
+0001721439 00000 n 
+0001721503 00000 n 
+0001721568 00000 n 
+0001721633 00000 n 
+0001721698 00000 n 
+0001721763 00000 n 
+0001721828 00000 n 
+0001721893 00000 n 
+0001721958 00000 n 
+0001722023 00000 n 
+0001722088 00000 n 
+0001722153 00000 n 
+0001722218 00000 n 
+0001722283 00000 n 
+0001722412 00000 n 
+0001722477 00000 n 
+0001722542 00000 n 
+0001722607 00000 n 
+0001722672 00000 n 
+0001722737 00000 n 
+0001722802 00000 n 
+0001722867 00000 n 
+0001722932 00000 n 
+0001722997 00000 n 
+0001723062 00000 n 
+0001723127 00000 n 
+0001723192 00000 n 
+0001723321 00000 n 
+0001726126 00000 n 
+0001726331 00000 n 
+0001726533 00000 n 
+0001726736 00000 n 
+0001726938 00000 n 
+0001727141 00000 n 
+0001727308 00000 n 
+0001727475 00000 n 
+0001727646 00000 n 
+0001727817 00000 n 
+0001728022 00000 n 
+0001728224 00000 n 
+0001728395 00000 n 
+0001728600 00000 n 
+0001728770 00000 n 
+0001728973 00000 n 
+0001729175 00000 n 
+0001729370 00000 n 
+0001729575 00000 n 
+0001729779 00000 n 
+0001729975 00000 n 
+0001730178 00000 n 
+0001730374 00000 n 
+0001730570 00000 n 
+0001730776 00000 n 
+0001730976 00000 n 
+0001731180 00000 n 
+0001731381 00000 n 
+0001731585 00000 n 
+0001731787 00000 n 
+0001731992 00000 n 
+0001732161 00000 n 
+0001732365 00000 n 
+0001732567 00000 n 
+0001732772 00000 n 
+0001732976 00000 n 
+0001733145 00000 n 
+0001733313 00000 n 
+0001733517 00000 n 
+0001739059 00000 n 
+0001725385 00000 n 
+0001723488 00000 n 
+0001733684 00000 n 
+0001733749 00000 n 
+0001733814 00000 n 
+0001733879 00000 n 
+0001733944 00000 n 
+0001734009 00000 n 
+0001734074 00000 n 
+0001734139 00000 n 
+0001734203 00000 n 
+0001734267 00000 n 
+0001734393 00000 n 
+0001734457 00000 n 
+0001734521 00000 n 
+0001734585 00000 n 
+0001734713 00000 n 
+0001734778 00000 n 
+0001734843 00000 n 
+0001734908 00000 n 
+0001734973 00000 n 
+0001735038 00000 n 
+0001735167 00000 n 
+0001735232 00000 n 
+0001735297 00000 n 
+0001735362 00000 n 
+0001735427 00000 n 
+0001735492 00000 n 
+0001735557 00000 n 
+0001735686 00000 n 
+0001735751 00000 n 
+0001735816 00000 n 
+0001735881 00000 n 
+0001735946 00000 n 
+0001736011 00000 n 
+0001736076 00000 n 
+0001736141 00000 n 
+0001736206 00000 n 
+0001736271 00000 n 
+0001736336 00000 n 
+0001736401 00000 n 
+0001736466 00000 n 
+0001736531 00000 n 
+0001736596 00000 n 
+0001736661 00000 n 
+0001736726 00000 n 
+0001736791 00000 n 
+0001736856 00000 n 
+0001736921 00000 n 
+0001736986 00000 n 
+0001737051 00000 n 
+0001737116 00000 n 
+0001737181 00000 n 
+0001737246 00000 n 
+0001737311 00000 n 
+0001737440 00000 n 
+0001737505 00000 n 
+0001737570 00000 n 
+0001737635 00000 n 
+0001737764 00000 n 
+0001737829 00000 n 
+0001737894 00000 n 
+0001737959 00000 n 
+0001738088 00000 n 
+0001738153 00000 n 
+0001738218 00000 n 
+0001738283 00000 n 
+0001738348 00000 n 
+0001738413 00000 n 
+0001738542 00000 n 
+0001738607 00000 n 
+0001738672 00000 n 
+0001738737 00000 n 
+0001738802 00000 n 
+0001738867 00000 n 
+0001738931 00000 n 
+0001738995 00000 n 
+0001741229 00000 n 
+0001741396 00000 n 
+0001741564 00000 n 
+0001741768 00000 n 
+0001741970 00000 n 
+0001742175 00000 n 
+0001742378 00000 n 
+0001742580 00000 n 
+0001742784 00000 n 
+0001742986 00000 n 
+0001743191 00000 n 
+0001743393 00000 n 
+0001743598 00000 n 
+0001743806 00000 n 
+0001744006 00000 n 
+0001744202 00000 n 
+0001744405 00000 n 
+0001744601 00000 n 
+0001744797 00000 n 
+0001744999 00000 n 
+0001745195 00000 n 
+0001745399 00000 n 
+0001745595 00000 n 
+0001745791 00000 n 
+0001745993 00000 n 
+0001746198 00000 n 
+0001746370 00000 n 
+0001746537 00000 n 
+0001752113 00000 n 
+0001740810 00000 n 
+0001739148 00000 n 
+0001746738 00000 n 
+0001746803 00000 n 
+0001746868 00000 n 
+0001746933 00000 n 
+0001746998 00000 n 
+0001747063 00000 n 
+0001747128 00000 n 
+0001747192 00000 n 
+0001747256 00000 n 
+0001747320 00000 n 
+0001747383 00000 n 
+0001747447 00000 n 
+0001747511 00000 n 
+0001747575 00000 n 
+0001747639 00000 n 
+0001747703 00000 n 
+0001747768 00000 n 
+0001747833 00000 n 
+0001747898 00000 n 
+0001747963 00000 n 
+0001748028 00000 n 
+0001748093 00000 n 
+0001748222 00000 n 
+0001748287 00000 n 
+0001748352 00000 n 
+0001748417 00000 n 
+0001748482 00000 n 
+0001748547 00000 n 
+0001748676 00000 n 
+0001748741 00000 n 
+0001748806 00000 n 
+0001748871 00000 n 
+0001748936 00000 n 
+0001749065 00000 n 
+0001749130 00000 n 
+0001749195 00000 n 
+0001749260 00000 n 
+0001749325 00000 n 
+0001749390 00000 n 
+0001749455 00000 n 
+0001749520 00000 n 
+0001749585 00000 n 
+0001749650 00000 n 
+0001749715 00000 n 
+0001749780 00000 n 
+0001749845 00000 n 
+0001749974 00000 n 
+0001750039 00000 n 
+0001750104 00000 n 
+0001750169 00000 n 
+0001750234 00000 n 
+0001750299 00000 n 
+0001750364 00000 n 
+0001750493 00000 n 
+0001750558 00000 n 
+0001750623 00000 n 
+0001750688 00000 n 
+0001750753 00000 n 
+0001750818 00000 n 
+0001750883 00000 n 
+0001750948 00000 n 
+0001751013 00000 n 
+0001751078 00000 n 
+0001751143 00000 n 
+0001751272 00000 n 
+0001751337 00000 n 
+0001751402 00000 n 
+0001751467 00000 n 
+0001751532 00000 n 
+0001751597 00000 n 
+0001751662 00000 n 
+0001751727 00000 n 
+0001751792 00000 n 
+0001751921 00000 n 
+0001751985 00000 n 
+0001752049 00000 n 
+0001753593 00000 n 
+0001753798 00000 n 
+0001753985 00000 n 
+0001754153 00000 n 
+0001754314 00000 n 
+0001754466 00000 n 
+0001754623 00000 n 
+0001754780 00000 n 
+0001754934 00000 n 
+0001755089 00000 n 
+0001755245 00000 n 
+0001755409 00000 n 
+0001755564 00000 n 
+0001760396 00000 n 
+0001760581 00000 n 
+0001760769 00000 n 
+0001757527 00000 n 
+0001753324 00000 n 
+0001752202 00000 n 
+0001755718 00000 n 
+0001755783 00000 n 
+0001755848 00000 n 
+0001755913 00000 n 
+0001755978 00000 n 
+0001756043 00000 n 
+0001756108 00000 n 
+0001756173 00000 n 
+0001756237 00000 n 
+0001756429 00000 n 
+0001756557 00000 n 
+0001756686 00000 n 
+0001756815 00000 n 
+0001756880 00000 n 
+0001756945 00000 n 
+0001757010 00000 n 
+0001757075 00000 n 
+0001757140 00000 n 
+0001757205 00000 n 
+0001757270 00000 n 
+0001757335 00000 n 
+0001757399 00000 n 
+0001757463 00000 n 
+0001764726 00000 n 
+0001760935 00000 n 
+0001761136 00000 n 
+0001761339 00000 n 
+0001761542 00000 n 
+0001761744 00000 n 
+0001761947 00000 n 
+0001762147 00000 n 
+0001762322 00000 n 
+0001762532 00000 n 
+0001762742 00000 n 
+0001762941 00000 n 
+0001763113 00000 n 
+0001763282 00000 n 
+0001763485 00000 n 
+0001763687 00000 n 
+0001763895 00000 n 
+0001764063 00000 n 
+0001764265 00000 n 
+0001769138 00000 n 
+0001760047 00000 n 
+0001757686 00000 n 
+0001764466 00000 n 
+0001764531 00000 n 
+0001764596 00000 n 
+0001764661 00000 n 
+0001764791 00000 n 
+0001764856 00000 n 
+0001764921 00000 n 
+0001764985 00000 n 
+0001765049 00000 n 
+0001765113 00000 n 
+0001765177 00000 n 
+0001765241 00000 n 
+0001765305 00000 n 
+0001765370 00000 n 
+0001765435 00000 n 
+0001765500 00000 n 
+0001765565 00000 n 
+0001765630 00000 n 
+0001765695 00000 n 
+0001765760 00000 n 
+0001765825 00000 n 
+0001765890 00000 n 
+0001765955 00000 n 
+0001766020 00000 n 
+0001766085 00000 n 
+0001766150 00000 n 
+0001766215 00000 n 
+0001766280 00000 n 
+0001766345 00000 n 
+0001766410 00000 n 
+0001766475 00000 n 
+0001766540 00000 n 
+0001766605 00000 n 
+0001766670 00000 n 
+0001766735 00000 n 
+0001766800 00000 n 
+0001766865 00000 n 
+0001766930 00000 n 
+0001766995 00000 n 
+0001767060 00000 n 
+0001767125 00000 n 
+0001767190 00000 n 
+0001767255 00000 n 
+0001767320 00000 n 
+0001767385 00000 n 
+0001767450 00000 n 
+0001767515 00000 n 
+0001767580 00000 n 
+0001767645 00000 n 
+0001767710 00000 n 
+0001767775 00000 n 
+0001767840 00000 n 
+0001767905 00000 n 
+0001767970 00000 n 
+0001768035 00000 n 
+0001768100 00000 n 
+0001768165 00000 n 
+0001768230 00000 n 
+0001768295 00000 n 
+0001768360 00000 n 
+0001768425 00000 n 
+0001768490 00000 n 
+0001768555 00000 n 
+0001768620 00000 n 
+0001768685 00000 n 
+0001768750 00000 n 
+0001768815 00000 n 
+0001768880 00000 n 
+0001768945 00000 n 
+0001769010 00000 n 
+0001769074 00000 n 
+0001770982 00000 n 
+0001771185 00000 n 
+0001771343 00000 n 
+0001771501 00000 n 
+0001771659 00000 n 
+0001771860 00000 n 
+0001772063 00000 n 
+0001772264 00000 n 
+0001772466 00000 n 
+0001772667 00000 n 
+0001779412 00000 n 
+0001777263 00000 n 
+0001770743 00000 n 
+0001769227 00000 n 
+0001772871 00000 n 
+0001772936 00000 n 
+0001773001 00000 n 
+0001773066 00000 n 
+0001773131 00000 n 
+0001773196 00000 n 
+0001773261 00000 n 
+0001773326 00000 n 
+0001773390 00000 n 
+0001773454 00000 n 
+0001773518 00000 n 
+0001773581 00000 n 
+0001773645 00000 n 
+0001773709 00000 n 
+0001773773 00000 n 
+0001773837 00000 n 
+0001773901 00000 n 
+0001773966 00000 n 
+0001774286 00000 n 
+0001774351 00000 n 
+0001774416 00000 n 
+0001774481 00000 n 
+0001774610 00000 n 
+0001774675 00000 n 
+0001774740 00000 n 
+0001774805 00000 n 
+0001774870 00000 n 
+0001774934 00000 n 
+0001774998 00000 n 
+0001775062 00000 n 
+0001775126 00000 n 
+0001775190 00000 n 
+0001775254 00000 n 
+0001775318 00000 n 
+0001775383 00000 n 
+0001775448 00000 n 
+0001775513 00000 n 
+0001775578 00000 n 
+0001775643 00000 n 
+0001775772 00000 n 
+0001775837 00000 n 
+0001775902 00000 n 
+0001775967 00000 n 
+0001776032 00000 n 
+0001776097 00000 n 
+0001776162 00000 n 
+0001776227 00000 n 
+0001776292 00000 n 
+0001776357 00000 n 
+0001776422 00000 n 
+0001776487 00000 n 
+0001776552 00000 n 
+0001776617 00000 n 
+0001776682 00000 n 
+0001776747 00000 n 
+0001776876 00000 n 
+0001776941 00000 n 
+0001777006 00000 n 
+0001777071 00000 n 
+0001777135 00000 n 
+0001777199 00000 n 
+0002103472 00000 n 
+0001779580 00000 n 
+0001779750 00000 n 
+0001779951 00000 n 
+0001780155 00000 n 
+0001780325 00000 n 
+0001780495 00000 n 
+0001780695 00000 n 
+0001780898 00000 n 
+0001781099 00000 n 
+0001786747 00000 n 
+0001779173 00000 n 
+0001777366 00000 n 
+0001781303 00000 n 
+0001781368 00000 n 
+0001781433 00000 n 
+0001781498 00000 n 
+0001781563 00000 n 
+0001781628 00000 n 
+0001781693 00000 n 
+0001781758 00000 n 
+0001781822 00000 n 
+0001781886 00000 n 
+0001781950 00000 n 
+0001782013 00000 n 
+0001782077 00000 n 
+0001782141 00000 n 
+0001782205 00000 n 
+0001782269 00000 n 
+0001782333 00000 n 
+0001782462 00000 n 
+0001782527 00000 n 
+0001782592 00000 n 
+0001782657 00000 n 
+0001782722 00000 n 
+0001782787 00000 n 
+0001782852 00000 n 
+0001782917 00000 n 
+0001782982 00000 n 
+0001783047 00000 n 
+0001783112 00000 n 
+0001783177 00000 n 
+0001783242 00000 n 
+0001783307 00000 n 
+0001783372 00000 n 
+0001783437 00000 n 
+0001783502 00000 n 
+0001783567 00000 n 
+0001783632 00000 n 
+0001783697 00000 n 
+0001783762 00000 n 
+0001783827 00000 n 
+0001783892 00000 n 
+0001783957 00000 n 
+0001784022 00000 n 
+0001784087 00000 n 
+0001784152 00000 n 
+0001784217 00000 n 
+0001784282 00000 n 
+0001784347 00000 n 
+0001784412 00000 n 
+0001784477 00000 n 
+0001784542 00000 n 
+0001784607 00000 n 
+0001784672 00000 n 
+0001784737 00000 n 
+0001784802 00000 n 
+0001784867 00000 n 
+0001784932 00000 n 
+0001784997 00000 n 
+0001785062 00000 n 
+0001785127 00000 n 
+0001785192 00000 n 
+0001785257 00000 n 
+0001785322 00000 n 
+0001785451 00000 n 
+0001785516 00000 n 
+0001785581 00000 n 
+0001785646 00000 n 
+0001785775 00000 n 
+0001785840 00000 n 
+0001785905 00000 n 
+0001785970 00000 n 
+0001786035 00000 n 
+0001786100 00000 n 
+0001786165 00000 n 
+0001786230 00000 n 
+0001786295 00000 n 
+0001786360 00000 n 
+0001786425 00000 n 
+0001786490 00000 n 
+0001786555 00000 n 
+0001786619 00000 n 
+0001786683 00000 n 
+0001788526 00000 n 
+0001788727 00000 n 
+0001788931 00000 n 
+0001789105 00000 n 
+0001789312 00000 n 
+0001789520 00000 n 
+0001789727 00000 n 
+0001789897 00000 n 
+0001790055 00000 n 
+0001790224 00000 n 
+0001790384 00000 n 
+0001790539 00000 n 
+0001790704 00000 n 
+0001790874 00000 n 
+0001791031 00000 n 
+0001791191 00000 n 
+0001791358 00000 n 
+0001796066 00000 n 
+0001796235 00000 n 
+0001794309 00000 n 
+0001788217 00000 n 
+0001786850 00000 n 
+0001791528 00000 n 
+0001791593 00000 n 
+0001791658 00000 n 
+0001791787 00000 n 
+0001791852 00000 n 
+0001791917 00000 n 
+0001791982 00000 n 
+0001792046 00000 n 
+0001792110 00000 n 
+0001792302 00000 n 
+0001792365 00000 n 
+0001792558 00000 n 
+0001792623 00000 n 
+0001792688 00000 n 
+0001792753 00000 n 
+0001792818 00000 n 
+0001792883 00000 n 
+0001792948 00000 n 
+0001793013 00000 n 
+0001793078 00000 n 
+0001793143 00000 n 
+0001793208 00000 n 
+0001793273 00000 n 
+0001793338 00000 n 
+0001793403 00000 n 
+0001793532 00000 n 
+0001793597 00000 n 
+0001793662 00000 n 
+0001793727 00000 n 
+0001793792 00000 n 
+0001793857 00000 n 
+0001793922 00000 n 
+0001793987 00000 n 
+0001794052 00000 n 
+0001794117 00000 n 
+0001794181 00000 n 
+0001794245 00000 n 
+0001796404 00000 n 
+0001796605 00000 n 
+0001796809 00000 n 
+0001796983 00000 n 
+0001797141 00000 n 
+0001797299 00000 n 
+0001797500 00000 n 
+0001797703 00000 n 
+0001797904 00000 n 
+0001798106 00000 n 
+0001798275 00000 n 
+0001798434 00000 n 
+0001798603 00000 n 
+0001798773 00000 n 
+0001802825 00000 n 
+0001802981 00000 n 
+0001801766 00000 n 
+0001795767 00000 n 
+0001794440 00000 n 
+0001798931 00000 n 
+0001798996 00000 n 
+0001799061 00000 n 
+0001799126 00000 n 
+0001799191 00000 n 
+0001799256 00000 n 
+0001799321 00000 n 
+0001799386 00000 n 
+0001799450 00000 n 
+0001799514 00000 n 
+0001799578 00000 n 
+0001799641 00000 n 
+0001799705 00000 n 
+0001799769 00000 n 
+0001799833 00000 n 
+0001799897 00000 n 
+0001799961 00000 n 
+0001800026 00000 n 
+0001800091 00000 n 
+0001800156 00000 n 
+0001800285 00000 n 
+0001800350 00000 n 
+0001800415 00000 n 
+0001800480 00000 n 
+0001800545 00000 n 
+0001800864 00000 n 
+0001800929 00000 n 
+0001801058 00000 n 
+0001801123 00000 n 
+0001801188 00000 n 
+0001801317 00000 n 
+0001801382 00000 n 
+0001801574 00000 n 
+0001801639 00000 n 
+0001803145 00000 n 
+0001803304 00000 n 
+0001803469 00000 n 
+0001803638 00000 n 
+0001803806 00000 n 
+0001805077 00000 n 
+0001802616 00000 n 
+0001801897 00000 n 
+0001803974 00000 n 
+0001804103 00000 n 
+0001804168 00000 n 
+0001804233 00000 n 
+0001804298 00000 n 
+0001804363 00000 n 
+0001804492 00000 n 
+0001804557 00000 n 
+0001804622 00000 n 
+0001804687 00000 n 
+0001804752 00000 n 
+0001804817 00000 n 
+0001804882 00000 n 
+0001804947 00000 n 
+0001805012 00000 n 
+0001805667 00000 n 
+0001805475 00000 n 
+0001805180 00000 n 
+0001805602 00000 n 
+0001807838 00000 n 
+0001807991 00000 n 
+0001808143 00000 n 
+0001808295 00000 n 
+0001808445 00000 n 
+0001808597 00000 n 
+0001808747 00000 n 
+0001808899 00000 n 
+0001809051 00000 n 
+0001809203 00000 n 
+0001809355 00000 n 
+0001809507 00000 n 
+0001809659 00000 n 
+0001809811 00000 n 
+0001809962 00000 n 
+0001810115 00000 n 
+0001810268 00000 n 
+0001810421 00000 n 
+0001810574 00000 n 
+0001810727 00000 n 
+0001810880 00000 n 
+0001811031 00000 n 
+0001811182 00000 n 
+0001811335 00000 n 
+0001811488 00000 n 
+0001811639 00000 n 
+0001811791 00000 n 
+0001811942 00000 n 
+0001812093 00000 n 
+0001812242 00000 n 
+0001812395 00000 n 
+0001812548 00000 n 
+0001812701 00000 n 
+0001812853 00000 n 
+0001813003 00000 n 
+0001813155 00000 n 
+0001813306 00000 n 
+0001813458 00000 n 
+0001813611 00000 n 
+0001813762 00000 n 
+0001813914 00000 n 
+0001814066 00000 n 
+0001814219 00000 n 
+0001814370 00000 n 
+0001814523 00000 n 
+0001814675 00000 n 
+0001814826 00000 n 
+0001814978 00000 n 
+0001815129 00000 n 
+0001815279 00000 n 
+0001815430 00000 n 
+0001815582 00000 n 
+0001815734 00000 n 
+0001815887 00000 n 
+0001816039 00000 n 
+0001816191 00000 n 
+0001816343 00000 n 
+0001816494 00000 n 
+0001819275 00000 n 
+0001816774 00000 n 
+0001807119 00000 n 
+0001805742 00000 n 
+0001816645 00000 n 
+0002103605 00000 n 
+0001819428 00000 n 
+0001819580 00000 n 
+0001819733 00000 n 
+0001819884 00000 n 
+0001820037 00000 n 
+0001820190 00000 n 
+0001820343 00000 n 
+0001820495 00000 n 
+0001820646 00000 n 
+0001820796 00000 n 
+0001820947 00000 n 
+0001821099 00000 n 
+0001821251 00000 n 
+0001821402 00000 n 
+0001821554 00000 n 
+0001821705 00000 n 
+0001821858 00000 n 
+0001822010 00000 n 
+0001822162 00000 n 
+0001822313 00000 n 
+0001822464 00000 n 
+0001822615 00000 n 
+0001822767 00000 n 
+0001822919 00000 n 
+0001823071 00000 n 
+0001823222 00000 n 
+0001823374 00000 n 
+0001823527 00000 n 
+0001823679 00000 n 
+0001823830 00000 n 
+0001823982 00000 n 
+0001824134 00000 n 
+0001824286 00000 n 
+0001824437 00000 n 
+0001824587 00000 n 
+0001824739 00000 n 
+0001824890 00000 n 
+0001825042 00000 n 
+0001825195 00000 n 
+0001825348 00000 n 
+0001825500 00000 n 
+0001825653 00000 n 
+0001825804 00000 n 
+0001825956 00000 n 
+0001826108 00000 n 
+0001826259 00000 n 
+0001826412 00000 n 
+0001826564 00000 n 
+0001826717 00000 n 
+0001826870 00000 n 
+0001827022 00000 n 
+0001827174 00000 n 
+0001827325 00000 n 
+0001827478 00000 n 
+0001827631 00000 n 
+0001827784 00000 n 
+0001827937 00000 n 
+0001828089 00000 n 
+0001828240 00000 n 
+0001828393 00000 n 
+0001828545 00000 n 
+0001828698 00000 n 
+0001828849 00000 n 
+0001829001 00000 n 
+0001829153 00000 n 
+0001829304 00000 n 
+0001829456 00000 n 
+0001829608 00000 n 
+0001829759 00000 n 
+0001829911 00000 n 
+0001830063 00000 n 
+0001830214 00000 n 
+0001830364 00000 n 
+0001833354 00000 n 
+0001830579 00000 n 
+0001818396 00000 n 
+0001816905 00000 n 
+0001830514 00000 n 
+0001833507 00000 n 
+0001833659 00000 n 
+0001833812 00000 n 
+0001833963 00000 n 
+0001834116 00000 n 
+0001834268 00000 n 
+0001834421 00000 n 
+0001834573 00000 n 
+0001834726 00000 n 
+0001834879 00000 n 
+0001835032 00000 n 
+0001835185 00000 n 
+0001835338 00000 n 
+0001835490 00000 n 
+0001835640 00000 n 
+0001835792 00000 n 
+0001835945 00000 n 
+0001836096 00000 n 
+0001836249 00000 n 
+0001836401 00000 n 
+0001836554 00000 n 
+0001836707 00000 n 
+0001836860 00000 n 
+0001837012 00000 n 
+0001837164 00000 n 
+0001837315 00000 n 
+0001837465 00000 n 
+0001837617 00000 n 
+0001837769 00000 n 
+0001837922 00000 n 
+0001838073 00000 n 
+0001838225 00000 n 
+0001838376 00000 n 
+0001838528 00000 n 
+0001838680 00000 n 
+0001838831 00000 n 
+0001838982 00000 n 
+0001839133 00000 n 
+0001839285 00000 n 
+0001839437 00000 n 
+0001839590 00000 n 
+0001839743 00000 n 
+0001839894 00000 n 
+0001840045 00000 n 
+0001840196 00000 n 
+0001840349 00000 n 
+0001840502 00000 n 
+0001840655 00000 n 
+0001840807 00000 n 
+0001840960 00000 n 
+0001841112 00000 n 
+0001841265 00000 n 
+0001841418 00000 n 
+0001841569 00000 n 
+0001841720 00000 n 
+0001841872 00000 n 
+0001842024 00000 n 
+0001842176 00000 n 
+0001842328 00000 n 
+0001842480 00000 n 
+0001842631 00000 n 
+0001842783 00000 n 
+0001842936 00000 n 
+0001843086 00000 n 
+0001843238 00000 n 
+0001843390 00000 n 
+0001843542 00000 n 
+0001843694 00000 n 
+0001843844 00000 n 
+0001843996 00000 n 
+0001844144 00000 n 
+0001844296 00000 n 
+0001844447 00000 n 
+0001844599 00000 n 
+0001844750 00000 n 
+0001844902 00000 n 
+0001845053 00000 n 
+0001845205 00000 n 
+0001845357 00000 n 
+0001845508 00000 n 
+0001845659 00000 n 
+0001845811 00000 n 
+0001845962 00000 n 
+0001846114 00000 n 
+0001846266 00000 n 
+0001846417 00000 n 
+0001846569 00000 n 
+0001846720 00000 n 
+0001846872 00000 n 
+0001847023 00000 n 
+0001847176 00000 n 
+0001847328 00000 n 
+0001847478 00000 n 
+0001850124 00000 n 
+0001847694 00000 n 
+0001832275 00000 n 
+0001830682 00000 n 
+0001847629 00000 n 
+0001850277 00000 n 
+0001850430 00000 n 
+0001850583 00000 n 
+0001850735 00000 n 
+0001850887 00000 n 
+0001851039 00000 n 
+0001851192 00000 n 
+0001851344 00000 n 
+0001851495 00000 n 
+0001851644 00000 n 
+0001851795 00000 n 
+0001851948 00000 n 
+0001852100 00000 n 
+0001852252 00000 n 
+0001852403 00000 n 
+0001852556 00000 n 
+0001852706 00000 n 
+0001852858 00000 n 
+0001853010 00000 n 
+0001853162 00000 n 
+0001853314 00000 n 
+0001853466 00000 n 
+0001853617 00000 n 
+0001853769 00000 n 
+0001853921 00000 n 
+0001854073 00000 n 
+0001854225 00000 n 
+0001854378 00000 n 
+0001854529 00000 n 
+0001854681 00000 n 
+0001854832 00000 n 
+0001854983 00000 n 
+0001855134 00000 n 
+0001855284 00000 n 
+0001855433 00000 n 
+0001855582 00000 n 
+0001855734 00000 n 
+0001855886 00000 n 
+0001856038 00000 n 
+0001856191 00000 n 
+0001856343 00000 n 
+0001856495 00000 n 
+0001856646 00000 n 
+0001856797 00000 n 
+0001856949 00000 n 
+0001857102 00000 n 
+0001857253 00000 n 
+0001857406 00000 n 
+0001857558 00000 n 
+0001857710 00000 n 
+0001857862 00000 n 
+0001858014 00000 n 
+0001858167 00000 n 
+0001858319 00000 n 
+0001858471 00000 n 
+0001858624 00000 n 
+0001858775 00000 n 
+0001858927 00000 n 
+0001859079 00000 n 
+0001859231 00000 n 
+0001859384 00000 n 
+0001859535 00000 n 
+0001859688 00000 n 
+0001859840 00000 n 
+0001859992 00000 n 
+0001860145 00000 n 
+0001860297 00000 n 
+0001860449 00000 n 
+0001863596 00000 n 
+0001860663 00000 n 
+0001849295 00000 n 
+0001847811 00000 n 
+0001860598 00000 n 
+0001863748 00000 n 
+0001863900 00000 n 
+0001864052 00000 n 
+0001864203 00000 n 
+0001864355 00000 n 
+0001864507 00000 n 
+0001864658 00000 n 
+0001864808 00000 n 
+0001864960 00000 n 
+0001865111 00000 n 
+0001865262 00000 n 
+0001865415 00000 n 
+0001865568 00000 n 
+0001865720 00000 n 
+0001865871 00000 n 
+0001866023 00000 n 
+0001866175 00000 n 
+0001866327 00000 n 
+0001866480 00000 n 
+0001866631 00000 n 
+0001866782 00000 n 
+0001866934 00000 n 
+0001867087 00000 n 
+0001867237 00000 n 
+0001867388 00000 n 
+0001867541 00000 n 
+0001867691 00000 n 
+0001867842 00000 n 
+0001867994 00000 n 
+0001868146 00000 n 
+0001868298 00000 n 
+0001868449 00000 n 
+0001868601 00000 n 
+0001868751 00000 n 
+0001868903 00000 n 
+0001869056 00000 n 
+0001869209 00000 n 
+0001869362 00000 n 
+0001869515 00000 n 
+0001869668 00000 n 
+0001869821 00000 n 
+0001869972 00000 n 
+0001870123 00000 n 
+0001870275 00000 n 
+0001870427 00000 n 
+0001870579 00000 n 
+0001870730 00000 n 
+0001870880 00000 n 
+0001871032 00000 n 
+0001871182 00000 n 
+0001871334 00000 n 
+0001871486 00000 n 
+0001871636 00000 n 
+0001871788 00000 n 
+0001871940 00000 n 
+0001872092 00000 n 
+0001872243 00000 n 
+0001872393 00000 n 
+0001872545 00000 n 
+0001872694 00000 n 
+0001872846 00000 n 
+0001872998 00000 n 
+0001873150 00000 n 
+0001873302 00000 n 
+0001873453 00000 n 
+0001873604 00000 n 
+0001873756 00000 n 
+0001873908 00000 n 
+0001874060 00000 n 
+0001874212 00000 n 
+0001874364 00000 n 
+0001874515 00000 n 
+0001874667 00000 n 
+0001874818 00000 n 
+0001874969 00000 n 
+0001875121 00000 n 
+0001875270 00000 n 
+0001875420 00000 n 
+0001875572 00000 n 
+0001875723 00000 n 
+0001875875 00000 n 
+0001876027 00000 n 
+0001876179 00000 n 
+0001876330 00000 n 
+0001876480 00000 n 
+0001876632 00000 n 
+0001876784 00000 n 
+0001876934 00000 n 
+0001877086 00000 n 
+0001877236 00000 n 
+0001877388 00000 n 
+0001877539 00000 n 
+0001877691 00000 n 
+0001877843 00000 n 
+0001877995 00000 n 
+0001878147 00000 n 
+0001878299 00000 n 
+0001878450 00000 n 
+0001878602 00000 n 
+0001878752 00000 n 
+0001881882 00000 n 
+0001878967 00000 n 
+0001862447 00000 n 
+0001860780 00000 n 
+0001878902 00000 n 
+0001882034 00000 n 
+0001882186 00000 n 
+0001882338 00000 n 
+0001882490 00000 n 
+0001882642 00000 n 
+0001882793 00000 n 
+0001882944 00000 n 
+0001883094 00000 n 
+0001883246 00000 n 
+0001883398 00000 n 
+0001883550 00000 n 
+0001883702 00000 n 
+0001883854 00000 n 
+0001884006 00000 n 
+0001884155 00000 n 
+0001884307 00000 n 
+0001884458 00000 n 
+0001884610 00000 n 
+0001884762 00000 n 
+0001884914 00000 n 
+0001885066 00000 n 
+0001885217 00000 n 
+0001885369 00000 n 
+0001885521 00000 n 
+0001885673 00000 n 
+0001885825 00000 n 
+0001885977 00000 n 
+0001886129 00000 n 
+0001886279 00000 n 
+0001886430 00000 n 
+0001886582 00000 n 
+0001886733 00000 n 
+0001886885 00000 n 
+0001887036 00000 n 
+0001887188 00000 n 
+0001887340 00000 n 
+0001887492 00000 n 
+0001887644 00000 n 
+0001887796 00000 n 
+0001887948 00000 n 
+0001888099 00000 n 
+0001888251 00000 n 
+0001888402 00000 n 
+0001888553 00000 n 
+0001888704 00000 n 
+0001888854 00000 n 
+0001889003 00000 n 
+0001889155 00000 n 
+0001889307 00000 n 
+0001889459 00000 n 
+0001889611 00000 n 
+0001889763 00000 n 
+0001889915 00000 n 
+0001890066 00000 n 
+0001890217 00000 n 
+0001890369 00000 n 
+0001890518 00000 n 
+0001890668 00000 n 
+0001890820 00000 n 
+0001890971 00000 n 
+0001891122 00000 n 
+0001891273 00000 n 
+0001891425 00000 n 
+0001891576 00000 n 
+0001891728 00000 n 
+0001891880 00000 n 
+0001892031 00000 n 
+0001892182 00000 n 
+0001892334 00000 n 
+0001892486 00000 n 
+0001892637 00000 n 
+0001892789 00000 n 
+0001892941 00000 n 
+0001893093 00000 n 
+0001893244 00000 n 
+0001893396 00000 n 
+0001893546 00000 n 
+0001893697 00000 n 
+0001893849 00000 n 
+0001894001 00000 n 
+0001894153 00000 n 
+0001894304 00000 n 
+0001894456 00000 n 
+0001894608 00000 n 
+0001894760 00000 n 
+0001894912 00000 n 
+0001895064 00000 n 
+0001895215 00000 n 
+0001895367 00000 n 
+0001895519 00000 n 
+0001895671 00000 n 
+0001895823 00000 n 
+0001895975 00000 n 
+0001896127 00000 n 
+0001896278 00000 n 
+0001896429 00000 n 
+0001896581 00000 n 
+0001896734 00000 n 
+0001896886 00000 n 
+0001897038 00000 n 
+0001897191 00000 n 
+0001897344 00000 n 
+0001897497 00000 n 
+0001897649 00000 n 
+0001897802 00000 n 
+0001897955 00000 n 
+0001898108 00000 n 
+0001898261 00000 n 
+0001898414 00000 n 
+0001898567 00000 n 
+0001898720 00000 n 
+0001898873 00000 n 
+0001899026 00000 n 
+0001899179 00000 n 
+0001899332 00000 n 
+0001899482 00000 n 
+0001902751 00000 n 
+0001899698 00000 n 
+0001880573 00000 n 
+0001879084 00000 n 
+0001899633 00000 n 
+0001902903 00000 n 
+0001903056 00000 n 
+0001903209 00000 n 
+0001903359 00000 n 
+0001903512 00000 n 
+0001903664 00000 n 
+0001903817 00000 n 
+0001903970 00000 n 
+0001904123 00000 n 
+0001904276 00000 n 
+0001904429 00000 n 
+0001904582 00000 n 
+0001904733 00000 n 
+0001904884 00000 n 
+0001905035 00000 n 
+0001905187 00000 n 
+0001905339 00000 n 
+0001905491 00000 n 
+0001905643 00000 n 
+0001905796 00000 n 
+0001905949 00000 n 
+0001906101 00000 n 
+0001906254 00000 n 
+0001906407 00000 n 
+0001906559 00000 n 
+0001906711 00000 n 
+0001906864 00000 n 
+0001907016 00000 n 
+0001907169 00000 n 
+0001907321 00000 n 
+0001907474 00000 n 
+0001907627 00000 n 
+0001907779 00000 n 
+0001907932 00000 n 
+0001908085 00000 n 
+0001908238 00000 n 
+0001908391 00000 n 
+0001908543 00000 n 
+0001908696 00000 n 
+0001908846 00000 n 
+0001908998 00000 n 
+0001909151 00000 n 
+0001909304 00000 n 
+0001909456 00000 n 
+0001909609 00000 n 
+0001909761 00000 n 
+0001909914 00000 n 
+0001910067 00000 n 
+0001910220 00000 n 
+0001910373 00000 n 
+0001910526 00000 n 
+0001910679 00000 n 
+0001910832 00000 n 
+0001910983 00000 n 
+0001911134 00000 n 
+0001911285 00000 n 
+0001911438 00000 n 
+0001911591 00000 n 
+0001911744 00000 n 
+0001911896 00000 n 
+0001912049 00000 n 
+0001912202 00000 n 
+0001912355 00000 n 
+0001912508 00000 n 
+0001912661 00000 n 
+0001912814 00000 n 
+0001912967 00000 n 
+0001913119 00000 n 
+0001913272 00000 n 
+0001913425 00000 n 
+0001913576 00000 n 
+0001913729 00000 n 
+0001913881 00000 n 
+0001914033 00000 n 
+0001914185 00000 n 
+0001914337 00000 n 
+0001914489 00000 n 
+0001914642 00000 n 
+0001914794 00000 n 
+0001914947 00000 n 
+0001915099 00000 n 
+0001915251 00000 n 
+0001915403 00000 n 
+0001915555 00000 n 
+0001915708 00000 n 
+0001915859 00000 n 
+0001916012 00000 n 
+0001916165 00000 n 
+0001916318 00000 n 
+0001916470 00000 n 
+0001916623 00000 n 
+0001916776 00000 n 
+0001916929 00000 n 
+0001917082 00000 n 
+0001917235 00000 n 
+0001917388 00000 n 
+0001917540 00000 n 
+0001917692 00000 n 
+0001917844 00000 n 
+0001917997 00000 n 
+0001918150 00000 n 
+0001918303 00000 n 
+0001918456 00000 n 
+0001918609 00000 n 
+0001918762 00000 n 
+0001918913 00000 n 
+0001919066 00000 n 
+0001919218 00000 n 
+0001919368 00000 n 
+0001919521 00000 n 
+0001919673 00000 n 
+0001919825 00000 n 
+0001919976 00000 n 
+0001920125 00000 n 
+0001920276 00000 n 
+0001920429 00000 n 
+0001920581 00000 n 
+0001920732 00000 n 
+0001923141 00000 n 
+0001920946 00000 n 
+0001901422 00000 n 
+0001899815 00000 n 
+0001920881 00000 n 
+0002103738 00000 n 
+0001923293 00000 n 
+0001923445 00000 n 
+0001923597 00000 n 
+0001923749 00000 n 
+0001923901 00000 n 
+0001924051 00000 n 
+0001924202 00000 n 
+0001924353 00000 n 
+0001924505 00000 n 
+0001924657 00000 n 
+0001924809 00000 n 
+0001924961 00000 n 
+0001925113 00000 n 
+0001925265 00000 n 
+0001925417 00000 n 
+0001925568 00000 n 
+0001925719 00000 n 
+0001925871 00000 n 
+0001926022 00000 n 
+0001926174 00000 n 
+0001926326 00000 n 
+0001926477 00000 n 
+0001926629 00000 n 
+0001926780 00000 n 
+0001926928 00000 n 
+0001927079 00000 n 
+0001927231 00000 n 
+0001927382 00000 n 
+0001927533 00000 n 
+0001927685 00000 n 
+0001927833 00000 n 
+0001927985 00000 n 
+0001928137 00000 n 
+0001928289 00000 n 
+0001928442 00000 n 
+0001928593 00000 n 
+0001928745 00000 n 
+0001928893 00000 n 
+0001929046 00000 n 
+0001929197 00000 n 
+0001929349 00000 n 
+0001929502 00000 n 
+0001929654 00000 n 
+0001929806 00000 n 
+0001929957 00000 n 
+0001930108 00000 n 
+0001930259 00000 n 
+0001930410 00000 n 
+0001930562 00000 n 
+0001930714 00000 n 
+0001930866 00000 n 
+0001931018 00000 n 
+0001931171 00000 n 
+0001931322 00000 n 
+0001931475 00000 n 
+0001931628 00000 n 
+0001931780 00000 n 
+0001931932 00000 n 
+0001932150 00000 n 
+0001922412 00000 n 
+0001921063 00000 n 
+0001932085 00000 n 
+0001932267 00000 n 
+0001932306 00000 n 
+0002083291 00000 n 
+0001932345 00000 n 
+0001932554 00000 n 
+0001932927 00000 n 
+0001933081 00000 n 
+0001933120 00000 n 
+0001933598 00000 n 
+0001933625 00000 n 
+0001934125 00000 n 
+0001934462 00000 n 
+0001935079 00000 n 
+0001935223 00000 n 
+0001935260 00000 n 
+0001935737 00000 n 
+0001936312 00000 n 
+0001943453 00000 n 
+0001943690 00000 n 
+0001950831 00000 n 
+0001951068 00000 n 
+0001958084 00000 n 
+0001958321 00000 n 
+0001965463 00000 n 
+0001965699 00000 n 
+0001972842 00000 n 
+0001973078 00000 n 
+0001980331 00000 n 
+0001980576 00000 n 
+0001987737 00000 n 
+0001987980 00000 n 
+0001995249 00000 n 
+0001995493 00000 n 
+0002001921 00000 n 
+0002002197 00000 n 
+0002022143 00000 n 
+0002022791 00000 n 
+0002034282 00000 n 
+0002034663 00000 n 
+0002048064 00000 n 
+0002048562 00000 n 
+0002059525 00000 n 
+0002059902 00000 n 
+0002071670 00000 n 
+0002072265 00000 n 
+0002082823 00000 n 
+0002083829 00000 n 
+0002084777 00000 n 
+0002085725 00000 n 
+0002086671 00000 n 
+0002087617 00000 n 
+0002088563 00000 n 
+0002089714 00000 n 
+0002090866 00000 n 
+0002092016 00000 n 
+0002092961 00000 n 
+0002093907 00000 n 
+0002094858 00000 n 
+0002095804 00000 n 
+0002096756 00000 n 
+0002097702 00000 n 
+0002103831 00000 n 
+0002103959 00000 n 
+0002104087 00000 n 
+0002104215 00000 n 
+0002104343 00000 n 
+0002104471 00000 n 
+0002104601 00000 n 
+0002104725 00000 n 
+0002104860 00000 n 
+0002104944 00000 n 
+0002105021 00000 n 
+0002161141 00000 n 
+0002161322 00000 n 
+0002161500 00000 n 
+0002161671 00000 n 
+0002161913 00000 n 
+0002162272 00000 n 
+0002162632 00000 n 
+0002162992 00000 n 
+0002163351 00000 n 
+0002163711 00000 n 
+0002164071 00000 n 
+0002164430 00000 n 
+0002164790 00000 n 
+0002165150 00000 n 
+0002165510 00000 n 
+0002165869 00000 n 
+0002166229 00000 n 
+0002166589 00000 n 
+0002166949 00000 n 
+0002167309 00000 n 
+0002167669 00000 n 
+0002168029 00000 n 
+0002168388 00000 n 
+0002168747 00000 n 
+0002169107 00000 n 
+0002169467 00000 n 
+0002169826 00000 n 
+0002170153 00000 n 
+0002170482 00000 n 
+0002170826 00000 n 
+0002171169 00000 n 
+0002171513 00000 n 
+0002171857 00000 n 
+0002172201 00000 n 
+0002172545 00000 n 
+0002172888 00000 n 
+0002173207 00000 n 
+0002173516 00000 n 
+0002173854 00000 n 
+0002174192 00000 n 
+0002174530 00000 n 
+0002174868 00000 n 
+0002175206 00000 n 
+0002175544 00000 n 
+0002175882 00000 n 
+0002176220 00000 n 
+0002176558 00000 n 
+0002176896 00000 n 
+0002177234 00000 n 
+0002177572 00000 n 
+0002177910 00000 n 
+0002178248 00000 n 
+0002178586 00000 n 
+0002178924 00000 n 
+0002179262 00000 n 
+0002179600 00000 n 
+0002179938 00000 n 
+0002180276 00000 n 
+0002180614 00000 n 
+0002180952 00000 n 
+0002181290 00000 n 
+0002181628 00000 n 
+0002181966 00000 n 
+0002182304 00000 n 
+0002182642 00000 n 
+0002182980 00000 n 
+0002183318 00000 n 
+0002183656 00000 n 
+0002183994 00000 n 
+0002184332 00000 n 
+0002184670 00000 n 
+0002185008 00000 n 
+0002185346 00000 n 
+0002185684 00000 n 
+0002186022 00000 n 
+0002186360 00000 n 
+0002186698 00000 n 
+0002187036 00000 n 
+0002187374 00000 n 
+0002187712 00000 n 
+0002188050 00000 n 
+0002188388 00000 n 
+0002188726 00000 n 
+0002189064 00000 n 
+0002189402 00000 n 
+0002189740 00000 n 
+0002190078 00000 n 
+0002190416 00000 n 
+0002190754 00000 n 
+0002191092 00000 n 
+0002191430 00000 n 
+0002191768 00000 n 
+0002192106 00000 n 
+0002192444 00000 n 
+0002192782 00000 n 
+0002193120 00000 n 
+0002193458 00000 n 
+0002193796 00000 n 
+0002194134 00000 n 
+0002194472 00000 n 
+0002194810 00000 n 
+0002195148 00000 n 
+0002195486 00000 n 
+0002195824 00000 n 
+0002196162 00000 n 
+0002196500 00000 n 
+0002196838 00000 n 
+0002197176 00000 n 
+0002197514 00000 n 
+0002197852 00000 n 
+0002198190 00000 n 
+0002198528 00000 n 
+0002198866 00000 n 
+0002199204 00000 n 
+0002199542 00000 n 
+0002199880 00000 n 
+0002200218 00000 n 
+0002200556 00000 n 
+0002200894 00000 n 
+0002201211 00000 n 
+0002201549 00000 n 
+0002201887 00000 n 
+0002202225 00000 n 
+0002202563 00000 n 
+0002202901 00000 n 
+0002203239 00000 n 
+0002203577 00000 n 
+0002203915 00000 n 
+0002204253 00000 n 
+0002204591 00000 n 
+0002204929 00000 n 
+0002205267 00000 n 
+0002205605 00000 n 
+0002205943 00000 n 
+0002206281 00000 n 
+0002206619 00000 n 
+0002206957 00000 n 
+0002207295 00000 n 
+0002207633 00000 n 
+0002207971 00000 n 
+0002208309 00000 n 
+0002208647 00000 n 
+0002208985 00000 n 
+0002209323 00000 n 
+0002209661 00000 n 
+0002209999 00000 n 
+0002210337 00000 n 
+0002210675 00000 n 
+0002211013 00000 n 
+0002211351 00000 n 
+0002211660 00000 n 
+0002211982 00000 n 
+0002212304 00000 n 
+0002212626 00000 n 
+0002212948 00000 n 
+0002213270 00000 n 
+0002213592 00000 n 
+0002213914 00000 n 
+0002214236 00000 n 
+0002214558 00000 n 
+0002214880 00000 n 
+0002215202 00000 n 
+0002215524 00000 n 
+0002215816 00000 n 
+0002216116 00000 n 
+0002216430 00000 n 
+0002216744 00000 n 
+0002217058 00000 n 
+0002217372 00000 n 
+0002217686 00000 n 
+0002218000 00000 n 
+0002218314 00000 n 
+0002218628 00000 n 
+0002218942 00000 n 
+0002219256 00000 n 
+0002219538 00000 n 
+0002219822 00000 n 
+0002220120 00000 n 
+0002220418 00000 n 
+0002220716 00000 n 
+0002221014 00000 n 
+0002221312 00000 n 
+0002221633 00000 n 
+0002221992 00000 n 
+0002222299 00000 n 
+0002222642 00000 n 
+0002222955 00000 n 
+0002223358 00000 n 
+0002223688 00000 n 
+0002224018 00000 n 
+0002224348 00000 n 
+0002224678 00000 n 
+0002225008 00000 n 
+0002225338 00000 n 
+0002225668 00000 n 
+0002225969 00000 n 
+0002226289 00000 n 
+0002226609 00000 n 
+0002226929 00000 n 
+0002227249 00000 n 
+0002227567 00000 n 
+0002227884 00000 n 
+0002228204 00000 n 
+0002228524 00000 n 
+0002228844 00000 n 
+0002229164 00000 n 
+0002229484 00000 n 
+0002229804 00000 n 
+0002230122 00000 n 
+0002230441 00000 n 
+0002230761 00000 n 
+0002231081 00000 n 
+0002231401 00000 n 
+0002231720 00000 n 
+0002232038 00000 n 
+0002232358 00000 n 
+0002232677 00000 n 
+0002232997 00000 n 
+0002233316 00000 n 
+0002233635 00000 n 
+0002233954 00000 n 
+0002234273 00000 n 
+0002234593 00000 n 
+0002234912 00000 n 
+0002235232 00000 n 
+0002235545 00000 n 
+0002235896 00000 n 
+0002236248 00000 n 
+0002236598 00000 n 
+0002236949 00000 n 
+0002237301 00000 n 
+0002237653 00000 n 
+0002238005 00000 n 
+0002238356 00000 n 
+0002238707 00000 n 
+0002239059 00000 n 
+0002239411 00000 n 
+0002239763 00000 n 
+0002240115 00000 n 
+0002240467 00000 n 
+0002240819 00000 n 
+0002241170 00000 n 
+0002241487 00000 n 
+0002241823 00000 n 
+0002242158 00000 n 
+0002242494 00000 n 
+0002242830 00000 n 
+0002243166 00000 n 
+0002243502 00000 n 
+0002243838 00000 n 
+0002244173 00000 n 
+0002244508 00000 n 
+0002244843 00000 n 
+0002245178 00000 n 
+0002245513 00000 n 
+0002245848 00000 n 
+0002246184 00000 n 
+0002246491 00000 n 
+0002246807 00000 n 
+0002247137 00000 n 
+0002247467 00000 n 
+0002247797 00000 n 
+0002248127 00000 n 
+0002248457 00000 n 
+0002248787 00000 n 
+0002249117 00000 n 
+0002249447 00000 n 
+0002249745 00000 n 
+0002250045 00000 n 
+0002250359 00000 n 
+0002250673 00000 n 
+0002250987 00000 n 
+0002251301 00000 n 
+0002251615 00000 n 
+0002251934 00000 n 
+0002252336 00000 n 
+0002252738 00000 n 
+0002253140 00000 n 
+0002253491 00000 n 
+0002253877 00000 n 
+0002254263 00000 n 
+0002254649 00000 n 
+0002255091 00000 n 
+0002255543 00000 n 
+0002256009 00000 n 
+0002256475 00000 n 
+0002256941 00000 n 
+0002257407 00000 n 
+0002257873 00000 n 
+0002258339 00000 n 
+0002258805 00000 n 
+0002259271 00000 n 
+0002259737 00000 n 
+0002260203 00000 n 
+0002260669 00000 n 
+0002261135 00000 n 
+0002261601 00000 n 
+0002262067 00000 n 
+0002262500 00000 n 
+0002262950 00000 n 
+0002263400 00000 n 
+0002263850 00000 n 
+0002264300 00000 n 
+0002264750 00000 n 
+0002265200 00000 n 
+0002265650 00000 n 
+0002266069 00000 n 
+0002266479 00000 n 
+0002266889 00000 n 
+0002267268 00000 n 
+0002267670 00000 n 
+0002268072 00000 n 
+0002268419 00000 n 
+0002268754 00000 n 
+0002269090 00000 n 
+0002269424 00000 n 
+0002269759 00000 n 
+0002270095 00000 n 
+0002270431 00000 n 
+0002270766 00000 n 
+0002271101 00000 n 
+0002271435 00000 n 
+0002271771 00000 n 
+0002272106 00000 n 
+0002272442 00000 n 
+0002272777 00000 n 
+0002273077 00000 n 
+0002273397 00000 n 
+0002273716 00000 n 
+0002274036 00000 n 
+0002274356 00000 n 
+0002274676 00000 n 
+0002274995 00000 n 
+0002275287 00000 n 
+0002275631 00000 n 
+0002275975 00000 n 
+0002276318 00000 n 
+0002276661 00000 n 
+0002277005 00000 n 
+0002277349 00000 n 
+0002277693 00000 n 
+0002278036 00000 n 
+0002278380 00000 n 
+0002278723 00000 n 
+0002279067 00000 n 
+0002279410 00000 n 
+0002279753 00000 n 
+0002280096 00000 n 
+0002280439 00000 n 
+0002280783 00000 n 
+0002281126 00000 n 
+0002281469 00000 n 
+0002281812 00000 n 
+0002282156 00000 n 
+0002282499 00000 n 
+0002282843 00000 n 
+0002283187 00000 n 
+0002283531 00000 n 
+0002283875 00000 n 
+0002284218 00000 n 
+0002284562 00000 n 
+0002284912 00000 n 
+0002285266 00000 n 
+0002285620 00000 n 
+0002285974 00000 n 
+0002286328 00000 n 
+0002286682 00000 n 
+0002287036 00000 n 
+0002287390 00000 n 
+0002287744 00000 n 
+0002288098 00000 n 
+0002288452 00000 n 
+0002288806 00000 n 
+0002289160 00000 n 
+0002289514 00000 n 
+0002289868 00000 n 
+0002290222 00000 n 
+0002290576 00000 n 
+0002290930 00000 n 
+0002291284 00000 n 
+0002291638 00000 n 
+0002291992 00000 n 
+0002292346 00000 n 
+0002292700 00000 n 
+0002293054 00000 n 
+0002293408 00000 n 
+0002293762 00000 n 
+0002294116 00000 n 
+0002294470 00000 n 
+0002294824 00000 n 
+0002295178 00000 n 
+0002295532 00000 n 
+0002295886 00000 n 
+0002296240 00000 n 
+0002296594 00000 n 
+0002296948 00000 n 
+0002297302 00000 n 
+0002297656 00000 n 
+0002298010 00000 n 
+0002298364 00000 n 
+0002298718 00000 n 
+0002299072 00000 n 
+0002299392 00000 n 
+0002299730 00000 n 
+0002300068 00000 n 
+0002300406 00000 n 
+0002300744 00000 n 
+0002301082 00000 n 
+0002301420 00000 n 
+0002301758 00000 n 
+0002302096 00000 n 
+0002302434 00000 n 
+0002302772 00000 n 
+0002303110 00000 n 
+0002303448 00000 n 
+0002303786 00000 n 
+0002304124 00000 n 
+0002304455 00000 n 
+0002304841 00000 n 
+0002305227 00000 n 
+0002305630 00000 n 
+0002306040 00000 n 
+0002306450 00000 n 
+0002306799 00000 n 
+0002307126 00000 n 
+0002307452 00000 n 
+0002307780 00000 n 
+0002308108 00000 n 
+0002308435 00000 n 
+0002308762 00000 n 
+0002309090 00000 n 
+0002309417 00000 n 
+0002309745 00000 n 
+0002310072 00000 n 
+0002310400 00000 n 
+0002310726 00000 n 
+0002311054 00000 n 
+0002311382 00000 n 
+0002311709 00000 n 
+0002312037 00000 n 
+0002312365 00000 n 
+0002312693 00000 n 
+0002312968 00000 n 
+0002313279 00000 n 
+0002313591 00000 n 
+0002313903 00000 n 
+0002314215 00000 n 
+0002314526 00000 n 
+0002314838 00000 n 
+0002315150 00000 n 
+0002315461 00000 n 
+0002315773 00000 n 
+0002316085 00000 n 
+0002316396 00000 n 
+0002316707 00000 n 
+0002317019 00000 n 
+0002317331 00000 n 
+0002317643 00000 n 
+0002317955 00000 n 
+0002318267 00000 n 
+0002318579 00000 n 
+0002318891 00000 n 
+0002319203 00000 n 
+0002319500 00000 n 
+0002319846 00000 n 
+0002320192 00000 n 
+0002320538 00000 n 
+0002320884 00000 n 
+0002321230 00000 n 
+0002321576 00000 n 
+0002321922 00000 n 
+0002322268 00000 n 
+0002322614 00000 n 
+0002322960 00000 n 
+0002323306 00000 n 
+0002323652 00000 n 
+0002323998 00000 n 
+0002324344 00000 n 
+0002324690 00000 n 
+0002325036 00000 n 
+0002325382 00000 n 
+0002325728 00000 n 
+0002326074 00000 n 
+0002326420 00000 n 
+0002326766 00000 n 
+0002327112 00000 n 
+0002327458 00000 n 
+0002327804 00000 n 
+0002328150 00000 n 
+0002328496 00000 n 
+0002328842 00000 n 
+0002329156 00000 n 
+0002329472 00000 n 
+0002329802 00000 n 
+0002330132 00000 n 
+0002330462 00000 n 
+0002330792 00000 n 
+0002331122 00000 n 
+0002331452 00000 n 
+0002331782 00000 n 
+0002332171 00000 n 
+0002332581 00000 n 
+0002332991 00000 n 
+0002333364 00000 n 
+0002333750 00000 n 
+0002334136 00000 n 
+0002334522 00000 n 
+0002334943 00000 n 
+0002335339 00000 n 
+0002335749 00000 n 
+0002336159 00000 n 
+0002336488 00000 n 
+0002336818 00000 n 
+0002337148 00000 n 
+0002337478 00000 n 
+0002337808 00000 n 
+0002338138 00000 n 
+0002338468 00000 n 
+0002338798 00000 n 
+0002339128 00000 n 
+0002339429 00000 n 
+0002339743 00000 n 
+0002340057 00000 n 
+0002340371 00000 n 
+0002340685 00000 n 
+0002340999 00000 n 
+0002341313 00000 n 
+0002341614 00000 n 
+0002341944 00000 n 
+0002342274 00000 n 
+0002342604 00000 n 
+0002342934 00000 n 
+0002343264 00000 n 
+0002343594 00000 n 
+0002343924 00000 n 
+0002344254 00000 n 
+0002344584 00000 n 
+0002344914 00000 n 
+0002345282 00000 n 
+0002345582 00000 n 
+0002345896 00000 n 
+0002346210 00000 n 
+0002346524 00000 n 
+0002346838 00000 n 
+0002347132 00000 n 
+0002347451 00000 n 
+0002347771 00000 n 
+0002348091 00000 n 
+0002348411 00000 n 
+0002348729 00000 n 
+0002349049 00000 n 
+0002349369 00000 n 
+0002349688 00000 n 
+0002350007 00000 n 
+0002350326 00000 n 
+0002350645 00000 n 
+0002350965 00000 n 
+0002351285 00000 n 
+0002351605 00000 n 
+0002351925 00000 n 
+0002352245 00000 n 
+0002352565 00000 n 
+0002352885 00000 n 
+0002353205 00000 n 
+0002353524 00000 n 
+0002353844 00000 n 
+0002354163 00000 n 
+0002354450 00000 n 
+0002354739 00000 n 
+0002355042 00000 n 
+0002355346 00000 n 
+0002355650 00000 n 
+0002355952 00000 n 
+0002356256 00000 n 
+0002356560 00000 n 
+0002356905 00000 n 
+0002357355 00000 n 
+0002357805 00000 n 
+0002358255 00000 n 
+0002358705 00000 n 
+0002359126 00000 n 
+0002359560 00000 n 
+0002359994 00000 n 
+0002360428 00000 n 
+0002360811 00000 n 
+0002361205 00000 n 
+0002361599 00000 n 
+0002361912 00000 n 
+0002362233 00000 n 
+0002362569 00000 n 
+0002362904 00000 n 
+0002363238 00000 n 
+0002363573 00000 n 
+0002363909 00000 n 
+0002364245 00000 n 
+0002364581 00000 n 
+0002364917 00000 n 
+0002365252 00000 n 
+0002365588 00000 n 
+0002365924 00000 n 
+0002366259 00000 n 
+0002366595 00000 n 
+0002366929 00000 n 
+0002367265 00000 n 
+0002367600 00000 n 
+0002367935 00000 n 
+0002368271 00000 n 
+0002368607 00000 n 
+0002368943 00000 n 
+0002369278 00000 n 
+0002369613 00000 n 
+0002369948 00000 n 
+0002370283 00000 n 
+0002370619 00000 n 
+0002370955 00000 n 
+0002371291 00000 n 
+0002371627 00000 n 
+0002371962 00000 n 
+0002372297 00000 n 
+0002372632 00000 n 
+0002372968 00000 n 
+0002373304 00000 n 
+0002373639 00000 n 
+0002373974 00000 n 
+0002374310 00000 n 
+0002374645 00000 n 
+0002374981 00000 n 
+0002375316 00000 n 
+0002375652 00000 n 
+0002375870 00000 n 
+0002376178 00000 n 
+0002376780 00000 n 
+0002377382 00000 n 
+0002377942 00000 n 
+0002378515 00000 n 
+0002379157 00000 n 
+0002379799 00000 n 
+0002380365 00000 n 
+0002380941 00000 n 
+0002381551 00000 n 
+0002382161 00000 n 
+0002382679 00000 n 
+0002383231 00000 n 
+0002383845 00000 n 
+0002384679 00000 n 
+0002385476 00000 n 
+0002386302 00000 n 
+0002387047 00000 n 
+0002387657 00000 n 
+0002388225 00000 n 
+0002388819 00000 n 
+0002389413 00000 n 
+0002390007 00000 n 
+0002390527 00000 n 
+0002391097 00000 n 
+0002391639 00000 n 
+0002392225 00000 n 
+0002392811 00000 n 
+0002393369 00000 n 
+0002393971 00000 n 
+0002394573 00000 n 
+0002395091 00000 n 
+0002395677 00000 n 
+0002396219 00000 n 
+0002396829 00000 n 
+0002397437 00000 n 
+0002398145 00000 n 
+0002398838 00000 n 
+0002399379 00000 n 
+0002399949 00000 n 
+0002400497 00000 n 
+0002401099 00000 n 
+0002401701 00000 n 
+0002402303 00000 n 
+0002402865 00000 n 
+0002403437 00000 n 
+0002404017 00000 n 
+0002404354 00000 n 
+0002404588 00000 n 
+0002404846 00000 n 
+0002405280 00000 n 
+0002405736 00000 n 
+0002406120 00000 n 
+0002406503 00000 n 
+0002406886 00000 n 
+0002407269 00000 n 
+0002407653 00000 n 
+0002408037 00000 n 
+0002408421 00000 n 
+0002408805 00000 n 
+0002409188 00000 n 
+0002409571 00000 n 
+0002409954 00000 n 
+0002410338 00000 n 
+0002410722 00000 n 
+0002411106 00000 n 
+0002411489 00000 n 
+0002411843 00000 n 
+0002412211 00000 n 
+0002412579 00000 n 
+0002412947 00000 n 
+0002413315 00000 n 
+0002413683 00000 n 
+0002414051 00000 n 
+0002414419 00000 n 
+0002414715 00000 n 
+0002415027 00000 n 
+0002415339 00000 n 
+0002415651 00000 n 
+0002415963 00000 n 
+0002416275 00000 n 
+0002416587 00000 n 
+0002416899 00000 n 
+0002417211 00000 n 
+0002417523 00000 n 
+0002417835 00000 n 
+0002418147 00000 n 
+0002418459 00000 n 
+0002418771 00000 n 
+0002419083 00000 n 
+0002419395 00000 n 
+0002419707 00000 n 
+0002420169 00000 n 
+0002420563 00000 n 
+0002421093 00000 n 
+0002421623 00000 n 
+0002422153 00000 n 
+0002422683 00000 n 
+0002423213 00000 n 
+0002423494 00000 n 
+0002423680 00000 n 
+0002423865 00000 n 
+0002424051 00000 n 
+0002424236 00000 n 
+0002424422 00000 n 
+0002424607 00000 n 
+0002424793 00000 n 
+0002424977 00000 n 
+0002425161 00000 n 
+0002425347 00000 n 
+0002425532 00000 n 
+0002425718 00000 n 
+0002425903 00000 n 
+0002426089 00000 n 
+0002426274 00000 n 
+0002426463 00000 n 
+0002426653 00000 n 
+0002426845 00000 n 
+0002427030 00000 n 
+0002427222 00000 n 
+0002427411 00000 n 
+0002427600 00000 n 
+0002427792 00000 n 
+0002427973 00000 n 
+0002428150 00000 n 
+0002428328 00000 n 
+0002428505 00000 n 
+0002428683 00000 n 
+0002428859 00000 n 
+0002429035 00000 n 
+0002429213 00000 n 
+0002429390 00000 n 
+0002429568 00000 n 
+0002429745 00000 n 
+0002429923 00000 n 
+0002430100 00000 n 
+0002430278 00000 n 
+0002430483 00000 n 
+0002430701 00000 n 
+0002430918 00000 n 
+0002431140 00000 n 
+0002431361 00000 n 
+0002431582 00000 n 
+0002431806 00000 n 
+0002432022 00000 n 
+0002432231 00000 n 
+0002432439 00000 n 
+0002432649 00000 n 
+0002432858 00000 n 
+0002433066 00000 n 
+0002433276 00000 n 
+0002433485 00000 n 
+0002433695 00000 n 
+0002433904 00000 n 
+0002434114 00000 n 
+0002434322 00000 n 
+0002434530 00000 n 
+0002434740 00000 n 
+0002434945 00000 n 
+0002435143 00000 n 
+0002435346 00000 n 
+0002435561 00000 n 
+0002435777 00000 n 
+0002435992 00000 n 
+0002436196 00000 n 
+0002436417 00000 n 
+0002436638 00000 n 
+0002436854 00000 n 
+0002437072 00000 n 
+0002437289 00000 n 
+0002437507 00000 n 
+0002437724 00000 n 
+0002437942 00000 n 
+0002438159 00000 n 
+0002438377 00000 n 
+0002438594 00000 n 
+0002438812 00000 n 
+0002439028 00000 n 
+0002439244 00000 n 
+0002439462 00000 n 
+0002439679 00000 n 
+0002439897 00000 n 
+0002440313 00000 n 
+0002440717 00000 n 
+0002440961 00000 n 
+0002441213 00000 n 
+0002441468 00000 n 
+0002441726 00000 n 
+0002441984 00000 n 
+0002442242 00000 n 
+0002442491 00000 n 
+0002442749 00000 n 
+0002443007 00000 n 
+0002443265 00000 n 
+0002443512 00000 n 
+0002443756 00000 n 
+0002444000 00000 n 
+0002444244 00000 n 
+0002444501 00000 n 
+0002444763 00000 n 
+0002445043 00000 n 
+0002445327 00000 n 
+0002445619 00000 n 
+0002445910 00000 n 
+0002446202 00000 n 
+0002446488 00000 n 
+0002446772 00000 n 
+0002447059 00000 n 
+0002447353 00000 n 
+0002447645 00000 n 
+0002447937 00000 n 
+0002448233 00000 n 
+0002448526 00000 n 
+0002448824 00000 n 
+0002449122 00000 n 
+0002449420 00000 n 
+0002449718 00000 n 
+0002450016 00000 n 
+0002450314 00000 n 
+0002450614 00000 n 
+0002450912 00000 n 
+0002451210 00000 n 
+0002451508 00000 n 
+0002451794 00000 n 
+0002452083 00000 n 
+0002452367 00000 n 
+0002452665 00000 n 
+0002452965 00000 n 
+0002453263 00000 n 
+0002453561 00000 n 
+0002453859 00000 n 
+0002454157 00000 n 
+0002454455 00000 n 
+0002454755 00000 n 
+0002455059 00000 n 
+0002455357 00000 n 
+0002455650 00000 n 
+0002455934 00000 n 
+0002456218 00000 n 
+0002456502 00000 n 
+0002456786 00000 n 
+0002457070 00000 n 
+0002457354 00000 n 
+0002457642 00000 n 
+0002457930 00000 n 
+0002458214 00000 n 
+0002458498 00000 n 
+0002458782 00000 n 
+0002459066 00000 n 
+0002459357 00000 n 
+0002459653 00000 n 
+0002459951 00000 n 
+0002460223 00000 n 
+0002460417 00000 n 
+0002460620 00000 n 
+0002460830 00000 n 
+0002461039 00000 n 
+0002461249 00000 n 
+0002461457 00000 n 
+0002461665 00000 n 
+0002461867 00000 n 
+0002462067 00000 n 
+0002462267 00000 n 
+0002462469 00000 n 
+0002462670 00000 n 
+0002462872 00000 n 
+0002463073 00000 n 
+0002463275 00000 n 
+0002463476 00000 n 
+0002463678 00000 n 
+0002463879 00000 n 
+0002464081 00000 n 
+0002464281 00000 n 
+0002464481 00000 n 
+0002464683 00000 n 
+0002464891 00000 n 
+0002465141 00000 n 
+0002465363 00000 n 
+0002465510 00000 n 
+0002465677 00000 n 
+0002465844 00000 n 
+0002466011 00000 n 
+0002466176 00000 n 
+0002466327 00000 n 
+0002466485 00000 n 
+0002466648 00000 n 
+0002466811 00000 n 
+0002466974 00000 n 
+0002467137 00000 n 
+0002467300 00000 n 
+0002467463 00000 n 
+0002467626 00000 n 
+0002467789 00000 n 
+0002467952 00000 n 
+0002468115 00000 n 
+0002468278 00000 n 
+0002468441 00000 n 
+0002468604 00000 n 
+0002468767 00000 n 
+0002468930 00000 n 
+0002469093 00000 n 
+0002469256 00000 n 
+0002469417 00000 n 
+0002469576 00000 n 
+0002469735 00000 n 
+0002469893 00000 n 
+0002470050 00000 n 
+0002470205 00000 n 
+0002470348 00000 n 
+0002470529 00000 n 
+0002470688 00000 n 
+0002470845 00000 n 
+0002471002 00000 n 
+0002471159 00000 n 
+0002471316 00000 n 
+0002471477 00000 n 
+0002471642 00000 n 
+0002471807 00000 n 
+0002471970 00000 n 
+0002472131 00000 n 
+0002472292 00000 n 
+0002472453 00000 n 
+0002472612 00000 n 
+0002472780 00000 n 
+0002472987 00000 n 
+0002473175 00000 n 
+0002473370 00000 n 
+0002473563 00000 n 
+0002473749 00000 n 
+0002473913 00000 n 
+0002474074 00000 n 
+0002474235 00000 n 
+0002474394 00000 n 
+0002474554 00000 n 
+0002474717 00000 n 
+0002474880 00000 n 
+0002475043 00000 n 
+0002475206 00000 n 
+0002475371 00000 n 
+0002475538 00000 n 
+0002475705 00000 n 
+0002475872 00000 n 
+0002476039 00000 n 
+0002476206 00000 n 
+0002476364 00000 n 
+0002476527 00000 n 
+0002476690 00000 n 
+0002476862 00000 n 
+0002477032 00000 n 
+0002477191 00000 n 
+0002477350 00000 n 
+0002477507 00000 n 
+0002477662 00000 n 
+0002477817 00000 n 
+0002477972 00000 n 
+0002478132 00000 n 
+0002478297 00000 n 
+0002478462 00000 n 
+0002478627 00000 n 
+0002478790 00000 n 
+0002478951 00000 n 
+0002479119 00000 n 
+0002479297 00000 n 
+0002479468 00000 n 
+0002479627 00000 n 
+0002479786 00000 n 
+0002479947 00000 n 
+0002480106 00000 n 
+0002480263 00000 n 
+0002480420 00000 n 
+0002480577 00000 n 
+0002480734 00000 n 
+0002480889 00000 n 
+0002481061 00000 n 
+0002481250 00000 n 
+0002481424 00000 n 
+0002481585 00000 n 
+0002481746 00000 n 
+0002481907 00000 n 
+0002482068 00000 n 
+0002482229 00000 n 
+0002482390 00000 n 
+0002482585 00000 n 
+0002482819 00000 n 
+0002483051 00000 n 
+0002483279 00000 n 
+0002483505 00000 n 
+0002483730 00000 n 
+0002483943 00000 n 
+0002484192 00000 n 
+0002484366 00000 n 
+0002484524 00000 n 
+0002484697 00000 n 
+0002484870 00000 n 
+0002485041 00000 n 
+0002485203 00000 n 
+0002485358 00000 n 
+0002485513 00000 n 
+0002485696 00000 n 
+0002485864 00000 n 
+0002485988 00000 n 
+0002486113 00000 n 
+0002486238 00000 n 
+0002486362 00000 n 
+0002486485 00000 n 
+0002486613 00000 n 
+0002486745 00000 n 
+0002486876 00000 n 
+0002487006 00000 n 
+0002487138 00000 n 
+0002487271 00000 n 
+0002487404 00000 n 
+0002487537 00000 n 
+0002487675 00000 n 
+0002487818 00000 n 
+0002487961 00000 n 
+0002488108 00000 n 
+0002488261 00000 n 
+0002488414 00000 n 
+0002488567 00000 n 
+0002488719 00000 n 
+0002488872 00000 n 
+0002489024 00000 n 
+0002489175 00000 n 
+0002489314 00000 n 
+0002489443 00000 n 
+0002489573 00000 n 
+0002489702 00000 n 
+0002489837 00000 n 
+0002489928 00000 n 
+0002490061 00000 n 
+0002490219 00000 n 
+0002490382 00000 n 
+0002490545 00000 n 
+0002490703 00000 n 
+0002490858 00000 n 
+0002491017 00000 n 
+0002491195 00000 n 
+0002491373 00000 n 
+0002491535 00000 n 
+0002491700 00000 n 
+0002491863 00000 n 
+0002492025 00000 n 
+0002492195 00000 n 
+0002492361 00000 n 
+0002492535 00000 n 
+0002492711 00000 n 
+0002492907 00000 n 
+0002493109 00000 n 
+0002493273 00000 n 
+0002493412 00000 n 
+0002493540 00000 n 
+0002493678 00000 n 
+0002493825 00000 n 
+0002493966 00000 n 
+0002494061 00000 n 
+0002494203 00000 n 
+0002494361 00000 n 
+0002494556 00000 n 
+0002494748 00000 n 
+0002494855 00000 n 
+0002494979 00000 n 
+0002495021 00000 n 
+0002495208 00000 n 
+trailer
+<< /Size 14705
+/Root 14703 0 R
+/Info 14704 0 R
+/ID [<F2F21A0DD7E97D787157D1B3063284A4> <F2F21A0DD7E97D787157D1B3063284A4>] >>
+startxref
+2495692
+%%EOF
diff --git a/install_packages.bat b/install_packages.bat
new file mode 100644
index 0000000000000000000000000000000000000000..d7f4a03e26d440aefedb60f785fc629009572078
--- /dev/null
+++ b/install_packages.bat
@@ -0,0 +1 @@
+vcpkg install boost-date-time boost-asio nlohmann-json boost-thread cpprestsdk boost-algorithm paho-mqttpp3 openssl boost-date-time:x64-windows boost-asio:x64-windows nlohmann-json:x64-windows  boost-thread:x64-windows cpprestsdk:x64-windows boost-algorithm:x64-windows paho-mqttpp3:x64-windows openssl:x64-windows
\ No newline at end of file
diff --git a/install_packages.sh b/install_packages.sh
new file mode 100644
index 0000000000000000000000000000000000000000..c69fa80b8ec12b6108c27c60826142b40fc13201
--- /dev/null
+++ b/install_packages.sh
@@ -0,0 +1,2 @@
+#!/usr/bin/bash
+vcpkg install boost-date-time boost-asio nlohmann-json boost-thread cpprestsdk boost-algorithm paho-mqttpp3 openssl
\ No newline at end of file
diff --git a/projects/linux/cmake/CMakeLists.txt b/projects/linux/cmake/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..7e0b71fc67f20f018e3af7d4db9258fc4ea729fc
--- /dev/null
+++ b/projects/linux/cmake/CMakeLists.txt
@@ -0,0 +1,9 @@
+cmake_minimum_required(VERSION 3.9)
+project(SOIL VERSION 1.0.0 DESCRIPTION "SOIL C++")
+set(PLATFORM_NAME, "amd64")
+
+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY, ../../bin/${PLATFORM_NAME}/${CMAKE_BUILD_TYPE})
+
+# TEST Currently includes all other already
+# add_subdirectory(../SOIL ../SOIL)
+add_subdirectory(TEST)
\ No newline at end of file
diff --git a/projects/linux/cmake/MQTT/CMakeLists.txt b/projects/linux/cmake/MQTT/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..152e6abc57094b160d16c6123bf3f20dda6330cc
--- /dev/null
+++ b/projects/linux/cmake/MQTT/CMakeLists.txt
@@ -0,0 +1,16 @@
+cmake_minimum_required(VERSION 3.9)
+project(MQTT VERSION 1.0.0 DESCRIPTION "SOIL MQTT")
+
+set(PROJECT_ROOT "../../../../")
+
+find_package(PahoMqttCpp CONFIG REQUIRED)
+find_package(OpenSSL REQUIRED)
+
+add_library(MQTT SHARED
+    ${PROJECT_ROOT}/src/MQTT/Publisher.cpp
+    ${PROJECT_ROOT}/src/MQTT/Configuration.cpp
+    ${PROJECT_ROOT}/src/MQTT/LocalException.cpp  
+)
+
+target_link_libraries(MQTT PRIVATE PahoMqttCpp::paho-mqttpp3-static)
+target_link_libraries(MQTT PRIVATE OpenSSL::SSL OpenSSL::Crypto)
\ No newline at end of file
diff --git a/projects/linux/cmake/REST/CMakeLists.txt b/projects/linux/cmake/REST/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..5b0766cb611ec1a7e806da6486783b3c5c800b9d
--- /dev/null
+++ b/projects/linux/cmake/REST/CMakeLists.txt
@@ -0,0 +1,13 @@
+cmake_minimum_required(VERSION 3.9)
+project(REST VERSION 1.0.0 DESCRIPTION "SOIL REST")
+
+set(PROJECT_ROOT "../../../../")
+
+find_package(cpprestsdk CONFIG REQUIRED)
+
+add_library(REST SHARED
+    ${PROJECT_ROOT}/src/REST/Resource.cpp
+    ${PROJECT_ROOT}/src/REST/Server.cpp
+)
+
+target_link_libraries(REST PRIVATE cpprestsdk::cpprest cpprestsdk::cpprestsdk_zlib_internal cpprestsdk::cpprestsdk_boost_internal cpprestsdk::cpprestsdk_openssl_internal)
diff --git a/projects/linux/cmake/SIGN/CMakeLists.txt b/projects/linux/cmake/SIGN/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..bf385dd326b97bf717b3c0aa48abaedcaadfb7a5
--- /dev/null
+++ b/projects/linux/cmake/SIGN/CMakeLists.txt
@@ -0,0 +1,13 @@
+cmake_minimum_required(VERSION 3.9)
+project(SIGN VERSION 1.0.0 DESCRIPTION "SOIL SIGN")
+
+set(PROJECT_ROOT "../../../../")
+
+find_package(OpenSSL REQUIRED)
+
+add_library(SIGN SHARED
+    ${PROJECT_ROOT}/src/SIGN/Signer.cpp
+    ${PROJECT_ROOT}/src/SIGN/Hasher.cpp
+)
+
+target_link_libraries(SIGN PRIVATE OpenSSL::SSL OpenSSL::Crypto)
\ No newline at end of file
diff --git a/projects/linux/cmake/SOIL/CMakeLists.txt b/projects/linux/cmake/SOIL/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..451d52f8a5c930d5348c9032987252c8f664698a
--- /dev/null
+++ b/projects/linux/cmake/SOIL/CMakeLists.txt
@@ -0,0 +1,39 @@
+cmake_minimum_required(VERSION 3.9)
+project(SOIL VERSION 1.0.0 DESCRIPTION "SOIL")
+
+set(PROJECT_ROOT "../../../../")
+
+add_subdirectory(../MQTT ../MQTT)
+add_subdirectory(../REST ../REST)
+add_subdirectory(../UDP ../UDP)
+add_subdirectory(../SIGN ../SIGN)
+
+include_directories(${PROJECT_ROOT}/src/)
+find_package(cpprestsdk CONFIG REQUIRED)
+find_package(Boost REQUIRED COMPONENTS system)
+
+
+add_library(SOIL SHARED
+    ${PROJECT_ROOT}/src/SOIL/Container.cpp
+    ${PROJECT_ROOT}/src/SOIL/Element.cpp
+    ${PROJECT_ROOT}/src/SOIL/Enum.cpp
+    ${PROJECT_ROOT}/src/SOIL/Figure.cpp
+    ${PROJECT_ROOT}/src/SOIL/Function.cpp
+    ${PROJECT_ROOT}/src/SOIL/json_helpers.cpp
+    ${PROJECT_ROOT}/src/SOIL/Object.cpp
+    ${PROJECT_ROOT}/src/SOIL/Parameter.cpp
+    ${PROJECT_ROOT}/src/SOIL/Range.cpp
+    ${PROJECT_ROOT}/src/SOIL/Time.cpp
+    ${PROJECT_ROOT}/src/SOIL/Types.cpp
+    ${PROJECT_ROOT}/src/SOIL/Variable.cpp
+)
+
+target_link_libraries(SOIL PRIVATE
+    MQTT
+    REST
+    UDP
+    cpprestsdk::cpprest
+    cpprestsdk::cpprestsdk_zlib_internal 
+    cpprestsdk::cpprestsdk_boost_internal 
+    cpprestsdk::cpprestsdk_openssl_internal
+)
diff --git a/projects/linux/cmake/TEST/CMakeLists.txt b/projects/linux/cmake/TEST/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..674a5d8b4800330d3de51c879f9e47e8bbe7384a
--- /dev/null
+++ b/projects/linux/cmake/TEST/CMakeLists.txt
@@ -0,0 +1,29 @@
+cmake_minimum_required(VERSION 3.9)
+project(TEST VERSION 1.0.0 DESCRIPTION "SOIL TEST")
+
+set(PROJECT_ROOT "../../../../")
+
+add_subdirectory(../SOIL ../SOIL)
+
+include_directories(${PROJECT_ROOT}/src/)
+find_package(cpprestsdk CONFIG REQUIRED)
+#find_package(Boost REQUIRED COMPONENTS system)
+
+
+add_executable(TEST
+    ${PROJECT_ROOT}/src/TEST/main.cpp
+)
+
+target_link_libraries(TEST PRIVATE
+    SOIL
+    MQTT
+    REST
+    UDP
+    SIGN
+    cpprestsdk::cpprest
+    cpprestsdk::cpprestsdk_zlib_internal 
+    cpprestsdk::cpprestsdk_boost_internal 
+    cpprestsdk::cpprestsdk_openssl_internal
+    #Boost::boost 
+    #Boost::system
+)
diff --git a/projects/linux/cmake/UDP/CMakeLists.txt b/projects/linux/cmake/UDP/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..3ec897a9da3d469b33d988b928b5fa76d9661661
--- /dev/null
+++ b/projects/linux/cmake/UDP/CMakeLists.txt
@@ -0,0 +1,15 @@
+cmake_minimum_required(VERSION 3.9)
+project(UDP VERSION 1.0.0 DESCRIPTION "SOIL UDP")
+
+set(PROJECT_ROOT "../../../../")
+
+find_package(Boost REQUIRED COMPONENTS system thread)
+
+add_library(UDP SHARED
+    ${PROJECT_ROOT}/src/UDP/Broadcast.cpp
+    ${PROJECT_ROOT}/src/UDP/Configuration.cpp
+    ${PROJECT_ROOT}/src/UDP/Exception.cpp
+)
+
+target_link_libraries(UDP PRIVATE Boost::boost Boost::system Boost::thread) 
+
diff --git a/projects/windows/VS2015/CPP Unified Device Interface.sln b/projects/windows/VS2015/CPP Unified Device Interface.sln
new file mode 100644
index 0000000000000000000000000000000000000000..1cee9eea32367f4156a99059bcf4f87c23a8b9c7
--- /dev/null
+++ b/projects/windows/VS2015/CPP Unified Device Interface.sln	
@@ -0,0 +1,90 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MQTT", "MQTT\MQTT.vcxproj", "{28D80283-37BA-49DE-BE6A-AF647C8477B5}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UDP", "UDP\UDP.vcxproj", "{4A5F9666-5039-4435-8C2B-AD25307204C9}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TEST", "TEST\TEST.vcxproj", "{ABF26737-A358-4AE2-BE6F-02E6F90D0618}"
+	ProjectSection(ProjectDependencies) = postProject
+		{4A5F9666-5039-4435-8C2B-AD25307204C9} = {4A5F9666-5039-4435-8C2B-AD25307204C9}
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371} = {00CBF070-EBC1-478F-8C04-3B8AB383D371}
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5} = {28D80283-37BA-49DE-BE6A-AF647C8477B5}
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6} = {709ACDA7-0FDE-49D3-B76A-1529378AFBC6}
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B} = {07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}
+	EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "REST", "REST\REST.vcxproj", "{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SIGN", "SIGN\SIGN.vcxproj", "{00CBF070-EBC1-478F-8C04-3B8AB383D371}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SOIL", "SOIL\SOIL.vcxproj", "{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}"
+	ProjectSection(ProjectDependencies) = postProject
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371} = {00CBF070-EBC1-478F-8C04-3B8AB383D371}
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5} = {28D80283-37BA-49DE-BE6A-AF647C8477B5}
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B} = {07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}
+	EndProjectSection
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|x64 = Debug|x64
+		Debug|x86 = Debug|x86
+		Release|x64 = Release|x64
+		Release|x86 = Release|x86
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Debug|x64.ActiveCfg = Debug|x64
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Debug|x64.Build.0 = Debug|x64
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Debug|x86.ActiveCfg = Debug|Win32
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Debug|x86.Build.0 = Debug|Win32
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Release|x64.ActiveCfg = Release|x64
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Release|x64.Build.0 = Release|x64
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Release|x86.ActiveCfg = Release|Win32
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Release|x86.Build.0 = Release|Win32
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Debug|x64.ActiveCfg = Debug|x64
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Debug|x64.Build.0 = Debug|x64
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Debug|x86.ActiveCfg = Debug|Win32
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Debug|x86.Build.0 = Debug|Win32
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Release|x64.ActiveCfg = Release|x64
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Release|x64.Build.0 = Release|x64
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Release|x86.ActiveCfg = Release|Win32
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Release|x86.Build.0 = Release|Win32
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Debug|x64.ActiveCfg = Debug|x64
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Debug|x64.Build.0 = Debug|x64
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Debug|x86.ActiveCfg = Debug|Win32
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Debug|x86.Build.0 = Debug|Win32
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Release|x64.ActiveCfg = Release|x64
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Release|x64.Build.0 = Release|x64
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Release|x86.ActiveCfg = Release|Win32
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Release|x86.Build.0 = Release|Win32
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Debug|x64.ActiveCfg = Debug|x64
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Debug|x64.Build.0 = Debug|x64
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Debug|x86.ActiveCfg = Debug|Win32
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Debug|x86.Build.0 = Debug|Win32
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Release|x64.ActiveCfg = Release|x64
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Release|x64.Build.0 = Release|x64
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Release|x86.ActiveCfg = Release|Win32
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Release|x86.Build.0 = Release|Win32
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Debug|x64.ActiveCfg = Debug|x64
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Debug|x64.Build.0 = Debug|x64
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Debug|x86.ActiveCfg = Debug|Win32
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Debug|x86.Build.0 = Debug|Win32
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Release|x64.ActiveCfg = Release|x64
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Release|x64.Build.0 = Release|x64
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Release|x86.ActiveCfg = Release|Win32
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Release|x86.Build.0 = Release|Win32
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Debug|x64.ActiveCfg = Debug|x64
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Debug|x64.Build.0 = Debug|x64
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Debug|x86.ActiveCfg = Debug|Win32
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Debug|x86.Build.0 = Debug|Win32
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Release|x64.ActiveCfg = Release|x64
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Release|x64.Build.0 = Release|x64
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Release|x86.ActiveCfg = Release|Win32
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Release|x86.Build.0 = Release|Win32
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+EndGlobal
diff --git a/projects/windows/VS2015/JSON/JSON.vcxproj b/projects/windows/VS2015/JSON/JSON.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..c05d4deeebbac866cbc60b87f7bae3fe44394907
--- /dev/null
+++ b/projects/windows/VS2015/JSON/JSON.vcxproj
@@ -0,0 +1,237 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\JSON\constants.h" />
+    <ClInclude Include="..\..\..\..\src\JSON\Serialize.h" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\JSON\Serialize.cpp" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{760c34fa-47a5-4efd-9074-1e3eb4e80825}</ProjectGuid>
+    <RootNamespace>JSON</RootNamespace>
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt-gd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt-gd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/JSON/JSON.vcxproj.filters b/projects/windows/VS2015/JSON/JSON.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..0e187cd72a4603f42f874ad779126a266d2c3bd8
--- /dev/null
+++ b/projects/windows/VS2015/JSON/JSON.vcxproj.filters
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\JSON\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\JSON\Serialize.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\JSON\Serialize.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/MQTT/MQTT.vcxproj b/projects/windows/VS2015/MQTT/MQTT.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..dc34fece8f8263e9b0cd10417d62c537b5d5826c
--- /dev/null
+++ b/projects/windows/VS2015/MQTT/MQTT.vcxproj
@@ -0,0 +1,254 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\MQTT\Configuration.cpp" />
+    <ClCompile Include="..\..\..\..\src\MQTT\Exception.cpp" />
+    <ClCompile Include="..\..\..\..\src\MQTT\Publisher.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\MQTT\Configuration.h" />
+    <ClInclude Include="..\..\..\..\src\MQTT\constants.h" />
+    <ClInclude Include="..\..\..\..\src\MQTT\Exception.h" />
+    <ClInclude Include="..\..\..\..\src\MQTT\Message.h" />
+    <ClInclude Include="..\..\..\..\src\MQTT\Publisher.h" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{28D80283-37BA-49DE-BE6A-AF647C8477B5}</ProjectGuid>
+    <RootNamespace>MQTT</RootNamespace>
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt-gd.lib;boost_thread-vc140-mt-gd.lib;boost_system-vc140-mt-gd.lib;Bcrypt.lib;mosquitto.lib;mosquittopp.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+    <PreLinkEvent>
+      <Command>copy $(VCPKG_INSTALLED)\..\buildtrees\mosquitto\x86-windows-dbg\lib\cpp\mosquittopp.lib $(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\mosquittopp.lib</Command>
+    </PreLinkEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt-gd.lib;boost_thread-vc140-mt-gd.lib;boost_system-vc140-mt-gd.lib;Bcrypt.lib;mosquitto.lib;mosquittopp.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+    <PreLinkEvent>
+      <Command>copy $(VCPKG_INSTALLED)\..\buildtrees\mosquitto\x64-windows-dbg\lib\cpp\mosquittopp.lib $(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\mosquittopp.lib</Command>
+    </PreLinkEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>mosquitto.lib;mosquittopp.lib;boost_date_time-vc140-mt.lib;boost_thread-vc140-mt.lib;boost_system-vc140-mt.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+    <PreLinkEvent>
+      <Command>copy $(VCPKG_INSTALLED)\..\buildtrees\mosquitto\x86-windows-rel\lib\cpp\mosquittopp.lib $(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\mosquittopp.lib</Command>
+    </PreLinkEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>mosquitto.lib;mosquittopp.lib;boost_date_time-vc140-mt.lib;boost_thread-vc140-mt.lib;boost_system-vc140-mt.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+    <PreLinkEvent>
+      <Command>copy $(VCPKG_INSTALLED)\..\buildtrees\mosquitto\x64-windows-rel\lib\cpp\mosquittopp.lib $(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\mosquittopp.lib</Command>
+    </PreLinkEvent>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/MQTT/MQTT.vcxproj.filters b/projects/windows/VS2015/MQTT/MQTT.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..275e5619abb1722e4303b76ed821f2faf3e00168
--- /dev/null
+++ b/projects/windows/VS2015/MQTT/MQTT.vcxproj.filters
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\MQTT\Configuration.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\MQTT\Exception.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\MQTT\Publisher.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\MQTT\Configuration.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\MQTT\Exception.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\MQTT\Message.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\MQTT\Publisher.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\MQTT\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/MQTT/MQTT.vcxproj.user b/projects/windows/VS2015/MQTT/MQTT.vcxproj.user
new file mode 100644
index 0000000000000000000000000000000000000000..abe8dd8961e3b66a88605bd7083dad32ef27bee9
--- /dev/null
+++ b/projects/windows/VS2015/MQTT/MQTT.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup />
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/REST/REST.vcxproj b/projects/windows/VS2015/REST/REST.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..59595cefc74ee6f4ad6774a5ad30da1cde144b06
--- /dev/null
+++ b/projects/windows/VS2015/REST/REST.vcxproj
@@ -0,0 +1,241 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\REST\Resource.cpp" />
+    <ClCompile Include="..\..\..\..\src\REST\Server.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\REST\constants.h" />
+    <ClInclude Include="..\..\..\..\src\REST\Resource.h" />
+    <ClInclude Include="..\..\..\..\src\REST\Server.h" />
+    <ClInclude Include="..\..\..\..\src\REST\Types.h" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{07dbe1bc-4eb4-4ab1-9c7f-388a075bdf0b}</ProjectGuid>
+    <RootNamespace>REST</RootNamespace>
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+    <ProjectName>REST</ProjectName>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>cpprest_2_10.lib;boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>cpprest_2_10.lib;boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/REST/REST.vcxproj.filters b/projects/windows/VS2015/REST/REST.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..00255cfc61b44c6a191165820f280d76959581eb
--- /dev/null
+++ b/projects/windows/VS2015/REST/REST.vcxproj.filters
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\REST\Server.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\REST\Resource.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\REST\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\REST\Server.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\REST\Resource.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\REST\Types.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/REST/REST.vcxproj.user b/projects/windows/VS2015/REST/REST.vcxproj.user
new file mode 100644
index 0000000000000000000000000000000000000000..abe8dd8961e3b66a88605bd7083dad32ef27bee9
--- /dev/null
+++ b/projects/windows/VS2015/REST/REST.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup />
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/SIGN/SIGN.vcxproj b/projects/windows/VS2015/SIGN/SIGN.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..69b819e2e64b71c8a1862b028b990c485f9f44bc
--- /dev/null
+++ b/projects/windows/VS2015/SIGN/SIGN.vcxproj
@@ -0,0 +1,184 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\SIGN\Hasher.cpp" />
+    <ClCompile Include="..\..\..\..\src\SIGN\Signer.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\SIGN\constants.h" />
+    <ClInclude Include="..\..\..\..\src\SIGN\Hasher.h" />
+    <ClInclude Include="..\..\..\..\src\SIGN\Signer.h" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{00CBF070-EBC1-478F-8C04-3B8AB383D371}</ProjectGuid>
+    <RootNamespace>SIGN</RootNamespace>
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <TargetExt>.dll</TargetExt>
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <TargetExt>.dll</TargetExt>
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>libssl.lib;libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>libssl.lib;libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/SIGN/SIGN.vcxproj.filters b/projects/windows/VS2015/SIGN/SIGN.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..a3b98ca69c22470e1c332fb99b6787f8e7acb016
--- /dev/null
+++ b/projects/windows/VS2015/SIGN/SIGN.vcxproj.filters
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\SIGN\Hasher.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SIGN\Signer.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\SIGN\Hasher.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SIGN\Signer.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SIGN\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/SIGN/SIGN.vcxproj.user b/projects/windows/VS2015/SIGN/SIGN.vcxproj.user
new file mode 100644
index 0000000000000000000000000000000000000000..abe8dd8961e3b66a88605bd7083dad32ef27bee9
--- /dev/null
+++ b/projects/windows/VS2015/SIGN/SIGN.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup />
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/SOIL/SOIL.vcxproj b/projects/windows/VS2015/SOIL/SOIL.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..ecc4498e2c74395b68e3a73ee3fa670210c3ab8d
--- /dev/null
+++ b/projects/windows/VS2015/SOIL/SOIL.vcxproj
@@ -0,0 +1,236 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}</ProjectGuid>
+    <Keyword>Win32Proj</Keyword>
+    <RootNamespace>SOIL</RootNamespace>
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <LinkIncremental>true</LinkIncremental>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <LinkIncremental>true</LinkIncremental>
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <LinkIncremental>false</LinkIncremental>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <LinkIncremental>false</LinkIncremental>
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;SOIL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <SDLCheck>true</SDLCheck>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;_WINDOWS;_USRDLL;SOIL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib;cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\;..\..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;SOIL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <SDLCheck>true</SDLCheck>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;SOIL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib;cpprest_2_10.lib;boost_date_time-vc140-mt.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\;..\..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <Text Include="ReadMe.txt" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\SOIL\Common.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Container.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Enum.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Function.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\json_helpers.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Object.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Parameter.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Range.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Time.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Types.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Figure.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Variable.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\SOIL\Common.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\constants.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Container.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Enum.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Function.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\json_helpers.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Object.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Parameter.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Range.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Time.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Types.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Figure.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Variable.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/SOIL/SOIL.vcxproj.filters b/projects/windows/VS2015/SOIL/SOIL.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..5ddef45587f273514a68db17e57605b7c6287c77
--- /dev/null
+++ b/projects/windows/VS2015/SOIL/SOIL.vcxproj.filters
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Text Include="ReadMe.txt" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\SOIL\Common.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Container.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Enum.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Range.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Types.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Time.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Function.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Object.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Figure.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Parameter.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Variable.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\json_helpers.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\SOIL\Common.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Container.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Enum.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Range.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Types.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Time.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Function.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Object.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Figure.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Parameter.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Variable.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\json_helpers.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/TEST/TEST.vcxproj b/projects/windows/VS2015/TEST/TEST.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..ae08d711ffff5da877afcaddf594f5041df1068a
--- /dev/null
+++ b/projects/windows/VS2015/TEST/TEST.vcxproj
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\TEST\main.cpp" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{abf26737-a358-4ae2-be6f-02e6f90d0618}</ProjectGuid>
+    <RootNamespace>TEST</RootNamespace>
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\;..\..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;JSON.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\;..\..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib; SOIL.lib;cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\;..\..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;JSON.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\;..\..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib; SOIL.lib;cpprest_2_10.lib;boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/TEST/TEST.vcxproj.filters b/projects/windows/VS2015/TEST/TEST.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..0ec83b52288521d8ae6b2f7887103d91a3edd4ab
--- /dev/null
+++ b/projects/windows/VS2015/TEST/TEST.vcxproj.filters
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\TEST\main.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/UDP/UDP.vcxproj b/projects/windows/VS2015/UDP/UDP.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..ecd1dede352de0859e8d5e189d5b214ab35718c5
--- /dev/null
+++ b/projects/windows/VS2015/UDP/UDP.vcxproj
@@ -0,0 +1,241 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\UDP\Broadcast.cpp" />
+    <ClCompile Include="..\..\..\..\src\UDP\Configuration.cpp" />
+    <ClCompile Include="..\..\..\..\src\UDP\Exception.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\UDP\Broadcast.h" />
+    <ClInclude Include="..\..\..\..\src\UDP\Configuration.h" />
+    <ClInclude Include="..\..\..\..\src\UDP\constants.h" />
+    <ClInclude Include="..\..\..\..\src\UDP\Exception.h" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{4a5f9666-5039-4435-8c2b-ad25307204c9}</ProjectGuid>
+    <RootNamespace>UDP</RootNamespace>
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v140</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2015\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt-gd.lib;boost_thread-vc140-mt-gd.lib;boost_system-vc140-mt-gd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt-gd.lib;boost_thread-vc140-mt-gd.lib;boost_system-vc140-mt-gd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt.lib;boost_thread-vc140-mt.lib;boost_system-vc140-mt.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt.lib;boost_thread-vc140-mt.lib;boost_system-vc140-mt.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2015\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2015/UDP/UDP.vcxproj.filters b/projects/windows/VS2015/UDP/UDP.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..151cd5dc1d11596db6679b91fb3e4bb3721fa456
--- /dev/null
+++ b/projects/windows/VS2015/UDP/UDP.vcxproj.filters
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\UDP\Broadcast.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\UDP\Configuration.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\UDP\Exception.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\UDP\Broadcast.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\UDP\Configuration.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\UDP\Exception.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\UDP\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/CPP Unified Device Interface.sln b/projects/windows/VS2022/CPP Unified Device Interface.sln
new file mode 100644
index 0000000000000000000000000000000000000000..2ea93716a9a4cb6a7bd0713bd891707ba66cd3ae
--- /dev/null
+++ b/projects/windows/VS2022/CPP Unified Device Interface.sln	
@@ -0,0 +1,110 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.1.32210.238
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MQTT", "MQTT\MQTT.vcxproj", "{28D80283-37BA-49DE-BE6A-AF647C8477B5}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UDP", "UDP\UDP.vcxproj", "{4A5F9666-5039-4435-8C2B-AD25307204C9}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TEST", "TEST\TEST.vcxproj", "{ABF26737-A358-4AE2-BE6F-02E6F90D0618}"
+	ProjectSection(ProjectDependencies) = postProject
+		{4A5F9666-5039-4435-8C2B-AD25307204C9} = {4A5F9666-5039-4435-8C2B-AD25307204C9}
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371} = {00CBF070-EBC1-478F-8C04-3B8AB383D371}
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5} = {28D80283-37BA-49DE-BE6A-AF647C8477B5}
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6} = {709ACDA7-0FDE-49D3-B76A-1529378AFBC6}
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B} = {07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}
+	EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "REST", "REST\REST.vcxproj", "{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SIGN", "SIGN\SIGN.vcxproj", "{00CBF070-EBC1-478F-8C04-3B8AB383D371}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SOIL", "SOIL\SOIL.vcxproj", "{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}"
+	ProjectSection(ProjectDependencies) = postProject
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371} = {00CBF070-EBC1-478F-8C04-3B8AB383D371}
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5} = {28D80283-37BA-49DE-BE6A-AF647C8477B5}
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B} = {07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}
+	EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LSM", "LSM\LSM.vcxproj", "{12C90C54-8671-4B7C-96BA-DD1778BBEB4D}"
+	ProjectSection(ProjectDependencies) = postProject
+		{4A5F9666-5039-4435-8C2B-AD25307204C9} = {4A5F9666-5039-4435-8C2B-AD25307204C9}
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371} = {00CBF070-EBC1-478F-8C04-3B8AB383D371}
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5} = {28D80283-37BA-49DE-BE6A-AF647C8477B5}
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6} = {709ACDA7-0FDE-49D3-B76A-1529378AFBC6}
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B} = {07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}
+	EndProjectSection
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|x64 = Debug|x64
+		Debug|x86 = Debug|x86
+		Release|x64 = Release|x64
+		Release|x86 = Release|x86
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Debug|x64.ActiveCfg = Debug|x64
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Debug|x64.Build.0 = Debug|x64
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Debug|x86.ActiveCfg = Debug|Win32
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Debug|x86.Build.0 = Debug|Win32
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Release|x64.ActiveCfg = Release|x64
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Release|x64.Build.0 = Release|x64
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Release|x86.ActiveCfg = Release|Win32
+		{28D80283-37BA-49DE-BE6A-AF647C8477B5}.Release|x86.Build.0 = Release|Win32
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Debug|x64.ActiveCfg = Debug|x64
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Debug|x64.Build.0 = Debug|x64
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Debug|x86.ActiveCfg = Debug|Win32
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Debug|x86.Build.0 = Debug|Win32
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Release|x64.ActiveCfg = Release|x64
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Release|x64.Build.0 = Release|x64
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Release|x86.ActiveCfg = Release|Win32
+		{4A5F9666-5039-4435-8C2B-AD25307204C9}.Release|x86.Build.0 = Release|Win32
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Debug|x64.ActiveCfg = Debug|x64
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Debug|x64.Build.0 = Debug|x64
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Debug|x86.ActiveCfg = Debug|Win32
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Debug|x86.Build.0 = Debug|Win32
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Release|x64.ActiveCfg = Release|x64
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Release|x64.Build.0 = Release|x64
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Release|x86.ActiveCfg = Release|Win32
+		{ABF26737-A358-4AE2-BE6F-02E6F90D0618}.Release|x86.Build.0 = Release|Win32
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Debug|x64.ActiveCfg = Debug|x64
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Debug|x64.Build.0 = Debug|x64
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Debug|x86.ActiveCfg = Debug|Win32
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Debug|x86.Build.0 = Debug|Win32
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Release|x64.ActiveCfg = Release|x64
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Release|x64.Build.0 = Release|x64
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Release|x86.ActiveCfg = Release|Win32
+		{07DBE1BC-4EB4-4AB1-9C7F-388A075BDF0B}.Release|x86.Build.0 = Release|Win32
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Debug|x64.ActiveCfg = Debug|x64
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Debug|x64.Build.0 = Debug|x64
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Debug|x86.ActiveCfg = Debug|Win32
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Debug|x86.Build.0 = Debug|Win32
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Release|x64.ActiveCfg = Release|x64
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Release|x64.Build.0 = Release|x64
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Release|x86.ActiveCfg = Release|Win32
+		{00CBF070-EBC1-478F-8C04-3B8AB383D371}.Release|x86.Build.0 = Release|Win32
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Debug|x64.ActiveCfg = Debug|x64
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Debug|x64.Build.0 = Debug|x64
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Debug|x86.ActiveCfg = Debug|Win32
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Debug|x86.Build.0 = Debug|Win32
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Release|x64.ActiveCfg = Release|x64
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Release|x64.Build.0 = Release|x64
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Release|x86.ActiveCfg = Release|Win32
+		{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}.Release|x86.Build.0 = Release|Win32
+		{12C90C54-8671-4B7C-96BA-DD1778BBEB4D}.Debug|x64.ActiveCfg = Debug|x64
+		{12C90C54-8671-4B7C-96BA-DD1778BBEB4D}.Debug|x64.Build.0 = Debug|x64
+		{12C90C54-8671-4B7C-96BA-DD1778BBEB4D}.Debug|x86.ActiveCfg = Debug|Win32
+		{12C90C54-8671-4B7C-96BA-DD1778BBEB4D}.Debug|x86.Build.0 = Debug|Win32
+		{12C90C54-8671-4B7C-96BA-DD1778BBEB4D}.Release|x64.ActiveCfg = Release|x64
+		{12C90C54-8671-4B7C-96BA-DD1778BBEB4D}.Release|x64.Build.0 = Release|x64
+		{12C90C54-8671-4B7C-96BA-DD1778BBEB4D}.Release|x86.ActiveCfg = Release|Win32
+		{12C90C54-8671-4B7C-96BA-DD1778BBEB4D}.Release|x86.Build.0 = Release|Win32
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {B89AB60D-194E-4D70-971C-746B808AB938}
+	EndGlobalSection
+EndGlobal
diff --git a/projects/windows/VS2022/LSM/LSM.vcxproj b/projects/windows/VS2022/LSM/LSM.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..f4be66b87f6cf40c7a1b0ab2667b1adaa86a0a8e
--- /dev/null
+++ b/projects/windows/VS2022/LSM/LSM.vcxproj
@@ -0,0 +1,167 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\LSM\Base.cpp" />
+    <ClCompile Include="..\..\..\..\src\LSM\Data.cpp" />
+    <ClCompile Include="..\..\..\..\src\LSM\Device.cpp" />
+    <ClCompile Include="..\..\..\..\src\LSM\Entity.cpp" />
+    <ClCompile Include="..\..\..\..\src\LSM\main.cpp" />
+    <ClCompile Include="..\..\..\..\src\LSM\Target.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\LSM\Base.h" />
+    <ClInclude Include="..\..\..\..\src\LSM\Data.h" />
+    <ClInclude Include="..\..\..\..\src\LSM\Device.h" />
+    <ClInclude Include="..\..\..\..\src\LSM\Entity.h" />
+    <ClInclude Include="..\..\..\..\src\LSM\Model.h" />
+    <ClInclude Include="..\..\..\..\src\LSM\Root.h" />
+    <ClInclude Include="..\..\..\..\src\LSM\Target.h" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{12C90C54-8671-4B7C-96BA-DD1778BBEB4D}</ProjectGuid>
+    <RootNamespace>LSM</RootNamespace>
+    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+      <ShowIncludes>false</ShowIncludes>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib;SOIL.lib;cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+      <ShowIncludes>false</ShowIncludes>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib; SOIL.lib;cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+      <ShowIncludes>false</ShowIncludes>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib;SOIL.lib;cpprest_2_10.lib;boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+      <ShowIncludes>false</ShowIncludes>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib; SOIL.lib;cpprest_2_10.lib;boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/LSM/LSM.vcxproj.filters b/projects/windows/VS2022/LSM/LSM.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..3310e9c8fc76075afd8fa4c32d04343f157b88e1
--- /dev/null
+++ b/projects/windows/VS2022/LSM/LSM.vcxproj.filters
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\LSM\main.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\LSM\Device.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\LSM\Base.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\LSM\Entity.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\LSM\Data.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\LSM\Target.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\LSM\Device.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\LSM\Base.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\LSM\Entity.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\LSM\Model.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\LSM\Root.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\LSM\Data.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\LSM\Target.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/LSM/LSM.vcxproj.user b/projects/windows/VS2022/LSM/LSM.vcxproj.user
new file mode 100644
index 0000000000000000000000000000000000000000..16f0b223b5eac81d9214df66f3d7887e85f64484
--- /dev/null
+++ b/projects/windows/VS2022/LSM/LSM.vcxproj.user
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <LocalDebuggerEnvironment>PATH=%PATH%;%VCPKG_INSTALLED%\$(PlatformShortName)-windows\debug\bin</LocalDebuggerEnvironment>
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <LocalDebuggerEnvironment>PATH=%PATH%;%VCPKG_INSTALLED%\$(PlatformShortName)-windows\debug\bin</LocalDebuggerEnvironment>
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <LocalDebuggerEnvironment>PATH=%PATH%;%VCPKG_INSTALLED%\$(PlatformShortName)-windows\bin</LocalDebuggerEnvironment>
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <LocalDebuggerEnvironment>PATH=%PATH%;%VCPKG_INSTALLED%\$(PlatformShortName)-windows\bin</LocalDebuggerEnvironment>
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/MQTT/MQTT.vcxproj b/projects/windows/VS2022/MQTT/MQTT.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..d6a459e77a2cbd4f3f8beedcd1fe6e76ff807f12
--- /dev/null
+++ b/projects/windows/VS2022/MQTT/MQTT.vcxproj
@@ -0,0 +1,299 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\MQTT\Configuration.cpp" />
+    <ClCompile Include="..\..\..\..\src\MQTT\LocalException.cpp" />
+    <ClCompile Include="..\..\..\..\src\MQTT\Publisher.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\MQTT\Configuration.h" />
+    <ClInclude Include="..\..\..\..\src\MQTT\constants.h" />
+    <ClInclude Include="..\..\..\..\src\MQTT\LocalException.h" />
+    <ClInclude Include="..\..\..\..\src\MQTT\MessageContainer.h" />
+    <ClInclude Include="..\..\..\..\src\MQTT\Publisher.h" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{28D80283-37BA-49DE-BE6A-AF647C8477B5}</ProjectGuid>
+    <RootNamespace>MQTT</RootNamespace>
+    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+    <PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt-gd.lib;boost_thread-vc140-mt-gd.lib;boost_system-vc140-mt-gd.lib;Bcrypt.lib;paho-mqttpp3.lib;paho-mqtt3as.lib;paho-mqtt3c.lib;paho-mqtt3cs.lib;paho-mqtt3a.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+    <PreLinkEvent>
+      <Command>copy $(VCPKG_INSTALLED)\..\buildtrees\mosquitto\x86-windows-dbg\lib\cpp\mosquittopp.lib $(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\mosquittopp.lib</Command>
+    </PreLinkEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt-gd.lib;boost_thread-vc140-mt-gd.lib;boost_system-vc140-mt-gd.lib;Bcrypt.lib;paho-mqttpp3.lib;paho-mqtt3as.lib;paho-mqtt3c.lib;paho-mqtt3cs.lib;paho-mqtt3a.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+    <PreLinkEvent>
+      <Command>copy $(VCPKG_INSTALLED)\..\buildtrees\mosquitto\x64-windows-dbg\lib\cpp\mosquittopp.lib $(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\mosquittopp.lib</Command>
+    </PreLinkEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt.lib;boost_thread-vc140-mt.lib;boost_system-vc140-mt.lib;paho-mqttpp3.lib;paho-mqtt3as.lib;paho-mqtt3c.lib;paho-mqtt3cs.lib;paho-mqtt3a.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+    <PreLinkEvent>
+      <Command>copy $(VCPKG_INSTALLED)\..\buildtrees\mosquitto\x86-windows-rel\lib\cpp\mosquittopp.lib $(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\mosquittopp.lib</Command>
+    </PreLinkEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt.lib;boost_thread-vc140-mt.lib;boost_system-vc140-mt.lib;paho-mqttpp3.lib;paho-mqtt3as.lib;paho-mqtt3c.lib;paho-mqtt3cs.lib;paho-mqtt3a.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+    <PreLinkEvent>
+      <Command>copy $(VCPKG_INSTALLED)\..\buildtrees\mosquitto\x64-windows-rel\lib\cpp\mosquittopp.lib $(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\mosquittopp.lib</Command>
+    </PreLinkEvent>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/MQTT/MQTT.vcxproj.filters b/projects/windows/VS2022/MQTT/MQTT.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..b05560b74103c1c4726111ffba47428058714583
--- /dev/null
+++ b/projects/windows/VS2022/MQTT/MQTT.vcxproj.filters
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\MQTT\Configuration.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\MQTT\LocalException.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\MQTT\Publisher.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\MQTT\Configuration.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\MQTT\LocalException.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\MQTT\MessageContainer.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\MQTT\Publisher.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\MQTT\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/MQTT/MQTT.vcxproj.user b/projects/windows/VS2022/MQTT/MQTT.vcxproj.user
new file mode 100644
index 0000000000000000000000000000000000000000..abe8dd8961e3b66a88605bd7083dad32ef27bee9
--- /dev/null
+++ b/projects/windows/VS2022/MQTT/MQTT.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup />
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/REST/REST.vcxproj b/projects/windows/VS2022/REST/REST.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..bee6105b79221884b744a61e1857ffea2f358c13
--- /dev/null
+++ b/projects/windows/VS2022/REST/REST.vcxproj
@@ -0,0 +1,281 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\REST\Resource.cpp" />
+    <ClCompile Include="..\..\..\..\src\REST\Server.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\REST\constants.h" />
+    <ClInclude Include="..\..\..\..\src\REST\Resource.h" />
+    <ClInclude Include="..\..\..\..\src\REST\Server.h" />
+    <ClInclude Include="..\..\..\..\src\REST\Types.h" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{07dbe1bc-4eb4-4ab1-9c7f-388a075bdf0b}</ProjectGuid>
+    <RootNamespace>REST</RootNamespace>
+    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+    <ProjectName>REST</ProjectName>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>cpprest_2_10.lib;boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>cpprest_2_10.lib;boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/REST/REST.vcxproj.filters b/projects/windows/VS2022/REST/REST.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..00255cfc61b44c6a191165820f280d76959581eb
--- /dev/null
+++ b/projects/windows/VS2022/REST/REST.vcxproj.filters
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\REST\Server.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\REST\Resource.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\REST\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\REST\Server.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\REST\Resource.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\REST\Types.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/REST/REST.vcxproj.user b/projects/windows/VS2022/REST/REST.vcxproj.user
new file mode 100644
index 0000000000000000000000000000000000000000..abe8dd8961e3b66a88605bd7083dad32ef27bee9
--- /dev/null
+++ b/projects/windows/VS2022/REST/REST.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup />
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/SIGN/SIGN.vcxproj b/projects/windows/VS2022/SIGN/SIGN.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..31a0a264f3fcde99234555c08100dd1b68e5e1db
--- /dev/null
+++ b/projects/windows/VS2022/SIGN/SIGN.vcxproj
@@ -0,0 +1,282 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\SIGN\constants.h" />
+    <ClInclude Include="..\..\..\..\src\SIGN\Hasher.h" />
+    <ClInclude Include="..\..\..\..\src\SIGN\Signer.h" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\SIGN\Hasher.cpp" />
+    <ClCompile Include="..\..\..\..\src\SIGN\Signer.cpp" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{00CBF070-EBC1-478F-8C04-3B8AB383D371}</ProjectGuid>
+    <RootNamespace>SIGN</RootNamespace>
+    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <TargetExt>.dll</TargetExt>
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <TargetExt>.dll</TargetExt>
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+    <Link>
+      <AdditionalDependencies>libssl.lib;libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>libssl.lib;libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalDependencies>libssl.lib;libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>libssl.lib;libcrypto.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/SIGN/SIGN.vcxproj.filters b/projects/windows/VS2022/SIGN/SIGN.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..5959705bc0098ad2df3043eea081acfea2bee767
--- /dev/null
+++ b/projects/windows/VS2022/SIGN/SIGN.vcxproj.filters
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{825932dc-4cdb-405d-9107-55e000f31c69}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\SIGN\Hasher.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SIGN\Signer.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SIGN\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\SIGN\Hasher.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SIGN\Signer.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/SIGN/SIGN.vcxproj.user b/projects/windows/VS2022/SIGN/SIGN.vcxproj.user
new file mode 100644
index 0000000000000000000000000000000000000000..abe8dd8961e3b66a88605bd7083dad32ef27bee9
--- /dev/null
+++ b/projects/windows/VS2022/SIGN/SIGN.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup />
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/SOIL/SOIL.vcxproj b/projects/windows/VS2022/SOIL/SOIL.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..cc7801c4465757b4a666e07b73b1546fd07ced93
--- /dev/null
+++ b/projects/windows/VS2022/SOIL/SOIL.vcxproj
@@ -0,0 +1,328 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{709ACDA7-0FDE-49D3-B76A-1529378AFBC6}</ProjectGuid>
+    <Keyword>Win32Proj</Keyword>
+    <RootNamespace>SOIL</RootNamespace>
+    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <LinkIncremental>true</LinkIncremental>
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <LinkIncremental>true</LinkIncremental>
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <LinkIncremental>false</LinkIncremental>
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <LinkIncremental>false</LinkIncremental>
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;SOIL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib;cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;_WINDOWS;_USRDLL;SOIL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib;cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;SOIL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib;cpprest_2_10.lib;boost_date_time-vc140-mt.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <PrecompiledHeader>
+      </PrecompiledHeader>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;SOIL_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib;cpprest_2_10.lib;boost_date_time-vc140-mt.lib;%(AdditionalDependencies)</AdditionalDependencies>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <Text Include="ReadMe.txt" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\SOIL\Element.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Container.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Enum.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Function.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\json_helpers.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Object.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Parameter.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Range.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Time.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Types.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Figure.cpp" />
+    <ClCompile Include="..\..\..\..\src\SOIL\Variable.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\SOIL\Element.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\constants.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Container.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Enum.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Function.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\json_helpers.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Object.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Parameter.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Range.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Time.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Types.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Figure.h" />
+    <ClInclude Include="..\..\..\..\src\SOIL\Variable.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/SOIL/SOIL.vcxproj.filters b/projects/windows/VS2022/SOIL/SOIL.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..849832cceed8e4ef7e53ceea1d3211bc9748c806
--- /dev/null
+++ b/projects/windows/VS2022/SOIL/SOIL.vcxproj.filters
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <Text Include="ReadMe.txt" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\SOIL\Container.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Enum.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Range.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Types.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Time.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Function.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Object.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Figure.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Parameter.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Variable.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\json_helpers.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\SOIL\Element.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\SOIL\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Container.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Enum.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Range.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Types.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Time.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Function.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Object.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Figure.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Parameter.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Variable.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\json_helpers.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\SOIL\Element.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/SOIL/SOIL.vcxproj.user b/projects/windows/VS2022/SOIL/SOIL.vcxproj.user
new file mode 100644
index 0000000000000000000000000000000000000000..88a550947edbc3c5003a41726f0749201fdb6822
--- /dev/null
+++ b/projects/windows/VS2022/SOIL/SOIL.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup />
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/TEST/TEST.vcxproj b/projects/windows/VS2022/TEST/TEST.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..ae50c963d19f4af6d7d812d8b719058504de149b
--- /dev/null
+++ b/projects/windows/VS2022/TEST/TEST.vcxproj
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\TEST\main.cpp" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{abf26737-a358-4ae2-be6f-02e6f90d0618}</ProjectGuid>
+    <RootNamespace>TEST</RootNamespace>
+    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib;SOIL.lib;cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib; SOIL.lib;cpprest_2_10d.lib;boost_date_time-vc140-mt-gd.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib;SOIL.lib;cpprest_2_10.lib;boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>..\..\..\..\src;$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\;..\..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>MQTT.lib;UDP.lib;REST.lib;SIGN.lib; SOIL.lib;cpprest_2_10.lib;boost_date_time-vc140-mt.lib</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/TEST/TEST.vcxproj.filters b/projects/windows/VS2022/TEST/TEST.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..0ec83b52288521d8ae6b2f7887103d91a3edd4ab
--- /dev/null
+++ b/projects/windows/VS2022/TEST/TEST.vcxproj.filters
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\TEST\main.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/TEST/TEST.vcxproj.user b/projects/windows/VS2022/TEST/TEST.vcxproj.user
new file mode 100644
index 0000000000000000000000000000000000000000..16f0b223b5eac81d9214df66f3d7887e85f64484
--- /dev/null
+++ b/projects/windows/VS2022/TEST/TEST.vcxproj.user
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <LocalDebuggerEnvironment>PATH=%PATH%;%VCPKG_INSTALLED%\$(PlatformShortName)-windows\debug\bin</LocalDebuggerEnvironment>
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <LocalDebuggerEnvironment>PATH=%PATH%;%VCPKG_INSTALLED%\$(PlatformShortName)-windows\debug\bin</LocalDebuggerEnvironment>
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <LocalDebuggerEnvironment>PATH=%PATH%;%VCPKG_INSTALLED%\$(PlatformShortName)-windows\bin</LocalDebuggerEnvironment>
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <LocalDebuggerEnvironment>PATH=%PATH%;%VCPKG_INSTALLED%\$(PlatformShortName)-windows\bin</LocalDebuggerEnvironment>
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/UDP/UDP.vcxproj b/projects/windows/VS2022/UDP/UDP.vcxproj
new file mode 100644
index 0000000000000000000000000000000000000000..cf2862d06fb44823b8ed3289331aaeff87707ec6
--- /dev/null
+++ b/projects/windows/VS2022/UDP/UDP.vcxproj
@@ -0,0 +1,277 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\UDP\Broadcast.cpp" />
+    <ClCompile Include="..\..\..\..\src\UDP\Configuration.cpp" />
+    <ClCompile Include="..\..\..\..\src\UDP\Exception.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\UDP\Broadcast.h" />
+    <ClInclude Include="..\..\..\..\src\UDP\Configuration.h" />
+    <ClInclude Include="..\..\..\..\src\UDP\constants.h" />
+    <ClInclude Include="..\..\..\..\src\UDP\Exception.h" />
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{4a5f9666-5039-4435-8c2b-ad25307204c9}</ProjectGuid>
+    <RootNamespace>UDP</RootNamespace>
+    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>MultiByte</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <OutDir>$(SolutionDir)..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(Configuration)\</OutDir>
+    <IntDir>$(SolutionDir)..\..\..\build\windows\VS2022\$(PlatformShortName)\$(Configuration)\$(ProjectName)\</IntDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt-gd.lib;boost_thread-vc140-mt-gd.lib;boost_system-vc140-mt-gd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>Disabled</Optimization>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\debug\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt-gd.lib;boost_thread-vc140-mt-gd.lib;boost_system-vc140-mt-gd.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt.lib;boost_thread-vc140-mt.lib;boost_system-vc140-mt.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <Optimization>MaxSpeed</Optimization>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <AdditionalIncludeDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\include;</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <AdditionalLibraryDirectories>$(VCPKG_INSTALLED)\$(PlatformShortName)-windows\lib\</AdditionalLibraryDirectories>
+      <AdditionalDependencies>boost_date_time-vc140-mt.lib;boost_thread-vc140-mt.lib;boost_system-vc140-mt.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+    <PostBuildEvent>
+      <Command>cd $(SolutionDir)
+if not exist "..\..\..\dist\" (
+mkdir  ..\..\..\dist\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin
+)
+if not exist "..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib" (
+mkdir ..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib
+)
+cd ..\..\..\bin\windows\VS2022\$(PlatformShortName)\$(ConfigurationName)\
+copy $(ProjectName).dll ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\bin\$(ProjectName).dll
+copy $(ProjectName).lib ..\..\..\..\..\dist\$(PlatformShortName)\$(ConfigurationName)\lib\$(ProjectName).lib
+cd $(SolutionDir)
+
+if not exist "..\..\..\dist\include\$(ProjectName)" (
+mkdir ..\..\..\dist\include\$(ProjectName)
+)
+
+cd ..\..\..\src\$(ProjectName)
+copy *.h  ..\..\dist\include\$(ProjectName)\
+</Command>
+    </PostBuildEvent>
+  </ItemDefinitionGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/UDP/UDP.vcxproj.filters b/projects/windows/VS2022/UDP/UDP.vcxproj.filters
new file mode 100644
index 0000000000000000000000000000000000000000..151cd5dc1d11596db6679b91fb3e4bb3721fa456
--- /dev/null
+++ b/projects/windows/VS2022/UDP/UDP.vcxproj.filters
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
+    </Filter>
+    <Filter Include="Resource Files">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\..\..\src\UDP\Broadcast.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\UDP\Configuration.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\..\src\UDP\Exception.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\..\src\UDP\Broadcast.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\UDP\Configuration.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\UDP\Exception.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\..\src\UDP\constants.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/projects/windows/VS2022/UDP/UDP.vcxproj.user b/projects/windows/VS2022/UDP/UDP.vcxproj.user
new file mode 100644
index 0000000000000000000000000000000000000000..88a550947edbc3c5003a41726f0749201fdb6822
--- /dev/null
+++ b/projects/windows/VS2022/UDP/UDP.vcxproj.user
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup />
+</Project>
\ No newline at end of file
diff --git a/src/LSM/Base.cpp b/src/LSM/Base.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..cc3540fed5fa1f3c8c84dda20988cd6ce2d62043
--- /dev/null
+++ b/src/LSM/Base.cpp
@@ -0,0 +1,7 @@
+#include "Base.h"
+
+void LSM::Base::Model::update(VIRTUAL::Data & data, std::string nonce, boost::posix_time::ptime time)
+{
+	
+
+}
\ No newline at end of file
diff --git a/src/LSM/Base.h b/src/LSM/Base.h
new file mode 100644
index 0000000000000000000000000000000000000000..86845400ab6c662cca2d770fd428c61c16494eb3
--- /dev/null
+++ b/src/LSM/Base.h
@@ -0,0 +1,204 @@
+#pragma once
+#include "SOIL/Variable.h"
+#include "SOIL/Function.h"
+#include "SOIL/Object.h"
+#include "SOIL/Parameter.h"
+#include "Device.h"
+#include "Data.h"
+
+namespace LSM
+{
+	namespace Base
+	{
+		class Name : public SOIL::Parameter<SOIL::STRING>
+		{
+		public:
+			Name(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(parent, "PAR-Name", "Name", "Human readable name of the base.", "", true), device(device) {};
+			~Name() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			void read(void)
+			{
+			}
+		};
+
+		class Position : public SOIL::Variable<SOIL::DOUBLE, 3>
+		{
+		public:
+			Position(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Variable(
+				parent,
+				"VAR-Position",
+				"Position",
+				"Position in Cartesian Coordinates in meters",
+				"MTR"), device(device) {};
+			~Position() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		};
+
+		class Orientation : public SOIL::Variable<SOIL::DOUBLE, 4>
+		{
+		public:
+			Orientation(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Variable(
+				parent,
+				"VAR-Orientation",
+				"Orientation",
+				"Orientation of the base as quaternion, measuered by gravitational gauge.",
+				""), device(device) {};
+			~Orientation() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		};
+
+
+
+		class Reset : public SOIL::Function
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		public:
+			Reset(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Function(parent, "FUN-Reset", "Reset", "Resets the base."), device(device)
+			{
+			}
+			~Reset() {}
+
+			std::map<std::string, HTTP::Json> invoke(std::map<std::string, HTTP::Json> arguments)
+			{
+				std::map<std::string, HTTP::Json> returns;
+				return returns;
+			}
+
+		};
+
+		class Weather : public SOIL::Parameter<SOIL::BOOL>
+		{
+		public:
+			Weather(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(
+				parent,
+				"PAR-Weather",
+				"Environment Sensor",
+				"Flag whether the environment sensor is attached.",
+				""), device(device) {};
+			~Weather() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		};
+
+		class Temperature : public SOIL::Variable<SOIL::DOUBLE>
+		{
+		public:
+			Temperature(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Variable(
+				parent,
+				"VAR-Temperature",
+				"Temperature [deg C]",
+				"Most recently measured temperature in degree celsius.",
+				"DEG"
+			), device(device) {};
+			~Temperature() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		};
+
+		class Humidity : public SOIL::Variable<SOIL::DOUBLE>
+		{
+		public:
+			Humidity(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Variable(
+				parent,
+				"VAR-Humidity",
+				"Humidity [%]",
+				"Most recently measured relative humidity in percent.",
+				"",
+				"",
+				{ 0.0, 100.0 }
+			), device(device) {};
+			~Humidity() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		};
+
+		class Pressure : public SOIL::Variable<SOIL::DOUBLE>
+		{
+		public:
+			Pressure(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Variable(
+				parent,
+				"VAR-Pressure",
+				"Pressure [hPa]",
+				"Most recently measured pressure in hPa.",
+				"PAL"), device(device) {};
+			~Pressure() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		};
+
+		class Calibration : public SOIL::Parameter<SOIL::STRING>
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		public:
+			Calibration(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(
+				parent,
+				"PAR-Calibration",
+				"Calibration Identifier",
+				"String unambigiously identifying a calibration certificate",
+				"",
+				true
+			), device(device) {}
+			~Calibration() {}
+
+		};
+
+		class State : public SOIL::Parameter<SOIL::ENUM>
+		{
+		public:
+			State(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(
+				parent,
+				"PAR-State",
+				"State",
+				"General state of the entity",
+				"",
+				false,
+				"",
+				SOIL::Range<SOIL::ENUM>({ "OK", "WARNING", "ERROR", "MAINTENANCE" })
+			), device(device) {
+				value = SOIL::ENUM("OK", { "OK", "WARNING", "ERROR", "MAINTENANCE" });
+			}
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			void read(void) {
+
+			}
+		};
+
+		class Model : public SOIL::Object
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			std::shared_ptr<Position> position;
+			std::shared_ptr<Orientation> orientation;
+			std::shared_ptr<Weather> weather;
+			std::shared_ptr<Temperature> temperature;
+			std::shared_ptr<Humidity> humidity;
+			std::shared_ptr<Pressure> pressure;
+			std::shared_ptr<Calibration> calibration;
+
+		public:
+			Model(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Object(parent, "OBJ-Base", "Base", "Laser Tracker Base Object"), device(device)
+			{
+				new Name(self, device);
+				position = std::dynamic_pointer_cast<Position>((new Position(self, device))->ptr());
+				orientation = std::dynamic_pointer_cast<Orientation>((new Orientation(self, device))->ptr());
+				new Reset(self, device);
+				calibration = std::dynamic_pointer_cast<Calibration>((new Calibration(self, device))->ptr());
+
+				temperature = std::dynamic_pointer_cast<Temperature>((new Temperature(self, device))->ptr());
+				humidity = std::dynamic_pointer_cast<Humidity>((new Humidity(self, device))->ptr());
+				pressure = std::dynamic_pointer_cast<Pressure>((new Pressure(self, device))->ptr());
+				new State(self, device);
+
+			}
+			~Model() {}
+
+			void update(VIRTUAL::Data& data, std::string nonce, boost::posix_time::ptime time);
+		};
+	}
+}
\ No newline at end of file
diff --git a/src/LSM/Data.cpp b/src/LSM/Data.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..aabc930dccb5547f4ce3402e5a2d4033b3ac2844
--- /dev/null
+++ b/src/LSM/Data.cpp
@@ -0,0 +1 @@
+#include "Data.h"
diff --git a/src/LSM/Data.h b/src/LSM/Data.h
new file mode 100644
index 0000000000000000000000000000000000000000..5b6d1e51cae9f6da29ab092ae76147edc0c11f23
--- /dev/null
+++ b/src/LSM/Data.h
@@ -0,0 +1,8 @@
+#pragma once
+namespace VIRTUAL
+{
+	class Data
+	{
+	};
+}
+
diff --git a/src/LSM/Device.cpp b/src/LSM/Device.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..60a76892b98413a1e25465d7083f5183ad878ac8
--- /dev/null
+++ b/src/LSM/Device.cpp
@@ -0,0 +1,11 @@
+#include "Device.h"
+
+VIRTUAL::Device::Device()
+{
+    targets = { "A", "B", "C", "D" };
+}
+
+std::vector<std::string> VIRTUAL::Device::list_targets(void)
+{
+    return targets;
+}
diff --git a/src/LSM/Device.h b/src/LSM/Device.h
new file mode 100644
index 0000000000000000000000000000000000000000..29a359cf27c0b3fb4473d9b0d729f90e0b54f4ee
--- /dev/null
+++ b/src/LSM/Device.h
@@ -0,0 +1,17 @@
+#pragma once
+#include "Data.h"
+#include <vector>
+#include <string>
+
+namespace VIRTUAL
+{
+	class Device
+	{
+	private: 
+		std::vector<std::string> targets;
+	public:
+		Device();
+		std::vector<std::string> list_targets(void);
+	};
+}
+
diff --git a/src/LSM/Entity.cpp b/src/LSM/Entity.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..9acbdf06057de0f2a95f599fc051031b9fdf1128
--- /dev/null
+++ b/src/LSM/Entity.cpp
@@ -0,0 +1,11 @@
+#include "Model.h"
+
+void LSM::Entity::Model::update(VIRTUAL::Data & data, std::string nonce, boost::posix_time::ptime time)
+{
+		
+}
+
+void LSM::Entity::Model::remove()
+{
+
+}
\ No newline at end of file
diff --git a/src/LSM/Entity.h b/src/LSM/Entity.h
new file mode 100644
index 0000000000000000000000000000000000000000..068d8efa7463287a186f3ed28666757913c885ba
--- /dev/null
+++ b/src/LSM/Entity.h
@@ -0,0 +1,214 @@
+#pragma once
+#include "SOIL/Variable.h"
+#include "SOIL/Function.h"
+#include "SOIL/Object.h"
+#include "SOIL/Parameter.h"
+#include "MQTT/Publisher.h"
+#include "SIGN/Signer.h"
+#include "Device.h"
+#include "Data.h"
+
+#include <regex>
+
+namespace LSM
+{
+
+	namespace Entity
+	{
+		class Name : public SOIL::Parameter<SOIL::STRING>
+		{
+		public:
+			Name(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(
+				parent,
+				"PAR-Name",
+				"Name",
+				"Human readable name of the target.",
+				""), device(device) {};
+			~Name() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			void read(void)
+			{
+			}
+		};
+
+		class Type : public SOIL::Parameter<SOIL::STRING>
+		{
+		public:
+			Type(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(
+				parent,
+				"PAR-Type",
+				"Type",
+				"Target Type",
+				""), device(device) {};
+			~Type() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			void read(void)
+			{
+
+			}
+		};
+
+		class State : public SOIL::Parameter<SOIL::ENUM>
+		{
+		public:
+			State(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(
+				parent,
+				"PAR-State",
+				"State",
+				"General state of the entity",
+				"",
+				false,
+				"",
+				SOIL::Range<SOIL::ENUM>({ "OK", "WARNING", "ERROR", "MAINTENANCE" })
+			), device(device) {
+				value = SOIL::ENUM("OK", { "OK", "WARNING", "ERROR", "MAINTENANCE" });
+			}
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			void read(void)
+			{
+			};
+		};
+
+		class Mode : public SOIL::Parameter<SOIL::ENUM>
+		{
+		public:
+			Mode(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(
+				parent,
+				"PAR-Mode",
+				"Mode",
+				"Acquisition Mode of the entity",
+				"",
+				false,
+				"",
+				SOIL::Range<SOIL::ENUM>({ "CONTINUOUS", "TRIGGERED", "EXTERNAL", "IDLE" })
+			), device(device) {
+				value = SOIL::ENUM("IDLE", { "CONTINUOUS", "TRIGGERED", "EXTERNAL", "IDLE" });
+			}
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			void read(void)
+			{
+
+			};
+
+			void write(void)
+			{
+
+			}
+		};
+
+		class Position : public SOIL::Variable<SOIL::DOUBLE, 3>
+		{
+		public:
+			Position(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Variable(
+				parent,
+				"VAR-Position",
+				"Position [m]",
+				"Position in Cartesian Coordinates in meter.",
+				"MTR"
+			), device(device) {};
+			~Position() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		};
+
+		class Orientation : public SOIL::Variable<SOIL::DOUBLE, 4>
+		{
+		public:
+			Orientation(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Variable(
+				parent,
+				"VAR-Orientation",
+				"Orientation",
+				"Orientation of the target as quaternion. Only applies to smart targets.",
+				""), device(device) {};
+			~Orientation() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			void read(void)
+			{
+				value.set_null(true);
+			}
+		};
+
+		class Reset : public SOIL::Function
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		public:
+			Reset(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Function(parent, "FUN-Reset", "Reset", "Resets the entity."), device(device)
+			{
+			}
+			~Reset() {}
+
+			std::map<std::string, HTTP::Json> invoke(std::map<std::string, HTTP::Json> arguments)
+			{
+				std::map<std::string, HTTP::Json> returns;
+				return returns;
+			}
+
+		};
+
+		class Trigger : public SOIL::Function
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		public:
+			Trigger(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Function(parent, "FUN-Trigger", "Trigger", "Triggers a measurement."), device(device)
+			{
+				add_argument<SOIL::STRING>("PAR-Nonce", "Nonce", "Nonce the measurements shall be marked with", "");
+				add_argument<SOIL::INT>("PAR-Count", "Count", "Number of measurements to trigger", "", SOIL::Range<SOIL::INT>(1, 1000), SOIL::Container<SOIL::INT>(1));
+			}
+			~Trigger() {}
+
+			std::map<std::string, HTTP::Json> invoke(std::map<std::string, HTTP::Json> arguments)
+			{
+				std::map<std::string, HTTP::Json >returns;
+				SOIL::Container<SOIL::STRING> nonce(arguments["PAR-Nonce"]);
+				SOIL::Container<SOIL::INT> count(arguments["PAR-Count"]);
+
+				return returns;
+			}
+
+		};
+
+
+		class Calibration : public SOIL::Parameter<SOIL::STRING>
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		public:
+			Calibration(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(parent, "PAR-Calibration", "Calibration", "Calibration Identifier", ""), device(device) {}
+			~Calibration() {}
+
+		};
+
+		class Model : public SOIL::Object
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			std::shared_ptr<Position> position;
+		public:
+			Model(std::shared_ptr<SOIL::Element> parent, std::string name, std::shared_ptr<VIRTUAL::Device> device) : Object(parent, "OBJ-" + std::regex_replace(name, std::regex(" "), "_"), name, "Entity Object"), device(device)
+			{
+				new Name(self, device);
+				new Type(self, device);
+				position = std::dynamic_pointer_cast<Entity::Position>((new Position(self, device))->ptr());
+				new Orientation(self, device);
+				new Reset(self, device);
+				new State(self, device);
+				new Trigger(self, device);
+				new Mode(self, device);
+				new Calibration(self, device);
+
+			}
+			~Model() {}
+
+			void update(VIRTUAL::Data& data, std::string nonce, boost::posix_time::ptime time);
+			void remove(void) override;
+
+		};
+	}
+}
\ No newline at end of file
diff --git a/src/LSM/Model.h b/src/LSM/Model.h
new file mode 100644
index 0000000000000000000000000000000000000000..695b1cdf6c4e7728788c4ec99484d795d9d59542
--- /dev/null
+++ b/src/LSM/Model.h
@@ -0,0 +1,175 @@
+#pragma once
+#include "SOIL/Variable.h"
+#include "SOIL/Function.h"
+#include "SOIL/Object.h"
+#include "SOIL/Parameter.h"
+#include "Device.h"
+#include "Base.h"
+#include "Entity.h"
+
+namespace LSM
+{
+	namespace LSM
+	{
+
+		class Calibration : public SOIL::Parameter<SOIL::STRING>
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		public:
+			Calibration(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(
+				parent,
+				"PAR-Calibration",
+				"Calibration Identifier",
+				"String unambigiously identifying a calibration certificate",
+				"",
+				true
+			), device(device) {}
+			~Calibration() {}
+
+		};
+
+		class Covariance : public SOIL::Function
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		public:
+			Covariance(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Function(parent, "FUN-Covariance", "Covariance", "Obtain the covariance for two arbitrary variables."), device(device)
+			{
+				add_argument<SOIL::STRING, 0>("PAR-UUIDS", "UUIDs", "List of UUIDs for which to return covariance.", "");
+			}
+			~Covariance() {}
+
+			std::map<std::string, HTTP::Json> invoke(std::map<std::string, HTTP::Json> arguments)
+			{
+				std::map<std::string, HTTP::Json> returns = Function::invoke(arguments);
+				throw std::runtime_error("Cross-Covariance is not implemented for laser tracker!");
+				return returns;
+			}
+
+
+		};
+
+		class Bases : public SOIL::Object
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			std::shared_ptr<Base::Model> base;
+		public:
+			Bases(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Object(parent, "OBJ-Bases", "Bases", "List of Bases (1 in case of a Laser Tracker)"), device(device)
+			{
+				base = std::dynamic_pointer_cast<Base::Model> ((new Base::Model(self, device))->ptr());
+			}
+			~Bases() {}
+
+			void update_bases()
+			{
+				//device->get_base()->set_soil(base);
+			}
+
+		};
+
+
+		class Entities : public SOIL::Object
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		public:
+			Entities(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Object(parent, "OBJ-Entities", "Entities", "List of available entities."), device(device)
+			{
+				update_entities();
+			}
+			~Entities() {}
+
+			void read(void)
+			{
+
+			}
+
+			HTTP::Json insert(HTTP::Json body) override
+			{
+				std::string uuid = SOIL::to_value<std::string>(body[_XPLATSTR("uuid")]);
+				if (uuid.substr(0, 4) != "OBJ-")
+				{
+					throw std::runtime_error("Invalid UUID, must start with OBJ-!");
+				}
+				std::string name = uuid.substr(4, uuid.length() - 4);
+				return children[uuid]->wjson();
+			}
+
+			void update_entities(void)
+			{
+				std::vector<std::string> targets = device->list_targets();
+				std::vector<std::string> stale_targets;
+
+				for (auto& c : children)
+				{
+					bool found = false;
+					for (auto& t : targets)
+					{
+						if (c.first.substr(4) == std::regex_replace(t, std::regex(" "), "_"))
+						{
+							found = true;
+							break;
+						}
+					}
+					if (!found)
+					{
+						stale_targets.push_back(c.first);
+					}
+				}
+
+				for (auto& t : targets)
+				{
+					if (children.count("OBJ-" + std::regex_replace(t, std::regex(" "), "_")) == 0)
+					{
+						new Entity::Model(self, t, device);
+					}
+				}
+
+				for (auto& s : stale_targets)
+				{
+					children.erase(s);
+				}
+			}
+
+		};
+
+		class Model : public SOIL::Object
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			std::shared_ptr<Entities> entities;
+			std::shared_ptr<Bases> bases;
+		public:
+			Model(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Object(parent, "OBJ-LSM", "LSM Subsystem", "Large Scale Metrology Subsystem with defined functions."), device(device)
+			{
+				//new Reset(self, device);
+				new Calibration(self, device);
+				bases = std::dynamic_pointer_cast<Bases>((new Bases(self, device))->ptr());
+				entities = std::dynamic_pointer_cast<Entities>((new Entities(self, device))->ptr());
+				new Covariance(self, device);
+			}
+			~Model() {}
+
+			void update_model(void)
+			{
+				entities->update_entities();
+				bases->update_bases();
+			}
+
+			void update_entities(void)
+			{
+				entities->update_entities();
+			}
+
+			void update_bases(void)
+			{
+				bases->update_bases();
+			}
+
+			void update(VIRTUAL::Data& data, std::string nonce, boost::posix_time::ptime time);
+
+		};
+	}
+}
diff --git a/src/LSM/Root.h b/src/LSM/Root.h
new file mode 100644
index 0000000000000000000000000000000000000000..011e780cd6a705e81153283978fb39990496fb07
--- /dev/null
+++ b/src/LSM/Root.h
@@ -0,0 +1,158 @@
+#pragma once
+#include "SOIL/Variable.h"
+#include "SOIL/Parameter.h"
+#include "SOIL/Function.h"
+#include "SOIL/Object.h"
+#include "SOIL/Container.h"
+#include "SOIL/Range.h"
+#include "Model.h"
+#include "Device.h"
+#include "SOIL/Time.h"
+
+
+namespace LSM
+{
+	namespace Root
+	{
+
+		class Reset : public SOIL::Function
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		public:
+			Reset(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Function(parent, "FUN-Reset", "Reset", "Reinitializes the device."), device(device)
+			{
+			}
+			~Reset() {}
+
+			std::map<std::string, HTTP::Json> invoke(std::map<std::string, HTTP::Json> arguments) override
+			{
+				std::map<std::string, HTTP::Json> returns;
+				return returns;
+			}
+
+		};
+
+		class Shutdown : public SOIL::Function
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+		public:
+			Shutdown(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Function(parent, "FUN-Shutdown", "Shutdown", "Shuts down the device."), device(device)
+			{
+			}
+			~Shutdown() {}
+
+			std::map<std::string, HTTP::Json> invoke(std::map<std::string, HTTP::Json> arguments)
+			{
+				std::map<std::string, HTTP::Json> returns;
+				return returns;
+			}
+
+		};
+
+		class State : public SOIL::Parameter<SOIL::ENUM>
+		{
+		public:
+			State(std::shared_ptr<SOIL::Element> parent, std::shared_ptr<VIRTUAL::Device> device) : Parameter(
+				parent,
+				"PAR-State",
+				"State",
+				"State of the device",
+				"",
+				false,
+				"",
+				SOIL::Range<SOIL::ENUM>({ "UNINITIALIZED","ERROR","WARNING","OPERATING","MAINTENANCE" })
+			), device(device) {
+				value = SOIL::ENUM("UNINITIALIZED", { "UNINITIALIZED","ERROR","WARNING","OPERATING","MAINTENANCE" });
+			};
+			~State() {};
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			void read(void)
+			{
+				set_time(SOIL::TIME::utc_now());
+			}
+		};
+
+		class APIVersion : public SOIL::Parameter<SOIL::INT>
+		{
+		public:
+			APIVersion(std::shared_ptr<SOIL::Element> parent) : Parameter(
+				parent,
+				"PAR-APIVersion",
+				"API Version",
+				"Interface version as incrementing integer",
+				"",
+				true
+			) {
+				update(1, SOIL::TIME::utc_now());
+			};
+			~APIVersion() {};
+		private:
+			void read(void)
+			{
+
+			}
+		};
+
+		class Manufacturer : public SOIL::Parameter<SOIL::STRING>
+		{
+		public:
+			Manufacturer(std::shared_ptr<SOIL::Element> parent) : Parameter(
+				parent,
+				"PAR-Manufacturer",
+				"Manufacturer",
+				"Name of the manufacturer of the device.",
+				"",
+				true
+			) {
+				set_value(std::string("WZL | RWTH Aachen University"));
+			};
+			~Manufacturer() {};
+		};
+
+		class SystemTime : public SOIL::Parameter<SOIL::TIME>
+		{
+		public:
+			SystemTime(std::shared_ptr<SOIL::Element> parent) : Parameter(
+				parent,
+				"PAR-Time",
+				"Time",
+				"Currrent UTC system time.",
+				""
+			) {};
+			~SystemTime() {};
+		private:
+			void read(void)
+			{
+				set_value(SOIL::Container<SOIL::TIME>(SOIL::TIME::utc_now()));
+			}
+		};
+
+
+		class Model : public SOIL::Object
+		{
+		private:
+			std::shared_ptr<VIRTUAL::Device> device;
+			std::shared_ptr<LSM::Model> lsm;
+		public:
+			Model(std::shared_ptr<VIRTUAL::Device> device) : Object(NULL, "OBJ-VIRTUAL", "WZL Virtual", "WZL Virtual LSM Device"), device(device) {
+				new Reset(self, device);
+				new Shutdown(self, device);
+				new State(self, device);
+				new APIVersion(self);
+				new Manufacturer(self);
+				new SystemTime(self);
+				lsm = std::dynamic_pointer_cast<LSM::Model>((new LSM::Model(self, device))->ptr());
+			};
+
+			~Model() {};
+
+			void update_lsm()
+			{
+				lsm->update_model();
+			}
+		};
+	}
+}
\ No newline at end of file
diff --git a/src/LSM/Target.cpp b/src/LSM/Target.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..b6599a0f8e45f05730fe6ea7af32619715c0b2f2
--- /dev/null
+++ b/src/LSM/Target.cpp
@@ -0,0 +1 @@
+#include "Target.h"
diff --git a/src/LSM/Target.h b/src/LSM/Target.h
new file mode 100644
index 0000000000000000000000000000000000000000..a6e8fc611fae0bf43fd6eab08234f16f09879402
--- /dev/null
+++ b/src/LSM/Target.h
@@ -0,0 +1,9 @@
+#pragma once
+
+namespace VIRTUAL
+{
+	class Target
+	{
+	};
+}
+
diff --git a/src/LSM/main.cpp b/src/LSM/main.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..0c04edc99bc787ce94ea8912ff15bdbb00753812
--- /dev/null
+++ b/src/LSM/main.cpp
@@ -0,0 +1,66 @@
+#include "MQTT/Publisher.h"
+#include "UDP/Broadcast.h"
+#include "REST/Server.h"
+#include "SOIL/Object.h"
+#include "SOIL/Variable.h"
+#include "SOIL/Types.h"
+#include "SIGN/Hasher.h"
+#include "SIGN/Signer.h"
+#include "Device.h"
+#include "Root.h"
+#include <thread>
+#include <iostream>
+#include <chrono>
+
+
+
+
+int main(int argc, char** argv)
+{
+	try
+	{
+		std::cout << "############ DEVICE ###########" << std::endl;
+		std::shared_ptr<VIRTUAL::Device> device(new VIRTUAL::Device());
+
+		std::cout << "############ SOIL #############" << std::endl;
+		std::shared_ptr<LSM::Root::Model> root_object(new LSM::Root::Model(device));
+
+
+		std::cout << "############ MQTT ############" << std::endl;
+		MQTT::Configuration mqtt_config("../../../../assets/mqtt.json");
+		mqtt_config.certificate_authority = "../../../../assets/MQTT-CA.pem";
+
+		std::shared_ptr<MQTT::Publisher> mqtt_publisher = std::make_shared<MQTT::Publisher>("cpp-test");
+		mqtt_publisher->configure(mqtt_config);
+		std::cout << "[INFO] MQTT Connecting to " << mqtt_config.uri() << std::endl;
+		mqtt_publisher->connect();
+		std::cout << "[OK] MQTT Connected" << std::endl;
+
+
+		std::cout << "############ REST ############" << std::endl;
+		HTTP::Server http_server("http://localhost:8000");
+		http_server.add("/?(.*)", root_object);
+		http_server.open();
+		std::cout << "[OK] HTTP Server listening on http://localhost:8000. Press Enter to quit..." << std::endl;
+		std::string s;
+		std::getline(std::cin, s);
+		http_server.close();
+		std::cout << "[OK] Closing HTTP Server" << std::endl;
+		std::this_thread::sleep_for(std::chrono::milliseconds(500));
+		mqtt_publisher->disconnect();
+		std::cout << "[OK] MQTT Disconnect" << std::endl << std::endl;
+		std::this_thread::sleep_for(std::chrono::milliseconds(500));
+
+		root_object.reset();
+		device.reset();
+
+		return 0;
+	}
+	catch (std::exception& e)
+	{
+		std::cout << "[ERROR] " << e.what() << std::endl;
+		
+		return 1;
+	}
+
+}
\ No newline at end of file
diff --git a/src/MQTT/Configuration.cpp b/src/MQTT/Configuration.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..c67f0230af7af5df73d80b2b081e3b673d05de86
--- /dev/null
+++ b/src/MQTT/Configuration.cpp
@@ -0,0 +1,90 @@
+#include "Configuration.h"
+#include <nlohmann/json.hpp>
+#include <fstream>
+
+
+using json = nlohmann::json;
+
+MQTT::Configuration::Configuration()
+{
+	std::string host = "127.0.0.1";
+	port = 1883;
+	username = "guest";
+	password = "guest";
+	clean_session = true;
+	root = "";
+	keep_alive = 30;
+	min_delay_ms = 0;
+	int connection_timeout_s = 30;
+	bool ssl = false;
+	bool verify = true;
+	bool websocket = false;
+	std::string path = "";
+	std::string certificate_authority = "";
+	connection_timeout_s = 30;
+}
+
+MQTT::Configuration::Configuration(std::string filename)
+{
+	std::ifstream infile(filename);
+	json j;
+	infile >> j;
+	host = j.value("host", "127.0.0.1");
+	port = j.value("port", 1883);
+	username = j.value("username", "guest");
+	password = j.value("password", "guest");
+	clean_session = j.value("clean", true);
+	root = j.value("root", "");
+	keep_alive = j.value("keep_alive", 30);
+	min_delay_ms = j.value("min_delay", 0);
+	connection_timeout_s = j.value("connection_timeout", 30);
+	ssl = j.value("ssl", false);
+	verify = j.value("verify", true);
+	websocket = j.value("websocket", false);
+	path = j.value("path", "");
+	certificate_authority = j.value("certificate_authority", "");
+
+}
+
+MQTT::Configuration::~Configuration()
+{
+}
+
+std::string MQTT::Configuration::uri()
+{
+	std::string prefix;
+	if (websocket)
+	{
+		if (ssl)
+		{
+			prefix = "wss";
+		}
+		else
+		{
+			prefix = "ws";
+		}
+		if (path.size() > 0)
+		{
+			if (path.at(0) != '/')
+			{
+				path = "/" + path;
+			}
+		}
+	}
+	else
+	{
+		if (ssl)
+		{
+			prefix = "ssl";
+		}
+		else
+		{
+			prefix = "tcp";
+		}
+		path = "";
+	}
+	
+	return prefix + "://" + host + ":" + std::to_string(port) + path;
+
+}
+
diff --git a/src/MQTT/Configuration.h b/src/MQTT/Configuration.h
new file mode 100644
index 0000000000000000000000000000000000000000..b24b2d2ccb474cc8ca1e558c2ca813c2643fb356
--- /dev/null
+++ b/src/MQTT/Configuration.h
@@ -0,0 +1,166 @@
+#pragma once
+#include <string>
+#include "constants.h"
+
+namespace MQTT
+{
+	/**
+	 * @brief MQTT publishing configuration.
+	 * 
+	 * Class acting as enhanced struct to accomodate all configuration options.
+	 * Therefore all members are public to be directly accessible.
+	*/
+	class DLL Configuration
+	{
+	public:
+		/**
+		 * @brief Hostname of the MQTT broker
+		 * 
+		 * Adress or hostname of the MQTT broker. Can be an FQDN or IP address.
+		 * Defaults to @c 127.0.0.1 .
+		*/
+		std::string host;
+
+		/**
+		 * @brief Port of the MQTT broker
+		 * 
+		 * Port to use for the MQTT broker.
+		 * Defaults to @c 1883 in the constructor. Typical ports are 1883 (MQTT), 8883 (MQTT over TLS) and 443 (MQTT over secure websockets).
+		*/
+		int port;
+
+		/**
+		 * @brief Username for connecting to the MQTT broker
+		 * 
+		 * Username when connecting to the MQTT broker.
+		 * When using RabbitMQ, make sure to consider the VHOST prefix.
+		 * Defaults to @c guest .
+		*/
+		std::string username;
+
+		/**
+		 * @brief Password for connecting to the MQTT broker
+		 * 
+		 * Password when connecting to the MQTT broker. Be mindful with passwords when committing to version control!
+		 * Defaults to @c guest .
+		*/
+		std::string password;
+
+		/**
+		 * @brief Clean session flag
+		 * 
+		 * Flag whether to start a clean MQTT session.
+		 * Defaults to @c true .
+		*/
+		bool clean_session;
+
+		/**
+		 * @brief  MQTT root topic
+		 * 
+		 * Root topic that is prepended to any published topic.
+		 * This is intended for cases where permisions enfore that you publish under a defined root topic. 
+		 * The default is no root topic prefix.
+		*/
+		std::string root;
+
+		/**
+		 * @brief Keep alive interval in seconds
+		 * 
+		 * Keep alive interval in seconds for the MQTT client.
+		 * Defaults to @c 30 .
+		*/
+		int keep_alive;
+
+		/**
+		 * @brief Minimum delay between to messages in milliseconds
+		 * 
+		 * A minimum delay which should be kept between sending two messages, provided in milliseconds.
+		 * Defaults to @c 0 .
+		 * @post This is not enforced in the client, but should be called as property of the publishing by the using code.
+		*/
+		int min_delay_ms;
+		
+		/**
+		 * @brief Connection timeout in seconds
+		 * 
+		 * Number of seconds to wait until the connection succeeds. 
+		 * This influence the length of the blocking call during connection.
+		 * Defaults to @c 30 .
+		*/
+		int connection_timeout_s;
+
+		/**
+		 * @brief Use secured connection
+		 * 
+		 * Boolean flag whether to use a secured connection (MQTT over TLS or secure websocket).
+		 * Defaults to @c false . 
+		 * @pre If not ignoring verification, trusted root certificated must be provided in a PEM-file.
+		*/
+		bool ssl;
+
+		/**
+		 * @brief Skip SSL verification
+		 * 
+		 * Boolean flag whether to ignore SSL certificate validation, i.e. for hostname matching and trusted authority.
+		 * This should only be used for basic development purposes.
+		*/
+		bool verify;
+
+		/**
+		 * @brief Use websocket protocol
+		 * 
+		 * Boolean flag whether to use the websocket extension of MQTT.
+		 * Make sure to specify the correct path.
+		 * Defaults to @c false .
+		*/
+		bool websocket;
+
+		/**
+		 * @brief Websocket path
+		 * 
+		 * Websocket path that forms the last part of the URI, e.g. @c /mqtt-ws/.
+		 * Defaults to @c "" .
+		*/
+		std::string path;
+
+		/**
+		 * @brief Path to CA PEM-file
+		 * 
+		 * Path to a file containing the trusted certificate authorities in PEM-format for OpenSSL.
+		 * This is mandatory when properly implementing secure MQTT.
+		 * @pre Make sure that the hostname used for connecting is matching its name in the certificate chain.
+		*/
+		std::string certificate_authority;
+		
+		/**
+		 * @brief Default constructor
+		 * 
+		 * Default constructor applying the defaults documented. 
+		*/
+		Configuration();
+
+		/**
+		 * @brief JSON Constructor
+		 * 
+		 * Reads the configuration from a JSON-file.
+		 * See the project assets for an example file.
+		 * @param [in] filename Path to JSON-file (absolute or relative).
+		*/
+		Configuration(std::string filename);
+
+		/**
+		* @brief Destructor
+		* 
+		* Standard Destructor
+		*/
+		~Configuration();
+
+		/**
+		 * @brief URI Builder
+		 * 
+		 * Builds an URI for the underlying Paho-MQTT library.
+		 * @return Full URI string, e.g. @c tcp://127.0.0.1:1883 .
+		*/
+		std::string uri();
+	};
+}
\ No newline at end of file
diff --git a/src/MQTT/LocalException.cpp b/src/MQTT/LocalException.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..c2cb8a49b2aec8499cb3da6b8239f5280ce63237
--- /dev/null
+++ b/src/MQTT/LocalException.cpp
@@ -0,0 +1,18 @@
+#include "LocalException.h"
+
+
+
+MQTT::Exception::Exception(const char* message, int code): std::runtime_error(message), _code(code)
+{
+}
+
+MQTT::Exception::Exception(const std::exception & exc) : std::runtime_error(exc.what())
+{
+	_code = 0;
+}
+
+MQTT::Exception::~Exception()
+{
+}
+
+
diff --git a/src/MQTT/LocalException.h b/src/MQTT/LocalException.h
new file mode 100644
index 0000000000000000000000000000000000000000..46fe26285282a69140b69e07350dfd292e103498
--- /dev/null
+++ b/src/MQTT/LocalException.h
@@ -0,0 +1,60 @@
+#pragma once
+#include "constants.h"
+#include <stdexcept>
+
+
+namespace MQTT
+{
+	/**
+	 * @brief MQTT Publisher Exception
+	 * 
+	 * Specific subclass of @c std::runtime_error to distinguish exceptions coming from the MQTT Publisher.
+	*/
+	class DLL Exception : public std::runtime_error
+	{
+	private:
+
+		/**
+		 * @brief MQTT Result Code
+		 * 
+		 * MQTT has an own result code system which is useful to describe errors and therefore included here
+		*/
+		int _code;
+	public:
+
+		/**
+		 * @brief Constructor
+		 * 
+		 * Constructor building an expection from a message and result code.
+		 * @param [in] message Message to use for exeption description
+		 * @param [in] code result code to store.
+		*/
+		Exception(const char* message = "", int code = 0);
+
+		/**
+		 * @brief Construcor from exception
+		 * 
+		 * Constructor to rethrow an exception that has occured from some other error within the context of the MQTT Publisher.
+		 * @param [in] exc Expcetion to replicate 
+		*/
+		Exception(const std::exception& exc);
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Standard destructor for the class
+		*/
+		~Exception(void);
+
+		/**
+		 * @brief Result Code
+		 * 
+		 * Get the result code that is stored internally in the exception.
+		 * @return result code. 
+		*/
+		inline const int code(void) const { return _code; }
+	};
+}
+
+
+
diff --git a/src/MQTT/MessageContainer.h b/src/MQTT/MessageContainer.h
new file mode 100644
index 0000000000000000000000000000000000000000..ae6be2653129ca6f773a3cd3a1e337713c012c19
--- /dev/null
+++ b/src/MQTT/MessageContainer.h
@@ -0,0 +1,42 @@
+#pragma once
+#include "constants.h"
+namespace MQTT
+{
+	/**
+	 * @brief Internal MQTT message struct
+	 * 
+	 * Struct to manage MQTT message data internally using standard strings.
+	*/
+	struct DLL  MessageContainer
+	{
+		/**
+		 * @brief Message Topic
+		 * 
+		 * Topic to which the message shall be sent.
+		*/
+		std::string topic;
+
+		/**
+		 * @brief Message
+		 * 
+		 * Primary content of the messsage to send.
+		*/
+		std::string message;
+
+		/**
+		 * @brief Quality of Service
+		 * 
+		 * MQTT Quality of service level to choose for the message.
+		 * Check the MQTT specifications for the exact behaviours of 0, 1, and 2 in conjuncation with message retention.
+		*/
+		int qos;
+
+		/**
+		 * @brief Retain Flag
+		 * 
+		 * Flag whether to retain the message on the broker after disconnection.
+		*/
+		bool retain;
+
+	};
+}
\ No newline at end of file
diff --git a/src/MQTT/Publisher.cpp b/src/MQTT/Publisher.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..cc2eb0a9813e0a6060b47acdc7060e00f0eb7fc7
--- /dev/null
+++ b/src/MQTT/Publisher.cpp
@@ -0,0 +1,246 @@
+#include "LocalException.h"
+#include "Publisher.h"
+#include <nlohmann/json.hpp>
+#include <regex>
+#include <chrono>
+#include <condition_variable>
+#define PAHO_MQTT_IMPORTS
+#include <mqtt/async_client.h>
+#include <boost/date_time/posix_time/posix_time.hpp>
+
+
+int MQTT::Publisher::instances = 0;
+
+
+
+void MQTT::Publisher::loop(void)
+{
+	MQTT::MessageContainer message;
+	while (worker_running.load(std::memory_order_consume))
+	{
+		if (queue_size.load(std::memory_order_consume) > 0)
+		{
+			std::unique_lock<std::mutex> queue_lock(queue_mutex);
+			message = queue.front();
+			queue.pop_front();
+			queue_size.store(static_cast<int>(queue.size()));
+		}
+		else
+		{
+			std::unique_lock<std::mutex> queue_lock(queue_mutex);
+			while (queue_size.load(std::memory_order_consume) == 0)
+			{
+				queue_condition.wait(queue_lock);
+			}
+			continue;
+		}
+		try {
+			auto paho_message = mqtt::make_message((configuration.root + message.topic).c_str(), message.message.c_str(), message.message.size(), message.qos, message.retain);
+			auto token = client->publish(paho_message);
+		}
+		catch (std::exception&)
+		{
+			/* pass */
+		}
+	}
+}
+
+void MQTT::Publisher::restart_worker(void)
+{
+	if (!worker_running.load(std::memory_order_consume))
+	{
+		std::unique_lock<std::mutex> queue_lock(queue_mutex);
+		queue.clear();
+		worker_running.store(true, std::memory_order_release);
+		worker.reset(new std::thread(&MQTT::Publisher::loop, this));
+	}
+}
+
+void MQTT::Publisher::stop_worker(void)
+{
+	worker_running.store(false, std::memory_order_release);
+	std::unique_lock<std::mutex> queue_lock(queue_mutex);
+	queue_condition.notify_all();
+}
+
+MQTT::Publisher::Publisher(std::string id, unsigned int buffer) : id(id), buffer(buffer)
+{
+	if (instances == 0)
+	{
+		/* pass */;
+	}
+	instances++;
+
+	
+	worker_running.store(false, std::memory_order_release);
+	queue.resize(0);
+	queue_size.store(0, std::memory_order_release);
+
+}
+
+
+MQTT::Publisher::~Publisher()
+{
+	this->disconnect();
+	worker->detach();
+	instances--;
+	if (instances == 0)
+	{
+		/* pass */;
+	}
+}
+
+void MQTT::Publisher::connect(MQTT::Configuration configuration)
+{
+	try
+	{
+		client.reset(new mqtt::async_client(configuration.uri(), id));
+
+		auto ssl = mqtt::ssl_options_builder();
+		auto options = mqtt::connect_options_builder();
+		options.user_name(configuration.username);
+		options.password(configuration.password);
+		options.clean_session(configuration.clean_session);
+		options.keep_alive_interval(std::chrono::seconds(configuration.keep_alive));
+		options.connect_timeout(std::chrono::seconds(configuration.connection_timeout_s));
+		
+		if (configuration.ssl)
+		{
+			ssl.enable_server_cert_auth(configuration.verify);
+			ssl.trust_store(configuration.certificate_authority);
+			ssl.ssl_version(MQTT_SSL_VERSION_DEFAULT);
+			options.ssl(ssl.finalize());
+		}
+		
+
+		auto token = client->connect(options.finalize());
+		auto response = token->get_connect_response();
+	
+		if (!client->is_connected())
+		{
+			throw std::runtime_error(mqtt::exception(token->get_return_code()));
+		}
+
+		restart_worker();
+	}
+	catch (std::exception& exc)
+	{
+		throw MQTT::Exception(exc);
+	}
+}
+
+void MQTT::Publisher::connect()
+{
+	this->connect(this->configuration);
+}
+
+
+void MQTT::Publisher::reconnect(void)
+{
+	try
+	{
+		auto token = client->reconnect();
+		auto response = token->get_connect_response();
+
+		if (!client->is_connected())
+		{
+			throw std::runtime_error(mqtt::exception(token->get_return_code()));
+		}
+		restart_worker();
+	}
+	catch (std::exception& exc)
+	{
+		throw MQTT::Exception(exc);
+	}
+}
+
+void MQTT::Publisher::disconnect(unsigned int timeout)
+{
+	if (client.get() != NULL)
+	{
+		auto token = client->disconnect();
+		token->wait_for(timeout);
+	}
+	stop_worker();
+	client.reset();
+}
+
+
+void MQTT::Publisher::set_root_topic(std::string root_topic)
+{
+	configuration.root = root_topic;
+	std::string::iterator last_character = configuration.root.end() - 1;
+	if ((*last_character) != '/')
+	{
+		configuration.root += "/";
+	}
+}
+
+void MQTT::Publisher::set_buffer(unsigned int buffer)
+{
+	this->buffer = buffer;
+}
+
+bool MQTT::Publisher::is_connected(void)
+{
+	try
+	{
+		return client->is_connected();
+	}
+	catch (std::exception& exc)
+	{
+		throw MQTT::Exception(exc);
+	}
+}
+
+void MQTT::Publisher::configure(MQTT::Configuration configuration)
+{
+	this->configuration = configuration;
+	std::string::iterator last_character = this->configuration.root.end() - 1;
+	if ((*last_character) != '/')
+	{
+		this->configuration.root += "/";
+	}
+}
+
+
+bool MQTT::Publisher::publish(std::string topic, std::string message, int qos, bool retain)
+{
+	MQTT::MessageContainer mqtt_message = { topic, message, qos, retain };
+	if ((qos > 0) || (queue_size.load(std::memory_order_consume) <= static_cast<int>(buffer)))
+	{
+		std::unique_lock<std::mutex> queue_lock(queue_mutex);
+		queue.push_back(mqtt_message);
+		queue_size.store(static_cast<int>(queue.size()), std::memory_order_release);
+		queue_condition.notify_all();
+		return true;
+	}
+	else
+	{
+		return false;
+	}
+}
+
+bool MQTT::Publisher::publish(std::vector<std::string> topics, std::vector<std::string> messages, int qos, bool retain)
+{
+	int n = static_cast<int>(topics.size());
+	std::vector<MQTT::MessageContainer> mqtt_messages(n);
+	for (int i = 0; i < n; i++)
+	{
+		mqtt_messages.at(i) = { topics.at(i), messages.at(i), qos, retain };
+	}
+	
+	if ((qos > 0) || (queue_size.load(std::memory_order_consume) <= static_cast<int>(buffer)))
+	{
+		std::unique_lock<std::mutex> queue_lock(queue_mutex);
+		queue.insert(queue.end(), mqtt_messages.begin(), mqtt_messages.end());
+		queue_size.store(static_cast<int>(queue.size()), std::memory_order_release);
+		queue_condition.notify_all();
+		return true;
+	}
+	else
+	{
+		return false;
+	}
+
+}
diff --git a/src/MQTT/Publisher.h b/src/MQTT/Publisher.h
new file mode 100644
index 0000000000000000000000000000000000000000..d7ce1b742dd3e9ff1b1c1b2ce1206d0db7b8fd57
--- /dev/null
+++ b/src/MQTT/Publisher.h
@@ -0,0 +1,276 @@
+#pragma once
+#include "constants.h"
+#include "Configuration.h"
+#include "MessageContainer.h"
+#include <deque>
+#include <atomic>
+#include <mutex>
+#include <thread>
+#include <vector>
+#include <condition_variable>
+//#include <mqtt/async_client.h>
+
+
+namespace mqtt
+{
+	/**
+	 * @brief Forward Declare
+	*/
+	class async_client;
+}
+
+namespace MQTT
+{
+	/**
+	 * @brief MQTT Publisher
+	 * 
+	 * This class abstracts the process of publishing MQTT messages to an MQTT broker.
+	 * Currently, the underlying implementation is realized using Paho-MQTT. 
+	 * Upon connection, it spans an own worker thread that continously publishes messages put into a message queue
+	 * such that the calling thread does not get blocked with the communication process.
+	 * The purpose of this class is pure publishing, so there is no subscribing functionality implemented. 
+	 * 
+	 * @todo Implement support for authenticating with client certificates.
+	*/
+	class DLL Publisher
+	{
+	private:
+		/**
+		 * @brief Number of class instances
+		 * 
+		 * Counter to track the number of class instances, which may be needed to initialize and clean
+		 * the underlying library (was the case for mosquitto).
+		*/
+		static int instances;
+
+		/**
+		 * @brief Unique identifier
+		 * 
+		 * Unique identifier that is presented to the broker. Be careful if you reuse code across
+		 * applications that some broker show an unexpected behaviour when using the same id more than once.
+		*/
+		std::string id;
+
+		/**
+		 * @brief Internal Message queue length
+		 * 
+		 * Maximum number of messages that may enter the internal message queue. 
+		 * After that, no message with QoS=0 is accepted anymore to avoid the buildup
+		 * of an eteneral delay. Limiting the size of the message queue avoids problems when
+		 * data is produced faster as it can be published via MQTT (and meaningfully be consumed).
+		*/
+		unsigned int buffer;
+
+		/**
+		 * @brief Current configuration
+		 * 
+		 * Current configuration of the MQTT publisher. For details, please refer to the documentation of the respective class.
+		*/
+		Configuration configuration;
+
+		/**
+		 * @brief Internal client pointer
+		 * 
+		 * Shared pointer to the internal client of the underlying library.
+		*/
+
+		std::shared_ptr<mqtt::async_client> client;
+
+		/**
+		 * @brief Message Queue
+		 * 
+		 * Implemented message queue based on std::deque, which has no re-allocation costs upon extension.
+		*/
+		std::deque<MessageContainer> queue;
+
+		/**
+		 * @brief Brief Atomic Queue Size
+		 * 
+		 * Thread-safe, atomic variable to coordinate the queue.
+		*/
+		std::atomic<int> queue_size;
+
+		/**
+		 * @brief Message Queue Mutex
+		 * 
+		 * Mutex to protect the message queue between threads that are inserting messages and the processing loop.
+		*/
+		std::mutex queue_mutex;
+
+		/**
+		 * @brief Message Queue Condition Variable
+		 * 
+		 * Condition variable to synchronise the blockage of threads while simulatenously accessing the message queue.
+		*/
+		std::condition_variable queue_condition;
+
+		/**
+		 * @brief Worker Thread Pointer
+		 * 
+		 * Internal pointr to the worker thread running the publishing loop.
+		*/
+
+		std::shared_ptr<std::thread> worker;
+
+		/**
+		 * @brief  Worker thread status
+		 * 
+		 * Atomic boolean flag to indicate whether the worker thread is running.
+		 * This variable is used to coordinate the starting and stopping process of the worker thread.
+		*/
+		std::atomic<bool> worker_running;
+
+		/**
+		 * @brief Worker loop
+		 * 
+		 * Internal loop function that is executed in the worker thread.
+		 * The loop checks for new messages in the queue as often as possible and publishes them.
+		*/
+
+		void loop(void);
+
+		/**
+		 * @brief Resart worker thread
+		 * 
+		 * Internal function to (re)start the worker thread.
+		 * This function can also be used to initially start the worker thread.
+		*/
+		void restart_worker(void);
+
+		/**
+		 * @brief Resart worker thread
+		 *
+		 * Internal function to stop the worker thread.
+		*/
+		void stop_worker(void);
+		
+
+	public:
+		/**
+		 * @brief Constructor 
+		 *
+		 * Constructor for MQTT publisher that should be called from user's code
+		 * @param [in] id Unique identifier that is presented to the broker. Be careful if you reuse code across
+		 * applications that some broker show an unexpected behaviour when using the same id more than once. 
+		 * @param [in] buffer Size of the message queue before messages with QoS=0 are discarded.
+		*/
+		Publisher(std::string id, unsigned int buffer = 1024);
+		
+		/**
+		* @brief Destructor
+		* 
+		* Default destructor
+		*/
+		~Publisher();
+
+		/**
+		 * @brief Publish an MQTT message
+		 * 
+		 * This is the core function to publish an MQTT message. It deposits a message into the queue.
+		 * @param [in] topic Topic to which the message shall be sent.
+		 * @param [in] message Primary content of the messsage to send.
+		 * @param [in] qos MQTT Quality of service level to choose for the message.
+		 * Check the MQTT specifications for the exact behaviours of 0, 1, and 2 in conjuncation with message retention.
+		 * @param [in] retain Flag whether to retain the message on the broker after disconnection.
+		 * @return True or false depending whether the message was accepted in the message queue (cf. buffer size).
+		*/
+		bool publish(std::string topic, std::string message, int qos, bool retain);
+
+		/**
+		 * @brief Publish multiple MQTT messages
+		 *
+		 * This is the multi-message version of the publish function, which deposits all messages at once into the message queue and gains performance by reducing the number of lock operations.
+		 * @param [in] topic List of topics to which the messages shall be sent.
+		 * @param [in] message List of messages, in the correpsonding order of the list of topics.
+		 * @param [in] qos MQTT Quality of service level to choose for the message.
+		 * Check the MQTT specifications for the exact behaviours of 0, 1, and 2 in conjuncation with message retention.
+		 * @param [in] retain Flag whether to retain the message on the broker after disconnection.
+		 * @return True or false depending whether the message was accepted in the message queue (cf. buffer size).
+		*/
+		bool publish(std::vector<std::string> topics, std::vector<std::string> messages, int qos, bool retain);
+
+		/**
+		 * @brief Connect to broker
+		 * 
+		 * Connect to the broker using the provided configuration object.
+		 * The internal configuration object will be overridden. 
+		 * 
+		 * @param [in] configuration Configuration to apply.
+		*/
+		void connect(MQTT::Configuration configuration);
+
+		/**
+		 * @brief Connect to broker
+		 * 
+		 * Connect to the broker using the configuration object internally stored.
+		*/
+		void connect();
+
+		/**
+		 * @brief Direct Reconnect
+		 * 
+		 * Direct call of the internal reconnect function. No reconfiguration takes place,
+		*/
+		void reconnect(void);
+		
+		/**
+		 * @brief Diconnect from the broker
+		 * 
+		 * Disconnect from the broker and internally stop the worker thread.
+		 * This is a blocking call.
+		 * 
+		 * @param[in] timeout Timeout for the blocking operation in milliseconds.
+		*/
+		void disconnect(unsigned int timeout = 10000);
+
+		/**
+		 * @brief Set new root topic
+		 * 
+		 * Override the root topic. This can be done while connected as it only affects preprocessing of messages.
+		 * @param [in] root_topic New root topic.
+		*/
+		void set_root_topic(std::string root_topic);
+
+		/**
+		 * @brief Set message queue size
+		 * 
+		 * Set a new size for the internal message queue.
+		 * 
+		 * @param[in] buffer New size
+		*/
+		void set_buffer(unsigned int buffer);
+
+		/**
+		 * @brief Is connected?
+		 * 
+		 * Checks whether the publisher is currently connected to a broker.
+		 * Directly calls the underlying implementation of the library if possible.
+		 * 
+		 * @return True if connected, else false.
+		*/
+		bool is_connected(void);
+
+		/**
+		 * @brief Minimum delay between to messages in milliseconds
+		 *
+		 * A minimum delay which should be kept between sending two messages, provided in milliseconds.
+		 * Defaults to @c 0 .
+		 * @post This is not enforced in the client, but should be called as property of the publishing by the using code.
+		 * @return Current delay set.
+		*/
+		inline int min_delay_ms(void) { return configuration.min_delay_ms; }
+
+		/**
+		 * @brief Register new configuration
+		 * 
+		 * Register a new configuration, without connecting.
+		 * Changes will only take place after (re-)connecting to the broker.
+		 * @param[in] configuration New configuration object.
+		*/
+		void configure(MQTT::Configuration configuration);
+
+
+	};
+}
+
+
diff --git a/src/MQTT/constants.h b/src/MQTT/constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..69eccb2095efad8e28497a69a58d829f53e77e7a
--- /dev/null
+++ b/src/MQTT/constants.h
@@ -0,0 +1,23 @@
+/**
+ * @brief Default definitions for project
+ * 
+ * File being referenced by many others containing cross-project defaults.
+*/
+
+#pragma once
+#ifdef _WIN32
+#        pragma warning(disable: 4251)
+#		 pragma warning(disable: 4275)
+#    ifdef _WINDLL
+#        define DLL __declspec(dllexport)
+#    else
+#        define DLL __declspec(dllimport)
+#    endif
+#elif defined(__unix__)
+#    define DLL __attribute__((visibility("default")))
+#endif
+
+#define _WIN32_WINNT 0x600
+#ifdef _WIN32
+	#include <SDKDDKVer.h>
+#endif
\ No newline at end of file
diff --git a/src/REST/Resource.cpp b/src/REST/Resource.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..cbb905f2a7efe5c8531bdb351910394c3e9f1468
--- /dev/null
+++ b/src/REST/Resource.cpp
@@ -0,0 +1,172 @@
+#include "Resource.h"
+
+web::json::value HTTP::Resource::request_info(Request message, std::smatch match)
+{
+	web::json::value headers;
+	for (web::http::http_headers::iterator i = message.headers().begin(); i != message.headers().end(); i++)
+	{
+		headers[i->first] = web::json::value::string(i->second);
+	}
+	web::json::value body;
+	body[_XPLATSTR("method")] = web::json::value::string(message.method());
+	body[_XPLATSTR("headers")] = headers;
+	auto task = message.extract_string();
+	task.wait();
+	body[_XPLATSTR("body")] = web::json::value::string(task.get());
+	web::uri uri = message.absolute_uri();
+	web::json::value url;
+	url[_XPLATSTR("path")] = web::json::value::string(uri.path());
+	url[_XPLATSTR("scheme")] = web::json::value::string(uri.scheme());
+	url[_XPLATSTR("query")] = web::json::value::string(uri.query());
+	url[_XPLATSTR("host")] = web::json::value::string(uri.host());
+	url[_XPLATSTR("port")] = web::json::value::number(uri.port());
+
+	body[_XPLATSTR("url")] = url;
+	body[_XPLATSTR("remote_address")] = web::json::value(message.remote_address());
+
+	std::vector<web::json::value> matches;
+	for (size_t i = 0; i < match.size(); i++)
+	{
+		std::string m = match.str(i);
+		matches.push_back(web::json::value::string(utility::conversions::to_string_t(m)));
+	}
+
+	body[_XPLATSTR("matches")] = web::json::value::array(matches);
+
+	return body;
+}
+
+HTTP::Response HTTP::Resource::fallback(Request message, std::smatch match)
+{
+	
+	web::json::value body = request_info(message, match);
+	Response response;
+	response.set_body(body);
+	response.set_status_code(Status::NotImplemented);
+	//this->apply_headers(response);
+	return response;
+}
+
+void HTTP::Resource::apply_headers(Response & response)
+{
+	utility::string_t allowed_methods;
+	for (auto i = this->allowed_methods.begin(); i != this->allowed_methods.end(); i++)
+	{
+		if (i != this->allowed_methods.begin())
+		{
+			allowed_methods.append(_XPLATSTR(", "));
+		}
+		allowed_methods.append(*i);
+	}
+	response.headers().add(_XPLATSTR("Access-Control-Allow-Origin"), utility::conversions::to_string_t(allowed_origins));
+	response.headers().add(_XPLATSTR("Access-Control-Allow-Headers"), _XPLATSTR("content-type"));
+	response.headers().add(_XPLATSTR("Allow"), allowed_methods);
+	response.headers().add(_XPLATSTR("Access-Control-Allow-Methods"), allowed_methods);
+	response.headers().add(_XPLATSTR("Content-Type"), utility::conversions::to_string_t(content_type));
+}
+
+HTTP::Resource::Resource()
+{
+	allowed_origins = "*";
+	allowed_methods = { web::http::methods::GET, web::http::methods::DEL, web::http::methods::PATCH, web::http::methods::POST, web::http::methods::OPTIONS, web::http::methods::HEAD, web::http::methods::PUT };
+	content_type = "application/json";
+}
+
+HTTP::Resource::~Resource()
+{
+}
+
+HTTP::Response HTTP::Resource::handle(Request message, std::smatch match)
+{
+	Response response;
+	try
+	{
+		if (message.method() == Methods::GET)
+		{
+			response = this->handle_get(message, match);
+		}
+		else if (message.method() == Methods::POST)
+		{
+			response = this->handle_post(message, match);
+		}
+		else if (message.method() == Methods::PATCH)
+		{
+			response = this->handle_patch(message, match);
+		}
+		else if (message.method() == Methods::DEL)
+		{
+			response = this->handle_delete(message, match);
+		}
+		else if (message.method() == Methods::PUT)
+		{
+			response = this->handle_put(message, match);
+		}
+		else if (message.method() == Methods::OPTIONS)
+		{
+			response = this->handle_options(message, match);
+		}
+		else if (message.method() == Methods::HEAD)
+		{
+			response = this->handle_head(message, match);
+		}
+		this->apply_headers(response);
+	}
+	catch (std::exception& exception)
+	{
+		response = handle_exception(message, exception, match);
+
+	}
+	return response;
+}
+
+HTTP::Response HTTP::Resource::handle_get(Request message, std::smatch match)
+{
+	return this->fallback(message, match);
+}
+
+HTTP::Response HTTP::Resource::handle_post(Request message, std::smatch match)
+{
+	return this->fallback(message, match);
+}
+
+HTTP::Response HTTP::Resource::handle_patch(Request message, std::smatch match)
+{
+	return this->fallback(message, match);
+}
+
+
+HTTP::Response HTTP::Resource::handle_delete(Request message, std::smatch match)
+{
+	return this->fallback(message, match);
+}
+
+
+HTTP::Response HTTP::Resource::handle_put(Request message, std::smatch match)
+{
+	return this->fallback(message, match);
+}
+
+
+HTTP::Response HTTP::Resource::handle_options(Request message, std::smatch match)
+{
+	//return this->fallback(message, match);
+	Response response;
+	response.set_status_code(Status::OK);
+	return response;
+}
+
+HTTP::Response HTTP::Resource::handle_head(Request message, std::smatch match)
+{
+	return this->fallback(message, match);
+}
+
+HTTP::Response HTTP::Resource::handle_exception(Request message, std::exception & exception, std::smatch match)
+{
+	web::json::value body = request_info(message, match);
+	body[_XPLATSTR("error")] = web::json::value(utility::conversions::to_string_t(exception.what()));
+	Response response;
+	response.set_body(body);
+	response.set_status_code(Status::InternalError);
+	this->apply_headers(response);
+	return response;
+}
diff --git a/src/REST/Resource.h b/src/REST/Resource.h
new file mode 100644
index 0000000000000000000000000000000000000000..4acd248c0017341f16536af8ca62c8a12e7391a0
--- /dev/null
+++ b/src/REST/Resource.h
@@ -0,0 +1,217 @@
+#pragma once
+#include "constants.h"
+#include "Types.h"
+#define _TURN_OFF_PLATFORM_STRING
+#include "cpprest/http_listener.h"
+#include <regex>
+#include <vector>
+
+namespace HTTP {
+
+	/**
+	 * @brief HTTP Resource base class
+	 * 
+	 * Base class for any resource that is implemented using this library.
+	 * It should always be subclassed by the class implmenting the resource itself,
+	 * and the relevant functions should be overriden. All HTTP business logic internally
+	 * relies on the @em cpprestsdk library. The former internally uses widestrings, 
+	 * which leads to the need for conversion work at some places.
+	*/
+
+	class DLL Resource
+	{
+	private:
+		/**
+		 * @brief Fallback response method
+		 * 
+		 * Fallback method to answer requests for which no method has been implemented.
+		 * It will return a response containing details about the request which may be helpful
+		 * for debugging. The HTTP code is set to 501 (Not Implemented)
+		 * 
+		 * @param message[in] Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param match[in] Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		Response fallback(Request message, std::smatch match = std::smatch());
+	protected:
+		/**
+		 * @brief Allowed methods
+		 * 
+		 * List of allowed HTTP methods for this resource implemented as @c std::string
+		 * Defaults to all methods (GET, DELETE, PATCH, POST, OPTIONS, HEAD, PUT)
+		*/
+		std::vector<web::http::method> allowed_methods;
+
+		/**
+		 * @brief Content type
+		 *
+		 * Content type that is delivered by this resource. 
+		 * Defaults to @c application/json
+		*/
+		std::string content_type;
+
+		/**
+		 * @brief Allowed Origins
+		 * 
+		 * Origins that are allowed, relavant when implementing web clients and running into CORS issues.
+		 * Defaults to @c * .
+		 * 
+		 * @post If you want to be serious about security, you should limit the origins here.
+		*/
+		std::string allowed_origins;
+
+		/**
+		 * @brief Apply headers
+		 * 
+		 * Apply headers to the HTTP response object.
+		 * This function shoud be called in the handler before returning the repsonse object to the server. 
+		 * @param[in, out] response Response object to act on.
+		*/
+		virtual void apply_headers(Response& response);
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Default Constructor, sets the above mentioned defaults for allowed_methods, content_type and allowed_origins
+		*/
+		Resource();
+
+		/**
+		 * @brief Default Destructor
+		 * 
+		 * Default destructor, does no custom business logic.
+		*/
+		~Resource();
+
+		/**
+		 * @brief Request Info
+		 * 
+		 * Extracts all sort of information from the request and returns it in JSON format.
+		 * This is useful for fallback methods.
+		 * 
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * 
+		 * @return Request information in JSON format
+		*/
+		static web::json::value request_info(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP Handler
+		 * 
+		 * Handler that is called by the server on HTTP requests.
+		 * By default, this function redirects to the more specifc ones based on the respective HTTP Verb.
+		 * In case an exception occurs, it calls the exception handler.
+		 * 
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP GET Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a GET method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_get(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP PUT Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a PUT method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_put(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP POST Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a POST method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_post(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP DELETE Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a DELETE method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_delete(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP PATCH Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a PATCH method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_patch(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP OPTIONS Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on an OPTIONS method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_options(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP HEAD Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a HEAD method.
+		 * This function should be overridden by the implementation of the resource.
+		 * Per default, it resorts to the internal fallback function.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_head(Request message, std::smatch match = std::smatch());
+
+		/**
+		 * @brief HTTP Exception handler
+		 *
+		 * Handler function which can be called inside other handler functions to manage exceptions.
+		 * It returns the request's information and exeption error text while setting the HTTP response to 500 (Internal Error).
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] exception Exception to handle and to copy the error message from.
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		virtual Response handle_exception(Request message,  std::exception& exception, std::smatch match = std::smatch());
+	};
+}
+
diff --git a/src/REST/Server.cpp b/src/REST/Server.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..c494332c24636abc7ccb97a7f96192d25f585630
--- /dev/null
+++ b/src/REST/Server.cpp
@@ -0,0 +1,55 @@
+#include "Server.h"
+
+using namespace std;
+using namespace web;
+using namespace utility;
+using namespace http;
+using namespace web::http::experimental::listener;
+
+HTTP::Server::Server(std::string url) : listener(utility::conversions::to_string_t(url))
+{
+	listener.support(std::bind(&Server::handle, this, std::placeholders::_1));
+	listener.support(web::http::methods::OPTIONS, std::bind(&Server::handle, this, std::placeholders::_1));
+}
+
+
+HTTP::Server::~Server()
+{
+}
+
+void HTTP::Server::handle(http_request message)
+{
+	for (auto i = resources.begin(); i != resources.end(); i++)
+	{
+		std::smatch match;
+		std::string line = utility::conversions::to_utf8string(message.relative_uri().to_string());
+		std::regex regex(i->first);
+		if (std::regex_search(line, match, regex))
+		{
+			Response response = i->second->handle(message, match);
+			message.reply(response);
+			return;
+		}
+	}
+	Response response = default_resource.handle(message);
+	message.reply(response);
+
+	
+}
+
+void HTTP::Server::add(std::string path, std::shared_ptr<Resource> resource)
+{
+	resources.push_back(std::make_pair(path, resource));
+}
+
+void HTTP::Server::remove(std::string path)
+{
+	for (auto i = resources.begin(); i != resources.end(); i++)
+	{
+		if (i->first == path)
+		{
+			resources.erase(i);
+			break;
+		}
+	}
+}
diff --git a/src/REST/Server.h b/src/REST/Server.h
new file mode 100644
index 0000000000000000000000000000000000000000..5957e73892c649d1da675cb4bd621470349f8109
--- /dev/null
+++ b/src/REST/Server.h
@@ -0,0 +1,120 @@
+#pragma once
+#include "constants.h"
+#include "Resource.h"
+#define _TURN_OFF_PLATFORM_STRING
+#include "cpprest/http_listener.h"
+
+
+using namespace web;
+using namespace http;
+using namespace utility;
+using namespace http::experimental::listener;
+
+namespace HTTP
+{
+	/**
+	 * @brief HTPP Server
+	 * 
+	 * Abstraction layer for an HTTP Server implemented using 
+	 * the cpprestsdk.
+	 * 
+	 * @todo cpprestsdk is now in maintenance mode, if this library shall be in the very long term, a substitute may need to be found.
+	*/
+	class DLL Server
+	{
+	private:
+		/**
+		 * @brief Default resource
+		 * 
+		 * Empty default resource which acts as a fallback to server requests.
+		*/
+		Resource default_resource;
+
+		/**
+		 * @brief Resource list
+		 * 
+		 * List of resources, which is implemented as paths and pointer to the according objects.
+		 * The order of the items in the vector is important when considering matching precedence.
+		*/
+		std::vector<std::pair<std::string, std::shared_ptr<Resource> > > resources;
+
+		/**
+		 * @brief Main request handler
+		 * 
+		 * This is the main handler for incoming requests. It processes in the following order:
+		 * - Run through the registered resources until the first regular expression match is encountered
+		 * - Call the handler on the matched resources
+		 * - If no resource is matched, call the default resoruce
+		 * - Reply to the request with the obtained answer
+		 * @param message 
+		*/
+		void handle(http_request message);
+
+
+		/**
+		 * @brief Internal listener
+		 * 
+		 * Internal listener object as provided by the cpprestsdk library.
+		*/
+		http_listener listener;
+
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Constructor setting up the server, but not accepting connections upon construction.
+		 * @param [in] url Base URL, e.g. @c http://localhost:8000. Please note that the hostname part indicates the interface on which the server will listen.
+		 * 
+		 * @post When using another interface than localhost, Windows will prompt for firewall permissions. In general firewalls should be considered when working with HTTP Servers.
+		 * @post HTTPS is currently not implemented here - The current recommendation is that a reverse proxy is used for this purpose, e.g. NGINX or Microsoft IIS.
+		*/
+		Server(std::string url);
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Standard Destructor without custom logic.
+		 * The server will be closed upon destruction, so make sure that the lifecycle of the server objects is apropriately managed in your application.
+		*/
+		~Server();
+
+		/**
+		 * @brief Start listener
+		 * 
+		 * Open the server for incoming connections. This is a blocking call.
+		*/
+		inline void open() { listener.open().wait(); }
+
+		/**
+		 * @brief Stop listener
+		 *
+		 * Open the server for incoming connections. This is a blocking call.
+		*/
+		inline void close() { listener.close().wait(); }
+
+		/**
+		 * @brief Register resource
+		 * 
+		 * Register a resource by means of a matching expression and shared pointer reference.
+		 * Please note that the order of adding resources to the sever determines the precedence in matching.
+		 * The frst matching resource will handle the request. This is a common source of errors.
+		 * This function can be called dynamically at runtime, also when the server is already running.
+		 * 
+		 * @param [in] path Path of the resource written as regular expression. Use @c L"/?(.*)" to match everything under the root path. The path simulatenously acts as unique identifier.
+		 * @param [in] resource Shared pointer to the resource that shall handle this path. Please be aware of the lifecycle in case you interfere with the pointers.
+		*/
+		void add(std::string path, std::shared_ptr<Resource> resource);
+
+		/**
+		 * @brief Register resource
+		 *
+		 * Remove a previously registered resource.
+		 * This function can be called dynamically at runtime, also when the server is already running.
+		 *
+		 * @param [in] path Path of the resource written as regular expression. Use @c L"/?(.*)" which was used to add the resource and acts an unique identifier.
+		*/
+		void remove(std::string path);
+
+	};
+}
+
diff --git a/src/REST/Types.h b/src/REST/Types.h
new file mode 100644
index 0000000000000000000000000000000000000000..9f0f504ecf6371accd90273c6b5cffaaec2ae091
--- /dev/null
+++ b/src/REST/Types.h
@@ -0,0 +1,42 @@
+#pragma once
+#define _TURN_OFF_PLATFORM_STRING
+#include <cpprest/http_listener.h>
+
+namespace HTTP
+{
+	/**
+	 * @brief HTTP Request
+	 * 
+	 * Typedefinition for HTTP Requests as provided by the cpprestsdk library.
+	*/
+	typedef web::http::http_request Request;
+
+	/**
+	 * @brief HTTP Response
+	 *
+	 * Typedefinition for HTTP Responses as provided by the cpprestsdk library.
+	*/
+	typedef web::http::http_response Response;
+
+	/**
+	 * @brief HTTP Status
+	 *
+	 * Typedefinition for HTTP Status Codes as provided by the cpprestsdk library.
+	*/
+	typedef web::http::status_codes Status;
+
+	/**
+	 * @brief HTTP Methods
+	 *
+	 * Typedefinition for HTTP Methods (Enum) as provided by the cpprestsdk library.
+	*/
+	typedef web::http::methods Methods;
+
+	/**
+	 * @brief HTTP JSON
+	 *
+	 * Typedefinition for Json documents as provided by the cpprestsdk library.
+	*/
+	typedef web::json::value Json;
+
+}
diff --git a/src/REST/constants.h b/src/REST/constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..5e8863b710d40121656b36be45505ec4823e42dc
--- /dev/null
+++ b/src/REST/constants.h
@@ -0,0 +1,22 @@
+/**
+ * @brief Default definitions for project
+ *
+ * File being referenced by many others containing cross-project defaults.
+*/
+#pragma once
+#ifdef _WIN32
+#        pragma warning(disable: 4251)
+#		 pragma warning(disable: 4275)
+#    ifdef _WINDLL
+#        define DLL __declspec(dllexport)
+#    else
+#        define DLL __declspec(dllimport)
+#    endif
+#elif defined(__unix__)
+#    define DLL __attribute__((visibility("default")))
+#endif
+
+#define _WIN32_WINNT 0x600
+#ifdef _WIN32
+#include <SDKDDKVer.h>
+#endif
diff --git a/src/SIGN/Hasher.cpp b/src/SIGN/Hasher.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..e1284f03d91d63786a6535baadaf01f92e1d3bb9
--- /dev/null
+++ b/src/SIGN/Hasher.cpp
@@ -0,0 +1,58 @@
+#include "Hasher.h"
+#include <openssl/sha.h>
+#include <sstream>
+#include <iomanip>
+
+
+
+std::vector<unsigned char> SIGN::Hasher::sha256(const unsigned char* data, size_t length)
+{
+	SHA256_CTX context;
+	SHA256_Init(&context);
+	SHA256_Update(&context, data, length);
+	std::vector<unsigned char> buffer(SHA256_DIGEST_LENGTH);
+	SHA256_Final(buffer.data(), &context);
+	return buffer;
+
+}
+
+SIGN::Hasher::Hasher()
+{
+}
+
+
+SIGN::Hasher::~Hasher()
+{
+}
+
+std::vector<unsigned char> SIGN::Hasher::hash()
+{
+	return sha256(data.data(), data.size());
+}
+
+void SIGN::Hasher::reset()
+{
+	data.clear();
+}
+
+size_t SIGN::Hasher::size(void)
+{
+	return SHA256_DIGEST_LENGTH; ;
+}
+
+std::string SIGN::Hasher::print(std::vector<unsigned char> bytes, bool uppercase)
+{
+	std::ostringstream result;
+
+	for (std::string::size_type i = 0; i < bytes.size();i++)
+	{
+		result << std::hex << std::setfill('0') << std::setw(2) << (uppercase ? std::uppercase : std::nouppercase) << (int)bytes[i];
+		if (i != bytes.size() - 1)
+		{
+			result << std::setw(1) << " ";
+		}
+	}
+		
+
+	return result.str();
+}
diff --git a/src/SIGN/Hasher.h b/src/SIGN/Hasher.h
new file mode 100644
index 0000000000000000000000000000000000000000..1833bf9e23773ad01a18c132e58be1f96246ac2f
--- /dev/null
+++ b/src/SIGN/Hasher.h
@@ -0,0 +1,107 @@
+#pragma once
+#include "constants.h"
+#include <vector>
+#include <string>
+
+namespace SIGN
+{
+	/**
+	 * @brief SHA256 Hasher
+	 * 
+	 * Class which provides an convenient interface for calculating SHA256 hashes.
+	 * The underlying methods are taken from OpenSSL.
+	*/
+	class DLL Hasher
+	{
+	private:
+		/**
+		 * @brief Internal data
+		 * 
+		 * Internal data buffer based on unsigned char as byte type.
+		*/
+		std::vector<unsigned char> data;
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Default constructor, no special effort here.
+		*/
+		Hasher();
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Default destructor, no special effort here.
+		*/
+		~Hasher();
+
+		/**
+		 * @brief Add data
+		 * 
+		 * Push back data to the internal buffer which eventually gets hashed.
+		 * This function is implemented using templates, underneath it copies the raw bytes after casting.
+		 * 
+		 * @tparam T Original type of the item to add to the buffer
+		 * @param [in] x Item to add to the buffer
+		*/
+		template <typename T> void push_back(T x);
+		
+		/**
+		 * @brief Hash the data buffer
+		 * 
+		 * Calculate the SHA256 hash of the current data buffer and return it as standard vector of bytes.
+		 * Internally calls the static SHA256 function 
+		 * @post The output of this function can be used in the signer.
+		 * @return Hash result as sequenxe of bytes.
+		*/
+		std::vector<unsigned char> hash();
+
+		/**
+		 * @brief Reset data buffer
+		 * 
+		 * Clear the internal data buffer (i.e. to start with new data)
+		*/
+		void reset();
+
+		/**
+		 * @brief Digest size
+		 * 
+		 * Convenience function to get the digest size, which is often needed when handling raw bytes.
+		 * @return SHA256 digest length
+		*/
+		size_t size(void);
+
+		/**
+		 * @brief Print Bytestring
+		 * 
+		 * Convenience function to pretty-print bytestrings in HEX format.
+		 * 
+		 * @param [in] bytes Data to print
+		 * @param [in] uppercase Boolean flag whether to print uppercase
+		 * @return String with print result.		*/
+		
+		static std::string print(std::vector<unsigned char> bytes, bool uppercase = true);
+
+		/**
+		 * @brief SHA256 hash
+		 * 
+		 * Calculate the SHA256 hash of the given input data.
+		 * Be careful to no pass invalid pointers here, there is a risk of memory leaks.
+		 * 
+		 * @param data [in] Pointer to the memory block to read from 
+		 * @param length [in] Length of the data to consume
+		 * @return SHA256 hash as vector of bytes
+		*/
+		static std::vector<unsigned char> sha256(const unsigned char* data, size_t length);
+	};
+
+	template<typename T>
+	inline void Hasher::push_back(T x)
+	{
+		unsigned char* pointer = reinterpret_cast<unsigned char*>(&x);
+		for (int i = 0; i < sizeof(T); i++)
+		{
+			data.push_back(pointer[i]);
+		}
+	}
+}
diff --git a/src/SIGN/Signer.cpp b/src/SIGN/Signer.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..fe087ad611510bde4fb66fe2d1e8e35dcdbd6703
--- /dev/null
+++ b/src/SIGN/Signer.cpp
@@ -0,0 +1,64 @@
+#include "Signer.h"
+#include <fstream>
+#include <sstream>
+#include <iostream>
+#include <openssl/rsa.h>
+#include <openssl/ssl.h>
+#include <openssl/err.h>
+#include <openssl/evp.h>
+#include <openssl/opensslv.h>
+
+SIGN::Signer::Signer(std::string filename)
+{
+	_name = filename;
+	std::ifstream keyfile(filename);
+	std::stringstream buffer;
+	buffer << keyfile.rdbuf();
+	std::string key = buffer.str();
+
+	BIO* bio = BIO_new(BIO_s_mem());
+	BIO_write(bio, key.c_str(), static_cast<int>(key.length()));
+
+	private_key = PEM_read_bio_PrivateKey(bio, NULL, NULL, NULL);
+
+	BIO_free(bio);
+	context = EVP_MD_CTX_create();
+	EVP_MD_CTX_set_flags(context, EVP_MD_CTX_FLAG_ONESHOT & EVP_MD_CTX_FLAG_FINALISE & EVP_MD_CTX_FLAG_REUSE);
+	
+
+	// Make sure Signer gets a warm start
+	std::vector<unsigned char> dummy(256, ' ');
+	this->sign(dummy);
+
+}
+
+
+SIGN::Signer::~Signer()
+{
+	EVP_PKEY_free(private_key);
+}
+
+std::vector<unsigned char> SIGN::Signer::sign(std::vector<unsigned char> message)
+{
+	EVP_DigestSignInit(context, NULL, EVP_sha256(), NULL, private_key);
+	EVP_DigestSignUpdate(context, message.data(), message.size());
+
+	size_t length = 512;
+	EVP_DigestSignFinal(context, NULL, &length);
+	unsigned char* buffer = new unsigned char[length];
+	EVP_DigestSignFinal(context, buffer, &length);
+	//EVP_DigestSign(context, buffer, &length, message.data(), message.size());
+	std::vector<unsigned char> result;
+	result.reserve(length);
+	for (unsigned int i = 0; i < length; i++)
+	{
+		result.push_back(buffer[i]);
+	}
+	delete [] buffer;
+	return result;
+}
+
+std::string SIGN::Signer::openssl_version(void) const
+{
+	return OPENSSL_VERSION_TEXT;
+}
diff --git a/src/SIGN/Signer.h b/src/SIGN/Signer.h
new file mode 100644
index 0000000000000000000000000000000000000000..a84d868013e1a84a8bb248a8d20d4cd2a27d2f72
--- /dev/null
+++ b/src/SIGN/Signer.h
@@ -0,0 +1,89 @@
+#pragma once
+#include "constants.h"
+#include <vector>
+#include <string>
+
+typedef struct evp_pkey_st EVP_PKEY;
+typedef struct evp_md_ctx_st EVP_MD_CTX;
+
+
+namespace SIGN
+{
+	/**
+	 * @brief Signer
+	 * 
+	 * Class to provide a convenient interface to sign bytestrings using a private key.
+	 * Internally based on OpenSSL.
+	*/
+	class DLL Signer
+	{
+	private:
+		/**
+		 * @brief Internal Filename
+		 * 
+		 * Internal storage of the provided private key filename
+		*/
+		std::string _name;
+
+		/**
+		 * @brief Private Key
+		 * 
+		 * Internal pointer to the private key in OpenSSL format.
+		*/
+
+		EVP_PKEY* private_key;
+
+		/**
+		 * @brief OpenSSL Context
+		 * 
+		 * Internal pointer to the context object required by OpenSSL.
+		*/
+		EVP_MD_CTX* context;
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Default constructor loading the private key in PEM-format and initializing necessary methods.
+		 * @param [in] filename Path to the private key in PEM-format.
+		*/
+		Signer(std::string filename);
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Destructor, internally calls EVP_PKEY_free.
+		*/
+		~Signer();
+
+		/**
+		 * @brief Sign bytes
+		 * 
+		 * Sign the bytestring provided to this function and returns the signature bytestring.
+		 * @pre It is assumed that the actual conteht to be signed has already been hashed, e.g. using SHA256 and the Hasher class.
+		 * 
+		 * @param [in] digest Bytes to sign, typically a digest from a previous hashing function
+		 * @return Signature as vector of bytes
+		*/
+		std::vector<unsigned char> sign(std::vector<unsigned char> digest);
+		
+		/**
+		 * @brief OpenSSL Version
+		 * 
+		 * Retreive the OpenSSL Version string. This is helpful to check whether the correct OpenSSL library has been loaded as by experience on windows there are many OpenSSL versions.
+		 * Using a too old version of OpenSSL leads to very bad performance.
+		 * 
+		 * @return OpenSSL Version String
+		*/
+		std::string openssl_version(void) const;
+
+		/**
+		 * @brief Filename
+		 * 
+		 * Function to retrieve the filename of the private key.
+		 * 
+		 * @return Filename of the private key.
+		*/
+		inline std::string name() const { return _name; }
+	};
+}
+
diff --git a/src/SIGN/constants.h b/src/SIGN/constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..8db8c8140074600f89d18b363eab95dc102be0a3
--- /dev/null
+++ b/src/SIGN/constants.h
@@ -0,0 +1,22 @@
+/**
+ * @brief Default definitions for project
+ *
+ * File being referenced by many others containing cross-project defaults.
+*/
+#pragma once
+#ifdef _WIN32
+#        pragma warning(disable: 4251)
+#		 pragma warning(disable: 4275)
+#    ifdef _WINDLL
+#        define DLL __declspec(dllexport)
+#    else
+#        define DLL __declspec(dllimport)
+#    endif
+#elif defined(__unix__)
+#    define DLL __attribute__((visibility("default")))
+#endif
+
+#define _WIN32_WINNT 0x600
+#ifdef _WIN32
+#include <SDKDDKVer.h>
+#endif
\ No newline at end of file
diff --git a/src/SOIL/Container.cpp b/src/SOIL/Container.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..11655e21b24adb8290b1b9539def25f2e1549198
--- /dev/null
+++ b/src/SOIL/Container.cpp
@@ -0,0 +1 @@
+#include "Container.h"
diff --git a/src/SOIL/Container.h b/src/SOIL/Container.h
new file mode 100644
index 0000000000000000000000000000000000000000..cfe2e366d2e61a99b3d8f0dfe3cfe65b422a68fe
--- /dev/null
+++ b/src/SOIL/Container.h
@@ -0,0 +1,603 @@
+#pragma once
+#include "constants.h"
+#include "REST/Types.h"
+#include "json_helpers.h"
+#include "Range.h"
+namespace SOIL
+{
+	/**
+	 * @brief Data Container
+	 * 
+	 * Container class to manage multidmensional data of (nearly) arbitrary type.
+	 * The data can be scalar, 1D or 2D while the size of dimensions is a priori unknown.
+	 * This class then provides an abstratcion layer to the other elements of SOIL to allow for consistent implementation.
+	 * Therefor it makes heavy use of templates, which are specialized for certain cases where @c x and/or @c y are -1 and for special types.
+	 * 
+	 * @tparam T Type of the data.
+	 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+	 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+	*/
+	template <typename T, int x=-1, int y=-1>
+	class Container
+	{
+	private:
+		/**
+		 * @brief Internal data
+		 * 
+		 * internal data buffer that can hold up to two dimensions
+		*/
+		std::vector<std::vector<T>> data;
+
+		/**
+		 * @brief Null flag
+		 * 
+		 * Any data item in SOIL can be set to null to express that no data is present at all.
+		 * To realize this internally indepedent of the data type, this boolean flag is used.
+		*/
+		bool _null;
+	public:
+		/**
+		 * @brief Empty constructor
+		 * 
+		 * Constructs an empty container.
+		 * _null will be set to true as no data has been added. 
+		 * @exception std::runtime_error An exception is thrown if an invalid combination of template parameters is used.
+		*/
+		Container();
+
+		/**
+		 * @brief Data copy constructor
+		 * 
+		 * Constructor that initializes the data with the given value.
+		 * @param [in] value Data for initialization, wich must match in type and dimension
+		*/
+		Container(const std::vector<std::vector<T>>& value);
+
+		/**
+		 * @brief JSON Constructor
+		 * 
+		 * Constructor that takes dimension and value from an JSON representation adhering to the SOIL nomenclature.
+		 * @param [in] json JSON object to parse
+		*/
+		Container(HTTP::Json json);
+
+		/**
+		 * @brief Deferencing operator
+		 * 
+		 * Return a copy of the raw data, similar to other uses of * in the standard library.
+		 * @return Copy of underlying data.
+		*/
+		std::vector<std::vector<T>> operator*(void) const;
+
+		/**
+		 * @brief Is Null?
+		 * 
+		 * Function that returns true if the current data is set to null and false else.
+		 * 
+		 * @return Null flag
+		*/
+		inline bool is_null(void) const {return _null;}
+
+		/**
+		 * @brief Set null
+		 * 
+		 * Function to set the null status of the data container
+		 * @param [in] _null Boolean state flag
+		*/
+		inline void set_null(bool _null = true) { this->_null = _null; }
+
+		/**
+		 * @brief WJSON representation
+		 * 
+		 * Get a JSON object respresentation of the container's current data.
+		 * The naming @c wjson() is chosen as it is consistently used through the library when using wide-string JSON as introduced by cpprestsdk.
+		 * 
+		 * @return JSON object. 
+		*/
+		HTTP::Json wjson(void);
+
+		/**
+		 * @brief Check range
+		 * 
+		 * Check whether the data of the container lies within the specified range.
+		 * In the case of multidimensional data, this check is carried out on all elememts and only returns true if it is applicable to all.
+		 * @param [in] range Range for which to check
+		 * @return Check result as boolean
+		*/
+		bool check_range(Range<T> range) const;
+
+		/**
+		 * @brief Data Accessor
+		 * 
+		 * STL-style data accesor retrieving a a single element from multidimensional-data.
+		 * @param [in] i Index position along first dimension 
+		 * @param [in] j Index position along second dimension
+		 * @return Data value of type T
+		*/
+		T& at(int i, int j);
+
+		/**
+		 * @brief Serialize value
+		 * 
+		 * Serialize the value to a bytestring for hashing purposes
+		 * @return Bytestring of serialization 
+		*/
+		std::vector<unsigned char> serialize_value(void) const;
+
+		/**
+		 * @brief Serialize dimensions
+		 *
+		 * Serialize the dimensions to a bytestring for hashing purposes
+		 * @return Bytestring of serialization
+		*/
+		std::vector<unsigned char> serialize_dimensions(void) const;
+
+	};
+
+	/**
+	 * @brief Template specialization for 1D-Arrays/Vectors
+	 *
+	 * This is the specialization of the templated class for data that expands along one dimension.
+	 * For the documentation of methods, please refer to the unpecialized class.
+	 * @tparam T Type of the data
+	 * @tparam x First dimension of the data
+	*/
+	template <typename T, int x>
+	class Container<T, x, -1>
+	{
+	private:
+		std::vector<T> data;
+		bool _null;
+	public:
+		Container();
+		Container(const std::vector<T>& value);
+		Container(HTTP::Json json);
+		std::vector<T> operator*(void) const;
+		inline bool is_null(void) const { return _null; }
+		inline void set_null(bool _null = true) { this->_null = _null; }
+		HTTP::Json wjson(void);
+		bool check_range(Range<T> range) const;
+		T& at(int i);
+		std::vector<unsigned char> serialize_value(void) const;
+		std::vector<unsigned char> serialize_dimensions(void) const;
+
+	};
+
+	/**
+	 * @brief Template specialization for Scalars
+	 *
+	 * This is the specialization of the templated class for scalar data.
+	 * For the documentation of methods, please refer to the unpecialized class.
+	 * @tparam T Type of the data
+	*/
+	template <typename T>
+	class Container<T, -1, -1>
+	{
+	private:
+		T data;
+		bool _null;
+	public:
+		Container();
+		Container(const T& value);
+		Container(HTTP::Json json);
+		T operator*(void) const;
+		inline bool is_null(void) const { return _null; }
+		inline void set_null(bool _null = true) { this->_null = _null; }
+		HTTP::Json wjson(void);
+		bool check_range(Range<T> range) const;
+		T& at(void);
+		std::vector<unsigned char> serialize_value(void) const;
+		std::vector<unsigned char> serialize_dimensions(void) const;
+
+	};
+
+
+	template<typename T, int x, int y>
+	Container<T, x, y>::Container()
+	{
+		if ((x < -1) || (y < -1))
+		{
+			throw std::runtime_error("Invalid Dimension smaller than -1");
+		}
+		if ((x == -1) && (y > -1))
+		{
+			throw std::runtime_error("An object can only be one-dimensional in its first dimension!");
+		}
+		_null = true;
+	}
+
+	template<typename T, int x, int y>
+	Container<T, x, y>::Container(const std::vector<std::vector<T>>& value)
+	{
+		if ((x != 0) && (value.size() != x))
+		{
+			throw std::runtime_error("Invalid dimension in assignment!");
+		}
+		if (y != 0)
+		{
+			for (auto v : value)
+			{
+				if (v.size() != y)
+				{
+					throw std::runtime_error("Invalid dimension in assignment!");
+				}
+			}
+		}
+		data = value;
+		_null = false;
+	}
+
+	template<typename T, int x, int y>
+	Container<T, x, y>::Container(HTTP::Json json)
+	{
+		std::vector<std::vector<T>> value;
+		int i = 0;
+		for (auto& vx : json.as_array())
+		{
+			value.push_back(std::vector<T>());
+			i++;
+			for (auto vy : vx.as_array())
+			{
+				value.at(i).push_back(to_value<T>(vy));
+			}
+		}
+		if ((x != 0) && (value.size() != x))
+		{
+			throw std::runtime_error("Invalid dimension in assignment!");
+		}
+		if (y != 0)
+		{
+			for (auto v : value)
+			{
+				if (v.size() != y)
+				{
+					throw std::runtime_error("Invalid dimension in assignment!");
+				}
+			}
+		}
+		data = value;
+		_null = false;
+	}
+
+	template<typename T, int x, int y>
+	std::vector<std::vector<T>> Container<T, x, y>::operator*(void) const
+	{
+		return data;
+	}
+
+	template<typename T, int x, int y>
+	HTTP::Json Container<T, x, y>::wjson(void)
+	{
+		HTTP::Json json_root = HTTP::Json();
+		json_root[_XPLATSTR("dimension")] = HTTP::Json::array({ x, y });
+		if (is_null())
+		{
+			json_root[_XPLATSTR("value")] = HTTP::Json::null();
+		}
+		else
+		{
+			json_root[_XPLATSTR("value")] = HTTP::Json::array();
+			for (int i = 0; i < static_cast<int>(data.size()); i++)
+			{
+				json_root[_XPLATSTR("value")][i] = HTTP::Json::array();
+				for (int j = 0; j < static_cast<int>(data.at(i).size()); j++)
+				{
+					json_root[_XPLATSTR("value")][i][j] = to_json<T>(data.at(i).at(j));
+				}
+			}
+		}
+		return json_root;
+	}
+
+	template<typename T, int x, int y>
+	bool Container<T, x, y>::check_range(Range<T> range) const
+	{
+		if (is_null())
+		{
+			return true;
+		}
+		for (auto vx : data)
+		{
+			for (auto vy : vx)
+			{
+				if (!range.check(vy))
+				{
+					return false;
+				}
+			}
+		}
+		return true;
+	}
+
+	template<typename T, int x, int y>
+	T& Container<T, x, y>::at(int i, int j)
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		return data.at(i).at(j);
+	}
+
+	template<typename T, int x, int y>
+	std::vector<unsigned char> Container<T, x, y>::serialize_value(void) const
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		int current_x = static_cast<int>(data.size());
+		int current_y = current_x > 0 ? static_cast<int>(data.at(0).size()) : 0;
+		size_t size = current_x * current_y * sizeof(T);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+		
+		
+		for (int i = 0; i < current_x ; i++)
+		{
+			{
+				const unsigned char* pointer = reinterpret_cast<const unsigned char*>(data.at(i).data());
+				for (int j = 0; j < static_cast<int>(current_y*sizeof(T)); j++)
+				{
+					serialization.push_back(pointer[j]);
+				}
+			}
+		}
+		return serialization;
+	}
+
+	template<typename T, int x, int y>
+	std::vector<unsigned char> Container<T, x, y>::serialize_dimensions(void) const
+	{
+		size_t size = sizeof(uint8_t) + 2 * sizeof(uint32_t);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+
+		uint8_t n_dimensions = 2;
+		uint32_t current_x = data.size();
+		uint32_t current_y = current_x > 0 ? data.at(0).size : 0;
+
+		serialization.push_back(n_dimensions);
+
+		unsigned char* current_x_pointer = reinterpret_cast<unsigned char*>(&current_x);
+		unsigned char* current_y_pointer = reinterpret_cast<unsigned char*>(&current_y);
+
+		for (int i = 0; i < sizeof(uint32_t); i++)
+		{
+			serialization.push_back(current_x_pointer[i]);
+		}
+		for (int i = 0; i < sizeof(uint32_t); i++)
+		{
+			serialization.push_back(current_y_pointer[i]);
+		}
+
+		return serialization;
+	}
+
+	template<typename T, int x>
+	Container<T, x, -1>::Container()
+	{
+		if (x < -1) 
+		{
+			throw std::runtime_error("Invalid dimension in assignment!");
+		}
+		_null = true;
+	}
+
+	template<typename T, int x>
+	Container<T, x, -1>::Container(const std::vector<T>& value)
+	{
+		if ((x != 0) && (value.size() != x))
+		{
+			throw std::runtime_error("Invalid dimension in assignment!");
+		}
+		data = value;
+		_null = false;
+	}
+
+	template<typename T, int x>
+	Container<T, x, -1>::Container(HTTP::Json json)
+	{
+		std::vector<T> value;
+		for (auto& v : json.as_array())
+		{
+			value.push_back(to_value<T>(v));
+		}
+		if ((x != 0) && (value.size() != x))
+		{
+			throw std::runtime_error("Invalid dimension in assignment!");
+		}
+		data = value;
+		_null = false;
+	}
+
+
+	template<typename T, int x>
+	std::vector<T> Container<T, x, -1>::operator*(void) const
+	{
+		return data;
+	}
+
+	template<typename T, int x>
+	HTTP::Json Container<T, x, -1>::wjson(void)
+	{
+		HTTP::Json json_root = HTTP::Json();
+		json_root[_XPLATSTR("dimension")] = HTTP::Json::array();
+		json_root[_XPLATSTR("dimension")][0] = HTTP::Json::number(x);
+		if (is_null())
+		{
+			json_root[_XPLATSTR("value")] = HTTP::Json::null();
+		}
+		else
+		{
+			json_root[_XPLATSTR("value")] = HTTP::Json::array();
+			for (int i = 0; i < static_cast<int>(data.size()); i++)
+			{
+				json_root[_XPLATSTR("value")][i] = to_json<T>(data.at(i));
+			}
+		}
+		return json_root;
+	}
+
+	template<typename T, int x>
+	bool Container<T, x, -1>::check_range(Range<T> range) const
+	{
+		if (is_null())
+		{
+			return true;
+		}
+		for (auto vx : data)
+		{
+			if (!range.check(vx))
+			{
+				return false;
+			}
+		}
+		return true;
+	}
+
+	template<typename T, int x>
+	T& Container<T, x, -1>::at(int i)
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		return data.at(i);
+	}
+
+	template<typename T, int x>
+	std::vector<unsigned char> Container<T, x, -1>::serialize_value(void) const
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		int current_x = static_cast<int>(data.size());
+		size_t size = current_x * sizeof(T);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+
+		const unsigned char* pointer = reinterpret_cast<const unsigned char*>(data.data());
+		for (int i = 0; i < static_cast<int>(current_x * sizeof(T)); i++)
+		{
+			serialization.push_back(pointer[i]);
+		}
+		return serialization;
+	}
+
+	template<typename T, int x>
+	std::vector<unsigned char> Container<T, x, -1>::serialize_dimensions(void) const
+	{
+		size_t size = sizeof(uint8_t) + sizeof(uint32_t);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+
+		uint8_t n_dimensions = 1;
+		uint32_t current_x = static_cast<uint32_t>(data.size());
+
+		serialization.push_back(n_dimensions);
+		unsigned char* current_x_pointer = reinterpret_cast<unsigned char*>(&current_x);
+
+		for (int i = 0; i < sizeof(uint32_t); i++)
+		{
+			serialization.push_back(current_x_pointer[i]);
+		}
+		return serialization;
+	}
+
+	template<typename T>
+	Container<T, -1, -1>::Container()
+	{
+		_null = true;
+	}
+
+	template<typename T>
+	Container<T, -1, -1>::Container(const T& value)
+	{
+		data = value;
+		_null = false;
+	}
+
+	template<typename T>
+	Container<T, -1, -1>::Container(HTTP::Json json)
+	{
+		T value = to_value<T>(json);
+		data = value;
+		_null = false;
+	}
+
+	template<typename T>
+	T Container<T, -1, -1>::operator*(void) const
+	{
+		return data;
+	}
+
+	template<typename T>
+	HTTP::Json Container<T, -1, -1>::wjson(void)
+	{
+		HTTP::Json json_root = HTTP::Json();
+		json_root[_XPLATSTR("dimension")] = HTTP::Json::array();
+		if (is_null())
+		{
+			json_root[_XPLATSTR("value")] = HTTP::Json::null();
+		}
+		else
+		{
+			json_root[_XPLATSTR("value")] = to_json<T>(data);
+		}
+		return json_root;
+	}
+
+	template<typename T>
+	bool Container<T, -1, -1>::check_range(Range<T> range) const
+	{
+		if (is_null())
+		{
+			return true;
+		}
+		return range.check(data);
+	}
+
+	template<typename T>
+	T& Container<T, -1, -1>::at(void)
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		return data;
+	}
+
+	template<typename T>
+	std::vector<unsigned char> Container<T, -1, -1>::serialize_value(void) const
+	{
+		if (is_null())
+		{
+			throw std::logic_error("Value is NULL");
+		}
+		size_t size =  sizeof(T);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+
+		const unsigned char* pointer = reinterpret_cast<const unsigned char*>(&data);
+		for (int i = 0; i <  sizeof(T); i++)
+		{
+			serialization.push_back(pointer[i]);
+		}
+		return serialization;
+	}
+
+	template<typename T>
+	std::vector<unsigned char> Container<T, -1, -1>::serialize_dimensions(void) const
+	{
+		size_t size = sizeof(uint8_t);
+		std::vector<unsigned char> serialization;
+		serialization.reserve(size);
+
+		uint8_t n_dimensions = 0;
+
+		serialization.push_back(n_dimensions);
+		return serialization;
+	}
+}
\ No newline at end of file
diff --git a/src/SOIL/Element.cpp b/src/SOIL/Element.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..c3f46cbe228ea2d7e013b8dc92282621b17c66b6
--- /dev/null
+++ b/src/SOIL/Element.cpp
@@ -0,0 +1,184 @@
+#include "Element.h"
+#include "json_helpers.h"
+
+
+SOIL::Element::Element(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology) : parent(parent), uuid(uuid), name(name), description(description), ontology(ontology)
+{
+	if (parent.use_count() > 0)
+	{
+		parent->add(uuid, this);
+		self = (*parent)[uuid];
+	}
+	else
+	{
+		self.reset(this, &SOIL::null_deleter);
+	}
+}
+
+
+SOIL::Element::~Element()
+{
+	children.clear();
+}
+
+#pragma warning( push )
+#pragma warning( disable : 4717)
+std::vector<std::string> SOIL::Element::fqid(void)
+{
+	std::vector<std::string> parent_fqid;
+	if (parent.use_count() > 0)
+	{
+		parent_fqid = parent->fqid();
+	}
+	parent_fqid.push_back(uuid);
+	return parent_fqid;
+}
+#pragma warning(pop)
+
+std::shared_ptr<SOIL::Element> SOIL::Element::operator[](std::string fqid)
+{
+	if (fqid == "" || fqid == "/")
+	{
+		return self;
+	}
+	size_t path_length = fqid.size();
+	if (fqid[0] == '/')
+	{
+		fqid = fqid.substr(1, path_length-1);
+		path_length--;
+	}
+	size_t first_delimiter = fqid.find("/");
+	if (first_delimiter == std::string::npos)
+	{
+		if (children.count(fqid) == 0)
+		{
+			if (this->uuid == fqid)
+			{
+				return self;
+			}
+			throw std::runtime_error(fqid + " does not match any children of " + uuid);
+		}
+		return children[fqid];
+	}
+	else
+	{
+		std::string dock_off_path = fqid.substr(0, first_delimiter);
+		std::string continue_path = fqid.substr(first_delimiter + 1, path_length - first_delimiter - 1);
+		if (children.count(dock_off_path) == 0)
+		{
+			if (this->uuid == dock_off_path)
+			{
+				return (*self)[continue_path];
+			}
+			throw std::runtime_error(dock_off_path + " does not match any children of " + uuid);
+		}
+		return (*children[dock_off_path])[continue_path];
+	}
+}
+
+std::shared_ptr<SOIL::Element> SOIL::Element::add(std::string uuid, std::shared_ptr<Element> child)
+{
+	bool exists = children.count(uuid) > 0;
+	children[uuid] = child;
+	return child;
+}
+
+std::shared_ptr<SOIL::Element>  SOIL::Element::add(std::string uuid, Element * child)
+{
+	return add(uuid, std::shared_ptr<Element>(child));
+}
+
+bool SOIL::Element::insert(std::string uuid, std::shared_ptr<Element> child)
+{
+	bool exists = children.count(uuid) > 0;
+	this->add(uuid, child);
+	return exists;
+}
+
+bool SOIL::Element::insert(std::string uuid, Element* child)
+{
+	return insert(uuid, std::shared_ptr<Element>(child));
+}
+
+bool SOIL::Element::remove(std::string uuid)
+{
+	bool exists = children.count(uuid) > 0;
+	children.erase(uuid);
+	return exists;
+}
+
+bool SOIL::Element::is_object(void) const
+{
+	return (uuid.substr(0, 3) == "OBJ");
+}
+
+bool SOIL::Element::is_variable(void) const
+{
+	return (uuid.substr(0, 3) == "VAR");
+}
+
+bool SOIL::Element::is_function(void) const
+{
+	return (uuid.substr(0, 3) == "FUN");
+}
+
+bool SOIL::Element::is_parameter(void) const
+{
+	return (uuid.substr(0, 3) == "PAR");
+}
+
+HTTP::Json SOIL::Element::wjson(void)
+{
+	HTTP::Json json_root;
+	json_root[_XPLATSTR("uuid")] = SOIL::to_json(uuid);
+	json_root[_XPLATSTR("name")] = SOIL::to_json(name);
+	json_root[_XPLATSTR("description")] = SOIL::to_json(description);
+	if (ontology == "")
+	{
+		json_root[_XPLATSTR("ontology")] = HTTP::Json::null();
+	}
+	else
+	{
+		json_root[_XPLATSTR("ontology")] = SOIL::to_json(ontology);
+	}
+
+	return json_root;
+}
+
+std::string SOIL::Element::json(void)
+{
+	HTTP::Json content = wjson();
+	return utility::conversions::to_utf8string(content.serialize());
+}
+
+
+HTTP::Response SOIL::Element::handle(HTTP::Request request, std::smatch match)
+{
+	try
+	{
+		std::string path = "";
+		if (match.size() > 0)
+		{
+			path = match.str(0);//utility::conversions::to_utf8string(match.str(0));
+		}
+
+		size_t query_delimiter = path.find("?");
+		std::shared_ptr<Element> resource = (*self)[path.substr(0, query_delimiter)];
+
+		if (resource == self)
+		{
+			return Resource::handle(request, match);
+		}
+		else
+		{
+			return resource->Resource::handle(request, match);
+		}
+
+	}
+	catch (std::exception& exception)
+	{
+		return Resource::handle_exception(request, exception, match);
+
+	}
+	
+}
diff --git a/src/SOIL/Element.h b/src/SOIL/Element.h
new file mode 100644
index 0000000000000000000000000000000000000000..413d79ba0af55fa9a532549e55b1744abe6cf576
--- /dev/null
+++ b/src/SOIL/Element.h
@@ -0,0 +1,281 @@
+#pragma once
+#include "constants.h"
+#include "REST/constants.h"
+#include "REST/Resource.h"
+#include <memory>
+#include <vector>
+#include <map>
+#include <mutex>
+#include <regex>
+#include <string>
+
+namespace SOIL
+{
+	/**
+	 * @brief SOIL Base Element
+	 * 
+	 * Element is the base class of Object, Function, Parameter and Variable in SOIL.
+	 * It is the first class that inherits from HTTP::Resource.
+	 * It contains the main implementation of the business logic for building the Element tree,
+	 * i.e. managing child items and resolving absolute and relative parths. It also provides common
+	 * base class which can be used for generic pointer in C++.
+	*/
+	class DLL Element : public HTTP::Resource
+	{
+	private:
+	public:
+		/**
+		 * @brief Children Map
+		 * 
+		 * Map of child elements, which are referenced by means of shared pointers and identified by their local UUID in string form.
+		*/
+		std::map<std::string, std::shared_ptr<Element> > children;
+
+		/**
+		 * @brief Parent Pointer
+		 * 
+		 * Shared pointer reference to the parent element.
+		*/
+		std::shared_ptr<Element> parent;
+
+		/**
+		 * @brief Self Pointer
+		 * 
+		 * Shared pointer reference to the element itself.
+		*/
+		std::shared_ptr<Element> self;
+
+		/**
+		 * @brief Local UUID
+		 * 
+		 * Locally unique identifier of the object, which must start with OBJ-, FUN-, PAR-, or VAR- depending on the type.
+		*/
+		std::string uuid;
+
+		/**
+		 * @brief Name
+		 * 
+		 * Human-readable name of the element in string format.
+		*/
+		std::string name;
+
+		/**
+		 * @brief Description
+		 * 
+		 * Human-readable description of the element in string format. 
+		*/
+		std::string description;
+
+		/**
+		 * @brief Ontology identifier
+		 * 
+		 * Ontology identifier, can be set to null if no ontology is followed
+		 * 
+		 * @pre Referencing to an ontology prerequisites that an ontology in SOIL format has been declared elsewhere.
+		*/
+		std::string ontology;
+
+		/**
+		 * @brief Element Mutex
+		 * 
+		 * Recursive Mutex to provide thread safe access to SOIL elements.
+		*/
+		std::recursive_mutex mutex;
+
+		/**
+		 * @brief Constructor
+		 * 
+		 * Default constructor for SOIL elements, to be called from derived classes.
+		 * @param [in] parent Shared pointer to parent object. Can be set to NULL for the creation of a root object
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		*/
+
+		Element(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology ="");
+		
+		/**
+		 * @brief Destructor
+		 * 
+		 * Destructor for Element, which is declared virtual such that Element pointers can be used to delete instances of derived types.
+		 * When an Element is deleted in SOIL, all references to the child objects are cleared.
+		 * @post If the parent element was the last instance to contain shared pointers to the child elements, their lifecycle will end with this operation.
+		*/
+		virtual ~Element();
+
+		/**
+		 * @brief FQID
+		 * 
+		 * Constructs the FQID of the element by concatenating the UUIDs of the parent elements
+		 * @return FQID string separated by /
+		*/
+		std::vector<std::string> fqid(void);
+
+		/**
+		 * @brief Access Operator
+		 * 
+		 * Returns the child matching the relative FQID of the element.
+		 * If the empty string is passed, the element itself is resturned.
+		 * 
+		 * @exception std::runtime_error If no matching child is found, a runtime_error is thrown.
+		 *
+		 * @param [in] fqid Relative FQID of the element to retrieve
+		 * @return Share pointer to the requested element
+		*/
+		std::shared_ptr<Element> operator[] (std::string fqid);
+
+		/**
+		 * @brief Add Child Element
+		 * 
+		 * Inserts a child to this element. Children are always managed as shared pointers, i.e. no object is copied.
+		 * @param [in] uuid UUID to assign to the child, which also acts as internal identifier 
+		 * @param [in] child Shared pointer to the element
+		 * @return Shared pointer to child element
+		*/
+		std::shared_ptr<Element>  add(std::string uuid, std::shared_ptr<Element> child);
+		
+		/**
+		 * @brief Add Child Element
+		 *
+		 * Inserts a child to this element. Children are always managed as shared pointers, i.e. no object is copied.
+		 * This version takes a raw pointer (as e.g. returned by @c new) and internally makes a shared pointer.
+		 * @param [in] uuid UUID to assign to the child, which also acts as internal identifier
+		 * @param [in] child Pointer to the element
+		 * @return Shared pointer to child element
+		*/
+		std::shared_ptr<Element>  add(std::string uuid, Element* child);
+
+		/**
+		 * @brief Add Child Element
+		 *
+		 * Alias to add provide compatibilty to prior versions.
+		 * @todo Remove in future versions.
+		 * @param [in] uuid UUID to assign to the child, which also acts as internal identifier
+		 * @param [in] child Shared pointer to the element
+		 * @return True if the element previously already existed.
+		*/
+		bool  insert(std::string uuid, std::shared_ptr<Element> child);
+
+		/**
+		 * @brief Add Child Element
+		 *
+		 * Alias to add provide compatibilty to prior versions.
+		 * @todo Remove in future versions.
+		 * This version takes a raw pointer (as e.g. returned by @c new) and internally makes a shared pointer.
+		 * @param [in] uuid UUID to assign to the child, which also acts as internal identifier
+		 * @param [in] child Pointer to the element
+		 * @return True if the element previously already existed.
+		*/
+		bool  insert(std::string uuid, Element* child);
+
+		/**
+		 * @brief Remove Child element
+		 * 
+		 * Removes an element from the children of this element.
+		 * If the internal shared pointer is the last reference to this element, it will go out of scope.
+		 * @param [in] uuid UUID to identify the element to remove
+		 * @return True if the element existed prior to deletion.
+		*/
+		bool remove(std::string uuid);
+
+		/**
+		 * @brief Get dynamically casted pointer
+		 * 
+		 * Dynamically casts the stored element reference to a given type.
+		 * This useful for casting pointers to derived classes of which the type is known.
+		 * 
+		 * @tparam T Dervied type to cast to.
+		 * @return Raw pointer
+		*/
+		template<typename T> T* cast(void);
+
+		/**
+		 * @brief Is Object?
+		 * 
+		 * Determines whether the element actually is an object.
+		 * Internally, the prefix OBJ- of the UUID is checked for this purpose.
+		 * This function is typically used before dynamic casts.
+		 * @return Boolean response whether the element is an object.
+		*/
+		bool is_object(void) const;
+
+		/**
+		 * @brief Is Variable?
+		 *
+		 * Determines whether the element actually is a variable.
+		 * Internally, the prefix VAR- of the UUID is checked for this purpose.
+		 * This function is typically used before dynamic casts.
+		 * @return Boolean response whether the element is at.
+		*/
+		bool is_variable(void) const;
+
+		/**
+		 * @brief Is Function?
+		 *
+		 * Determines whether the element actually is a function.
+		 * Internally, the prefix FUN- of the UUID is checked for this purpose.
+		 * This function is typically used before dynamic casts.
+		 * @return Boolean response whether the element is a function.
+		*/
+		bool is_function(void) const;
+
+		/**
+		 * @brief Is Parameter?
+		 *
+		 * Determines whether the element actually is a parameter.
+		 * Internally, the prefix PAR- of the UUID is checked for this purpose.
+		 * This function is typically used before dynamic casts.
+		 * @return Boolean response whether the element is a parameter.
+		*/
+		bool is_parameter(void) const;
+
+		/**
+		 * @brief HTTP JSON
+		 * 
+		 * Get a HTTP JSON object corresponding to the current state of the element.
+		 * This function is virtual as normally it should be specialized by Object, Variable, Parameter and Function.
+		 * @return JSON object
+		*/
+		virtual HTTP::Json wjson(void);
+
+		/**
+		 * @brief JSON string
+		 *
+		 * Get a JSON string corresponding to the current state of the element.
+		 * This function internally useses wjson() such that there is no need to override both methods in derived classes.
+		 * @return JSON string
+		*/
+		virtual std::string json(void);
+
+		/**
+		 * @brief HTTP Handler
+		 * 
+		 * Handles an incoming HTTP request as resource. It determines the correct child item (or the itdem itself) and than calls the handler
+		 * of the HTTP::Resource base clase. The arguments are directly passed on to the latter.
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle(HTTP::Request request, std::smatch match = std::smatch());
+
+	};
+	template<typename T>
+	T* Element::cast(void)
+	{
+		return dynamic_cast<T*>(self.get());
+	}
+
+	/**
+	 * @brief Null deleter
+	 * 
+	 * A function that essentially does nothing which is required as argument in the constructor of Element
+	 * to avoid that delete is implicitly called a second time in the destructor when the member shared pointer to the
+	 * object itself is deleted and the internal shared pointer is the last reference to the object. This situation occurs for
+	 * root objects.
+	 * @param  [in] ptr Pointer on which to do nothing
+	*/
+	inline void null_deleter(SOIL::Element* ptr) {};
+
+}
+
diff --git a/src/SOIL/Enum.cpp b/src/SOIL/Enum.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..bb5f417e5c8a11882bc8807758961007341ca305
--- /dev/null
+++ b/src/SOIL/Enum.cpp
@@ -0,0 +1,70 @@
+#include "Enum.h"
+
+
+SOIL::Enum::Enum()
+{
+}
+
+SOIL::Enum::Enum(std::string value) : _selected(value)
+{
+}
+
+SOIL::Enum::Enum(std::string value, std::vector<std::string> choices): _selected(value), _choices(choices)
+{
+}
+
+
+SOIL::Enum::~Enum()
+{
+}
+
+std::string SOIL::Enum::selected(void) const
+{
+	return _selected;
+}
+
+std::vector<std::string> SOIL::Enum::choices(void)
+{
+	return _choices;
+}
+
+int SOIL::Enum::index() const
+{
+	for (int i = 0; i < static_cast<int>(_choices.size()); i++)
+	{
+		if (_selected == _choices.at(i))
+		{
+			return i;
+		}
+	}
+	throw std::logic_error("Value of ENUM not in choices!");
+}
+
+int SOIL::Enum::index(std::string value) const
+{
+	for (int i = 0; i < static_cast<int>(_choices.size()); i++)
+	{
+		if (value == _choices.at(i))
+		{
+			return i;
+		}
+	}
+	throw std::logic_error("Value of ENUM not in choices!");
+}
+
+void SOIL::Enum::set(int value)
+{
+	if (value < static_cast<int>(_choices.size()))
+	{
+		_selected = _choices.at(value);
+	}
+	else
+	{
+		throw std::logic_error("Index not in ENUM choices!");
+	}
+}
+
+void SOIL::Enum::set(std::string value)
+{
+	_selected = value;
+}
diff --git a/src/SOIL/Enum.h b/src/SOIL/Enum.h
new file mode 100644
index 0000000000000000000000000000000000000000..ebb58f70d536fe10eb4e4d6b72bd4926f257bbe2
--- /dev/null
+++ b/src/SOIL/Enum.h
@@ -0,0 +1,126 @@
+#pragma once
+#include "constants.h"
+#include <string>
+#include <vector>
+#include <stdexcept>
+
+namespace SOIL
+{
+	/**
+	 * @brief SOIL Enum Datatype
+	 *
+	 * C++ class to represent the SOIL Enum datatype.
+	 * Internally it is based on strings.
+	*/
+	class DLL Enum
+	{
+	private:
+		/**
+		 * @brief Selected value
+		 *
+		 * Currently selected value as string.
+		*/
+		std::string _selected;
+
+		/**
+		 * @brief Enum Choices
+		 *
+		 * Vector of strings representing the different values the enumeration can take and is constrained to.
+		*/
+		std::vector<std::string> _choices;
+	public:
+		/**
+		 * @brief Constructor
+		 *
+		 * Standard constructor which leaves everything uninitialized.
+		*/
+		Enum();
+
+		/**
+		 * @brief Constructor intialized with value
+		 *
+		 * Constructor that initializes the enumeration with a selected value.
+		 *
+		 * @todo Check whether this constructor is still meaningful in future releases.
+		 * Usage is not recommended.
+		 * @param [in] value Value for initialization
+		*/
+		Enum(std::string value);
+
+		/**
+		 * @brief Initializing Container
+		 *
+		 * Constructor that initializes the enumeration with choices and a value.
+		 *
+		 * @param [in] value Value for initialization
+		 * @param [in] choices Applicable set of choices for the enumeration
+		*/
+		Enum(std::string value, std::vector<std::string> choices);
+
+		/**
+		 * @brief Destructor
+		 *
+		 * Standard destructor without special efforts.
+		*/
+		~Enum();
+
+		/**
+		 * @brief Get selected value
+		 *
+		 * Get the value that the enum currently holds as selected.
+		 * @return Current value
+		*/
+		std::string selected(void) const;
+
+		/**
+		 * @brief Get Choices
+		 *
+		 * Get the choices that are available for this enumeration.
+		 * @return Available choices as vector of strings
+		*/
+		std::vector<std::string> choices(void);
+
+		/**
+		 * @brief Get index of selected element
+		 *
+		 * Traversed the vector of choices and return the index of the current element.
+		 * @return Index of the selected element
+		*/
+		int index() const;
+
+		/**
+		 * @brief Determine index of value
+		 *
+		 * Converts a string value to its integer value.
+		 * This function is useful when interacting with C++ ENUMs consisting of integers.
+		 *
+		 * @exception std::logic_error If the value is not found, an exception is thrown.
+		 *
+		 * @param [in] value Value to search
+		 * @return Index of the searched value
+		*/
+		int index(std::string value) const;
+
+		/**
+		 * @brief Set selected item (index)
+		 *
+		 * Set the currently selected item the enumeration holds based on its integer index.
+		 *
+		 * @exception std::logic_error If the index exceeds the number of choices, an exception is thrown.
+		 *
+		 * @param [in] value Index of the value to set
+		*/
+		void set(int value);
+
+		/**
+		 * @brief Set selected item (value)
+		 *
+		 * Set the currently selected item the enumeration holds based on a string value.
+		 *
+		 * @exception std::logic_error If the value is not among the choices, an exception is thrown.
+		 *
+		 * @param [in] value Value to set
+		*/
+		void set(std::string value);
+	};
+}
\ No newline at end of file
diff --git a/src/SOIL/Figure.cpp b/src/SOIL/Figure.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..2de7076b2cf186fbe41164c9bd904ae0ecfa481a
--- /dev/null
+++ b/src/SOIL/Figure.cpp
@@ -0,0 +1,46 @@
+#include "Figure.h"
+
+template<>
+HTTP::Json SOIL::datatype<double>(void) 
+{
+	return HTTP::Json::string(_XPLATSTR("double"));
+}
+
+template<>
+HTTP::Json SOIL::datatype<bool>(void)
+{
+	return HTTP::Json::string(_XPLATSTR("bool"));
+}
+
+
+template<>
+HTTP::Json SOIL::datatype<std::string>(void)
+{
+	return HTTP::Json::string(_XPLATSTR("string"));
+}
+
+
+template<>
+HTTP::Json SOIL::datatype<int64_t>(void)
+{
+	return HTTP::Json::string(_XPLATSTR("int"));
+}
+
+
+template<>
+HTTP::Json SOIL::datatype<int>(void)
+{
+	return HTTP::Json::string(_XPLATSTR("int"));
+}
+
+template<>
+HTTP::Json SOIL::datatype<SOIL::TIME>(void)
+{
+	return HTTP::Json::string(_XPLATSTR("time"));
+}
+
+template<>
+HTTP::Json SOIL::datatype<SOIL::ENUM>(void)
+{
+	return HTTP::Json::string(_XPLATSTR("enum"));
+}
\ No newline at end of file
diff --git a/src/SOIL/Figure.h b/src/SOIL/Figure.h
new file mode 100644
index 0000000000000000000000000000000000000000..857784645af9eb428d2c34fa49a7e47a4155580d
--- /dev/null
+++ b/src/SOIL/Figure.h
@@ -0,0 +1,322 @@
+#pragma once
+#include "constants.h"
+#include "Types.h"
+#include "Element.h"
+#include "Container.h"
+#include "Range.h"
+namespace SOIL
+{
+	/**
+	 * @brief HTTP JSON datatype
+	 * 
+	 * Returns the datatype part of the SOIL-conformant JSON-representation of the figure, expressed as string.
+	 * This function is declared in its specializations as it needs to be implemented expclicitiy for each datatype.
+	 * 
+	 * @tparam T Dataype under consideration
+	 * @return HTTP JSON representaion as HTTP::Json::string
+	*/
+	template <typename T>
+	HTTP::Json datatype(void);
+	template<>
+	DLL HTTP::Json datatype<double>(void);
+	template<>
+	DLL HTTP::Json datatype<bool>(void);
+	template<>
+	DLL HTTP::Json datatype<std::string>(void);
+	template<>
+	DLL HTTP::Json datatype<int64_t>(void);
+	template<>
+	DLL HTTP::Json datatype<int>(void);
+	template<>
+	DLL HTTP::Json datatype<SOIL::TIME>(void);
+	template<>
+	DLL HTTP::Json datatype<SOIL::ENUM>(void);
+
+
+	/**
+	 * @brief Intermediate class for Variable and Parameter that derives from Element
+	 * 
+	 * Intermediate class for Variable and Parameter that derives from Element as both share many properties.
+	 * This class should not be instantianted directly and is abstract.
+	 * The underlying data management completely relies on the templated Container class, henace many templates are passed on.
+	 * 
+	 * @tparam T Type of the data.
+	 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+	 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+	*/
+	template <typename T, int x=-1, int y=-1>
+	class Figure : public Element
+	{
+	protected:
+		/**
+		 * @brief Data Timestamp
+		 * 
+		 * Timestamp of the data, i.e. the time which should be considered as physically related to the value.
+		*/
+		TIME time;
+
+		/**
+		 * @brief Unit
+		 * 
+		 * Unit of the stored value, expressed as UNECE code (e.g. MTR).
+		*/
+		std::string unit;
+
+		/**
+		 * @brief Value
+		 * 
+		 * Actual value that is currently held by the figure, which is represented as conatiner.
+		*/
+		Container<T, x, y>  value;
+
+		/**
+		 * @brief Range
+		 * 
+		 * Allowed range for the figure, expressed using the therefore designed Range class.
+		*/
+		Range<T> range;
+
+		/**
+		 * @brief Read callback
+		 * 
+		 * Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage.
+		 * Declared virtual to make sure the derived method is called first.
+		*/
+		virtual void read(void) = 0;
+
+		/**
+		 * @brief Write callback
+		 *
+		 * Write callback that can be implemented by deriving classes to perform custom build logic on write actions, e.g.set a value to an external system.
+		 * Declared virtual to make sure the derived method is called first.
+		*/
+		virtual void write(void) = 0;
+
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Standard constructor intialiazing the values which should be called from the constructor of deriving classes.
+		 * @param [in] parent Shared pointer to parent object.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * @param range [in] Allowed range for the variable values, defaults to an empty object, i.e. allowing all values
+		 * @param time [in] Timestamp for the initial value, defaults to unset
+		*/
+		Figure(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology = "",  Range<T> range = Range<T>(), TIME time = TIME());
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Default destructor, without custom effort.
+		*/
+		~Figure();
+
+		/**
+		 * @brief Assignment operator
+		 * 
+		 * Assigns the value provided as container on the right hand side to the figure.
+		 * 
+		 * @exception std::range_error Throws an exception if the value to assign is outside the allowed range.
+		 * 
+		 * @param [in] value Value to assign
+		 * @return Reference to the current Figure
+		*/
+		Figure<T, x, y>& operator =(const Container<T, x, y>& value);
+
+
+		/**
+		 * @brief Access Operator
+		 * 
+		 * Access Operator returning the container of the value. 
+		 * @return Value container.
+		*/
+		Container<T, x, y>& operator* (void);
+
+		/**
+		 * @brief Check range
+		 * 
+		 * Check if value expressed as container object matches the range specified for this Figure.
+		 * This may be useful prior to assignment to avoid exceptions.
+		 * @param [in] value Value to check
+		 * @return True if the value(s) is (are) in range, false else.
+		*/
+		bool check_range(const Container<T, x, y>& value) const;
+
+		/**
+		 * @brief Set Range
+		 * 
+		 * Set the range property of this figure.
+		 * @param [in] range Range to set 
+		*/
+		void set_range(Range<T> range);
+
+		/**
+		 * @brief Set Time
+		 *
+		 * Set the time property of this figure.
+		 * @param [in] time Time to set
+		*/
+		void set_time(TIME time);
+
+		/**
+		 * @brief Set Value
+		 * 
+		 * Assigns the value provided as container. This is currently equivalent to the assignment operator.
+		 *
+		 * @exception std::range_error Throws an exception if the value to assign is outside the allowed range.
+		 *
+		 * @param [in] value Value to assign
+		 * 
+		*/
+		void set_value(const Container<T, x, y>& value);
+
+
+		/**
+		 * @brief HTTP JSON
+		 *
+		 * Get a HTTP JSON object corresponding to the current state of the Figure.
+		 * This function provides a partial representation of the SOIL-conformant JSON representation of Variable and Parameter and
+		 * may be called from their @c wjson() methods.
+		 * @return JSON object
+		*/
+		HTTP::Json wjson(void) override;
+
+		/**
+		 * @brief Cast to container
+		 * 
+		 * Takes a value and returns the corresponding container
+		 * @param [in] value Value to containerize 
+		 * @return Container version
+		 * 
+		 * @todo This function seems error prone in the multidimensional case.
+		*/
+
+		Container<T, x, y> cast(T value);
+
+		/**
+		 * @brief Update
+		 * 
+		 * Update the figure setting a new value and timestamp.
+		 * This is common scenario when dealing with measurement data.
+		 * 
+		 * @param [in] value Value to set
+		 * @param [in] time Timestamp to assign
+		*/
+		virtual void update(const Container<T, x, y>& value, TIME time);
+	};
+
+
+}
+
+
+
+template<typename T, int x, int y>
+SOIL::Figure<T, x, y>::Figure(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology, Range<T> range, SOIL::TIME time) : SOIL::Element(parent, uuid, name, description, ontology), unit(unit), range(range), time(time)
+{
+}
+
+template<typename T, int x, int y>
+SOIL::Figure<T,x,y>::~Figure()
+{
+}
+
+
+template<typename T, int x, int y>
+HTTP::Json SOIL::Figure<T,x,y>::wjson(void)
+{
+
+	std::unique_lock<std::recursive_mutex> lock(mutex);
+	HTTP::Json json_root = SOIL::Element::wjson();
+	json_root[_XPLATSTR("timestamp"] = (time.is_null() || time.rfc3339() == "")) ? HTTP::Json::null() : HTTP::Json::string(utility::conversions::to_string_t(time.rfc3339()));
+	json_root[_XPLATSTR("range")] = range.wjson();
+	json_root[_XPLATSTR("unit")] = (unit.length() == 0) ? HTTP::Json::null() : SOIL::to_json(unit);
+	
+	HTTP::Json value_json = value.wjson();
+	json_root[_XPLATSTR("value")] = value_json[_XPLATSTR("value")];
+	json_root[_XPLATSTR("dimension")] = value_json[_XPLATSTR("dimension")];
+	json_root[_XPLATSTR("datatype")] = datatype<T>();
+
+
+	return json_root;
+}
+
+template<typename T, int x, int y>
+SOIL::Container<T, x, y> SOIL::Figure<T, x, y>::cast(T value)
+{
+	return Container<T, x, y>(value);
+}
+
+template<typename T, int x, int y>
+void SOIL::Figure<T,x,y>::read(void)
+{
+}
+
+template<typename T, int x, int y>
+SOIL::Figure<T, x, y>& SOIL::Figure<T,x,y>::operator=(const Container<T, x, y>& value)
+{
+	if (!check_range(value))
+	{
+		throw std::range_error("Value is out of range specified for Figure " + uuid);
+	}
+	this->value = value;
+	return *this;
+}
+
+
+template<typename T, int x, int y>
+SOIL::Container<T, x, y>& SOIL::Figure<T,x,y>::operator*(void)
+{
+	this->read();
+	return value;
+}
+
+template<typename T, int x, int y>
+bool SOIL::Figure<T, x, y>::check_range(const Container<T, x, y>& value) const
+{
+	return value.check_range(range);
+}
+
+template<typename T, int x, int y>
+void SOIL::Figure<T,x,y>::set_range(Range<T> range)
+{
+	this->range = range;
+}
+
+
+template<typename T, int x, int y>
+void SOIL::Figure<T,x,y>::set_time(TIME time)
+{
+	this->time = time;
+}
+
+
+template<typename T, int x, int y>
+void SOIL::Figure<T, x, y>::set_value(const Container<T, x, y>& value)
+{
+	if (!check_range(value))
+	{
+		throw std::range_error("Value is out of range specified for Figure " + uuid);
+	}
+	*this = value;
+}
+
+template<typename T, int x, int y>
+void SOIL::Figure<T,x,y>::update(const Container<T,x,y>& value, TIME time)
+{
+	std::unique_lock<std::recursive_mutex> lock(mutex);
+	if (!check_range(value))
+	{
+		throw std::range_error("Value is out of range specified for Figure " + uuid);
+	}
+	*this = value;
+	this->time = time;
+}
+
+
+
+
+
diff --git a/src/SOIL/Function.cpp b/src/SOIL/Function.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..14098fc396278fe337fc35b2dc4c4c950ad725de
--- /dev/null
+++ b/src/SOIL/Function.cpp
@@ -0,0 +1,98 @@
+#include "Function.h"
+
+
+SOIL::Function::Function(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology) : Element(parent, uuid, name, description, ontology)
+{
+	if (uuid.substr(0, 3) != "FUN")
+	{
+		throw std::logic_error("UUIDs for functions must start with FUN!");
+	}
+
+	allowed_methods = { HTTP::Methods::GET, HTTP::Methods::POST, HTTP::Methods::OPTIONS, HTTP::Methods::HEAD };
+}
+
+SOIL::Function::~Function()
+{
+}
+
+std::shared_ptr<SOIL::Function> SOIL::Function::create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology)
+{
+	Function* function = new Function(parent, uuid, name, description, ontology);
+	return function->ptr();
+}
+
+HTTP::Json SOIL::Function::wjson(void)
+{
+	HTTP::Json json_root = Element::wjson();
+	json_root[_XPLATSTR("arguments")] = HTTP::Json::array();
+	int i = 0;
+	for (auto& a : arguments)
+	{
+		json_root[_XPLATSTR("arguments")][i] = a.second->wjson();
+		i++;
+	}
+
+	json_root[_XPLATSTR("returns")] = HTTP::Json::array();
+	i = 0;
+	for (auto& r : returns)
+	{
+		json_root[_XPLATSTR("returns")][i] = r.second->wjson();
+		i++;
+	}
+	json_root[_XPLATSTR("errors")] = HTTP::Json::array();
+	return json_root;
+}
+
+HTTP::Response SOIL::Function::handle_get(HTTP::Request request, std::smatch match)
+{
+	HTTP::Response response;
+	response.set_body(this->wjson());
+	response.set_status_code(HTTP::Status::OK);
+	return response;
+}
+
+HTTP::Response SOIL::Function::handle_post(HTTP::Request request, std::smatch match)
+{
+	auto task = request.extract_json();
+	task.wait();
+
+	std::map<std::string, HTTP::Json> arguments;
+	HTTP::Json body = task.get();
+	
+	auto json_arguments = body[_XPLATSTR("arguments")].as_array();
+
+	for (auto i = json_arguments.begin(); i != json_arguments.end(); i++)
+	{
+		auto json_argument = i->as_object();
+		std::string uuid = SOIL::to_value<std::string>(json_argument[_XPLATSTR("uuid")]);
+		HTTP::Json value = json_argument[_XPLATSTR("value")];
+
+		arguments[uuid] = value;
+	}
+
+	std::map<std::string, HTTP::Json> returns = this->invoke(arguments);
+
+	std::vector<web::json::value> json_returns;
+
+	for (auto i = returns.begin(); i != returns.end(); i++)
+	{
+		web::json::value local;
+		local[_XPLATSTR("uuid")] = SOIL::to_json<std::string>(i->first);
+		local[_XPLATSTR("value")] = i ->second;
+		json_returns.push_back(local);
+	}
+
+	HTTP::Json json;
+	json[_XPLATSTR("returns")] =HTTP::Json::array(json_returns);
+
+	HTTP::Response response;
+	response.set_body(json);
+	response.set_status_code(HTTP::Status::OK);
+
+	return response;
+}
+
+std::map<std::string, HTTP::Json> SOIL::Function::invoke(std::map<std::string, HTTP::Json> arguments)
+{
+	throw std::logic_error("The method has not been implemented!");
+}
diff --git a/src/SOIL/Function.h b/src/SOIL/Function.h
new file mode 100644
index 0000000000000000000000000000000000000000..7a3ff1165d8b94dbabac08e369c9261a512d3078
--- /dev/null
+++ b/src/SOIL/Function.h
@@ -0,0 +1,268 @@
+#pragma once
+#include "constants.h"
+#include "Element.h"
+#include "Container.h"
+#include "Range.h"
+#include "Parameter.h"
+
+namespace SOIL
+{
+	/**
+	 * @brief Function Class
+	 * 
+	 * Class encapsulating a function represented in SOIL.
+	 * The class directly inherits from Element.
+	 * The recommended development pattern is to subclass this class and instantitate a use-case specific version.
+	 * In this case, the @c invoke() method should be overriden to implement the function's business logic.
+	 * 
+	 * Arguments are represented using the Parameter class. A Function supports the HTTP GET (to introspect the signature)
+	 * and HTTP POST (to execute the function) verbs.
+	*/
+	class Function :
+		public Element
+	{
+	private:
+		/**
+		 * @brief List of arguments
+		 * 
+		 * List of arguments, which are implemented as parameters. To maintain the arguments,
+		 * a map of shared pointers is used. Each argument has a locally unique identifier starting with PAR-
+		 * which is used as identifier in the map.
+		*/
+		std::map<std::string, std::shared_ptr<Element>> arguments;
+
+		/**
+		 * @brief List of returns
+		 *
+		 * List of returns, which are implemented as parameters. To maintain the returns,
+		 * a map of shared pointers is used. Each argument has a locally unique identifier starting with PAR-
+		 * which is used as identifier in the map.
+		*/
+		std::map<std::string, std::shared_ptr<Element>> returns;
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Constructor that shall be used to instantiate a Function.
+		 * If the class is subclassed, it shoule be called from the respective constructor.
+		 * Most parameters are passed on to the constructor of Element.
+		 * 
+		 * @param [in] parent Shared pointer to parent object. Can be set to NULL for the creation of a root object
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		*/
+		DLL Function(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology = "");
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Standard dsestructor
+		*/
+		DLL ~Function();
+
+		/**
+		 * @brief Create new Function
+		 *
+		 * Create a new Function using the default constructor and return a shared pointer reference.
+		 * This is the preferred method for manual creation with consistent lifecycle handling.
+		 *
+		 * @param [in] parent Shared pointer to parent object. Can be set to NULL for the creation of a root object
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		*/
+		static std::shared_ptr<Function> create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology = "");
+
+		/**
+		 * @brief Add argument
+		 * 
+		 * Add an argument when building the function. This method shoukd typically be called fron the
+		 * subclass constructor. It uses the same templating system than Container does to handle multidimensional data.
+		 * @tparam T Type of the data.
+		 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+		 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] range Allowed range for this argument, which is checked prior to execution. Defaults to no range restriction.
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed (default)
+		*/
+		template<typename T, int x = -1, int y = -1>
+		void add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range<T> range = SOIL::Range<T>(), std::string ontology = "");
+		/**
+		 * @brief Add argument with default value
+		 *
+		 * Add an argument when building the function with a default value. This method shoukd typically be called fron the
+		 * subclass constructor. It uses the same templating system than Container does to handle multidimensional data.
+		 * @tparam T Type of the data.
+		 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+		 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] range Allowed range for this argument, which is checked prior to execution. Defaults to no range restriction.
+		 * @param [in] default Default value provided as Container
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed (default)
+		*/
+		template<typename T, int x = -1, int y =-1>
+		void add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range<T> range, const Container<T, x, y>& default_value, std::string ontology = "");
+		
+		/**
+		 * @brief Add return value
+		 *
+		 * Add areturn value when building the function. This method shoukd typically be called fron the
+		 * subclass constructor. It uses the same templating system than Container does to handle multidimensional data.
+		 * @tparam T Type of the data.
+		 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+		 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] range Allowed range for this argument. Defaults to no range restriction.
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed (default)
+		*/
+		template<typename T, int x = -1, int y = -1>
+		void add_return(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range<T> range = SOIL::Range<T>(), std::string ontology = "");
+
+		
+		/**
+		 * @brief Make JSON Return
+		 * 
+		 * Helper function that converts a return value provided as Container to a correpsonding JSON object.
+		 * This function is usually useful in the custom implementation of @c invoke().
+		 * 
+		 * @tparam T Type of the data.
+		 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+		 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+		 * @param [in] uuid Locally Unique identifier of return value
+		 * @param [in] value Value of the return value
+		 * @return JSON object corresponding to SOIL representation
+		*/
+		template<typename T, int x = -1, int y = -1>
+		HTTP::Json make_return(std::string uuid, Container<T,x,y> value);
+
+		/**
+		 * @brief Make Argument from JSON
+		 *
+		 * Helper function that converts a HTTP Json object to a container of the passed value
+		 * This function is usually useful in the custom implementation of @c invoke().
+		 *
+		 * @tparam T Type of the data.
+		 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+		 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+		 * @param [in] uuid Locally Unique identifier of return value
+		 * @param [in] external_json JSON object from which to convert
+		 * @return Value as Container
+		*/
+		template<typename T, int x = -1, int y = -1>
+		Container<T, x, y> make_argument(std::string uuid, HTTP::Json external_json);
+		
+		/**
+		 * @brief HTTP JSON
+		 *
+		 * Get a HTTP JSON object corresponding to the function including arguments and returns
+		 * @return JSON object
+		*/
+		DLL HTTP::Json wjson(void);
+
+		/**
+		 * @brief Handle HTTP GET request
+		 * 
+		 * On HTTP GET, the function returns information about itself and its signature.
+		 * It is not invoked and this call should not lead to side effects.
+		 * @param [in] request Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		DLL virtual HTTP::Response handle_get(HTTP::Request request, std::smatch match = std::smatch());
+
+		/**
+		 * @brief Handle HTTP POST request
+		 *
+		 * On HTTP POST, the function is invoked. With the POST request, a list of arguments must be passed
+		 * in the request's body as list under the keyword "arguments".
+		 * This method calls `invoke()`. If you do not implement this function, nothing will happen.
+		 * 
+		 * @param [in] request Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		DLL virtual HTTP::Response handle_post(HTTP::Request request, std::smatch match = std::smatch());
+
+		/**
+		 * @brief Core Invocation
+		 * 
+		 * This is the main function that @b MUST be implemented in a derived class to meaningful 
+		 * act as a function. The arguments are passed as raw HTTP::Json objects mapped to their UUIDs.
+		 * A map of HTTP::Json objects is expected as returns. It is recommend to use @c make_arguments and 
+		 * @c make_returns in this function. Arguments and returns are not further decomposed to Containers to support
+		 * multi-typed values.
+		 * 
+		 * @post This function will be called from the HTTP POST handler. Any exception thrown will be caught there again
+		 * and lead to an HTTP Internal Error (500) return code.
+		 * 
+		 * @exception std::logic_error If not implemented in the derived class, the implementation here throws an exception.
+		 * 
+		 * @param [in] arguments Map of arguments as HTTP Json objects indexrd by their UUID
+		 * @return Map of return values as HTTP Json objects indexrd by their UUID
+		*/
+		DLL virtual std::map<std::string, HTTP::Json> invoke(std::map<std::string, HTTP::Json> arguments);
+
+		/**
+		 * @brief Get Pointer
+		 * 
+		 * Return a shared pointer casted to the Function type to element itself.
+		 * @return Casted pointer
+		*/
+		DLL inline std::shared_ptr<Function> ptr(void)
+		{
+			return std::dynamic_pointer_cast<Function>(Element::self);
+		}
+	};
+	template<typename T, int x, int y>
+	void Function::add_argument(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range<T> range, std::string ontology)
+	{
+		arguments[uuid].reset(new Parameter<T, x, y>(Element::self, uuid, name, description, unit, false, ontology, range));
+	}
+	template<typename T, int x, int y>
+	void Function::add_argument(std::string uuid, std::string name, std::string description, std::string unit,  SOIL::Range<T> range, const Container<T,x,y>& default_value, std::string ontology)
+	{
+		Parameter<T, x, y>* par = new Parameter<T, x, y>(Element::self, uuid, name, description, unit, false, ontology, range);
+		arguments[uuid].reset(par);
+		*par = default_value;
+	}
+
+
+	template<typename T, int x,int y>
+	void Function::add_return(std::string uuid, std::string name, std::string description, std::string unit, SOIL::Range<T> range, std::string ontology)
+	{
+		returns[uuid].reset(new Parameter<T, x, y>(Element::self, uuid, name, description, unit, false, ontology,  range));
+	}
+	template<typename T, int x, int y>
+	HTTP::Json Function::make_return(std::string uuid, Container<T, x, y> value)
+	{
+		HTTP::Json json_root = HTTP::Json::object();
+		json_root[_XPLATSTR("uuid")] = to_json<std::string>(uuid);
+		json_root[_XPLATSTR("value")] = value.json()[_XPLATSTR("value")];
+		return json_root;
+	}
+	template<typename T, int x, int y>
+	Container<T, x, y> Function::make_argument(std::string uuid, HTTP::Json external_json)
+	{
+		for (auto& a : external_json.as_array())
+		{
+			if (to_value<std::string>(a[_XPLATSTR("uuid")]) == uuid)
+			{
+				return Container<T, x, y>(a[_XPLATSTR("value")]);
+			}
+		}
+		return Container<T, x, y>();
+	}
+}
+
diff --git a/src/SOIL/Object.cpp b/src/SOIL/Object.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..cfc624bda533b59fe62458c86564419658fd26a7
--- /dev/null
+++ b/src/SOIL/Object.cpp
@@ -0,0 +1,82 @@
+#include "Object.h"
+
+
+SOIL::Object::Object(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology) : Element(parent, uuid, name, description, ontology)
+{
+	if (uuid.substr(0, 3) != "OBJ")
+	{
+		throw std::logic_error("UUIDs for objects must start with OBJ!");
+	}
+	allowed_methods = { HTTP::Methods::GET, HTTP::Methods::OPTIONS, HTTP::Methods::HEAD, HTTP::Methods::PUT };
+}
+
+
+SOIL::Object::~Object()
+{
+}
+
+std::shared_ptr<SOIL::Object> SOIL::Object::create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology)
+{
+	Object* object = new Object(parent, uuid, name, description, ontology);
+	return object->ptr();
+}
+
+HTTP::Json SOIL::Object::wjson(void)
+{
+	
+	HTTP::Json json_root = Element::wjson();
+	json_root[_XPLATSTR("children")] = HTTP::Json::array();
+	int i = 0;
+	for (auto& child : children)
+	{
+		json_root[_XPLATSTR("children")][i] = HTTP::Json();
+		json_root[_XPLATSTR("children")][i][_XPLATSTR("uuid")] = HTTP::Json::string(utility::conversions::to_string_t(child.first));
+		json_root[_XPLATSTR("children")][i][_XPLATSTR("name")] = HTTP::Json::string(utility::conversions::to_string_t(child.second->name));
+		i++;
+	}
+	return json_root;
+}
+
+void SOIL::Object::read(void)
+{
+}
+
+HTTP::Json SOIL::Object::insert(HTTP::Json body)
+{
+	throw std::logic_error("This function has not been implemented!");
+}
+
+void SOIL::Object::remove(void)
+{
+
+}
+
+HTTP::Response SOIL::Object::handle_get(HTTP::Request message, std::smatch match)
+{
+	this->read();
+	HTTP::Response response;
+	response.set_body(this->wjson());
+	response.set_status_code(HTTP::Status::OK);
+	return response;
+}
+
+HTTP::Response SOIL::Object::handle_put(HTTP::Request message, std::smatch match)
+{
+	auto task = message.extract_json();
+	task.wait();
+	HTTP::Json body  = task.get();
+	HTTP::Json json = this->insert(body);
+	HTTP::Response response;
+	response.set_body(json);
+	response.set_status_code(HTTP::Status::Created);
+	return response;
+}
+
+HTTP::Response SOIL::Object::handle_delete(HTTP::Request message, std::smatch match)
+{
+	this->remove();
+	parent->remove(this->uuid);
+	HTTP::Response response;
+	response.set_status_code(HTTP::Status::OK);
+	return response;
+}
diff --git a/src/SOIL/Object.h b/src/SOIL/Object.h
new file mode 100644
index 0000000000000000000000000000000000000000..506ad441834e906065e2770e6dda18bdcffa77ef
--- /dev/null
+++ b/src/SOIL/Object.h
@@ -0,0 +1,155 @@
+#pragma once
+#include "constants.h"
+#include "Element.h"
+
+namespace SOIL
+{
+	/**
+	 * @brief Object Class
+	 *
+	 * Class implementing the SOIL Object type.
+	 * The purpose of Objects is mainly to organize the overall system.
+	 * Only Objects can have child items, which can be added or removed during runtime.
+	 * Objects support HTTP GET (read), PUT (add child) and DELETE (remove child) verbs.
+	 * This class directly inherits from Elememt.
+	 * 
+	 * @todo The HTTP handlers may be moved to protected if HTTP::Server is declared as friend class. Currently this is not done to alllow for greater flexibility. 
+	*/
+	class DLL Object :
+		public Element
+	{
+	public:
+		/**
+		 * @brief Constructor
+		 *
+		 * Default constructor for SOIL elements, to be called from derived classes.
+		 * @param [in] parent Shared pointer to parent object. Can be set to NULL for the creation of a root object
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * 
+		 * @pre The ontology referred to must be defined elsewhere and is decoupled from the code.
+		*/
+		Object(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology = "");
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Standard destructor. The main destruction occurs in the destructor of Element, i.e. the references to the child
+		 * elements are deleted, e.g. they go out of scope is this was the last shared pointer.
+		*/
+		~Object();
+
+		/**
+		 * @brief Create new Object
+		 *
+		 * Create a new Object using the default constructor and return a shared pointer reference.
+		 * This is the preferred method for manual creation with consistent lifecycle handling.
+		 * @param [in] parent Shared pointer to parent object. Can be set to NULL for the creation of a root object
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 *
+		 * @pre The ontology referred to must be defined elsewhere and is decoupled from the code.
+		*/
+		static std::shared_ptr<Object> create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string ontology = "");
+
+		/**
+		 * @brief HTTP JSON
+		 *
+		 * Get a HTTP JSON object corresponding to the function including arguments and returns
+		 * @return JSON object
+		*/
+		web::json::value wjson(void);
+
+		/**
+		 * @brief Read callback
+		 *
+		 * Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage.
+		 * Declared virtual to make sure the derived method is called first. Any exception that may be occurring will be caught in the HTTP handler.
+		*/
+		virtual void read(void);
+
+		/**
+		 * @brief Insert callback
+		 * 
+		 * Function that is called when a new child object is insterted via HTTP PUT.
+		 * This function muss be implemented by the deriving class.
+		 * 
+		 * @exception std::logic_error If the derived class does not contain an implementation, an exception is thrown here.
+		 * The exception will be caught in the HTTP handler of the server and returns with an HTTP Internal Error (500) code.
+		 * 
+		 * @param [in] body HTTP JSON body passed to PUT
+		 * @return HTTP JSON object corresponding to the created Object, as required per good HTTP practice.
+		*/
+		virtual HTTP::Json insert(HTTP::Json body);
+
+		/**
+		 * @brief Remove callback
+		 * 
+		 * Callback hook for subclasses to add custom business logic to the HTTP DELETE operation, e.g. to act on external resoruces.
+		 * Otherwise the object will just be deleted.
+		*/
+		virtual void remove(void);
+
+		/**
+		 * @brief HTTP GET Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a GET method.
+		 * This function returns a representation of the Object to the requesting party.
+		 * It should not be overridden directly in subclasses, instead the `read()` function should be overriden.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_get(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief HTTP PUT Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a PUT method.
+		 * This function inserts an element to the objects children.
+		 * It should not be overridden directly in subclasses, instead the `HTTP::Json insert(HTTP::Json body)` function should be overriden.
+		 * It is mandatory to implement a custom logic in the aforementioned function to allow PUT to properly work.
+		 * If manual insertion is not foreseen, you may consider overriding `allowed_methods` without PUT.
+		 * The minimum requirement to the body is that it contains an valid UUID key with value, the templates and further logic may be implemented by server.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_put(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief HTTP DELETE Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a DELETE method.
+		 * This function deletes an element.
+		 * It should not be overridden directly in subclasses, instead the `remove()` function should be overriden.
+		 * It is mandatory to implement a custom logic in the aforementioned function to allow PUT to properly work.
+		 * If manual deletaion is not foreseen, you may consider overriding `allowed_methods` without DELETE.
+		 * 
+		 * If no exception is thrown, an empty response with result code OK is returned, otherwise an Internal Error will be provided.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_delete(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief Get Pointer
+		 *
+		 * Return a shared pointer casted to the Object type to element itself.
+		 * @return Casted pointer
+		*/
+		inline std::shared_ptr<Object> ptr(void)
+		{
+			return std::dynamic_pointer_cast<Object>(Element::self);
+		}
+	};
+}
+
diff --git a/src/SOIL/Parameter.cpp b/src/SOIL/Parameter.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..79470897bd6604f91c287ce406c433ed1facbe39
--- /dev/null
+++ b/src/SOIL/Parameter.cpp
@@ -0,0 +1 @@
+#include "Parameter.h"
diff --git a/src/SOIL/Parameter.h b/src/SOIL/Parameter.h
new file mode 100644
index 0000000000000000000000000000000000000000..ae4a43552ee63c3057e17826bc139fd6f1616277
--- /dev/null
+++ b/src/SOIL/Parameter.h
@@ -0,0 +1,307 @@
+#pragma once
+#include "constants.h"
+#include "Types.h"
+#include "Element.h"
+#include "Container.h"
+#include "Range.h"
+#include "Figure.h"
+#include "MQTT/Publisher.h"
+#include <boost/algorithm/string/join.hpp>
+
+namespace SOIL
+{
+	/**
+	 * @brief Parameter Class
+	 * 
+	 * This class represents a SOIL Parameter. Parameter and Variable share many common properties
+	 * and therefore both inherit from Figure, such that methods there should be considered in any case.
+	 * Parameters are primarily intended for values that do not represent any measurement or physical phenomenon outside the immediate control of device.
+	 * In contrast to variables, they can be set externally to control the device and do not posses a measurement uncertainty. Parametery may be constant.
+	 * In lightweight scenarios, this class may be instantiated directly, for more specific scenarios, it shouls be subclassed and override the implementations
+	 * of `read()` and `write()`.
+	 * 
+	 * A parameter supports HTTP GET (read) and HTTP PATCH (set) verbs.
+	 * 
+	 * The data management of Figure and hence Parameter relies on Container, such that the same templating logic is used.
+	 *
+	 * @tparam T Type of the data.
+	 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+	 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+	 * 
+	 * @todo The HTTP handlers may be moved to protected if HTTP::Server is declared as friend class. Currently this is not done to alllow for greater flexibility. 
+	*/
+	template <typename T, int x=-1, int y=-1>
+	class Parameter : public Figure<T, x, y>
+	{
+	protected:
+		
+		//Looks stale as Figure as a time member
+		//TIME time;
+
+		/**
+		 * @brief Constant flag
+		 * 
+		 * Boolean flag whether this parameter should be considered as constant.
+		*/
+		bool constant;
+
+		/**
+		 * @brief Read callback
+		 *
+		 * Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage.
+		 * Declared virtual to make sure the derived method is called first. Does nothing be default.
+		*/
+		virtual void read(void);
+
+		/**
+		 * @brief Write callback
+		 *
+		 * Write callback that can be implemented by deriving classes to perform custom build logic on write actions, e.g.set a value to an external system.
+		 * Declared virtual to make sure the derived method is called first. Does nothing be default.
+		*/
+		virtual void write(void);
+
+	public:
+		/**
+		 * @brief Constructor
+		 *
+		 * Standard constructor intialiazing the values. If subclassed, it should be called from the subclass constructor.
+		 * @param [in] parent Shared pointer to parent object.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] constant Boolean flag whether this value is cosnstant
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * @param [in] range Allowed range for the variable values, defaults to an empty object, i.e. allowing all values
+		 * @param [in] time Timestamp for the initial value, defaults to unset
+		*/
+		Parameter(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant = false, std::string ontology = "", Range<T> range = Range<T>(), TIME time = TIME());
+		
+		/**
+		 * @brief Destructor
+		 *
+		 * Default destructor, without custom effort.
+		*/
+		~Parameter();
+
+		/**
+		 * @brief Create new Parameter
+		 *
+		 * Create a new Parameter using the default constructor and return a shared pointer reference.
+		 * This is the preferred method for manual creation with consistent lifecycle handling.
+		 * @param [in] parent Shared pointer to parent object.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] constant Boolean flag whether this value is cosnstant
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * @param [in] range Allowed range for the variable values, defaults to an empty object, i.e. allowing all values
+		 * @param [in] time Timestamp for the initial value, defaults to unset
+		*/
+		static std::shared_ptr<Parameter> create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant = false, std::string ontology = "", Range<T> range = Range<T>(), TIME time = TIME());
+
+		/**
+		 * @brief Assignment operator
+		 *
+		 * Assigns the value provided as container on the right hand side to the parameter.
+		 * Immediately resorts to the implementation in Figure internally.
+		 *
+		 * @exception std::range_error Throws an exception if the value to assign is outside the allowed range.
+		 *
+		 * @param[in] value Value to assign
+		 * @return Reference to the current Parameter
+		*/
+		Parameter<T, x, y>& operator =(const Container<T, x, y>& value);
+
+
+		/**
+		 * @brief HTTP JSON
+		 *
+		 * Get a HTTP JSON object corresponding to the current state of the Parameter.
+		 * This function provides a SOIL-conformant JSON representation the parameter. 
+		 * It internally extends the method of Figure.
+		 * 
+		 * @return JSON object
+		*/
+		HTTP::Json wjson(void) override;
+
+		/**
+		 * @brief HTTP GET Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a GET method.
+		 * This function returns a representation of the Parameter and its current value to the requesting party.
+		 * It should not be overridden directly in subclasses, instead the `read()` function should be overriden.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_get(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief HTTP PATCH Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a PATCH method.
+		 * This function updates the value of a parameter. The request must at least contain a 
+		 * It should not be overridden directly in subclasses, instead the `write()` function should be overriden.
+		 * 
+		 * If an update is not not foreseen, you may consider overriding `allowed_methods` without PATCH.
+		 * This is not enforced by default through the `constant` flag.
+		 * The minimum requirement to the body is that it contains a value to assign. If a timestamp is provided, it will be set, otherwise the current server time is taken.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_patch(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief Get Pointer
+		 *
+		 * Return a shared pointer casted to the Parameter type to element itself.
+		 * @return Casted pointer
+		*/
+		inline std::shared_ptr<Parameter> ptr(void)
+		{
+			return std::dynamic_pointer_cast<Parameter>(Element::self);
+		}
+
+		/**
+		 * @brief Publish to MQTT
+		 * 
+		 * Publish the current JSON representation under the FQID as topic using a given MQTT publisher.
+		 * This function must be explicitly called from the user's code as otherwise the update cycle would
+		 * depend on the publisher and the user will be left without control to call other methods before publishing.
+		 *
+		 * A good pattern is to have a reference to an MQTT publisher in a sublcassing implementation and implement a complete update
+		 * cycle there.
+		 * 
+		 * @pre An MQTT::Publisher must be instantiated elsewhere and have a valid lifecycle.
+		 * 
+		 * @param [in] publisher Reference to the publisher to use
+		 * @param [in] qos Quality of service to choose for MQTT message
+		 * @param [in] retain Flag whether to retain the message on the server.
+		 * @return Boolean flag whether the message was accepted in the message queue. 
+		 * 
+		 * @todo Currently the implementation of this function is redundant in Variable and Parameter.
+		 * It is deliberately not moved to Figure as different implementations may occur in the future,
+		 * but would be a valid option.
+		*/
+		bool mqtt(std::shared_ptr<MQTT::Publisher> publisher, int qos = 0, bool retain = false);
+	};
+	
+
+
+}
+
+
+
+template<typename T, int x, int y>
+SOIL::Parameter<T, x, y>::Parameter(std::shared_ptr<SOIL::Element> parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant, std::string ontology, Range<T> range, SOIL::TIME time) : SOIL::Figure<T, x, y>(parent, uuid, name, description, unit, ontology, range, time), constant(constant)
+{
+	if (uuid.substr(0, 3) != "PAR")
+	{
+		throw std::logic_error("UUIDs for parameters must start with PAR!");
+	}
+
+	HTTP::Resource::allowed_methods = { HTTP::Methods::GET, HTTP::Methods::OPTIONS, HTTP::Methods::HEAD, HTTP::Methods::PATCH };
+}
+
+template<typename T, int x, int y>
+SOIL::Parameter<T,x,y>::~Parameter()
+{
+}
+
+template<typename T, int x, int y>
+inline std::shared_ptr<SOIL::Parameter<T, x, y> > SOIL::Parameter<T, x, y>::create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, bool constant, std::string ontology, Range<T> range, TIME time)
+{
+	Parameter<T, x, y>* parameter = new Parameter<T, x, y>(parent, uuid, name, description, unit, constant, ontology, range, time);
+	return parameter->ptr();
+}
+
+template<typename T, int x, int y>
+inline SOIL::Parameter<T, x, y>& SOIL::Parameter<T, x, y>::operator=(const Container<T, x, y>& value)
+{
+	Figure<T,x,y>::operator=(value);
+	return *this;
+}
+
+
+template<typename T, int x, int y>
+HTTP::Json SOIL::Parameter<T,x,y>::wjson(void)
+{
+	std::unique_lock<std::recursive_mutex> lock(Element::mutex);
+	HTTP::Json json_root = Figure<T,x,y> ::wjson();
+	json_root[_XPLATSTR("constant")] = HTTP::Json::boolean(constant);
+
+	return json_root;
+}
+
+template<typename T, int x, int y>
+void SOIL::Parameter<T,x,y>::read(void)
+{
+}
+
+template<typename T, int x, int y>
+inline void SOIL::Parameter<T, x, y>::write(void)
+{
+}
+
+
+template<typename T, int x, int y>
+inline HTTP::Response SOIL::Parameter<T, x, y>::handle_get(HTTP::Request message, std::smatch match)
+{
+	this->read();
+	
+	HTTP::Response response;
+	HTTP::Json body = this->wjson();
+	response.set_body(body);
+
+	response.set_status_code(HTTP::Status::OK);
+
+	return response;
+}
+
+template<typename T, int x, int y>
+inline HTTP::Response SOIL::Parameter<T, x, y>::handle_patch(HTTP::Request message, std::smatch match)
+{
+	auto task  = message.extract_json();
+	task.wait();
+	HTTP::Json external_json = task.get();
+
+	SOIL::TIME timestamp;
+
+	if (external_json.has_field(_XPLATSTR("timestamp")))
+	{
+		timestamp = to_value<TIME>(external_json[_XPLATSTR("timestamp")]);
+	}
+	else
+	{
+		timestamp = SOIL::TIME::utc_now();
+	}
+	
+
+	this->update(Container<T, x, y>(external_json[_XPLATSTR("value")]), timestamp);
+
+	
+	this->write();
+
+	HTTP::Response response;
+	response.set_body(this->wjson());
+	response.set_status_code(HTTP::Status::Created);
+
+
+	return response;
+}
+
+template<typename T, int x, int y>
+inline bool SOIL::Parameter<T, x, y>::mqtt(std::shared_ptr<MQTT::Publisher> publisher, int qos, bool retain)
+{
+	std::string topic = boost::algorithm::join(this->fqid(), "/");
+	return publisher->publish(topic, this->json(), qos, retain);
+}
+
+
+
diff --git a/src/SOIL/Range.cpp b/src/SOIL/Range.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..21d5b82b55fa77e049f89e757e4eead7577fbb78
--- /dev/null
+++ b/src/SOIL/Range.cpp
@@ -0,0 +1,108 @@
+#include "Range.h"
+
+SOIL::Range<std::string>::Range() : set(false), low(0), high(std::numeric_limits<size_t>::max())
+{
+}
+
+SOIL::Range<std::string>::Range(size_t low, size_t high) : set(true), low(low), high(high)
+{
+}
+
+SOIL::Range<std::string>::Range(std::vector<size_t> limits) : set(true)
+{
+	if (limits.size() == 0)
+	{
+		set = false;
+	}
+	else if (limits.size() == 2)
+	{
+		low = limits.at(0);
+		high = limits.at(1);
+		set = true;
+	}
+	else
+	{
+		throw std::runtime_error("Invalid vector for range initialization!");
+	}
+}
+
+SOIL::Range<std::string>::~Range()
+{
+}
+
+web::json::value SOIL::Range<std::string>::wjson(void)
+{
+	web::json::value range_array = web::json::value::array();
+	if (set)
+	{
+		range_array[0] = SOIL::to_json<int>(static_cast<int>(low));
+		range_array[1] = SOIL::to_json<int>(static_cast<int>(high));
+	}
+	return range_array;
+}
+
+bool SOIL::Range<std::string>::check(const std::string & value)
+{
+	if (set)
+	{
+		return ((value.size() >= low) && (value.size() <= high));
+	}
+	else
+	{
+		return true;
+	}
+}
+
+
+
+SOIL::Range<SOIL::ENUM>::Range() : set(false)
+{
+}
+
+
+SOIL::Range<SOIL::ENUM>::Range(std::vector<std::string> choices) : set(true), choices(choices)
+{
+	
+}
+
+SOIL::Range<SOIL::ENUM>::~Range()
+{
+}
+
+web::json::value SOIL::Range<SOIL::ENUM>::wjson(void)
+{
+	web::json::value range_array = web::json::value::array();
+	if (set)
+	{
+		for (int i = 0; i < static_cast<int>(choices.size()); i++)
+		{
+			range_array[i] = SOIL::to_json<std::string>(choices.at(i));
+		}
+	}
+	return range_array;
+}
+
+bool SOIL::Range<SOIL::ENUM>::check(const std::string& value)
+{
+	if (set)
+	{ 
+		for (int i = 0; i < static_cast<int>(choices.size()); i++)
+		{
+			if (value == choices.at(i))
+			{
+				return true;
+			}
+		}
+		return false;
+	}
+	else
+	{
+		return true;
+	}
+}
+
+bool SOIL::Range<SOIL::ENUM>::check(const SOIL::ENUM& value)
+{
+	return this->check(value.selected());
+}
+
diff --git a/src/SOIL/Range.h b/src/SOIL/Range.h
new file mode 100644
index 0000000000000000000000000000000000000000..ceae5e4b7b6bad5b02e17f6dd12bc4ecac688806
--- /dev/null
+++ b/src/SOIL/Range.h
@@ -0,0 +1,210 @@
+#pragma once
+#include "constants.h"
+#include "json_helpers.h"
+#include "Types.h"
+#include "REST/Types.h"
+
+namespace SOIL
+{
+	/**
+	 * @brief Range Helper Class
+	 * 
+	 * Class to represent the acceptable range of a figure. This class is templated to be applicable to all types.
+	 * For numerical values, the range indicates a lower and upper limit which may be validly assigned. The limit values are included.
+	 * The same holds for times. For strings, it indicates the minimum and maximum length.
+	 * For enumerations, this is a list of applicable choices.
+	 * For these types, the template is explicitly implemented differently.
+	 * The range can be explicitly unset to provide an easy default member implementation.
+	 * 
+	 * There is no set function, if the range changes, a new instance of this lightweight class should be created.
+	 *
+	 * @tparam T Datatype for which the range is defined
+	*/
+	template <typename T>
+	class Range
+	{
+	private:
+		/**
+		 * @brief Lower Limit
+		 * 
+		 * Lower limit against which the range is checked.
+		*/
+		T low;
+
+		/**
+		 * @brief Upper Limit
+		 * 
+		 * Upper limit against which the range is checked.
+		*/
+		T high;
+
+		/**
+		 * @brief Set flag
+		 * 
+		 * Boolean flag whether limits are actually set. If false,
+		 * no range restriction is in place.
+		*/
+		bool set;
+	public:
+		/**
+		 * @brief Default Constructor
+		 * 
+		 * Default Constructor, sets no limits and initializes @c set to false.
+		*/
+		Range();
+
+		/**
+		 * @brief Argument constructor
+		 * 
+		 * Constructs the range and initialized lower and upper limit with the provided values.
+		 * 
+		 * @param [in] low Lower limit 
+		 * @param [in] high Upper limit
+		*/
+		Range(T low, T high);
+
+		/**
+		 * @brief List constructor
+		 *
+		 * Constructs the range and initialized lower and upper limit with the provided vector.
+		 * This is constructor can be conveniently initialized with the list notation {low, high}.
+		 *
+		 * @param [in] limits Vector of length 2 for initialization
+		*/
+		Range(std::vector<T> limits);
+
+		/**
+		 * @brief Destructor
+		 *
+		 * Standard desctructor, no custom implementation.
+		*/
+		~Range();
+
+		/**
+		 * @brief HTTP JSON
+		 * 
+		 * Returns the SOIL conformant partial representation of the range of Figure, i.e. @em null if not set. 
+		 * @return JSON Object
+		*/
+		HTTP::Json wjson(void);
+
+		/**
+		 * @brief Check
+		 * 
+		 * Check whether a given value is inside the prescribed range or not.
+		 * If @c set is false, it always returns to true.
+		 * The limits are included in the valid range, i.e. it is checked with `<=` and `>=`. 
+		 * 
+		 * @param [in] value Value to check
+		 * @return Check result als boolean, i.e. true if in range 
+		*/
+		bool check(const T & value);
+	};
+
+	/**
+	 * @brief String Range
+	 * 
+	 * Specialization of Range for strings, where the limits correspond to minimal and maximum length.
+	*/
+	template<>
+	class DLL Range<std::string>
+	{
+	private:
+		size_t low;
+		size_t high;
+		bool set;
+	public:
+		Range();
+		Range(size_t low, size_t high);
+		Range(std::vector<size_t> limits);
+		~Range();
+		HTTP::Json wjson(void);
+		bool check(const std::string& value);
+	};
+
+	/**
+	 * @brief Enum Range
+	 *
+	 * Specialization of Range for enumerations, where the limit is a set of applicable choices.
+	*/
+	template<>
+	class DLL Range<ENUM>
+	{
+	private:
+		std::vector<std::string> choices;
+		bool set;
+	public:
+		Range();
+		Range(std::vector<std::string> choices);
+		~Range();
+		HTTP::Json wjson(void);
+		bool check(const std::string& value);
+		bool check(const SOIL::ENUM& value);
+	};
+
+	template<typename T>
+	Range<T>::Range() : set(false)
+	{
+	}
+
+	template<typename T>
+	Range<T>::Range(T low, T high): set(true), low(low), high(high)
+	{
+	}
+
+	template<typename T>
+	Range<T>::Range(std::vector<T> limits)
+	{
+		if (limits.size() == 0)
+		{
+			set = false;
+		}
+		else if (limits.size() == 2)
+		{
+			low = limits.at(0);
+			high = limits.at(1);
+			set = true;
+		}
+		else
+		{
+			throw std::runtime_error("Invalid vector for range initialization!");
+		}
+	}
+
+	template<typename T>
+	Range<T>::~Range()
+	{
+	}
+
+	template<typename T>
+	HTTP::Json Range<T>::wjson(void)
+	{
+		HTTP::Json range_array = HTTP::Json::array();
+		if (set)
+		{
+			range_array[0] = to_json<T>(low);
+			range_array[1] = to_json<T>(high);
+		}
+		return range_array;
+	}
+
+
+	template<typename T>
+	bool Range<T>::check(const T & value)
+	{
+		if (set)
+		{
+			return ((value >= low) && (value <= high));
+		}
+		else
+		{
+			return true;
+		}
+	}
+
+
+	
+
+}
+
+
diff --git a/src/SOIL/Time.cpp b/src/SOIL/Time.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..67f3f1d3d68326497ba0c0638d410e29f5b5d67d
--- /dev/null
+++ b/src/SOIL/Time.cpp
@@ -0,0 +1,138 @@
+#include "Time.h"
+#include <boost/algorithm/string/replace.hpp>
+
+
+
+std::string SOIL::Time::rfc3339(void) const
+{
+	if (is_null())
+	{
+		return "";
+	}
+	else
+	{
+		std::string timestring = boost::posix_time::to_iso_extended_string(timestamp);
+		boost::replace_all(timestring, ",", ".");
+		if (timestring == "not-a-date-time")
+		{
+			return "";
+		}
+		else
+		{
+			return timestring + "Z";
+		}
+	}
+}
+
+SOIL::Time::Time()
+{
+}
+
+SOIL::Time::Time(std::string value)
+{
+	if (value == "")
+	{
+		_null = true;
+	}
+	else
+	{
+		boost::replace_all(value, "T", " ");
+		boost::replace_all(value, "Z", "");
+		timestamp = boost::posix_time::time_from_string(value);
+		_null = false;
+	}
+}
+
+SOIL::Time::Time(boost::posix_time::ptime value)
+{
+	_null = false;
+	timestamp = value;
+}
+
+
+SOIL::Time::~Time()
+{
+}
+
+boost::posix_time::ptime SOIL::Time::utc_now(void)
+{
+	 return boost::posix_time::microsec_clock::universal_time();
+}
+
+std::vector<unsigned char> SOIL::Time::serialize(void) const
+{
+	if (is_null())
+	{
+		throw std::logic_error("Time is not set");
+	}
+	std::vector<unsigned char> serialization;
+	size_t size = sizeof(uint16_t) + 5 * sizeof(uint8_t) + sizeof(uint32_t);
+	serialization.reserve(size);
+
+	auto date = timestamp.date();
+	auto time = timestamp.time_of_day();
+	uint16_t year = static_cast<uint16_t>(date.year());
+	uint8_t month = static_cast<uint8_t>(date.month().as_number());
+	uint8_t day = static_cast<uint8_t>(date.day().as_number());
+	uint8_t hour = static_cast<uint8_t>(time.hours());
+	uint8_t minute = static_cast<uint8_t>(time.minutes());
+	uint8_t seconds = static_cast<uint8_t>(time.seconds());
+	uint32_t nanoseconds = static_cast<uint32_t>(time.fractional_seconds());
+
+	switch (time.num_fractional_digits())
+	{
+	case 3:
+		nanoseconds *= 1000000;
+		break;
+	case 6:
+		nanoseconds *= 1000;
+		break;
+	case 9:
+		break;
+	default:
+		throw std::logic_error("Unknown fractional seconds!");
+	}
+
+	unsigned char* pointer = reinterpret_cast<unsigned char*>(&year);
+	for (int i = 0; i < sizeof(uint16_t); i++)
+	{
+		serialization.push_back(pointer[i]);
+	};
+	serialization.push_back(month);
+	serialization.push_back(day);
+	serialization.push_back(hour);
+	serialization.push_back(minute);
+	serialization.push_back(seconds);
+
+	pointer = reinterpret_cast<unsigned char*>(&nanoseconds);
+	for (int i = 0; i < sizeof(uint32_t); i++)
+	{
+		serialization.push_back(pointer[i]);
+	};
+
+	return serialization;
+}
+
+bool SOIL::operator>=(const SOIL::Time & t1, const SOIL::Time & t2)
+{
+	if (t1.is_null() || t2.is_null())
+	{
+		return false;
+	}
+	else
+	{
+		return (t1.timestamp >= t2.timestamp);
+	}
+}
+
+bool SOIL::operator<=(const SOIL::Time & t1, const SOIL::Time & t2)
+{
+	if (t1.is_null() || t2.is_null())
+	{
+		return false;
+	}
+	else
+	{
+		return (t1.timestamp <= t2.timestamp);
+	}
+}
diff --git a/src/SOIL/Time.h b/src/SOIL/Time.h
new file mode 100644
index 0000000000000000000000000000000000000000..7e79c3267c20480942a7ff4727e77cd357bd4517
--- /dev/null
+++ b/src/SOIL/Time.h
@@ -0,0 +1,174 @@
+#pragma once
+#include "constants.h"
+#include <boost/date_time/posix_time/posix_time.hpp>
+#include <locale>
+namespace SOIL
+{
+	/**
+	 * @brief SOIL Time
+	 * 
+	 * Speial Time class for SOIL to implement the necessary functionality.
+	*/
+	class Time
+	{
+	private:
+		/**
+		 * @brief Null Flag
+		 * 
+		 * Internal flag whether the time is actually not set, i.e. null.
+		*/
+		bool _null;
+
+		/**
+		 * @brief Internal time representation
+		 * 
+		 * Internal time representation, which is realized by means of boost's posix time.
+		 * 
+		 * @todo: Check if dependency on boost can be eliminated with future versions of the C++ standard.
+		*/
+		boost::posix_time::ptime timestamp;
+	public:
+		/**
+		 * @brief RFC3339 representation
+		 * 
+		 * Return a RFC3339 conformant representation of the time, e.g. 2021-06-07T22:01:23.078162Z as string.
+		 * This is the main time representation used in SOIL.
+		 * 
+		 * @return RFC3339 string 
+		*/
+		DLL std::string rfc3339(void) const;
+		
+		/**
+		 * @brief Uninitialized Constructor
+		 * 
+		 * Construct an uninitialized Time instance, where the @c _null flag is set to true. 
+		*/
+		DLL Time();
+
+		/**
+		 * @brief String Constructor
+		 * 
+		 * Constructs a Time object from an RFC3339 string.
+		 * If an empty string is passed, the @c _null flag is set to true.
+		 * 
+		 * The exceptions from the underlying boost implementation are passed through.
+		 * 
+		 * @param [in] value RFC3339 string of the time to set. 
+		*/
+		DLL Time(std::string value);
+
+		/**
+		 * @brief Posix Time Construtor
+		 * 
+		 * Constructs a Time object from a @c boost::posix_time::ptime.
+		 * This is useful in conjuction with `now()`.
+		 * 
+		 * @param [in] value Time to set.
+		*/
+		DLL Time(boost::posix_time::ptime value);
+
+		/**
+		 * @brief Destructor
+		 *
+		 * Default Destructor, there is no unexpected behaviour.
+		*/
+		DLL ~Time();
+
+		/**
+		 * @brief Is Null?
+		 * 
+		 * Returns whether the time is set to null.
+		 * 
+		 * @return 
+		*/
+
+		/**
+		 * @brief Is Null?
+		 *
+		 * Function that returns true if the current data is set to null and false else.
+		 *
+		 * @return Null flag
+		*/
+		inline bool is_null(void) const { return _null; }
+
+		/**
+		 * @brief Set null
+		 *
+		 * Function to set the null status of the data container
+		 * @param [in] _null Boolean state flag
+		*/
+		inline void set_null(bool _null = true) { this->_null = _null; }
+
+		/**
+		 * @brief Current Time
+		 * 
+		 * Returns the current UTC time as @c boost::posix_time::ptime to allow for quick access
+		 * in implementations using this library. Thanks to the corresponding constructor, this
+		 * function can also be used in assignments.
+		 * 
+		 * @return Current UTC time
+		*/
+		static DLL  boost::posix_time::ptime utc_now(void);
+
+		/**
+		 * @brief Friend Operator >=
+		 * 
+		 * Friend declaration of the >= operator, needed for correcet implementation.
+		*/
+		friend  DLL bool operator>=(const Time& t1, const Time& t2);
+
+		/**
+		 * @brief Friend Operator <=
+		 *
+		 * Friend declaration of the <= operator, needed for correcet implementation.
+		*/
+		friend  DLL bool operator<=(const Time& t1, const Time& t2);
+
+		/**
+		 * @brief Bytewise serialization
+		 * 
+		 * Bytewise serialization of the time for hashing purpose.
+		 * The components are serialized in the following order:
+		 * - uint16_t of the year
+		 * - uint8_t of the month
+		 * - uint8_t of the day
+		 * - uint8_t of the hour
+		 * - uint8_t of the minute
+		 * - unit8_t of the seconds
+		 * - uint32_t of the nanoseconds
+		 *
+		 * @return Serialized Bytestring 
+		*/
+
+		DLL std::vector<unsigned char> serialize(void) const;
+	};
+
+	/**
+	 * @brief GEQ Time Operator
+	 * 
+	 * Greater or equal operation for two Time objects, which is needed for the correct
+	 * implementation of the Range class.
+	 * 
+	 * Returns true if @c t1 >= @c t2, otherwise false. If one of the Time objects is set to null, the operation returns false.
+	 * 
+	 * @param t1 Left hand side time 
+	 * @param t2 Right hand side time
+	 * @return Comparison result as boolean
+	*/
+	DLL bool operator>=(const Time& t1, const Time& t2);
+
+
+	/**
+	 * @brief LEQ Time Operator
+	 *
+	 * Lower or equal operation for two Time objects, which is needed for the correct
+	 * implementation of the Range class.
+	 *
+	 * Returns true if @c t1 <= @c t2, otherwise false. If one of the Time objects is set to null, the operation returns false.
+	 *
+	 * @param t1 Left hand side time
+	 * @param t2 Right hand side time
+	 * @return Comparison result as boolean
+	*/
+	DLL bool operator<=(const Time& t1, const Time& t2);
+}
\ No newline at end of file
diff --git a/src/SOIL/Types.cpp b/src/SOIL/Types.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..44d0f30f750fa347a5a70c441b0a0e8a95579f73
--- /dev/null
+++ b/src/SOIL/Types.cpp
@@ -0,0 +1 @@
+#include "Types.h"
\ No newline at end of file
diff --git a/src/SOIL/Types.h b/src/SOIL/Types.h
new file mode 100644
index 0000000000000000000000000000000000000000..ea24a40f7025d5b4bbd10d3f09969e6498de7179
--- /dev/null
+++ b/src/SOIL/Types.h
@@ -0,0 +1,64 @@
+/**
+ * @brief Type definitions
+ *
+ * Set of type definitions to make sure the user can name SOIL specific types without
+ * knowing the explicit underlying C++ type.
+*/
+
+#pragma once
+#include "Time.h"
+#include "Enum.h"
+namespace SOIL
+{
+	/**
+	 * @brief SOIL Integer
+	 * 
+	 * Type definition for integer type used in SOIL.
+	*/
+	typedef int64_t INT;
+
+	/**
+	 * @brief SOIL Double
+	 * 
+	 * Type definition for double type used in SOIL.
+	 * Double is the preferred floating point type in SOIL.
+	*/
+	typedef double DOUBLE;
+
+	/**
+	 * @brief SOIL Boolean
+	 * 
+	 * Type definition for boolean type used in SOIL.
+	*/
+	typedef bool BOOL;
+
+	/**
+	 * @brief SOIL String
+	 * 
+	 * Type definition for string type used in SOIL.
+	*/
+	typedef std::string STRING;
+
+	/**
+	 * @brief SOIL Enum
+	 * 
+	 * Type definition for the custom defined Enum in SOIL for consistency.
+	*/
+	typedef Enum ENUM;
+	
+	/**
+	 * @brief SOIL Time
+	 *
+	 * Type definition for the custom defined Time in SOIL for consistency.
+	*/
+	typedef Time TIME;
+
+	/**
+	 * @brief SOIL Dimension
+	 * 
+	 * Type definition for the underlying datatype that is used to manage dimensions in SOIL
+	*/
+	typedef std::vector<unsigned int> DIMENSION;
+
+
+}
diff --git a/src/SOIL/Variable.cpp b/src/SOIL/Variable.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..dfbb7e8a901a1233c9c03ec6b0bd2b6dbad9d6fa
--- /dev/null
+++ b/src/SOIL/Variable.cpp
@@ -0,0 +1 @@
+#include "Variable.h"
diff --git a/src/SOIL/Variable.h b/src/SOIL/Variable.h
new file mode 100644
index 0000000000000000000000000000000000000000..a8693fdbf7f4269fd129414b059390e15649dcb8
--- /dev/null
+++ b/src/SOIL/Variable.h
@@ -0,0 +1,485 @@
+#pragma once
+#include "constants.h"
+#include "Types.h"
+#include "Element.h"
+#include "Container.h"
+#include "Range.h"
+#include "Figure.h"
+#include "SIGN/Signer.h"
+#include "SIGN/Hasher.h"
+#include "MQTT/Publisher.h"
+#include <boost/algorithm/string/join.hpp>
+
+
+namespace SOIL
+{
+	/**
+	 * @brief Variable Class
+	 *
+	 * This class represents a SOIL Variable. Parameter and Variable share many common properties
+	 * and therefore both inherit from Figure, such that methods there should be considered in any case.
+	 * Variables are primarily intended for values that  represent any measurement or physical phenomenon outside the immediate control of device.
+	 * In contrast to parameter, they cannot be set externally and may not be constant. In addition, they contain a custom message (nonce), a hash (for traceability purposes)
+	 * and a covariance property. The covariance should represent uncertainty as multivariate normal distribution with coverage factor of 1.
+	 * 
+	 * Covariance is currently not supported for 2-dimensional data (i.e. which would lead to a 4-dimensional covariance expression)
+	 * 
+	 * In lightweight scenarios, this class may be instantiated directly, for more specific scenarios, it shouls be subclassed and override the implementation
+	 * of `read()`.
+	 *
+	 * A parameter supports HTTP GET (read) and HTTP OPTIONS (read without updating value) verbs.
+	 *
+	 * The data management of Figure and hence Parameter relies on Container, such that the same templating logic is used.
+	 *
+	 * @tparam T Type of the data.
+	 * @tparam x First dimension of the data. -1 means unused, 0 means arbitray size. Cannot be -1 if @c y is not -1.
+	 * @tparam y Second dimension of the data. -1 means unused, 0 means arbitray size. Must be -1 for @c x to be -1.
+	 *
+	 * @todo The HTTP handlers may be moved to protected if HTTP::Server is declared as friend class. Currently this is not done to alllow for greater flexibility.
+	*/
+	template <typename T, int x = -1, int y = -1>
+	class Variable : public Figure<T, x, y>
+	{
+	protected:
+
+		/**
+		 * @brief Nonce
+		 * 
+		 * Nonce with is considered as arbitrary message that the user may add to the measurement.
+		 * This could be JOB-IDs or similar.
+		*/
+		std::string nonce;
+
+		/**
+		 * @brief Checking Hash
+		 * 
+		 * Hash that is calculated from a defined binary representation of the variable and may be signed with private_key
+		 * such that the integrity of the data can be verified. Is null if not explicitly set.
+		 * 
+		 * @todo This is still error prone across different languages and platforms as endianess and memory layout need to be considered.
+		*/
+		std::vector<unsigned char> hash;
+
+		/**
+		 * @brief Covariance of the value
+		 * 
+		 * Covariance of the value expressed as multidimensional normal distribution with coverage factor 1.
+		 * The dimensionality depends on the dimensionality of the value:
+		 * - For scalar data, the covariance is a scalar corresponding to the variance.
+		 * - For data expanding along one dimension with length @em n the covariance is a matrix with dimension @em (n,n)
+		 * - For data expanding along two dimensions, covariance is currently not supported.
+		 * 
+		 * Note that the second template argument of the Container is @c x in this case.
+		*/
+		Container<T, x, x>  covariance;
+
+		/**
+		 * @brief Read callback
+		 *
+		 * Read callback that can be implemented by deriving classes to perform custom build logic on read actions, e.g. update the value from an external storage.
+		 * Be careful when including long-running queries as they will block the HTTP call.
+		 * Declared virtual to make sure the derived method is called first. Does nothing be default.
+		*/
+		virtual void read(void);
+		
+		/**
+		 * @brief Write callback
+		 * 
+		 * This is an empty implementation of the `write()` function which is needed to avoid
+		 * that Variable becomes abstract. It is never called.
+		 *  
+		*/
+		virtual void write(void);
+
+	public:
+		/**
+		 * @brief Constructor
+		 *
+		 * Standard constructor intialiazing the values. If subclassed, it should be called from the subclass constructor.
+		 * @param [in] parent Shared pointer to parent object.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * @param [in] range Allowed range for the variable values, defaults to an empty object, i.e. allowing all values
+		 * @param [in] time Timestamp for the initial value, defaults to unset
+		 * @param [in] nonce Custom message to add to the variable, defaults to unset
+		*/
+		Variable(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology = "", Range<T> range = Range<T>(), TIME time = TIME(), std::string nonce = "");
+		
+		/**
+		 * @brief Destructor
+		 *
+		 * Default destructor, without custom effort.
+		*/
+		~Variable();
+
+		/**
+		 * @brief Create new Variable
+		 *
+		 * Create a new Variable using the default constructor and return a shared pointer reference.
+		 * This is the preferred method for manual creation with consistent lifecycle handling.
+		 * @param [in] parent Shared pointer to parent object.
+		 * @param [in] uuid Locally Unique identifier
+		 * @param [in] name Human-readable name
+		 * @param [in] description Human-readable description
+		 * @param [in] unit UNECE unit code, e.g. MTR
+		 * @param [in] ontology Ontology reference, is set to null if an empty string is passed
+		 * @param [in] range Allowed range for the variable values, defaults to an empty object, i.e. allowing all values
+		 * @param [in] time Timestamp for the initial value, defaults to unset
+		 * @param [in] nonce Custom message to add to the variable, defaults to unset
+		*/
+		static std::shared_ptr<Variable> create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology = "", Range<T> range = Range<T>(), TIME time = TIME(), std::string nonce = "");
+
+		/**
+		 * @brief Assignment operator
+		 *
+		 * Assigns the value provided as container on the right hand side to the variable.
+		 * Immediately resorts to the implementation in Figure internally.
+		 *
+		 * @exception std::range_error Throws an exception if the value to assign is outside the allowed range.
+		 *
+		 * @param[in] value Value to assign
+		 * @return Reference to the current Variable
+		*/
+		Variable<T, x, y>& operator =(const Container<T, x, y>& value);
+
+		/**
+		 * @brief HTTP JSON
+		 *
+		 * Get a HTTP JSON object corresponding to the current state of the Parameter.
+		 * This function provides a SOIL-conformant JSON representation the parameter.
+		 * It internally extends the method of Figure.
+		 *
+		 * @return JSON object
+		*/
+		HTTP::Json wjson(void) override;
+
+		/**
+		 * @brief HTTP GET Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a GET method.
+		 * This function returns a representation of the Variable and its current value to the requesting party.
+		 * It should not be overridden directly in subclasses, instead the `read()` function should be overriden.
+		 * It is an expected behaviour that `read()` calls an external method to update the value and may take some time to return.
+		 * Please note that the default timeout in cpprestsdk is 120s, which is already very long. Consider an asynchronous update model if your
+		 * devices takes longer to measure.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_get(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief HTTP OPTIONS Handler
+		 *
+		 * Handler that is called by the server on HTTP requests on a OPTIONS method.
+		 * This function returns a representation of the Variable and its current stored value to the requesting party.
+		 * In contrast to GET, the `read()` function is not called such that there are no side effects if a requesting party
+		 * just wants to obtain informtion about the variable's metadata in the first place.
+		 *
+		 * @param [in] message Incoming HTTP request as preprocessed by cpprestsdk
+		 * @param [in] match Match result of the request path that led to this resource
+		 * @return Outgoing HTTP response to be processed by cpprestdsk
+		*/
+		HTTP::Response handle_options(HTTP::Request message, std::smatch match = std::smatch()) override;
+
+		/**
+		 * @brief Update value
+		 * 
+		 * Update the value of the variable. As value, time and nonce are expected to change with each value update,
+		 * the three components are passed at the same time.
+		 * 
+		 * @param [in] value Value to set
+		 * @param [in] time Timestamp to set as corresponidng to the value
+		 * @param [in] nonce Nonce to set as corresponding to the value
+		*/
+		void update(const Container<T, x, y>& value, TIME time, std::string nonce = "");
+
+		/**
+		 * @brief Set Covariance
+		 * 
+		 * Set the covariance corresponding to the value. This is a separate call as the following three scenarios are foreseen:
+		 * - The covariance is set in the user defined update cycle, so this call can directly follow `update()`.
+		 * - The covariance is estimated constant for all measurements, so there is no need for updating it
+		 * - The covariance is not available, thus set to null.
+		 * 
+		 * @param [in] covariance Covariance provided as container object
+		*/
+		void set_covariance(Container<T, x, x>  covariance);
+
+		/**
+		 * @brief Get bytewise representation
+		 * 
+		 * Get a bytewise representation of the variable. This is constructed in the following order:
+		 * - Dimensions in declared order
+		 * - Value in row-major order
+		 * - Covariane in row-major-order (cannot be null!)
+		 * - Unit directly taken from UTF-8 chars
+		 * - Timestamp (cf. explanation there)
+		 * - Nonce as UTF-8 string
+		 *
+		 * This function is mainly used for hashing and signing purposes.
+		 * It does not write to an internal attribute.
+		 * 
+		 * @return Constructucted bytestring
+		*/
+		std::vector <unsigned char> bytes(void);
+
+		/**
+		 * @brief Calculate SHA256
+		 *
+		 * Calculates the sha256 hash of the bytestring representation.
+		 * Internally calls `bytes()`, but does not write to any value.
+		 *
+		 * @return  SHA256 hash as bytestring
+		*/
+		std::vector <unsigned char> sha256(void);
+
+		/**
+		 * @brief Sign the variable data
+		 * 
+		 * Sign the measurement data. If an pointer to an instance of SIGN::Signer is passed, the `fingerprint()` function is used to sign
+		 * the sha256 hash with the managed private key. Otherwise, the `sha256()` function is used.
+		 * 
+		 * In both cases, the resulting bytestring is stored to the internal `hash` attribute and returned.
+		 * 
+		 * @pre The SIGN::Signer instance must be instialized elsewhere and have an apropriate lifecycle.
+		 * @post The `hash` attribute is automatically updated by this call.
+		 * 
+		 * @param [in] signer Reference to a SIGN::Signer object holding the private key to use 
+		 * @return Signature bytestring
+		*/
+		std::vector <unsigned char> sign(std::shared_ptr<SIGN::Signer> signer = NULL);
+
+		/**
+		 * @brief Calculate RSA fingerprint 
+		 *
+		 * Signs the sha256 hash with the private key managed by the passed instance of SIGN::Signer. 
+		 * Does not write to an internal attribute.
+		 *
+		 * @pre The SIGN::Signer instance must be instialized elsewhere and have an apropriate lifecycle.
+		 *
+		 * @param [in] signer Reference to a SIGN::Signer object holding the private key to use
+		 * @return Signature bytestring
+		*/
+		std::vector <unsigned char> fingerprint(std::shared_ptr<SIGN::Signer> signer);
+
+		
+		/**
+		 * @brief Get Pointer
+		 *
+		 * Return a shared pointer casted to the Parameter type to element itself.
+		 * @return Casted pointer
+		*/
+		inline std::shared_ptr<Variable> ptr(void)
+		{
+			return std::dynamic_pointer_cast<Variable>(Element::self);
+		}
+
+		/**
+		 * @brief Publish to MQTT
+		 *
+		 * Publish the current JSON representation under the FQID as topic using a given MQTT publisher.
+		 * This function must be explicitly called from the user's code as otherwise the update cycle would
+		 * depend on the publisher and the user will be left without control to call other methods before publishing.
+		 *
+		 * A good pattern is to have a reference to an MQTT publisher in a sublcassing implementation and implement a complete update
+		 * cycle there.
+		 *
+		 * @pre An MQTT::Publisher must be instantiated elsewhere and have a valid lifecycle.
+		 *
+		 * @param [in] publisher Reference to the publisher to use
+		 * @param [in] qos Quality of service to choose for MQTT message
+		 * @param [in] retain Flag whether to retain the message on the server.
+		 * @return Boolean flag whether the message was accepted in the message queue.
+		 *
+		 * @todo Currently the implementation of this function is redundant in Variable and Parameter.
+		 * It is deliberately not moved to Figure as different implementations may occur in the future,
+		 * but would be a valid option.
+		*/
+		bool mqtt(std::shared_ptr<MQTT::Publisher> publisher, int qos = 0, bool retain = false);
+	};
+
+
+}
+
+
+
+template<typename T, int x, int y>
+SOIL::Variable<T, x, y>::Variable(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology, Range<T> range, TIME time, std::string nonce) : SOIL::Figure<T, x, y>(parent, uuid, name, description, unit, ontology, range, time)
+{
+	if (uuid.substr(0, 3) != "VAR")
+	{
+		throw std::logic_error("UUIDs for Variables must start with VAR!");
+	}
+
+	HTTP::Resource::allowed_methods = { HTTP::Methods::GET, HTTP::Methods::GET, HTTP::Methods::OPTIONS, HTTP::Methods::HEAD};
+}
+
+template<typename T, int x, int y>
+SOIL::Variable<T, x, y>::~Variable()
+{
+}
+
+template<typename T, int x, int y>
+inline std::shared_ptr<SOIL::Variable<T,x,y> > SOIL::Variable<T, x, y>::create(std::shared_ptr<Element> parent, std::string uuid, std::string name, std::string description, std::string unit, std::string ontology, Range<T> range, TIME time, std::string nonce)
+{
+	Variable<T, x, y>* variable = new Variable<T, x, y>(parent, uuid, name, description, unit, ontology, range, time, nonce);
+	return variable->ptr();
+}
+
+template<typename T, int x, int y>
+inline SOIL::Variable<T, x, y>& SOIL::Variable<T, x, y>::operator=(const Container<T, x, y>& value)
+{
+	Figure<T, x, y>::operator=(value);
+	return *this;
+}
+
+
+template<typename T, int x, int y>
+HTTP::Json SOIL::Variable<T, x, y>::wjson(void)
+{
+	std::unique_lock<std::recursive_mutex> lock(Element::mutex);
+	HTTP::Json json_root = SOIL::Figure<T, x, y>::wjson();
+
+	
+	std::ostringstream buffer;
+
+	for (std::string::size_type i = 0; i < hash.size();i++)
+	{
+		buffer << std::hex << std::setfill('0') << std::setw(2) << std::uppercase  << (int)hash[i];
+		if (i != hash.size() - 1)
+		{
+			buffer << std::setw(1) << " ";
+		}
+	}
+
+	std::string readable_hash = buffer.str();
+	
+	json_root[_XPLATSTR("nonce")] = (nonce == "") ? HTTP::Json::null() : SOIL::to_json(nonce);
+	json_root[_XPLATSTR("hash")] = (readable_hash == "") ? HTTP::Json::null() : SOIL::to_json(readable_hash);
+	json_root[_XPLATSTR("covariance")] = covariance.wjson()[_XPLATSTR("value")];
+
+	return json_root;
+}
+
+template<typename T, int x, int y>
+void SOIL::Variable<T, x, y>::read(void)
+{
+}
+
+template<typename T, int x, int y>
+void SOIL::Variable<T, x, y>::write(void)
+{
+}
+
+template<typename T, int x, int y>
+inline void SOIL::Variable<T, x, y>::set_covariance(Container<T, x, x> covariance)
+{
+	std::unique_lock<std::recursive_mutex> lock(Element::mutex);
+	this->covariance = covariance;
+}
+
+template<typename T, int x, int y>
+inline std::vector<unsigned char> SOIL::Variable<T, x, y>::bytes(void)
+{
+	std::unique_lock<std::recursive_mutex> lock(Element::mutex);
+	std::vector<unsigned char> result;
+	std::vector<unsigned char> bytes_dimension = Figure<T, x, y>::value.serialize_dimensions();
+	std::vector<unsigned char> bytes_value = Figure<T, x, y>::value.serialize_value();
+	std::vector<unsigned char> bytes_covariance = covariance.serialize_value();
+	std::vector<unsigned char> bytes_unit(3, ' ');
+	std::vector<unsigned char> bytes_time = Figure<T,x,y>::time.serialize();
+	std::vector<unsigned char> bytes_nonce;
+	for (int i = 0; i < static_cast<int>(std::min(static_cast<size_t>(3), Figure<T,x,y>::unit.length())); i++)
+	{
+		bytes_unit.at(i) = Figure<T, x, y>::unit.at(i);
+	}
+	for (int i = 0; i < static_cast<int>(nonce.length()); i++)
+	{
+		bytes_nonce.push_back(nonce.at(i));
+	}
+
+	result.insert(result.end(), bytes_dimension.begin(), bytes_dimension.end());
+	result.insert(result.end(), bytes_value.begin(), bytes_value.end());
+	result.insert(result.end(), bytes_covariance.begin(), bytes_covariance.end());
+	result.insert(result.end(), bytes_unit.begin(), bytes_unit.end());
+	result.insert(result.end(), bytes_time.begin(), bytes_time.end());
+	result.insert(result.end(), bytes_nonce.begin(), bytes_nonce.end());
+
+	return result;
+}
+
+template<typename T, int x, int y>
+inline std::vector<unsigned char> SOIL::Variable<T, x, y>::sha256(void)
+{
+	std::vector<unsigned char> data = this->bytes();
+	return SIGN::Hasher::sha256(data.data(), data.size());
+}
+
+template<typename T, int x, int y>
+inline std::vector<unsigned char> SOIL::Variable<T, x, y>::fingerprint(std::shared_ptr<SIGN::Signer> signer)
+{
+	return signer->sign(this->sha256());
+}
+
+template<typename T, int x, int y>
+inline std::vector<unsigned char> SOIL::Variable<T, x, y>::sign(std::shared_ptr<SIGN::Signer> signer)
+{
+	if (signer != NULL)
+	{
+		this->hash = this->fingerprint(signer);
+	}
+	else {
+		this->hash = this->sha256();
+	}
+
+	return this->hash;
+}
+
+template<typename T, int x, int y>
+inline bool SOIL::Variable<T, x, y>::mqtt(std::shared_ptr<MQTT::Publisher> publisher, int qos, bool retain)
+{
+	std::string topic = boost::algorithm::join(this->fqid(), "/");
+	return publisher->publish(topic, this->json(), qos, retain);
+}
+
+
+template<typename T, int x, int y>
+inline HTTP::Response SOIL::Variable<T, x, y>::handle_get(HTTP::Request message, std::smatch match)
+{
+	this->read();
+
+	HTTP::Response response;
+	response.set_body(this->wjson());
+	response.set_status_code(HTTP::Status::OK);
+
+	return response;
+}
+
+template<typename T, int x, int y>
+inline HTTP::Response SOIL::Variable<T, x, y>::handle_options(HTTP::Request message, std::smatch match)
+{
+	HTTP::Response response;
+	response.set_body(this->wjson());
+	response.set_status_code(HTTP::Status::OK);
+
+	return response;
+}
+
+template<typename T, int x, int y>
+inline void SOIL::Variable<T, x, y>::update(const Container<T, x, y>& value, TIME time, std::string nonce)
+{
+	Figure<T, x, y>::update(value, time);
+	this->nonce = nonce;
+
+	hash.clear();
+	covariance.set_null(true);
+}
+
+
+
+
diff --git a/src/SOIL/constants.h b/src/SOIL/constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..8db8c8140074600f89d18b363eab95dc102be0a3
--- /dev/null
+++ b/src/SOIL/constants.h
@@ -0,0 +1,22 @@
+/**
+ * @brief Default definitions for project
+ *
+ * File being referenced by many others containing cross-project defaults.
+*/
+#pragma once
+#ifdef _WIN32
+#        pragma warning(disable: 4251)
+#		 pragma warning(disable: 4275)
+#    ifdef _WINDLL
+#        define DLL __declspec(dllexport)
+#    else
+#        define DLL __declspec(dllimport)
+#    endif
+#elif defined(__unix__)
+#    define DLL __attribute__((visibility("default")))
+#endif
+
+#define _WIN32_WINNT 0x600
+#ifdef _WIN32
+#include <SDKDDKVer.h>
+#endif
\ No newline at end of file
diff --git a/src/SOIL/json_helpers.cpp b/src/SOIL/json_helpers.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..896085cd4f46668f6430044e273f24a00e1fedb0
--- /dev/null
+++ b/src/SOIL/json_helpers.cpp
@@ -0,0 +1,95 @@
+#include "json_helpers.h"
+#include "Types.h"
+
+template <typename T>
+web::json::value SOIL::to_json(const T& value)
+{
+	return web::json::value(value);
+}
+
+template<>
+web::json::value SOIL::to_json<double>(const double& value)
+{
+	return web::json::value::number(value);
+}
+
+template<>
+web::json::value SOIL::to_json<int64_t>(const int64_t& value)
+{
+	return web::json::value::number(value);
+}
+
+template<>
+web::json::value SOIL::to_json<int>(const int& value)
+{
+	return web::json::value::number(value);
+}
+
+template<>
+web::json::value SOIL::to_json<std::string>(const std::string& value)
+{
+	return web::json::value::string(utility::conversions::to_string_t(value));
+}
+
+template<>
+web::json::value SOIL::to_json<SOIL::TIME>(const SOIL::TIME& value)
+{
+	return to_json<std::string>(value.rfc3339());
+}
+
+template<>
+web::json::value SOIL::to_json<SOIL::ENUM>(const SOIL::ENUM& value)
+{
+	return to_json<std::string>(value.selected());
+}
+
+template<>
+web::json::value SOIL::to_json<SOIL::BOOL>(const bool& value)
+{
+	return web::json::value::boolean(value);
+}
+
+
+
+template<>
+double SOIL::to_value<double>(web::json::value value)
+{
+	return value.as_double();
+}
+
+
+template<>
+int SOIL::to_value<int>(web::json::value value)
+{
+	return value.as_integer();
+}
+
+template<>
+int64_t SOIL::to_value<int64_t>(web::json::value value)
+{
+	return static_cast<int64_t>(value.as_integer());
+}
+
+template<>
+std::string SOIL::to_value<std::string>(web::json::value json)
+{
+	return utility::conversions::to_utf8string(json.as_string());
+}
+
+template<>
+SOIL::TIME SOIL::to_value<SOIL::TIME>(web::json::value json)
+{
+	return SOIL::TIME(to_value<std::string>(json));
+}
+
+template<>
+SOIL::ENUM SOIL::to_value<SOIL::ENUM>(web::json::value json)
+{
+	return SOIL::ENUM(to_value<std::string>(json));
+}
+
+template<>
+bool SOIL::to_value<bool>(web::json::value json)
+{
+	return json.as_bool();
+}
\ No newline at end of file
diff --git a/src/SOIL/json_helpers.h b/src/SOIL/json_helpers.h
new file mode 100644
index 0000000000000000000000000000000000000000..870f731670223b1824a6de360298f8bc1e5f61a6
--- /dev/null
+++ b/src/SOIL/json_helpers.h
@@ -0,0 +1,64 @@
+#pragma once
+#include "constants.h"
+#include "Types.h"
+#define _TURN_OFF_PLATFORM_STRING
+#include "cpprest/http_listener.h"
+
+namespace SOIL
+{
+	/**
+	 * @brief Value to JSON
+	 * 
+	 * Helper function to convert a value to its correct JSON value (RHS of key in document).
+	 * This is a template function that is specialized for every datatype.
+	 * 
+	 * @tparam T Datatype under consideration
+	 * @param[in] value Value to convert
+	 * @return JSON value
+	*/
+	template <typename T>
+	DLL web::json::value to_json(const T& value);
+
+	/**
+	 * @brief JSON to Value
+	 *
+	 * Helper function to convert a value from a JSON object to its equivalent internal SOIL datatype.
+	 * This is a template function that is specialized for every datatype.
+	 *
+	 * @tparam T Datatype under consideration
+	 * @param [in] json JSON object to convert
+	 * @return Value in native datatype
+	*/
+	template <typename T>
+	DLL T to_value(web::json::value json);
+
+
+	template<>
+	DLL web::json::value to_json<double>(const double& value);
+	template<>
+	DLL web::json::value to_json<int64_t>(const int64_t& value);
+	template<>
+	DLL web::json::value to_json<int>(const int& value);
+	template<>
+	DLL web::json::value to_json<std::string>(const std::string& value);
+	template<>
+	DLL web::json::value to_json<SOIL::TIME>(const SOIL::TIME& value);
+	template<>
+	DLL web::json::value to_json<SOIL::ENUM>(const SOIL::ENUM& value);
+	template<>
+	DLL web::json::value to_json<SOIL::BOOL>(const bool& value);
+	template<>
+	DLL double to_value<double>(web::json::value value);
+	template<>
+	DLL int to_value<int>(web::json::value value);
+	template<>
+	DLL int64_t to_value<int64_t>(web::json::value value);
+	template<>
+	DLL std::string to_value<std::string>(web::json::value json);
+	template<>
+	DLL SOIL::TIME to_value<SOIL::TIME>(web::json::value json);
+	template<>
+	DLL SOIL::ENUM to_value<SOIL::ENUM>(web::json::value json);
+	template<>
+	DLL bool to_value<bool>(web::json::value json);
+}
diff --git a/src/TEST/main.cpp b/src/TEST/main.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..cf640aee6b8e435e612a26e93f9ee33140c7db66
--- /dev/null
+++ b/src/TEST/main.cpp
@@ -0,0 +1,99 @@
+#include "MQTT/Publisher.h"
+#include "UDP/Broadcast.h"
+#include "REST/Server.h"
+#include "SOIL/Object.h"
+#include "SOIL/Variable.h"
+#include "SOIL/Types.h"
+#include "SIGN/Hasher.h"
+#include "SIGN/Signer.h"
+#include <thread>
+#include <iostream>
+#include <chrono>
+
+
+
+int main(int argc, char** argv)
+{
+	try
+	{
+		std::cout << "############ SOIL #############" << std::endl;
+		std::shared_ptr<SIGN::Signer> signer(new SIGN::Signer("../../../../assets/private-device-key.pem"));
+		std::cout << "[INFO] " << signer->openssl_version() << std::endl;
+		std::shared_ptr<SOIL::Object> root_object = SOIL::Object::create(NULL, "OBJ-ROOT", "Root Object", "Root Object and entry point for the model.");
+		std::shared_ptr<SOIL::Object> lsm_object = SOIL::Object::create(root_object, "OBJ-LSM", "LSM System", "LSM system root object");
+		std::shared_ptr<SOIL::Object> entities_object = SOIL::Object::create(lsm_object, "OBJ-Entities", "Mobile Entities", "Mobile entities of the LSM system");
+		std::shared_ptr<SOIL::Object> target_A123 = SOIL::Object::create(entities_object, "OBJ-A123", "Target A123", "Target A123 of the LSM system");
+		std::shared_ptr<SOIL::Variable<double, 3> > variable = SOIL::Variable<double, 3>::create(target_A123, "VAR-Position", "Position", "A dummy position variable for testing", "MTR", "");
+		// NOTE: In above calls, the ptr->() function is used to avoid double allocation of shared pointer and double life cycle accounting
+
+		variable->update(std::vector<double>({ 1.0, 1.5, 2.0 }), SOIL::TIME::utc_now(), "LaVA Test");
+		variable->set_covariance(std::vector<std::vector<double> >({ { 0.01, 0, 0 },{0, 0.01, 0},{ 0, 0, 0.01 } }));
+		variable->sign(signer);
+
+
+		std::cout << "[INFO] " << "--- Exemplary JSON Serialization ---" << std::endl;
+		std::cout << variable->json() << std::endl << std::endl;
+		std::cout << "[INFO] " << "------------------------------------" << std::endl;
+
+
+		std::cout << "############ MQTT ############" << std::endl;
+		MQTT::Configuration mqtt_config("../../../../assets/mqtt.json");
+		mqtt_config.certificate_authority = "../../../../assets/MQTT-CA.pem";
+
+		std::shared_ptr<MQTT::Publisher> mqtt_publisher = std::make_shared<MQTT::Publisher>("cpp-test");
+		mqtt_publisher->configure(mqtt_config);
+		std::cout << "[INFO] MQTT Connecting to " << mqtt_config.uri() << std::endl;
+		mqtt_publisher->connect();
+		std::cout << "[OK] MQTT Connected" << std::endl;
+
+		std::cout << "[INFO] Running Loop Test" << std::endl;
+
+		auto begin = std::chrono::steady_clock::now();
+		for (int i = 0; i < 1000; i++)
+		{
+			variable->update(std::vector<double>({ 1.0 * i, 2.0 * i, 3.0 * i }), SOIL::TIME::utc_now(), "Loop Test Update");
+			variable->set_covariance(std::vector<std::vector<double> >({ { 1.0 * i,0,0 },{ 0,1.0 * i,0 },{ 0,0,1.0 * i } }));
+			variable->sign(signer);
+			variable->json();
+			variable->fqid();
+			variable->mqtt(mqtt_publisher);
+		}
+		auto end = std::chrono::steady_clock::now();
+		std::cout << "[INFO] " << "Average update, serialization and publish cycle: " << std::chrono::duration_cast<std::chrono::milliseconds>(end - begin).count() / 1000.0 << " ms" << std::endl << std::endl;
+
+		std::this_thread::sleep_for(std::chrono::milliseconds(500));
+		mqtt_publisher->disconnect();
+		std::cout << "[OK] MQTT Disconnect" << std::endl << std::endl;
+		std::this_thread::sleep_for(std::chrono::milliseconds(500));
+
+
+		std::cout << "############ UDP #############" << std::endl;
+		UDP::Configuration udp_config("../../../../assets/udp.json");
+		UDP::Broadcast udp_broadcast(1);
+		udp_broadcast.configure(udp_config);
+		udp_broadcast.send(variable->json());
+		std::cout << "[OK] UDP Broadcast sent to localhost on port " << udp_config.clients["127.0.0.1"] << std::endl << std::endl;
+
+
+		std::cout << "############ REST ############" << std::endl;
+		HTTP::Server http_server("http://localhost:8000");
+		http_server.add("/?(.*)", root_object);
+		http_server.open();
+		std::cout << "[OK] HTTP Server listening on http://localhost:8000. Press Enter to quit..." << std::endl;
+		std::string s;
+		std::getline(std::cin, s);
+		http_server.close();
+		std::cout << "[OK] Closing HTTP Server" << std::endl;
+
+		root_object.reset();
+
+		return 0;
+	}
+	catch (std::exception& e)
+	{
+		std::cout << "[ERROR] " << e.what() << std::endl;
+		
+		return 1;
+	}
+
+}
\ No newline at end of file
diff --git a/src/UDP/Broadcast.cpp b/src/UDP/Broadcast.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..7d0cf0ed6defc1174d31ebc24bef413e8ad3420f
--- /dev/null
+++ b/src/UDP/Broadcast.cpp
@@ -0,0 +1,138 @@
+#include "Broadcast.h"
+#include "Exception.h"
+
+
+UDP::Broadcast::Broadcast(int n_threads)
+{
+	threads.reset(new boost::thread_group);
+	work.reset(new boost::asio::io_service::work(io_service));
+	for (int i = 0; i < n_threads; i++)
+	{
+		threads->create_thread(boost::bind(&boost::asio::io_service::run, &io_service));
+	}
+	socket.reset(new boost::asio::ip::udp::socket(io_service));//, boost::asio::ip::udp::endpoint(boost::asio::ip::udp::v4(), 0)));
+	socket->open(boost::asio::ip::udp::v4());
+	boost::asio::socket_base::reuse_address reuse_address(true);
+	socket->set_option(boost::asio::socket_base::reuse_address(true));
+	//socket->set_option(boost::asio::socket_base::broadcast(true));
+
+	endpoints.resize(0);
+}
+
+
+UDP::Broadcast::~Broadcast()
+{
+	if (socket.use_count() > 0)
+	{
+		if (socket->is_open())
+		{
+			socket->shutdown(boost::asio::ip::udp::socket::shutdown_both);
+			socket->close();
+		}
+		socket.reset();
+		endpoints.resize(0);
+	}
+	work.reset();
+	threads->join_all();
+	threads.reset();
+}
+
+void UDP::Broadcast::add_client(std::string ip, unsigned int port)
+{
+	std::unique_lock<std::mutex> lock(endpoints_mutex);
+	try
+	{
+		std::vector<boost::asio::ip::udp::endpoint>::iterator it;
+		boost::asio::ip::address address = boost::asio::ip::address::from_string(ip);
+		for (it = endpoints.begin(); it != endpoints.end(); it++)
+		{
+			if ((*it).address() == address)
+			{
+				throw UDP::Exception("Client is already among broadcast recipients!");
+			}
+		}
+		endpoints.push_back(boost::asio::ip::udp::endpoint(address, port));
+	}
+	catch (std::exception& exception)
+	{
+		std::string message = std::string("Error while adding UDP client: ") + exception.what();
+		throw UDP::Exception(message.c_str());
+	}
+}
+
+void UDP::Broadcast::remove_client(std::string ip)
+{
+	std::unique_lock<std::mutex> lock(endpoints_mutex);
+	try
+	{
+		std::vector<boost::asio::ip::udp::endpoint>::iterator it;
+		boost::asio::ip::address address = boost::asio::ip::address::from_string(ip);
+		for (it = endpoints.begin(); it != endpoints.end(); it++)
+		{
+			if ((*it).address() == address)
+			{
+				break;
+			}
+		}
+		if (it == endpoints.end())
+		{
+			throw UDP::Exception("Client is not in broadcast list!");
+		}
+		endpoints.erase(it);
+	}
+	catch (std::exception& exception)
+	{
+		std::string error_message = std::string("Error while removing UDP client: ") + exception.what();
+		throw UDP::Exception(error_message.c_str());
+	}
+}
+
+void UDP::Broadcast::_send(std::string message)
+{
+	if (socket.use_count() == 0)
+	{
+		return;
+	}
+	if (socket->is_open())
+	{
+		std::unique_lock<std::mutex> lock(endpoints_mutex);
+		std::shared_ptr<std::string> local_message(new std::string(message));
+		std::vector<boost::asio::ip::udp::endpoint>::iterator it;
+		for (it = endpoints.begin(); it != endpoints.end(); it++)
+		{
+			socket->send_to(boost::asio::buffer(*local_message), *it);
+			//socket->send_to(boost::asio::buffer(*local_message), *it, boost::bind(&UDP::Broadcast::handle, this, message, boost::asio::placeholders::error, boost::asio::placeholders::bytes_transferred));
+		}
+	}
+}
+
+void UDP::Broadcast::send(std::string message)
+{
+	io_service.post(boost::bind(&UDP::Broadcast::_send, this, message + "\r\n"));
+}
+
+void UDP::Broadcast::send(std::vector<std::string> messages)
+{
+	std::string message = "";
+	for (std::vector<std::string>::iterator it = messages.begin(); it != messages.end(); it++)
+	{
+		message += (*it) + "\r\n";
+	}
+	io_service.post(boost::bind(&UDP::Broadcast::_send, this, message));
+}
+
+/*
+void UDP::Broadcast::handle(std::shared_ptr<std::string> message, const boost::system::error_code & error, std::size_t bytes)
+{
+	std::string error_message = std::string("Error while sending UDP: ") + error.message();
+	throw UDP::Exception(error_message.c_str());
+}
+*/
+
+void UDP::Broadcast::configure(UDP::Configuration config)
+{
+	for (UDP::Configuration::iterator it = config.clients.begin(); it != config.clients.end(); it++)
+	{
+		this->add_client(it->first, it->second);
+	}
+}
diff --git a/src/UDP/Broadcast.h b/src/UDP/Broadcast.h
new file mode 100644
index 0000000000000000000000000000000000000000..495e9f7f1cedec0cc1cd8dd1892847f6848fc798
--- /dev/null
+++ b/src/UDP/Broadcast.h
@@ -0,0 +1,150 @@
+#pragma once
+
+#include "constants.h"
+#include <atomic>
+#include <memory>
+#include <mutex>
+#include <stdexcept>
+#include <vector>
+#include "Configuration.h"
+#include <boost/thread.hpp>
+#include <boost/asio.hpp>
+
+namespace UDP
+{
+	/**
+	 * @brief UDP Broadcast
+	 * 
+	 * Simple UDP Broadcast implemented on top of boost asio.
+	 * This is currently a conveience member of the C++ SOIL library as its not part of the specification.
+	 * It may be omitted in the future.
+	*/
+	class DLL Broadcast
+	{
+	private:
+		/**
+		 * @brief Thread group
+		 * 
+		 * Internal group of threads handling the communication work
+		 * The boost asio library organized asynchronous communication by itself so that blocking calls can be avoided.
+		*/
+		std::shared_ptr<boost::thread_group> threads;
+
+		/**
+		 * @brief ASIO work object
+		 * 
+		 * Work object required for boost asio to maintain threads alive
+		*/
+		std::shared_ptr<boost::asio::io_service::work> work;
+
+		/**
+		 * @brief ASIO IO service
+		 * 
+		 * Boost ASIO IO service obejct used to implement UDP communication
+		*/
+		boost::asio::io_service io_service;
+
+		/**
+		 * @brief UDP Socket pointer
+		 * 
+		 * Shared pointer to the internally used udp socket implemented using boost.
+		*/
+		std::shared_ptr<boost::asio::ip::udp::socket> socket;
+
+		/**
+		 * @brief UDP Endpoints
+		 * 
+		 * List of UDP endpoints which are recipients of the broadcast
+		*/
+		std::vector<boost::asio::ip::udp::endpoint> endpoints;
+
+		/**
+		 * @brief UDP Endpoints mutex
+		 * 
+		 * Mutex to make access to the list of endpoints thread safe when adding or removing clients.
+		*/
+		std::mutex endpoints_mutex;
+
+		/**
+		 * @brief Internal Send
+		 * 
+		 * Send function called internally and implementing the boost asio specific logic.
+		 * @param [in] message Message to broadcast over UDP
+		*/
+		void _send(std::string message);
+
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Constructor instantiating an UDP Broadcast.
+		 * The socket is immediately opened upon successful construction.
+		 * 
+		 * @param[in] n_threads Number of threads to assign to the thread group.
+		 * Only for very large loads a number of threads greater than 1 should be needed.
+		*/
+		Broadcast(int n_threads = 1);
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Destructor which closes the socket and stops all threads if not previously done.
+		*/
+		~Broadcast();
+
+		/**
+		 * @brief Add UDP client
+		 * 
+		 * Add a client to list of recipients of the UDP broadcast.
+		 * One can only send to one port per IP address, the IPv4 address acts as unique identifier.
+		 * 
+		 * @param [in] ip IPv4 address to send to
+		 * @param [in] port Port to send to 
+		*/
+		void add_client(std::string ip, unsigned int port);
+		
+		/**
+		 * @brief Remove UDP client
+		 * 
+		 * Remove a client to list of recipients of the UDP broadcast which is identified through its IPv4 address.
+		 * @param [in] ip IPv4 adress of the client to remove 
+		*/
+		void remove_client(std::string ip);
+
+		/**
+		 * @brief Send Message
+		 * 
+		 * Send an individual message over the UDP Broadcast.It will be terminated by a newline (@c \r\n).
+		 * @param [in] message Message to send
+		*/
+		void send(std::string message);
+
+		/**
+		 * @brief Send Multiple Message
+		 *
+		 * Send a set of messages over the UDP Broadcast.They will be separated and terminated by a newlines (@c \r\n).
+		 * @param [in] messages Messages to send
+		*/
+		void send(std::vector<std::string> messages);
+
+		//void handle(std::shared_ptr<std::string> message, const boost::system::error_code& error, std::size_t bytes);
+		
+		/**
+		 * @brief Number of Clients
+		 * 
+		 * Get the number of registered UDP clients.
+		 *
+		 * @return Number of registered UDP clients.
+		*/
+		inline int use_count(void) { return static_cast<int>(endpoints.size()); }
+
+		/**
+		 * @brief Configure Broadcast
+		 * 
+		 * Configure the broadcast with a configuration object, i.e. a list of endpoints.
+		 * @param [in] config Configuration object 
+		*/
+		void configure(UDP::Configuration config);
+	};
+}
+
diff --git a/src/UDP/Configuration.cpp b/src/UDP/Configuration.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..7d2f405168b478c6bd2b035a213ed7a08abab3c1
--- /dev/null
+++ b/src/UDP/Configuration.cpp
@@ -0,0 +1,27 @@
+#include "Configuration.h"
+#include <nlohmann/json.hpp>
+#include <fstream>
+
+using json = nlohmann::json;
+
+UDP::Configuration::Configuration()
+{
+	clients.clear();
+}
+
+UDP::Configuration::Configuration(std::string filename)
+{
+	std::ifstream infile(filename);
+	json j;
+	infile >> j;
+
+	for (json::iterator it = j["clients"].begin(); it != j["clients"].end(); it++)
+	{
+		clients[(*it)["address"]] = (*it)["port"];
+	}
+}
+
+UDP::Configuration::~Configuration()
+{
+	clients.clear();
+}
diff --git a/src/UDP/Configuration.h b/src/UDP/Configuration.h
new file mode 100644
index 0000000000000000000000000000000000000000..5a720746ab7341146bef159bd5ff35ff87382f1d
--- /dev/null
+++ b/src/UDP/Configuration.h
@@ -0,0 +1,53 @@
+#pragma once
+#include "constants.h"
+#include <map>
+#include <string>
+namespace  UDP
+{
+	/**
+	 * @brief UDP Broadcast Configuration
+	 * 
+	 * Class to simplify the configuration of UDP broadcasts, i.e. by providing a list of client endpoints that can be populated from a JSON file.
+	 * For simplicity, all members are public.
+	*/
+	class DLL Configuration
+	{
+	public:
+		/**
+		 * @brief Iterator
+		 * 
+		 * Typedefinition to provide an iterator-sytled access
+		*/
+		typedef std::map<std::string, int>::iterator iterator;
+
+		/**
+		 * @brief List of clients
+		 * 
+		 * List of clients, implemented as map where the IPv4 address acts as unique identifier.
+		*/
+		std::map<std::string, int> clients;
+
+		/**
+		 * @brief Constructor
+		 * 
+		 * Default constructor, creates an empty list of clients.
+		*/
+		Configuration();
+
+		/**
+		 * @brief JSON Constructor
+		 * 
+		 * Constructor the takes a JSON file as input to populate the list of clients.
+		 * See the project assets for a sample file.
+		 * @param [in] filename Path to the JSON configuration file
+		*/
+		Configuration(std::string filename);
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Default destructor, empties the map.
+		*/
+		~Configuration();
+	};
+}
diff --git a/src/UDP/Exception.cpp b/src/UDP/Exception.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..c424a519806359d15f73ca19a45e5b0ef70d0bec
--- /dev/null
+++ b/src/UDP/Exception.cpp
@@ -0,0 +1,9 @@
+#include "Exception.h"
+
+UDP::Exception::Exception(const char* message) : std::runtime_error(message)
+{
+}
+
+UDP::Exception::~Exception()
+{
+}
\ No newline at end of file
diff --git a/src/UDP/Exception.h b/src/UDP/Exception.h
new file mode 100644
index 0000000000000000000000000000000000000000..368a71477af4568499f55c3ba96e3c7c835af2b9
--- /dev/null
+++ b/src/UDP/Exception.h
@@ -0,0 +1,31 @@
+#pragma once
+#include "constants.h"
+#include <stdexcept>
+namespace UDP
+{
+	/**
+	 * @brief UDP Broadcast Exception
+	 *
+	 * Specific subclass of @c std::runtime_error to distinguish exceptions coming from the UDO Broadcast.
+	*/
+	class DLL Exception :
+		public std::runtime_error
+	{
+	public:
+		/**
+		 * @brief Constructor
+		 * 
+		 * Constructor taking a message that is passed to @c std::runtime_error.
+		 * @param [in] message Message to add to the runtime error
+		*/
+		Exception(const char* message = "");
+
+		/**
+		 * @brief Destructor
+		 * 
+		 * Default destructor, no special effort here.
+		*/
+		~Exception(void);
+
+	};
+}
\ No newline at end of file
diff --git a/src/UDP/constants.h b/src/UDP/constants.h
new file mode 100644
index 0000000000000000000000000000000000000000..bdd3676b8279dd894d7be689765d9abcf80e7b3d
--- /dev/null
+++ b/src/UDP/constants.h
@@ -0,0 +1,21 @@
+/**
+ * @brief Default definitions for project
+ *
+ * File being referenced by many others containing cross-project defaults.
+*/
+#pragma once
+#ifdef _WIN32
+#        pragma warning(disable: 4251)
+#		 pragma warning(disable: 4275)
+#    ifdef _WINDLL
+#        define DLL __declspec(dllexport)
+#    else
+#        define DLL __declspec(dllimport)
+#    endif
+#elif defined(__unix__)
+#    define DLL __attribute__((visibility("default")))
+#endif
+
+#ifdef _WIN32
+#include <SDKDDKVer.h>
+#endif
\ No newline at end of file